- AI Dev - 인공지능 개발자 모임
- 정보공유
- 챗봇 딥러닝
글 수 293
신경망 번역이나 챗봇에서도 자주 쓰이는 딥러닝의 Seq2Seq는 RNN으로 구성된 인코더와 디코더로 이루어져 있습니다. 문장이 입력으로 들어오면 새로운 문장이 바로 출력으로 나오는 구조입니다.
인코더의 출력 벡터가 입력 문장의 전체 정보를 가지고 있고 이것이 디코더의 입력으로 들어갑니다. 하지만 벡터값 하나에 모든 정보를 담고 있다 보니 문장이 길어질수록 정확도가 떨어지는 문제가 있습니다. 이런 단점을 보완하기 위해 어텐션(attention)이란 기법을 사용하는데 여기에 대해 아주 쉽게 설명한 글입니다.
간단히 설명하면 인코더에서 각 단어마다 반복되는(RNN의 특성인) 히든스테이트의 출력을 모아서 새로운 어텐션 신경망을 만들고 이것을 디코더의 출력 순서에 맞게 입력으로 같이 사용합니다. 그래서 디코더의 각 단계마다 입력 문장의 어느 부분에 더 집중을 할지 알 수 있습니다. 좀 더 자세한 사항은 아래 링크를 참조하시기 바랍니다.
< Attention Mechanism 시각화 >
- http://docs.likejazz.com/attention/