Transformer를 한줄로 요약하면,

Attention만으로 모든 문제를 해결 할 수 있다.

이것입니다.

 

Transformer

 

논문에 나온 주요 개념들을 한번 훑어보겠습니다.

 

논문 참조

- Encoder and Decoder Stacks

"Transformer" Architecture는 기본적으로 Encoder - Decoder 구조 입니다.

단지 일반적인 RNN기반의 Encoder-Decoder 구조에서 Encoders-Decoders로 변화한 것입니다.

논무네서는 Encoder 6개 Decoder 6개를 쌓았다고 되어있습니다.

 

- Attention

논문 참조

* Scaled Dot-Product Attention

"Attention Is All You Need"

Figure 2 좌측에 나온 Scaled Dot-Product Attention은 일반적인 Dot-Product Attention에서 √dk 로 나눈것 입니다.

dk는 K벡터의 차원을 의미합니다.

Scaled Dot-Product Attention은 Q벡터(행렬)와 K벡터(행렬)를 곱하고, K벡터의 차원의 루트값으로 스케일링하고 이를 Softmax함수를 통해 비율로 변환한뒤 V벡터(행렬)에 곱하는 것입니다.

 

* Multi-Head Attention

 Figure 2 우측의 그림에 나온 Multi Head Attention은 어텐션을 한번에 여러번 병렬적으로 취하겠다는 의미입니다.

여러번 병력적으로 진행한다는 것의 의미는 여러개의 어텐션을 이용해서 문장을 다양한 시각으로 분석하겠다는 것입니다.

 

* Positional Encoding

Transformer는 no recurrence and no convolution입니다.

따라서, 모델에게 위치에 대한 정보를 주입해 주어야합니다.

위 식에서, pos는 단어가 가지는 위치, i는 그 단어 임베딩 벡터 내부의 인덱스를 의미합니다.

i가 짝수일 때는 sin함수를, 홀수 일 때는 cos함수를 사용합니다.

논문에서는 훈련중에 나타나는 더 긴 시퀀스 길이에 대한 추론을 가능하게 하기 때문에 sinusoidal 함수(sin, cos)을 사용했다고 합니다.

Posted by EnergyCastle
,

블로그를 운영해보자고 항상 다짐했었지만 미루고 미루던 끝에 진짜 시작해보려고 합니다!

 

학생때 부터 구글링을 통해 영문 자료를 수없이 많이 접하면서,

가뭄 속 단비 같은 친절하게 정리된 한글 자료들에 대한 감사에 보답하기 위해서 시작합니다.

 

초급 개발자로 앞으로 성장해가면서 습득하는 지식들을 차근차근 정리해 나갈 생각입니다.

기타 그 외의 지식들에 대한 공유도 함께 할 것입니다.

 

감사합니다.

'기타 잡설' 카테고리의 다른 글

Javascript 공부해보기...  (0) 2022.12.05
Posted by EnergyCastle
,