✅ seq2seq의 문제점
bottleneck problem
-
encoder의 context embedding이 제한된 정보를 가진다.
-
번역기의 예시에서 같은 context embedding을 decoder에서 사용하여 각 단어를 번역한다.
✅ Attention
- bottleneck problem을 해결하기 위한 방법
- decoder의 각 step에서 encoder에 대해 직접 연결을 사용해 source sequence의 특정 부분에 집중한다.
✅ sequence to sequence with attention
- attention score 구하기
- dot product로 encoder의 embedding과 decoder의 emdebbing의 similarity를 구한다.
- attention score가 양수이면 관련이 많고 음수이면 관련이 없다.
- dot product
$(x_1,x_2,x_3)$ encoder의 embedding
$(y_1,y_2,y_3)$ decoder의 embedding
$x_1y_1+x_2y_2+x_3y_3 =스칼라값$
스칼라값이 attention score이고 비슷한 값을 가지면 스칼라값이 커진다.
- attention distribution 구하기