D
“Encoder가 입력 문장의 의미를 정리했습니다.
이제 그 정보를 바탕으로 번역문이나 답변을 실제로 만들어야 합니다.”
Part 7 · Transformer Architecture - Inside a Decoder
Encoder가 입력 문장을 이해하는 역할이라면 Decoder는 그 정보를 바탕으로 새로운 문장을 생성하는 역할을 합니다. Decoder는 지금까지 생성한 단어와 Encoder의 정보를 함께 참고하면서 다음 토큰을 하나씩 예측해 문장을 완성합니다.
Encoder는 입력 문장 속 단어 관계를 계산합니다. 하지만 Encoder만으로는 새로운 문장을 한 단어씩 만들어 내지 않습니다. 이때 생성 작업을 맡는 부분이 Decoder입니다.
일반적인 Transformer 구조도처럼 그림은 아래의 입력에서 시작해 위의 출력으로 진행합니다. 각 블록을 누르면 역할을 확인할 수 있습니다.
Masked Self-Attention은 현재 위치보다 뒤에 있는 토큰을 가립니다. 따라서 Decoder는 이미 생성된 토큰만 보고 다음 토큰을 예측합니다.
아래 버튼을 누르면 Decoder가 이전 결과를 다시 입력으로 사용하며 문장을 만드는 과정을 볼 수 있습니다.