0. Abstract
- QA, 기계 번역, 독해, 요약과 같은 NLP의 task는 task에 적합한 데이터셋에 의한 Supervised Learning방식으로 접근해왔습니다. 그러나 본 논문에서는 수백만개의 웹페이지로 구성된 새로운 데이터셋인 WebText를 사용하여 LM이 Supervised Learning 없이도 NLP task를 학습하기 시작함을 증명합니다
- LM에서 생성된 답변은 4개중 3개의 성능과 일치하거나 능가하였습니다
- LM의 용량은 zero-shot task transfer의 성공에 필수적이고, 로그 선형 방식으로 성능이 향상됩니다
- GPT-2는 1.5억개의 파라미터를 가진 모델
1. Introduction
- 현재(2019)의 ML 시스템은 대규모 데이터셋, 고용량 모델, Supervised Learning방식을 결합하면 탁월한 성능을 발휘합니다. 그러나 우리는 많은 task를 수행할 수 있는 보다 일반화된 시스템으로 나아가고자 합니다.
- 각 task에 수동으로 학습 데이터셋을 생성하고 Labelling 작업을 할 필요가 없도록 하고자 합니다.
- ML 시스템은 원하는 task에 맞는 데이터셋을 학습하기에 해당 task에 대해서는 훌륭한 성능을 보이지만, 현재의 ML 시스템은 일반화를 위해 매우 많은 양의 training 데이터셋이 필요하고, Multi-task를 위한 양질의 training 데이터셋을 확보하는 것과 합리적인 Object function을 설정하는 것은 매우 어려운 작업입니다.
- NLP task에서 최고의 성능을 보여주는 모델은 Pre-training과 Supervised fine-tuning을 결합한 모델
- 최근(2019년) 연구 방향은 task-specific architecture가 중요한게 아닌 self-attention block을 통한 transfer-Learning방식이 중요(이러한 방식도 task를 수행하기 위한 fine-tuning과정에서 supervised Learning방식이 필요)
본 논문에서는 Unsupervised Learning 기반 언어 모델 GPT-2를 소개합니다. GPT-2는 기존 LM의 트렌드를 이어 transfer Learning방식을 사용하며, 어떠한 파라미터나 architecture 수정 없이 zero-shot으로 down-stream task를 수행합니다.
2. Approach
가장 중요한 접근법은 Language Modeling
여기서 Language Modeling이란 N개의 단어 token S로 구성된 집합에서 문장의 분포를 추정하는 것을 의미
transformer와 같은 self-attention architecture의 등장으로 LM의 조건부확률을 계산하는 표현력이 향상되었습니다.
단일 task를 수행할 때의 probabilistic framework는 위의 식과 같이 P(output | input)으로 표현하지만, Multi-task를 수행해야하는 general system에서의 식은 P(output | input, task)으로 표현되고, 이는 input뿐만 아니라 task도 같이 주어진 상태에서 output의 probability를 계산해야됨을 의미합니다. 기본적으로, language modeling은 별도의 supervision 없이도 이러한 decaNLP의 task들을 학습할 수 있다. Supervised objective의 경우 sequence의 subset에서 evaluation되는 것을 제외하고는 Unsupervised objective와 동일하기 때문에, unsupervised objective의 전역 최솟값과 supervised objective가 같습니다. 저자들은 Unsupervised approach setup의 Large Language Model은 Multi-task Learning을 수행할 수 있음을 확인하였지만, Supervised approaches보다 학습 속도가 매우 느렸다고 합니다.
2-1. Training Dataset
다양한 Domain과 context에서 natural language demostrations을 모으기 위해 가능한 크고 다양한 데이터셋을 만들고자 하였습니다. 초기에는 Common Crawl방식을 사용하려고 하였지만, 데이터의 Quality issue로 인하여 reddit에서 karma 3개 이상을 받은 outbound link를 scrap하여 WebText 데이터셋을 완성하였다고 합니다. WebText 데이터셋은 2017년 12월 이후 Link는 포함하지 않고, 8백만개의 document, 40GB의 text로 구성되어 있습니다.
2-2. Model
transformer기반의 모델인 GPT-1의 구조를 약간 수정하였다고 합니다.
수정사항
- layer normalization이 각 sub-block의 input부분으로 이동, 마지막 self-attention block에도 적용
- 모델의 depth에 따라 residual path의 누적에 관한 intialization 변경
- Residual Layer의 weight에 1/ 1을 곱해서 scaling 진행
- vocabulary size는 50257로 증가
- context vector의 크기 1024로 증가
- batch size도 512로 증가
3. Experiments
위와같이 4개의 LM을 학습하고 벤치마킹을 진행하였습니다. 가장 작은 모델은 GPT-1과 동일하며, 두번째로 작은 모델은 BERT의 가장 큰 모델과 동일합니다. 모든 모델이 WebText 데이터셋에 대해 Underfitting이 발생하여 더 많은 학습시간이 부여된다면 더 좋은 성능이 나올것이라 합니다.
3-1. Language Modeling
저자들은 WebText Language Model이 zero-shot domain test를 진행하면 어떠한 성능을 보이는지 파악하는 것에 관심이 있었습니다. WebText Language Model의 zero-shot domain 성능은 Table 3과 같고, 8개의 데이터셋에서 1개를 제외한 모든 곳에서 SOTA를 달성하였습니다. PTB나 WikiText-2와 같이 크기가 작은 데이터셋에서 뛰어난 성능을 발휘하였습니다.
3-2. Children's Book Test
CBT의 경우 품사에 따른 LM의 성능을 측정하는 데이터셋입니다. 기존의 SOTA 모델은 가볍게 능가하였으며, 모델 크기가 증가함에 따라 성능이 증가하고, 인간의 수준에 다가가는 결과를 가져왔습니다.
3-3. LAMBADA
LAMBADA 데이터셋은 LM의 Long-term dependency를 측정하는 데이터셋입니다. GPT-2는 Table 3에서 확인할 수 있듯이 PPL과 ACC에서 모두 SOTA를 달성하였습니다.
3-4. Winograd Schema Challenge
Winograd schema는 해당 모델이 text의 모호함을 얼마나 잘 해결할 수 있는지 측정하는 commosense reasoning 능력을 측정합니다. 모델의 크기가 큰 WebText LM은 이전 SOTA모델의 성능을 뛰어넘는 성능을 보여줍니다.
3-5. Reading Comprehension
Conversation Question Answering dataset(CoQA)는 7개의 다른 domain으로부터 추출된 document에서 question asker와 question answerer의 대화로 구성된 데이터셋입니다. CoQA는 모델의 Reading Comprehension 능력과 대화 이력에 기반한 답변 능력을 확인합니다. Fine-tuning을 진행한 BERT가 89의 F1 score를 달성하였고, fine-tuning없이 zero-shot의 환경에서 학습한 GPT-2는 55의 F1 score를 달성한 것에 저자들은 강조를 하였습니다.
3-6. Summarization
CNN and Daily Mail 데이터셋을 사용하여 모델의 Summarization 능력을 실험하였습니다. Table 4를 보면 GPT-2는 Summarization의 능력은 뛰어나지 않음을 알 수 있습니다.
3-7. Translation
WMT-14 English-French test set을 통해 GPT-2의 Translation 능력 평가를 진행하였습니다. 결과는 5 BLEU score를 얻어 기존 Unsupervised Translation 연구보다 낮은 성능을 보였습니다. WMT-14 French-English test set에서는, 11.5 BLEU score를 얻었지만, 타 모델에 비해서는 좋지 않은 성능을 보였다고 합니다.
3-8. Question Answering
GPT-2는 SQuAD와 같은 reading comprehension에서 사용되는 정확하게 일치하는지에 대한 여부를 지표로 평가되었을 때 4.1%의 정확도로 기존 모델들보다 5.3배 높은 정확도를 보여주었습니다. WebText LM중에서 크기가 가장 작은 모델의 경우 1%의 정확도도 넘지 못하였는데, 이는 모델의 크기가 QA능력에 있어 매우 중요한 요인이라는 것을 시사합니다. GPT-2가 가장 신뢰할 수 있는 답변이라고 한 1%에 대해 63%의 ACC를 보였습니다. Table 5를 통해 가장 자신있는 30개의 질문에 대한 답변을 확인할 수 있습니다.
4. Generalization vs Memorization
Train 데이터셋과 Test 데이터셋의 Overlap은 모델의 Memorization을 유도하고, Generalization을 왜곡할 수 있습니다. 위의 표는 벤치마크 데이터셋의 Overlap 수준을 보여줍니다.
Memorization의 수치는 hold-out set과의 성능비교를 통해서도 확인할 수 있습니다. 위의 그래프를 보면 Test 데이터셋과 Train데이터셋의 성능은 거의 비슷하고, 모델 크기에 따른 성능도 증가하고 있습니다. 이는 Memorization이 모델 성능 개선에 큰 요인이 아님을 시사하며, 모델이 아직 Underfitting이 되어 더 개선될 수 있음을 보여줍니다.
7. Conclusion
충분히 크고 다양한 데이터 세트에서 LLM을 학습하면 많은 도메인과 데이터셋에서 우수한 성능을 발휘할 수 있습니다. zero-shot GPT-2는 8개 Language Modeling 데이터셋 중 7개에서 SOTA 성능을 보였습니다. Zero-shot setting에서 학습한 GPT-2는 exlplicit supervision 없이도 다양한 Task를 수행할 수 있음을 보여주었습니다.
(내 생각)
2012년부터 연구하던 특정 task에 대한 성능향상은 많이 이루어졌으니, 이제는 어떠한 task가 나오더라도 일반화 능력을 갖고 있는 모델을 만들어보자는 생각을 하게 됐다(transformer 이후) 그리고 이전의 특정 task에 적합한 양질의 데이터셋을 만드는 작업이 매우 힘들었는데, Multi-task에 대한 양질의 데이터셋을 만드는 것은 더욱 어려운 작업이기에 데이터셋에 구애받지 않고, 성능을 향상시킬 수 있는 방법에 대해 고민하기 시작함
'Deep Learning > NLP' 카테고리의 다른 글
GPT-1 (Improving Language Understanding by Generative Pre-Training) (0) | 2024.03.16 |
---|---|
BERT (Pre-training of Deep Bidirectional Transformers for Language Understanding) (2) | 2024.03.15 |
Transformer (Attention is All you need) (0) | 2023.10.31 |
Attention (0) | 2023.10.27 |
Seq2Seq(Sequence to Sequence) (0) | 2023.10.27 |
댓글