이번 글 에서는 Attention is All You Need' 논문과 텐서플로 2와 머신러닝으로 시작하는 자언어 처리 (개정판) 책을 참고하여 자연어처리에서 두곽을 나타내고 있는 Transformer 모델을 이해하는데 방점을 두고 있습니다.
글의 내용은 참고 문헌의 내용과 저의 방식으로 이해하는 과정을 담고 있습니다. 자연어 처리 공부를 하며 많은 도움이 되었기에 다른 분들께 추천드리며, 책을 쓰신 저자분들께 감사의 말씀을 드립니다.
제가 참고한 책의 표시를 추가하면 아래와 같습니다.
Encoder
Decoder
Attention은 Qeury, Key, Value Matrix를 통해 문맥 벡터(context vector)로 이루어진 Matrix를 출력합니다. Attention을 통해 문장 내 각 단어들에 대해서 단어들 간 상관관계 정보를 포함한 문맥벡터를 출력합니다.
Scaled Dot-Product Attention의 수식을 보며 연산과정을 살펴보면 다음과 같습니다.
와 를 행렬곱하여 각 단어들에 대한 Attention Score를 계산한다.
Attention Score에 대해서 만큼 스케일링을 적용해준다. (scaled Dot-Product Attention)
읽어주셔서 감사합니다.