Encoder Decoder Language Models

Encoder, Decoder, Encoder-Decoder 모델에 대한 정의가 헷갈려서 정리하기 위해 작성하였습니다.

보시면서 오류가 있거나 잘못된 부분이 있다면 댓글을 통해 알려주시면 감사하겠습니다.🤗

 

Deeplearning.AI의 GenAI with LLM 강의를 통해 습득한 내용을 정리하였습니다.

 

본 게시물에서 의미하는 Encoder, Decoder의 의미는

Transformer 논문 (Attention is all you need)에 소개된 Transformer 로직의 Encoder, Decoder를 의미합니다.

즉, tranduction model에서의 Encoder, Decoder 입니다.


Encoder Only 

= Auto Encoding Model을 의미합니다.

주로 masked language modeling을 이용하여 Pre-trained 됩니다. 

출처 : Deeplearning.AI

 

masked language modeling. 즉, 빈칸을 생성해놓고 빈칸을 맞추게 함으로써 traning을 진행합니다.

다음 그림에서와 같이 양방향 학습을 통해 단일 토큰 뿐 아니라 문장 전체 컨텍스트를 이해하는데 도움이 됩니다.

대표적으로 BERT, ROBERT와 같은 모델이 있죠.

 

masked language modeling이기 때문에 아래와 같은 task에 주로 사용됩니다.

  • 감정 분석(Sentiment Analysis)
  • 개채명 인식 (Named Entity Recognition(Token level)
  • 단어 분류 (Word Classification (Token level))

 

Decoder Only model

= Autoregressive model 입니다. 지난번 transformer 논문 리뷰했을 때 설명했듯이, 자기 자신을 입력데이터로 하여 스스로를 예측하는 모델을 말합니다. 즉, 현재시점까지 생성한 output을 기반으로 다음 시점에 대한 output 예측을 수행합니다.

 

이렇게 다음 토큰을 예측하는 것을 Full Language Modeling by Researcher라고도 합니다.

Autoregressive model 이기 때문에 Input token을 마스킹하여 이어지는 입력토큰만 확인할 수 있으며, Encoder Architecture와는 대조적으로 컨텍스트가 단방향으로 이루어집니다.

출처 : Deeplearning.AI

 

대표적인 모델로는 GPT, BLOOM 모델이 있습니다.

규모가 큰 Decoder 모델은 강력한 제로샷(Zero-shot) 추론 기능을 보여 다양한 작업을 잘 수행할 수 있는 경우가 많습니다.

 

앞선 토큰을 바탕으로 다음 토큰을 예측하기 때문에 아래와 같은 task들에 적합합니다.

  • Text generation
  • Other emergent behavior (Depends on model size)

 

Encoder-Decoder Model

Sequence to sequence model이라고도 합니다. 오리지널 transformer 아키텍쳐의 Encoder, Decoder 부분을 모두 사용합니다.

 

로직은 아래와 같습니다.

모델 T5의 경우, 토큰의 임의 시퀀스를 마스킹하는 스팬 손상 (Span Corruption)을 사용하여 인코더를 사전에 훈련합니다.

그 다음, 대용량 마스킹 토큰을 고유한 Sentinel 토큰으로 대체합니다. 이 Sentinel 토큰은 어휘수에 포함되는 토큰이지만, 실제 입력되는 텍스트 단어에는 해당되지 않습니다. 디코더는 마스크 토큰 시퀀스를 Auto-regressive 하는 방식으로 재구성하는 작업을 이어 수행하며 결국 Sentinel 토큰과 예측 토큰이 차례대로 출력됩니다.

 

아래 그림을 통해 로직을 확인할 수 있습니다.

출처 : Deeplearning.AI

 

대표적인 모델로는 T5, BART 모델이 존재합니다.

텍스트 입력이 input, output으로 모두 사용되는 경우에 쓰이며, 따라서 아래 Task들에 적합 합니다.

  • Translation
  • Text Summarization
  • Question Answering(QA)