AI 해부교실 · Part 4 트랜스포머 이전 이야기

42장 번역기의 구조

Q. 순서도 길이도 다른 두 언어를, AI는 어떻게 번역할까요?

  1. '나는 오늘 학교에 간다'는 영어로 'I go to school today'. 순서도 단어 수도 달라서 하나씩 바꿀 수 없어요.
  2. 2014년 서츠케버(Sutskever) 연구팀은 RNN 두 개를 이었어요. 읽는 인코더와 쓰는 디코더, 이걸 seq2seq라고 해요.
  3. 인코더는 한국어를 한 단어씩 읽으며 쪽지를 고쳐 써요. 마지막 쪽지에 문장 전체의 뜻이 담겨요.
  4. 디코더는 그 쪽지를 받아 영어를 한 단어씩 써요. 쓴 단어는 다시 입력으로 들어가요. 2장의 자기회귀와 같아요.
  5. 그런데 쪽지 크기는 정해져 있어요. 네 단어든 마흔 단어든, 문장 전체를 같은 크기의 쪽지 하나에 꾹 눌러 담아야 해요.
  6. 이게 병목이에요. 병의 좁은 목으로 모든 뜻이 지나가야 하죠. 그래서 문장이 길수록 번역이 나빠졌어요.
  7. 디코더가 단어를 쓸 때마다 원문을 다시 볼 수 있다면 어떨까요? 그 아이디어가 43장의 어텐션이에요.

한 장 요약