이전 포스팅에서 Transformer의 개념을 정리하고, 인코더와 디코더로 구성된 아키텍처를 소개했습니다.
2023.11.02 - [NLP] Transformer 개념 정리
위 포스트에서 Transformer는 인코더와 디코더로 구성되어 있다고 소개했었습니다.
인코더와 디코더는 아키텍처의 요소이기도 하지만 각각을 단일 모델로 사용할 수도 있는습니다.
이번 포스팅에서는 Encoder Model과 Decoder Model, 둘 다 사용하는 Encoder-Decoder(Sequence-to-sequence) Model을 살펴보겠습니다.
Encoder Model
인코더 모델은 transformer 모델의 앞부분인 인코더만 단독으로 사용하여,
attention layer는 문장의 모든 단어에 접근할 수 있습니다.
대부분 "bi-directional" attention 특징을 가지며, Auto-encoding Model로도 불립니다.
일반적으로 문장의 일부를 손상시키고(ex. 마스킹) 복원하는 방식으로 학습합니다.
문장 분류, NER, 문서에서 답을 찾아내는 작업과 같이 전체 문서에 대한 이해가 필요한 작업에 적합합니다.
BERT 계열 모델이 인코더 모델에 속합니다. : BERT, ALBERT, DistilBERT, ELECTRA, RoBERTa
Decoder Model
디코더 모델은 transformer 모델의 디코더만을 사용합니다.
attention layer에서는 주어진 단어의 앞 단어에만 접근이 가능합니다.
Auto-regressive Model로 불리기도 합니다.
대부분 문장의 다음 단어를 예측하는 것으로 학습하며, 텍스트 생성에 관한 작업에 적합합니다.
GPT 계열 모델이 디코더 모델에 속합니다. : GPT, GPT-2, CTRL, Transformer XL
Encoder-Decoder Model
수행 작업을 강조할 땐 Sequence-to-Sequence(Seq2Seq) Model로 불립니다.
인코더 혹은 디코더 모델의 학습 방법을 사용할 수 있지만, 일반적으로는 더 복잡한 방법으로 학습합니다.
예를 들어, T5는 임의의 텍스트 범위(여러 단어 포함)를 하나의 마스킹 단어로 대체하여 pre-training 하고, 이 마스킹된 단어를 예측하도록 학습시킵니다.
요약, 번역, 생성형 질문 답변과 같이 주어진 입력에 따라서 새로운 문장을 생성하는 작업에 적합합니다.
대표적인 모델은 BART, mBART, Marian, T5가 있습니다.
본 포스트는 Hugging Face NLP Course를 번역하고, 일부 내용을 추가하여 작성하였습니다.
Encoder models - Hugging Face NLP Course
2. Using 🤗 Transformers 3. Fine-tuning a pretrained model 4. Sharing models and tokenizers 5. The 🤗 Datasets library 6. The 🤗 Tokenizers library 9. Building and sharing demos new
huggingface.co
'금융 데이터 분석가 > text-analysis' 카테고리의 다른 글
[NLP Transformers] input, sequence 처리 (0) | 2023.11.04 |
---|---|
[NLP Transformers] NLP 작업 순서 - Tokenizer, Model, Post Processing (0) | 2023.11.03 |
[NLP Transformers] Transformer 개념 정리 (0) | 2023.11.02 |
[NLP] MBart fine-tuning을 위한 데이터 생성 (2) | 2023.10.28 |
BERT 입력 데이터 규칙 및 코드 (0) | 2023.10.24 |