:)
[NLP] Improving Language Understanding by Generative Pre-Training 본문
Paper Review
[NLP] Improving Language Understanding by Generative Pre-Training
andre99 2025. 2. 7. 09:11Abstract
- 자연어 이해는 텍스트 수반, 질문 답변, 의미적 유사성 평가, 문서 분류와 같은 다양한 작업으로 구성.
- 텍스트 자료는 많이 있지만, 이 자료들을 특정한 작업에 맞게 사용할 수 있도록 레이블링된 자료는 많지 않음. 이렇게 레이블링된 자료가 부족하기 때문에, 어떤 특정한 일을 잘 수행할 수 있도록 학습된 모델이 제대로 성능을 내기가 어려움.
- 이 논문은 레이블이 없는 다양한 텍스트를 이용해 먼저 언어 모델을 생성적으로 사전 학습시킨 다음, 이 모델을 각기 다른 특정 작업에 맞게 미세 조정시키면, 해당 작업들을 훨씬 더 잘 수행할 수 있다는 것을 보여줌.
- 이전 접근 방식과 달리, 모델 구조를 거의 바꾸지 않고도 작업에 맞는 입력 변환을 사용해 효과적으로 학습할 수 있는 방법 사용.
1. Introduction
- 자연어 처리에서 원시 텍스트로부터 효과적으로 학습하는 것이 중요.
- 대부분의 딥러닝 방법은 많은 수동으로 레이블이 지정된 데이터가 필요하며, 이는 레이블이 부족한 분야에서 제한적.
- 레이블이 없는 데이터에서 언어 정보를 활용하는 모델은 추가 레이블링의 시간과 비용을 줄일 수 있으며, 비지도 학습으로 좋은 표현을 배우는 것이 성능 향상에 도움이 됨.
- 기존 접근 방식의 한계
- 레이블이 없는 데이터에서 효과적인 학습을 위한 최적화 목표가 무엇인지 불확실함.
- 학습된 표현을 목표 작업에 효과적으로 전이하는 방법 부재.
- 레이블이 없는 데이터를 활용하기 어려웠으며, 레이블이 있는 데이터를 필요로 하는 경우가 많았음. 이로 인해 새로운 작업을 시작할 때마다 많은 레이블링 작업이 필요했음.
- 제안된 접근 방식
- semi-supervised = unsupervised pre-training + supervised fine-tuning
- 목표: 적은 적응으로 다양한 작업에 전이 가능한 보편적 표현을 학습
- 구성: 대량의 라벨이 없는 텍스트와 수동으로 주석이 달린 데이터 세트 사용
- 훈련 단계
- 언어 모델링 목표로 초기 모델 파라미터를 학습
- 해당 목표 작업에 맞게 파라미터를 조정
- 모델: Transformer 모델 사용
- 작업별 입력 변환을 사용하여 사전 학습된 모델의 아키텍처를 최소한으로 변경하면서 효과적으로 미세 조정 가능함.
2. Related Work
Semi-supervised learning for NLP
- 시퀀스 레이블링이나 텍스트 분류와 같은 작업에 적용
- 기존 접근 방식
- 레이블이 없는 데이터 사용 → 지도 학습 모델의 특징으로 활용
- 최근 단어 임베딩을 사용하여 성능 향상 가능 → 주로 단어 수준의 정보만을 전이하는 한계
- 제안된 접근 방식
- 레이블이 없는 데이터에서 단어 수준 이상의 의미를 학습하고 활용하는 방법
Unsupervised pre-training
- 좋은 초기화 지점을 찾는 것을 목표
- 기존 방법
- LSTM 모델 사용 → 예측 능력이 짧은 범위로 제한적
- 제안된 접근 방식
- Transformer 네트워크 선택 → 더 넓은 범위의 언어 구조를 포착 가능
- 전이 과정에서 모델 아키텍처의 최소한의 변경만을 요구함.
Auxiliary training objectives
- 비지도 사전 학습만으로도 목표 작업에 중요한 여러 언어적 측면을 이미 학습할 수 있다는 것을 보여줌
3. Framework
- 대량의 텍스트 말뭉치에 대해 대용량 언어 모델을 학습 → 레이블이 있는 데이터를 사용해 미세 조정
3-1. Unsupervised pre-training
- 주어진 비지도 텍스트 데이터 U에서 언어 모델링 목표를 사용하여 각 토큰이 이전 토큰들을 기반으로 나타날 확률을 최대화하려고 함.
- 다층 Transformer 디코더 사용
- 입력 토큰들은 임베딩 행렬과 위치 임베딩 행렬을 사용하여 변환됨.
- 모델 파라미터 Θ는 확률을 최대화하는 방향으로 학습되며 이는 확률적 경사 하강법을 사용하여 최적화됨.
3-2. Supervised fine-tuning
- 모델을 초기 언어 모델링 목표로 학습한 후, 라벨이 있는 목표 작업에 모델의 파라미터를 적응시킴.
- 목표: 라벨 y를 예측하는 확률을 최대화 ⇒ 보조 목표를 포함한 결합 목표 함수를 최적화
3-3. Task-specific input transformations
- 구조화된 입력을 순차적으로 변환하여 모델이 처리할 수 있도록 하는 '트래버설(traversal) 방식' 사용
- Textual entailment
- 전제와 가설을 결합하고, 중간에 구분자 토큰을 추가하여 하나의 시퀀스로 만듦
- Similarity
- 각 문장 순서에 따른 두 개의 시퀀스를 독립적으로 처리하고, 그 결과를 더하여 최종 출력 레이어에 전달
- Question Answering and Commonsense Reasoning
- : 문맥, 질문, 각 답변 후보를 결합하고, 구분자 토큰을 추가하여 각각의 시퀀스를 독립적으로 처리한 후, 소프트맥스 레이어를 통해 가능한 답변들에 대한 확률 분포를 계산
4. Experiments
4-1. Setup
- Unsupervised pre-training
⇒ 대량의 텍스트 데이터를 사용해 모델을 미리 학습시켰다. 이 과정에서는 Transformer라는 구조를 사용했고, 이 모델은 문장을 더 잘 이해하기 위해 여러 층을 가지고 있다. 이 과정을 통해 모델이 언어의 기본적인 구조와 패턴을 학습하게 된다.
- Model specifications
- 모델 구조: 12층 디코더 전용 Transformer, 상태 차원 768, 어텐션 헤드 12개.
- 피드포워드 네트워크: 3072차원.
- 최적화: Adam 최적화 기법, 학습률은 초기 2000 업데이트 동안 선형 증가 후 코사인 스케줄로 감소.
- 훈련 설정: 512 토큰 시퀀스를 사용하여 64 미니 배치로 100 에포크 동안 훈련.
- 정규화 및 초기화: LayerNorm, 간단한 가중치 초기화(N(0, 0.02)), BPE 어휘 40,000개, 드롭아웃 비율 0.1.
- 정규화 및 활성화 함수: L2 정규화 (w = 0.01), GELU 활성화 함수, 학습된 위치 임베딩 사용.
- 텍스트 전처리: ‘ftfy’와 ‘spaCy’ 사용.
- Fine-tuning details
- 하이퍼파라미터 설정: 비지도 사전 학습의 하이퍼파라미터 재사용, 분류기에 드롭아웃 비율 0.1.
- 학습률 및 배치 사이즈: 학습률 6.25e-5, 배치 사이즈 32.
- 훈련 기간: 3 에포크로 대부분의 작업을 훈련, 학습률 0.2%의 학습에서 선형 감소, 보조 목표의 가중치 λ는 0.5.
⇒ 사전 학습한 모델을 다양한 작업에 맞게 조금씩 조정했다. 이 때도 몇 가지 설정을 사용해 모델을 더욱 효율적으로 만들었다.
4-2. Supervised fine-tuning
- Natural Language Inference
- 작업 설명: 두 문장 쌍을 읽고 관계를 판단 (함의, 모순, 중립).
- 데이터셋: SNLI, MNLI, QNLI, SciTail, RTE.
- 성능:
- MNLI: 82.1 (최신 SOTA는 80.2)
- SciTail: 88.3 (최신 SOTA는 83.3)
- QNLI: 88.1 (최신 SOTA는 82.3)
- SNLI: 89.9 (최신 SOTA는 89.3)
- RTE: 56.0 (최신 SOTA는 61.7)
- 결과: 대부분의 데이터셋에서 기존의 최고 성능을 초과함.
- Question answering and commonsense reasoning
- 작업 설명: 질문 응답은 중고등학교 시험 질문과 관련된 패세지를 처리하며, 상식 추론은 이야기의 올바른 결말을 선택.
- 데이터셋: RACE, Story Cloze Test.
- 성능:
- Story Cloze Test: 86.5 (최신 SOTA는 77.6)
- RACE: 62.9 (매우 큰 개선, 이전 SOTA는 51.2)
- 결과: 긴 문맥을 잘 처리함을 입증.
- Semantic Similarity
- 작업 설명: 두 문장이 의미적으로 동일한지 여부를 예측.
- 데이터셋: MRPC, QQP, STS-B.
- 성능:
- STS-B: 82.0 (최신 SOTA는 81.0)
- QQP: 70.3 (최신 SOTA는 66.1)
- 결과: 대부분의 데이터셋에서 최신 성능 초과.
- Classification
- 작업 설명: 문장의 문법적 올바름과 감정 분석.
- 데이터셋: CoLA, SST-2.
- 성능:
- CoLA: 45.4 (최신 SOTA는 35.0)
- SST-2: 91.3 (경쟁력 있는 성능)
- 결과: GLUE 벤치마크에서 72.8로 이전 최고 성능 68.9를 초과
5. Analysis
- Impact of number of layers transferred
- 사전 학습된 모델에서 더 많은 레이어를 전이할수록 감독 작업에서 성능이 개선되며, 각 추가 레이어가 점진적인 성능 향상에 기여
- 깊은 사전 학습 모델이 작업 특정 결과를 향상시키는 데 중요한 역할을 한다는 것을 강조
- Zero-shot Behaviors
- 제로샷 성능은 훈련이 진행됨에 따라 안정적이고 지속적으로 향상
- Transformer 아키텍처는 LSTM에 비해 제로샷 성능의 일관성을 유지하며, 다양한 작업에 대해 유용한 기능을 학습하는 데 효과적
- Ablation studies
- 보조 언어 모델 목표는 특히 대규모 데이터셋에서 성능 향상에 기여
- Transformer는 LSTM에 비해 전체적으로 더 높은 성능을 보이며, LSTM이 우수한 경우는 매우 제한적
- 사전 학습이 없을 경우 성능이 현저히 저하되며, 사전 학습된 모델이 다양한 작업에서 우수한 성능을 발휘
6. Conclusion
- 성적 사전 학습(generative pre-training)과 판별적 미세 조정(discriminative fine-tuning)을 통해 단일 작업 비특화 모델로 뛰어난 성능을 달성 가능.
- 모델을 긴 연속 텍스트로 구성된 다양한 코퍼스에서 사전 학습시키는 것을 통해, 모델은 상당한 세계 지식과 장기 의존성 처리 능력을 획득
- 사전 학습을 통한 성능 향상이 가능한 것을 보여주며, 특히 Transformer 모델과 긴 범위 의존성을 갖춘 텍스트 데이터셋에서 효과적임을 시사
- 비지도 학습의 가능성 제시, 다른 도메인에서도 비지도 학습이 어떻게 작동하는지에 대한 이해를 향상시킬 수 있는 기반을 마련
- 비지도 학습을 통해 판별적 작업에서 성능 향상이 가능하다는 것을 입증, Transformer 모델과 긴 연속 텍스트 데이터셋이 이 접근법에 적합하다는 것을 보여줌