https://www.cs.ubc.ca/~amuham01/LING530/papers/radford2018improving.pdf
1. Introduction
- NLP분야에서 labeled 데이터는 매우 부족하기 때문에 해당 논문에서는 unlabeled 된 데이터를 활용해 generative pre-training과정을 거친 후, 특정 task에 맞는 labeled 데이터를 파인 튜닝하여 성능을 도출합니다.
- 기존의 딥러닝 모델은 대부분 대량의 수작업 라벨링 데이터를 요구하지만, 이런 데이터는 많은 도메인에서 확보하기 어렵고 비용도 많이 듭니다. 따라서 라벨이 없는 데이터를 효과적으로 활용할 수 있는 방법이 중요합니다.
- 논문에서는 Transformer 모델을 사용해 긴 문맥을 잘 처리할 수 있도록 학습하고, 이후에는 구조를 크게 바꾸지 않고도 다양한 태스크에 적응할 수 있도록 최소한의 수정만으로 파인 튜닝한다. 그 결과 자연어 추론, 질문 응답, 의미 유사도, 텍스트 분류 등 총 12개의 태스크 중 9개에서 기존 최고 성능을 뛰어넘는 결과를 보입니다.
- 특히 RACE, Story Cloze 같은 긴 문맥을 요구하는 과제에서 높은 성능 향상이 있었으며, 제로샷 실험에서도 Transformer 기반 사전학습 모델이 유용한 언어 정보를 학습하고 있음을 확인합니다.
2. Related Work
Semi-supervised learning
- 초기에는 라벨이 없는 데이터를 이용해 단어 수준이나 구 수준의 통계 정보를 추출하고, 이를 지도 학습 모델의 피쳐로 활용했습니다.
- 이후에는 대규모 unlabeled 말뭉치로부터 학습한 단어 임베딩(예: Word2Vec, GloVe)을 다양한 자연어처리 과제에 적용해 좋은 성능을 보여왔지만 대부분 단어 수준 정보에 그쳤고, 본 논문은 문장 수준 이상의 더 풍부한 의미 표현 학습을 목표로 두었습니다.
Unsupervised pre-training
- 비지도 사전학습은 반지도 학습의 한 형태로서, 지도 학습 시 더 나은 초기 가중치를 제공하는 것을 목표로 합니다. 이미지 분류, 음성 인식, 기계 번역 등 다양한 분야에서 그 효과가 입증된 바 있으며, 최근에는 언어 모델링을 통해 신경망을 사전학습한 후, 특정 태스크에 파인튜닝하는 방식이 활발히 연구되고 있습니다.
- 기존 연구에서는 LSTM 기반 모델을 사용하여 문장을 이해하였으나, 본 논문에서는 Transformer를 활용하여 더 긴 범위의 언어 구조를 포착할 수 있게 하였습니다. 그 결과 다양한 과제에서 더 우수한 성능을 얻을 수 있음을 실험을 통해 확인하였습니다.
Auxiliary training objectives
- 보조 학습 목적(auxiliary objectives)은 반지도 학습의 또 다른 방식으로, 본래 태스크 이외에 언어 모델링이나 품사 태깅 등 여러 부가적인 과제를 함께 학습시켜 모델의 일반화 성능을 높이는 방식입니다.
- 해당 논문에서도 일부 실험에 보조 목적을 포함시키고 있으며, 이를 통해 특히 대규모 데이터셋에서 성능 향상이 나타났습니다. 다만 실험 결과, 이미 사전학습 단계에서 상당한 언어적 정보가 학습된다는 점도 함께 보여주고 있습니다.
3. Framework
- 학습 절차는 대규모 텍스트에서 언어 모델을 학습한 후 라벨이 부여된 데이터로 모델을 판별 작업에 맞게 미세조정합니다.
3.1 Unsupervised pre-training
- 이 논문에서는 비지도 학습 데이터셋 U = {u₁, ..., uₙ}에 대해 표준 언어 모델링 목표를 사용하여 다음과 같은 확률을 최대화하는 방식으로 학습을 진행합니다.
- 구체적으로, 각 토큰 uᵢ가 앞선 k개의 문맥 토큰들(ui−k, ..., ui−1)을 기반으로 등장할 확률 P(uᵢ|...)를 최대화하며, 이 확률은 신경망 모델을 통해 계산됩니다. 신경망의 매개변수 Θ는 확률적 경사 하강법(Stochastic Gradient Descent)을 이용해 학습됩니다
- 실험에서는 언어 모델로 다층 Transformer 디코더 구조를 사용하며, 이는 기존 Transformer의 한 변형입니다. 이 모델은 입력된 문맥 토큰에 대해 다중 헤드 자기 주의(Multi-head Self-Attention) 연산을 수행한 뒤, 각 위치별 피드포워드 레이어를 통과시켜 최종적으로 다음 토큰의 확률 분포를 출력합니다.
- 구체적인 계산 과정은 다음과 같습니다. 먼저 입력 문맥 U는 토큰 임베딩 행렬 We와 위치 임베딩 행렬 Wp를 통해 초기 히든 상태 h₀로 변환됩니다. 이후 n개의 Transformer 블록을 거치며 각 층의 히든 상태가 업데이트되고, 마지막으로 softmax 함수를 이용해 다음 토큰의 확률 분포를 생성합니다.
3.2 Supervised fine-tuning
- 모델을 언어 모델링 목적 함수로 학습한 후에는, 이를 지도 학습 방식의 목표 작업에 맞게 파인튜닝합니다. 이를 위해 입력 시퀀스와 라벨 쌍으로 이루어진 지도 학습 데이터셋 C를 사용합니다. 입력된 시퀀스는 사전 학습된 모델을 통과해 마지막 Transformer 블록의 출력 벡터를 얻고, 이 벡터는 선형 출력 계층을 거쳐 라벨의 확률 분포를 예측하는 데 사용됩니다.
- 이 과정을 통해 지도 학습용 손실 함수가 정의되며, 전체 학습은 이 손실을 최대화하는 방향으로 진행됩니다.
- 또한 언어 모델링 목적을 보조 손실로 함께 사용하면 학습의 일반화 성능을 높이고 수렴 속도를 빠르게 하는 데 도움이 되는 것으로 나타났습니다. 이를 반영해, 지도 학습 손실과 언어 모델링 손실을 가중치 λ와 함께 결합한 새로운 손실 함수를 최적화합니다.
- 전체 파인튜닝 과정에서 추가되는 매개변수는 출력 계층의 가중치와 몇 개의 구분 토큰 임베딩뿐입니다.
3.3 Task-specific input transformations
- Classification: 기존 분류와 동일하게 진행합니다.
- Textual entailment: 전제(premise)와 가정(hypothesis) 두가지 토큰 사이에 $구분 문자를 사용하여 한번에 진행합니다.
- Similarity: 두 문장의 유사성을 비교할 때 문장 순서를 반영하기 위해 문장의 순서를 바꾸어 마지막 linear layer에 들어가기 전 element-wise로 합하여 출력합니다.
- Question Answering and Commonsense Reasoning: 이 task에서는 지문 , 질문 , 정답 리스트가 있습니다. 각 정답 리스트 k개 만큼의 각각 모델에 forward 한 후, 리스트들의 softmax를 구해 가장 정답에 가까운 값을 구합니다.
4 Experiments
4.1 Setup
- 비지도 사전학습에는 BooksCorpus 데이터를 사용합니다. 이 데이터는 약 7,000권의 장편 소설로 구성되어 있으며, 긴 문맥의 연속성을 갖춘 텍스트로 구성되어 있어서 모델이 장거리 의존성을 학습하는 데 유리합니다.
- 모델은 12개의 Transformer 디코더 레이어로 구성되어 있으며, 각 레이어는 768차원의 상태와 12개의 셀프 어텐션 헤드를 사용합니다. 피드포워드 네트워크는 3072차원의 내부 상태를 사용합니다.
- 최적화는 Adam을 사용하며, 학습률은 초기에 선형적으로 증가하다가 이후 코사인 스케줄을 통해 감소시킵니다. 총 100 에폭 동안 학습하며, 미니배치는 512 토큰 길이의 연속 시퀀스 64개로 구성됩니다.
- 가중치 초기화는 평균 0, 표준편차 0.02인 정규분포를 사용하고, dropout은 0.1로 설정합니다. Byte Pair Encoding 기반의 어휘(40,000개)를 사용하며, GELU 활성화 함수와 학습된 위치 임베딩을 사용합니다.
- 텍스트 전처리는 ftfy와 spaCy를 활용하여 공백과 구두점 등을 정제하며, 파인튜닝에서는 대부분의 하이퍼파라미터를 사전학습과 동일하게 사용하며, 분류기에는 dropout 0.1을 추가합니다. 일반적으로 3 에폭의 학습으로도 충분한 성능을 보입니다. 학습률은 6.25e-5이며, warmup 비율은 0.2%입니다.
4.2 Supervised fine-tuning
- 자연어 추론(NLI)에서는 SNLI, MultiNLI, QNLI, SciTail, RTE 등의 데이터셋을 사용하여 평가합니다. 본 모델은 기존 방법들보다 MNLI에서 1.5%, SciTail에서 5%, QNLI에서 5.8%, SNLI에서 0.6% 더 높은 성능을 보이며, 여러 문장을 통합적으로 이해하고 모호한 언어 현상을 처리하는 데 강점을 보입니다.
- 질문 응답과 상식 추론에서는 RACE와 Story Cloze 데이터셋을 사용하며, RACE는 중고등학교 수준의 영어 지문과 질문을 포함하고 있습니다. 본 모델은 Story Cloze에서 기존보다 8.9%, RACE 전체에서 5.7% 향상된 성능을 보이며 장문 이해 능력을 입증합니다.
- 문장 유사도 판단에서는 MRPC, QQP, STS-B 데이터셋을 사용하며, STS-B에서 1포인트, QQP에서 4.2%의 향상을 보입니다.
- 문장 분류 과제에서는 CoLA와 SST-2를 사용하며, CoLA에서 45.4의 점수로 기존 최고점 35.0을 크게 상회합니다. SST-2에서는 91.3% 정확도를 달성하며, 전반적인 문법 판단과 감성 분석 능력을 검증합니다.GLUE 벤치마크 기준 전체 점수는 72.8로, 이전 최고 점수 68.9보다 높은 결과를 보입니다.
- 전체적으로 12개 데이터셋 중 9개에서 새로운 최고 성능을 기록하였으며, 다양한 크기의 데이터셋에 대해 안정적으로 잘 작동함을 보입니다.
5. Analysis
Impact of number of layers transferred
- 본 논문은 사전학습된 언어 모델에서 몇 개의 층을 전이하느냐에 따라 성능이 어떻게 달라지는지를 실험했습니다. 아래 그림에서는 MultiNLI와 RACE 데이터셋에 대해 전이하는 층 수에 따라 성능이 어떻게 변화하는지를 시각화하였습니다.
- 그 결과, 일반적으로 임베딩만 전이해도 성능이 향상되며, Transformer의 각 층을 추가로 전이할수록 성능이 지속적으로 증가하는 경향을 보였습니다. MultiNLI의 경우, 전체 층을 전이하면 약 9%의 성능 향상이 있었습니다. 이 결과는 사전학습된 모델의 각 층이 목표 과제를 해결하는 데 유용한 정보를 담고 있음을 시사합니다.
Zero-shot Behaviors
- Transformer 기반 언어 모델의 사전학습이 효과적인 이유를 이해하기 위해, 사전학습 중 모델이 다양한 과제를 수행하려는 경향이 있는지를 살펴보았습니다. 위 그림의 오른쪽에서는 사전학습이 진행됨에 따라 zero-shot 성능이 어떻게 진화하는지를 보여줍니다.
- 여기서 제시된 가설은, 모델이 언어 생성 능력을 높이기 위해 다양한 자연어 과제를 내재적으로 학습한다는 것입니다. 실험 결과, 이러한 heuristic 기반 zero-shot 접근은 훈련이 진행됨에 따라 성능이 점진적으로 향상되었으며, Transformer의 구조적 특성이 전이 학습에 도움이 된다는 것도 함께 관찰되었습니다. LSTM과 비교했을 때 Transformer는 성능의 일관성이 높고, LSTM은 zero-shot 성능의 분산이 컸습니다.
Ablation studies
- Table 5에서는 세 가지 ablation 실험을 통해 모델 구성 요소의 중요도를 분석했습니다.
- 보조 LM 목적 없이 파인튜닝: 보조 언어 모델 목적이 없을 경우, NLI와 QQP 데이터셋에서 성능 저하가 있었으며, 특히 대규모 데이터셋에서는 이 보조 목적이 도움이 된다는 경향을 보였습니다.
- Transformer vs. LSTM 비교: 동일한 학습 프레임워크로 단일 층 2048 유닛 LSTM을 비교한 결과, 평균 점수에서 5.6포인트 하락이 있었습니다. MRPC 하나의 과제를 제외하고는 Transformer가 더 높은 성능을 보였습니다.
- 사전학습 없는 Transformer: 사전학습 없이 지도학습만 수행한 모델은 모든 과제에서 성능이 저하되었으며, 전체적으로 평균 14.8% 낮은 성능을 기록했습니다.
6. Conclusion
- generative pre-training 와 discriminative fine-tuning을 통해 단일 작업 비특화 모델로 강력한 자연어 이해를 달성하는 프레임워크를 소개하였습니다.
- 긴 연속 텍스트로 구성된 다양한 코퍼스에 대해 사전학습을 수행함으로써, 우리 모델은 상당한 세계 지식과 장거리 의존성(long-range dependencies)을 처리하는 능력을 획득하였고, 이는 이후 질문 응답, 의미 유사도 평가, 함의 판별, 텍스트 분류 등의 판별 과제를 푸는 데 효과적으로 전이되었습니다.
- 우리는 실험한 12개의 데이터셋 중 9개에서 기존 최고 성능(state of the art)을 향상시켰습니다.
- 또한, 어떤 모델(트랜스포머)과 어떤 데이터셋(장거리 의존성이 있는 텍스트)이 이 접근법에 적합한지에 대한 실마리도 제공하였습다.
Reference