seq2seq에서 long term dependecy 문제를 해결하고자 add on module로 attention을 도입

이제는 LSTM, GRU 구조를 self-attention을 통해 attention으로 모두 변경 - transformer

이 과정에서 순서를 고려하기 위해 positional encoding이라는 테크닉을 활용

스크린샷 2021-09-13 오후 3.04.11.png

기존의 RNN에서는 멀리 있는 정보를 전달할 때 정보 유실.. 변질 등의 issue 해결.. → attention이 하지 않았나 ?

Bi directional RNNS

문장의 순서를 바꿔서 진행을 한 것도 고려를 해서 앞의 문장도 고려하겠다는 의미 ..?

Transformer

각 time step의 단어가 encoder, decoder 역할을 모두 할 수 있도록 3개의 선형 변환을 통해 각각의 역할이 수행되도록 나눠주는 느낌..

query : decoder의 $h_t$ 역할

key : encoder의 $h_t$ set

value : query와 key를 통해 얻어온 가중치와 연산을 해 최종 사용하는 벡터 모음

스크린샷 2021-09-13 오후 3.13.41.png

query, key : 내적을 할 수 있도록 차원이 동일해야 함!

key, value : 개수가 동일해야 함