Transformer를 안다 라고 자신있게 얘기 할 수 있도록
Transformer의 모든 단계를 이해하고싶어서
각 단계를 차근차근 살펴보고 왜 이런 작업을 하는지, 어떤 계산을 하는지 알아볼 것이다.
깊게 들어가기 앞서서
이번 게시글에는 정말 간단하게 초보자의 시선에서 본
Transformer의 구조를 살펴볼 것이다.
1. Transformer의 구조
제일 쉽게 볼 수 있는 Transformer 구조도이다.
자세한건 모르더라도 화살표를 통해 간단하게 파악해보자.
왼쪽 부분에서는 Input데이터를 받아 각종 단계를 거쳐 오른쪽으로 넘겨준다
오른쪽 부분에서는 Output데이터와 왼쪽으로부터 받은 데이터를 가지고
각종 단계를 거쳐 최종 확률을 만들어낸다고 해석할 수 있겠다.
위 과정을 데이터 용어로 치환해보면
입력(= "Input") 정보를 처리하여 input의 의미와 정보를 파악해 내는 것을 Encoder,
Encoder 정보를 바탕으로 새로 들어온 정보( = "Output") 를
재표현 해서 출력(= "Output Probabilities")하는것 Decoder라고 한다.
2. Transformer 사용처
Transformer은 크게 보면 Encoder - Decoder구조이고
그래서 특히 자연어 처리, 이미지 처리에 자주 사용된다.
예를들어 다음과 같은 과제에 사용될 수 있다.
- 텍스트 to 텍스트 : 번역
A언어의 의미 파악 [Encoder] -> 의미 파악 [의미를 가지고있는 Vector] -> B언어로 변환 [Decoder]
- 자연어 to 이미지 : 이미지 생성
텍스트에서 의미 파악 [Encoder] -> 의미 파악 [의미를 가지고있는 Vector] -> 이미지로 변환 [Decoder]
- 이미지 to 텍스트 : 이미지 캡셔닝
이미지에서 특징 추출 [Encoder] -> 장면 파악 [의미를 가지고있는 Vector] -> 텍스트로 생성 [Decoder]
다음 글은 input Embedding과 Positional Encoding에 대해서
공부한 내용을 토대로 이해하기 쉽도록 정리하여 올려볼 생각이다.
내가 초보자인만큼 같은 초보자도 이해하기 쉽도록 작성해보려고 한다.
(그리고 높은확률로 내가 까먹었을 때 다시 보기 쉽게 하기위함도 있다ㅋㅋ)
다시 열심히 해보자!!
'IT > Transformer 공부' 카테고리의 다른 글
이론) Transformer 차근차근 이해하기(2) - Input Embedding (1) | 2024.12.23 |
---|---|
[python] Transformer 연습해보기(4, 종료) - 실패 원인 복기 (0) | 2024.12.18 |
[python] Transformer 연습해보기(3) - 실제 데이터 적용해보기 (Time Series) Part.1 (1) | 2023.11.14 |
[python] Transformer 연습해보기(2) - Tutorial 따라해보기 (0) | 2023.10.31 |
[python] Transformer 연습해보기(1) - 가상환경 설정 (4) | 2023.09.21 |