The problem of long sequences
우리가 지금까지 다룬 모델들의 구조를 살펴보면 encoder / decoder가 결합된 것으로 이해할 수 있습니다.
즉, 도식의 초록색 부분은 입력을 이해하는 encoder, 그리고 보라색 부분은 이해한 것을 바탕으로 생성을 담당하는 decoder가 됩니다.
하지만 이런 구조는 문장의 길이에 비례하여 성능이 급감하는 경향을 보여줍니다.
길이가 길어지더라도 초록색 그래프처럼 준수한 성능이 유지될 수 있도록 하는 것이 목표입니다.
Attention model intuition
문맥을 반영하는 새로운 RNN의 형태를 떠올릴 수 있습니다.
지금까지의 RNN 모델은 이전까지의 입력, 생성 정보만을 condition으로 사용했습니다.
하지만 실제 문장이라는 것은 이후에 등장할 단어들, 즉 문맥에도 영향을 받을 수 있으므로 이를 반영하는 모델을 고안한 것입니다.
좀 더 구체적으로는, 매 스텝마다(단어를 예측할 때마다) 기존의 RNN 방식에 더하여 기존 입력들이 가지는 context를 확률 예측 조건에 포함시킵니다.
이 과정을 <EOS> 즉, end of sentece가 등장할 때까지 반복합니다.
이런 방식으로 문장의 길이가 증가하더라도 모델의 예측 능력이 좋은 상태로 유지될 수 있도록 유도합니다.
출처: Coursera, Sequence Models, DeepLearning.AI