2021.11.15 - [딥러닝관련/자연어처리] - Transformer Decoder : Masked Self Attention
Transformer Decoder : Masked Self Attention
2021.11.15 - [딥러닝관련/자연어처리] - 포지션-와이즈 피드 포워드 신경망(Position-wise FFNN) 포지션-와이즈 피드 포워드 신경망(Position-wise FFNN) 2021.11.14 - [딥러닝관련/자연어처리] - Multi-head Att..
better-tomorrow.tistory.com
Transformer 정리를 위해 위 글에서 계속 이어짐
[Encoder-Decoder Attention]
Masked Self Attention layer의 output vector는 encoder block에서와 동일하게
residual block과 layer noramlization 과정을 거침
이후 Encoder-decoder attention 과정을 거침
Encoder-Decoder layer에서는 encoder의 마지막 block에서 출력된 key, value 행렬로
self attention 매커니즘 한 번 더 수행
출처 : http://jalammar.github.io/images/t/transformer_decoding_2.gif
decoder의 두 번째 sub-layer는 multi head attention을 수행한다는 점에서,
이전의 attention들(encoder, decoder 첫 번째 sub layer)과 같지만,
self attention은 아니다.
Self attention의 경우 query, key, value가 같은 input으로부터 생성되지만
Encoder-decoder attention은
query : decoder 행렬인 반면,
key와 value : encoder 행렬
위는 전체적인 transformer 구조 중 빨간색 화살표를 봐보자
이는 key, value를 의미하며,
encoder의 마지막 layer로부터 온 행렬로부터 얻는다.
반면 query는 decoder의 sub-layer의 결과 행렬로부터 얻는다.
Decoder 행렬인 Query vector와
Encoder 행렬인 key vector에 대해
attention score를 구하는 과정은 아래와 같다.
참조
1) 트랜스포머(Transformer)
* 이번 챕터는 앞서 설명한 어텐션 메커니즘 챕터에 대한 사전 이해가 필요합니다. 트랜스포머(Transformer)는 2017년 구글이 발표한 논문인
wikidocs.net
https://yngie-c.github.io/nlp/2020/07/01/nlp_transformer/
트랜스포머 (Transformer) · Data Science
2013년 Word2Vec이 발표된 후 GloVe, Fasttext 등이 등장하면서 단어 수준의 임베딩에 대한 방법론이 어느 정도 마무리 되었습니다. 그 뒤로는 문장 수준의 임베딩을 위한 방법론들이 등장하게 됩니다.
yngie-c.github.io
'딥러닝관련 > 자연어처리' 카테고리의 다른 글
자연어 처리란 (0) | 2021.12.15 |
---|---|
Transformer Decoder : Linear & Softmax Layer (0) | 2021.11.16 |
Word2Vec (0) | 2020.07.20 |
StackGAN 논문 리뷰(작성 중) (0) | 2020.07.16 |
Word Embedding (0) | 2020.07.13 |