일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- Today
- Total
- activation function
- AdaGrad
- adaptive learning rate
- arithmetic reasoning
- Attention is all you need
- attention mechanism
- auto encoder
- Back Propagation Trough Time
- Backpropagation
- Bayes Theorem
- BCE
- Bert
- Bidirectional Encoder Representation from Transformer
- Binary classification
- BPTT
- Chain-of-Thought
- CNN
- commonsense reasoning
- Computer Vision
- Confusion Matrix
- convolutional neural network
- Cot
- cot reasoning
- counting
- Cross Entropy Loss
- deep learning
- degradation
- Dimension Reduction
- Few-shot
- fine-tuning
데이터 분석 일지
[Paper Review] GPT-1: Improving Language Understanding by Generative Pre-Training 본문
[Paper Review] GPT-1: Improving Language Understanding by Generative Pre-Training
-ˋˏ ♡ ˎˊ- 2024. 2. 6. 20:13본 논문에서는 Unlabeled data를 비지도학습을 사용하여 Generative Pre-Training하고, 지도학습을 사용하여 Discriminative Fine-Tuning을 거쳐 task를 수행하는 GPT-1을 제시한다. 본 연구에서는 최소한의 모델 변경을 목표로 한다.
1. Introduction
NLP에서 가공되지 않은 문장으로부터 효과적으로 학습할 수 있는 능력은 지도학습에만 의존하는 것을 완화하는 데에 중요하다. 본 연구에서는 unlabeled data에서 언어 정보를 활용할 수 있는 모델을 개발하는 것을 목적으로 둔다. 이러한 모델은 추가적인 annotation을 수집할 때 많은 시간과 비용을 아낄 수 있게 한다. 게다가 supervision이 가능한 경우에도, 비지도학습에서 좋은 representation을 학습하는 것은 상당한 performace boost가 된다.
unlabeled text에서 단어 수준 이상의 정보를 얻는 것은 한계가 있다. 첫 번째 한계는 전이에 유용한 text representation을 학습할 때 어떤 optimization 함수를 써야 하는지 불분명하다는 것이다. 두 번째 한계는 학습된 representation을 특정 task로 효과적으로 전이하기 위한 방법이 불분명하다는 것이다. 이와 같이 불분명한 방법을 한계로, semi-supervised learning을 개발하는데 한계가 생긴다.
본 연구에서는 unsupervised pre-training과 supervised fine-tuning의 결합으로 semi-supervised를 개발하는 것이 목적이다. 이를 개발하기 위한 training 절차는 다음과 같다.
- initial parameter를 학습하기 위해 unlabeled data에 대해 language modeling objective 사용
- 학습된 parameter를 supervised learning을 사용하여 target task에 적용
본 연구에서는 Transformer를 사용한다. Transformer를 사용하는 이유는 long-term dependencies를 다루는 데 있어서 더 구조화된 메모리를 제공하고, 다양한 작업에 거쳐 강력한 transfer 성능을 제공하기 때문이다. 전이하는 동안에 task-specific input adaptation을 사용하는데, 이는 최소한의 pre-trained model 구조 변경으로 효과적인 fine-tuning을 할 수 있기 때문이다.
본 연구에서는 4가지 type으로 성능을 측정한다. 이는 각각 자연어 추론, 질의응답, 의미론적 유사성, 텍스트 분류이다. 12개의 task 중 9개의 task에서 SOTA를 달성하였다.
2. Related Work
2. 1. Semi-Supervised Learning for NLP
준지도학습은 sequence labeling이나 text classification에서 흥미를 끌었다. 본 논문 발행 기준 최근에는 지도학습에서 feature로 쓰일 정도의 단어 수준 및 구 수준을 unlabeled data로 계산할 수 있었고, 이를 통해 train된 word embeddings을 사용하는 것의 이점을 증명해 왔다. 이는 적절한 vector representation으로 사용되어 왔다. 이러한 방법들은 단어 수준 정도의 정보만 transfer 할 수 있지만, 본 연구에서는 그 이상을 학습하려 노력했다.
2. 2. Unsupervised Pre-Training
unsupervised pre-training은 좋은 초기 representation을 찾는 것을 목표로 한다. 이는 image classification, speech recognition, entity disambiguation, machine translation 등의 여러 분야에서 도움이 되었다.
본 연구는 LM을 이용하여 neural network를 pre-training하고, supervision으로 target task에 fine-tuning 하는 방식과 비슷하게 진행된다. 이는 Semi-supervised Sequence Learning 논문에서 이 방식을 사용하여 text classification의 성능을 개선하였다. 이 연구에서는 pre-training 단계가 의미론적 정보를 가져오는 것에 도움을 주었지만, LSTM을 사용함으로써 prediction ability가 짧은 범위로 제한되었다. 반대로 본 연구에서는 Transformer를 사용함으로써 prediction ability를 긴 범위에서도 정보를 가져올 수 있게 한다.
또 다른 접근은 target task의 지도학습 모델을 훈련시킬 때, 보조 특성(auxiliary feature)으로써 pre-trained language나 machine translation의 hidden representation을 사용하는 것이다. 하지만 본 연구의 목적인 모델 구조 변형을 최소화하는 것과는 달리, 이러한 접근은 상당한 양의 새로운 파라미터들을 필요로 한다.
2. 3. Auxiliary Training Objectives
auxiliary unsupervised training objectives를 추가하는 것은 준지도학습의 대안책이다. 이전의 Collobert와 Weston의 연구(A unified architecture for natural language processing: Deep neural networks with multitask learning)에서 semantic role labeling을 개선하기 위하여 POS tagging, chunking, named entity recognition, 그리고 language modeling과 같은 다양한 auxiliary NLP task를 사용하였다. 이보다 더 최근에는 Rei의 연구(Semi-supervised multitask learning for sequence labeling)에서 target task objective에 auxiliary language modeling objective를 추가하였고, 이는 sequence labeling task에서 성능 향상을 보였다. 본 연구에서도 auxiliary objective를 사용하지만 unsupervised pre-training으로 이미 target task와 관련된 여러 의미론적 관점을 학습하였다.
3. Frame Work
본 연구의 training 절차는 2 stages로 구성된다. 먼저 large corpus에 대해 high-capacity language model을 학습한다. 그다음에는 labeled data를 사용 discriminative task에 모델을 적용하는 fine-tuning이 이어진다.
3. 1. Unsupervised Pre-Training
학습되지 않은 corpus U = {u_1, …, u_n}이 주어졌을 때, 본 연구에서는 likelihood를 최대화하기 위해 auxiliary objective로써 아래의 표준 language modeling objective를 사용한다. likelihood는 확률 모델링에서 특정한 데이터가 주어졌을 때, 모델의 파라미터에 대한 확률을 의미한다. 이 경우 likelihood는 학습되지 않은 corpus U가 주어졌을 때, 모델이 이 데이터를 얼마나 잘 설명하는지를 나타내는 척도이다. 따라서 likelihood를 최대화하는 것이 주어진 데이터에 대해 가장 적절한 파라미터를 찾는 것이기 때문에 likelihood를 최대화해야 된다.
$$L_1(U) = \sum_ilogP(u_i|u_{i-k}, \cdots , u_{i-1}; \Theta)$$
위의 수식에서 k는 context window(주변 단어 범위)의 크기를 나타내고, 조건부확률 P는 파라미터 Θ를 사용한 neural network로 계산되었다. 이 파라미터는 모두 SGD를 사용하여 train되었다. 위 수식을 더 쉽게 설명하자면 현재 위치 u_i의 단어를 u_(i - k)부터 u_(i - 1)까지 k개의 주변 단어에 기반하여 예측하는 확률을 곱한 것을 모든 위치 i에 대해 합한 것이다. 즉, 모델이 학습된 파라미터에 의해 어떤 단어가 다른 단어들과 어떻게 연관되는지를 확률적으로 모델링하는 것이며, 이를 통해 주어진 데이터에 대한 설명력을 높이려는 것이 위 수식의 최종 목표이다.
본 연구에서는 language model로 multi-layer인 Transformer decoder를 사용한다. 이 모델은 입력 토큰들 간의 multi-headed self-attention을 적용하고, 이를 통해 위치별 feedforward를 거쳐 target token에 대한 출력 분포(기여도)를 나타낸다. 이는 아래의 수식과 같다.
$$h_0 = UW_e + W_p$$ $$h_l - transformer\_block(h_{l-1}) \forall_i \in [1, n]$$ $$P(u) = softmax(h_nW{^T_e})$$
위 수식에서 U = {u_-k, …, u_-1}는 token의 context vector이고, n은 layer의 개수이고, W_e는 token embedding matrix이며, W_p는 position embedding matrix를 의미한다.
3. 2. Supervised Fine-Tuning
위의 표준 language modeling objective으로 모델을 training한 후, supervised target task에 파라미터를 적용한다. 본 연구에서는 레이블 y에 마다 각 instance가 연속된 입력 토큰으로 구성되어 있는 labeled dataset C를 가정한다. 여기서 input은 이전 단계인 pre-trained model을 통해 전달되어 final transformer block's activation (h_l)^m을 얻은 후, 다음 y를 예측하는 weight parameter W_y를 사용하여 추가된 linear output layer에 입력된다. 이 수식은 아래와 같다.
$$P(y|x^1, \dots, x^m) = softmax(h{^m_l}W_y)$$
위의 수식을 해석하자면, fine-tuning된 모델이 주어진 입력에 대해 각 class에 속할 확률을 계산한다. 주어진 입력에 대한 확률 분포를 계산하고, 이를 이용하여 모델이 예측한 class를 선택하게 된다. 수식은 softmax 함수를 통해 출력을 확률로 정규화하고, 이를 통해 fine-tuning된 모델이 새로운 데이터에 대한 예측을 수행한다.
또한 아래의 수식은 데이터셋 C에 대한 objective로, 주어진 데이터셋의 모든 샘플에 대해 예측된 확률 P에 로그를 취하고 이를 합산한 것이다. 이는 Cross Entropy Loss에서 음수(-) 부호를 빼준 식과 같기 때문에 objective 함수로써 최대화해야 되는 것이다.
$$L_2(C) = \sum_{(x, y)}log P(y|x^1, \dots, x^m)$$
본 연구는 fine-tuning할 때 auxiliary objective으로써 language modeling을 포함하는 것이 도움이 된다고 한다. 도움이 되는 것을 크게 두 가지로 나눌 수 있는데 이는 다음과 같다.
- supervised model의 generalization(일반화)
- 수렴 속도의 가속화
auxiliary objective의 도움을 받아 모델 일반화를 더 잘할 수 있고, 학습 속도 또한 빨라질 수 있다. 구체적으로 본 연구에서는 다음 objective를 최적화하였다. 아래의 수식은 L_1(C)에 가중치를 곱한 후 L_2(C)를 더한 것으로, L_1은 보조적인 목적 함수이기 때문에 가중치를 곱해 이 작업의 중요도를 나타낸다. 두 함수는 모두 최대화해야 되는 objective 함수로, 이를 합한 L_3(C) 또한 objective로써 최대화해야 한다.
$$L_3(C) = L_2(C) + \lambda * L_1(C)$$
전반적으로 fine-tuning 과정에서 필요한 유일한 추가 parameter는 y값을 예측하는 weight parameter W_y와 delimiter token을 위한 embedding이다. delimiter token은 구분자 토큰으로 각 문장이나 문단의 시작과 끝을 구분할 때 사용하는 토큰이다.
3. 3. Task-Specific Input Transformations
text classifcation은 구조 변경 없이도 모델을 fine-tuning할 수 있었다. question answering이나 textual entailment와 같은 다른 task에서는 document, question, answers의 문장을 두 쌍 또는 세 쌍으로 나누는 식의 입력으로 구조화했다. GPT-1의 pre-training된 모델은 인접한 text sequence로 학습하였으므로, 몇 가지 수정만 있으면 각각의 task에 적용할 수 있다. 이전 작업에서는 이전된 representation 위에 task별 세부적인 구조로 변환하였다. 어떤 접근은 각 task에 맞게 model을 customization하기 위하여 상당한 양의 재구성을 필요로 하고, 추가적인 구조 구성 요소에 대해 전이학습을 하지 않는다. 반면 본 연구에서는 traversal-style 접근을 사용하기 때문에, 구조화된 input을 pre-trained model이 수행할 수 있는 나열된 sequence로 변형할 수 있다. 이러한 입력 변환은 task별로 광범위한 변형을 피하게 도와준다.
Figure 1에서 왼쪽은 본 연구에서 사용한 Transformer의 구조와 training objective를 보여주고, 오른쪽은 각각 다른 task에서 fine-tuning의 과정인 입력 변환을 보여준다. 아래는 Figure 1에서 보여지는 각 task별 입력 변환에 대한 설명 한다.
3. 3. 1. Textual Entailment
이 task를 위해서는 전제 토큰 시퀀스인 p와 가설 토큰 시퀀스인 h를 delimiter token $로 concat한다. 즉, 이 작업에서는 transformer에 데이터를 입력하기 위하여 데이터를 변환하는 과정에서, 전제와 가설 토큰 시퀀스를 하나로 합치는데 두 시퀀스 사이에는 특정한 구분을 위해 "$" 토큰을 넣어 합치는 것이다.
3. 3. 2. Similarity
이 task는 비교되는 두 문장의 사이에 정해진 순서가 없다. 이를 반영하여 가능한 두 문장의 모든 순서로 나열된 입력 시퀀스를 delimeter token $로 concat한다. 이는 linear output layer에 입력되기 전에(Transformer 이후에) 두 sequence representation (h_l)^m을 element-wise 해야 하기 때문에 각 sentence의 입력 변환을 독립적으로 수행한다.
3. 3. 3. Question Answering and Commonsense Reasoning
이 task에서는 하나의 context document z, 하나의 question q, 하나의 possible answers set {a_k}를 가정한다. [z; q; \$; a_k]의 형식을 얻기 위해 각 possible answer에 따라 context document와 question을 delimiter token $로 concat한다. 각각의 sequence는 본 연구의 model에 따라 독립적으로 수행되고, softmax를 통해 normarlization하여 possible answer에 대한 출력 분포를 얻는다.
4. Experiments
4. 1. Setup
4. 1. 1. Unsupervised Pre-Training
본 연구에서는 모델을 학습시키기 위하여 BooksCorpus dataset을 사용한다. 이 dataset은 7,000개의 서로 다른 어드벤처, 판타지, 로맨스 장르의 출판되지 않은 책을 포함한다. 결정적으로 이 dataset은 긴 지문을 가진 dataset로, 장거리 정보를 조건으로 학습하는 방법을 배울 수 있는 연속적인 text가 이어져있다. ELMo에서 사용된 1B Word Benchmark는 대체 dataset으로, 대략 같은 크기의 dataset이지만, 문장들이 뒤섞여있어 장거리 구조를 파괴한다. 본 연구의 모델은 이 corpus에서 18.4의 매우 낮은 token level perplexity를 가진다. 참고로 토큰 수준의 perplexity는 주어진 텍스트 데이터셋을 모델이 학습한 후, 각 토큰에 대한 확률 분포를 통해 모델의 성능을 측정한다. perplexity(혼란도)가 낮을수록 모델의 성능이 좋다고 판단된다.
4. 1. 2. Model Specifications
본 연구의 모델은 크게 원래의 transformer의 작업을 수행한다. 이 모델은 masked self-attention head가 포함된 transformer의 decoder를 12개의 layer로 쌓아 학습한다. 이는 768차원으로 이루어져 있고, 12개의 attention head를 가진다. position-wise feed-forward 네트워크는 3072차원으로 이루어져 있다. 본 연구에서 사용하는 모델은 position-wise feed forward의 차원과 attention head의 입출력 차원을 제외하고 기존 transformer 모델과 동일하다. 또한 Adam optimization을 사용하였고 이때 최대 learning rate는 2.5e-4를 사용하였다. learning rate는 2000번의 update동안 선형적으로 증가하도록 설정하였고, 이후에는 cosine scheduler를 사용하여 learning rate를 설정하였다. 연속된 512 token sequences를 64개씩 minibatch로 나누어 100 epoch 학습시켰다.
모델에서 regularization을 위하여 가중치 초기화를 수행하는데 이때 평균이 0이고, 표준편차가 0.02인 정규분포를 사용했다. 또한 40,000번의 단어 합병으로 bytepair encoding을 수행하며, 0.1의 비율로 dropout을 수행한다. 0.01의 가중치로 L2 regularization을 수행한다. 활성화 함수는 기존 transformer와 다르게 GeLU를 사용한다. 또한 기존 transformer와 다르게 sinusoidal version 대신 learned position embedding을 사용한다.
4. 1. 3. Fine-Tuning Details
딱히 명시하지 않는다면 unsupervised pre-training에서 썼던 hyper-parameter는 그대로 사용한다. 추가적인 것이 있다면 classifier에 0.1의 가중치로 dropout을 수행한다. 대부분의 task에서 learning rate는 6.25e-5를 사용하고, batchsize는 32로 설정한다. 본 연구의 모델에서 finetune은 빠르게 수행되었고, training의 3 epoch 정도면 충분하게 수행되었다. 본 연구에서는 training의 0.2% 이상의 warmup을 설정하여 learning rate를 선형적으로 감소하는 scheduler를 사용하였다. 여기서 람다는 0.5로 설정되었다.
4. 2. Supervised Fine-Tuning
4. 2. 1. Natural Language Inference
recognizing textual entailment라고도 알려진 natural language inference는 여러 문장으로 이루어진 한 쌍을 읽고 각 문장 사이의 관계가 entailment(함의), contradiction(모순), neutural(중립) 중 어떤 관계인지를 판단하는 작업이다. 비록 이 작업에 최근 많은 관심이 있었지만, 이 작업은 lexical entailment, coreference, lexical and syntactic ambiguity와 같은 한계를 가지고 있다. 본 연구에서는 서로 다른 source로 다섯 가지의 dataset를 평가한다.
Table 2에서는 본 연구의 모델에 따른 각각 다른 NLI task에 대해 여러 결과와 이전 SOTA 접근법을 보여준다. 본 연구에서 사용한 방법은 5개의 dataset 중 4개의 dataset에서 이전 성능보다 향상하여 상당한 결과(MNLI에서 1.5%, SciTail에서 5%, QNLI에서 5.8%, SNLI에서 0.6% 성능 향상)를 보여준다. 이는 여러 문장에 대해 더 나은 추론을 수행하고 언어적 모호성을 처리하는 모델의 능력을 보여준다. 본 연구에서 평가한 dataset 중 작은 dataset인 RTE에서는 이전 최고 성능보다 낮은 성능을 보였다.
4. 2. 2. Question Answering and Commonsense Reasoning
question answering은 single과 multi-sentence reasoning의 관점을 필요로 하는 task이다. 본 연구에서는 최근(본 논문 출판 기준) 출시된 RACE dataset을 사용한다. 이 dataset은 중고등학교 시험에서의 영어 지문을 포함한다. 이 corpus에는 CNN이나 SQuaD와 같은 다른 데이터 세트보다 더 많은 추론 유형 질문이 포함되어 있어 장거리 context로 training된 모델에 대한 완벽한 평가를 제공한다. 추가적으로 여러 문장으로 구성된 이야기에서 두 선택지 중 올바른 결말을 선택하는 Story Cloze Test 또한 평가한다. 이 task에서도 본 연구의 모델이 SOTA를 달성했다. 이에 따라 본 연구의 모델은 효과적으로 장거리 context를 다룰 수 있다는 것을 증명한다.
4. 2. 3. Semantic Similarity
semantic similarity는 의미상 동일한 문장인지 예측하는 task이다. 이 task는 recognizing rephrasing of concepts, understanding negation, handling syntactic ambiguity에 있어 한계가 있다. 이 task를 위해 MRPC, QQP, STS-B의 3개의 dataset을 사용한다. Table 4에서 나타나 듯이 이 task에서는 3개 중 2개의 dataset에서 SOTA를 달성한다. 특히 QQP에서는 이전 최고 성능보다 4.2%의 성능 향상을 보였다.
4. 2. 4. Classification
마지막으로 text classification에서는 CoLA와 SST2 두 가지의 dataset을 가지고 진행한다. CoLA는 어떤 문장이 문법적으로 올바른지 전문가의 판단을 포함하고, training된 모델이 언어적 편향을 평가한다. SST2는 표준 이진 분류 task이다. 본 연구의 모델을 사용했더니 CoLA에서는 성능의 big jump를 보여주었고, 이는 training된 모델의 언어적 편향이 잘 학습되었음을 보여준다. SST2에서는 이전 성능과 비슷한 성능을 보여준다. 또한 GLUE benchmark에서 전체 점수 72.8점을 달성했는데, 이는 이전 최고 점수인 68.9점보다 훨씬 향상된 수치이다.
결론적으로 본 연구의 approach가 전체 12개의 task 중 9개의 task에서 SOTA를 달성했다. 이 결과는 본 연구의 approach가 각각 다른 크기의 dataset에서도 잘 수행된다는 것을 보여준다: 제일 작은 dataset = STS-B(5.7k training examples) / 제일 큰 dataset = SNLI(550k training examples)
5. Analysis
5. 1. Impact of Number of Layers Transferred
본 연구에서는 unsupervised pre-training에서 supervised target task로 이전되는 layer의 개수별로 미치는 영향을 관찰하였다. 쉽게 말해서 pre-training model에 존재하는 layer를 supervised model로 옮기는 개수만큼 성능의 변화를 확인하고자 함이다. Figure 2의 왼쪽에서는 MultiNLI와 RACE에서 각 이전된 layer의 개수별 성능을 보여준다. 또한 transferred embedding이 성능을 향상시키고, 각 transformer layer가 MultiNLI의 전체 transfer에 대해 최대 9%의 추가적인 향상을 할 수 있다는 결과를 확인하였다. 이는 pre-trained model의 각 layer가 target task를 해결하기에 유용한 기능을 포함한다는 것을 의미한다.
5. 2. Zero-Shot Behaviors
zero-shot behaviors는 모델이 어떤 특정 작업에 대한 훈련을 받지 않았지만 그 작업을 수행할 수 있는 능력을 의미한다. 즉, 모델이 처음 보는 작업이나 데이터에 대해 성능을 발휘할 수 있는 상황을 나타냅니다.
본 논문에서는 왜 transformer의 language model pre-training이 효과적인지 이해하고자 한다. 여기서 모델이 여러 작업을 수행하면서 language modeling 능력을 향상시키는 일종의 "다역" 학습이 이루어진다는 가설을 제시하고 있다. 또한, Transformer의 구조가 LSTM에 비해 전이 학습에서 높은 효율성을 발휘할 것으로 추측한다. 여기서 다역 학습(Multi-task Learning)은 하나의 모델이 여러 task를 동시에 학습하도록 설계되는 머신 러닝 기법으로, 다역 학습의 목적은 각 task에서의 성능을 개선하면서, 공통적인 특징을 모델이 공유하게 함으로써 전체 학습 성능을 향상시키는 것이다.
본 논문에서는 supervised fine-tuning 없이 task를 수행하기 위한 underlying generative model을 사용하는 일련의 heuristic solution을 설계했다. 이에 따른 효과를 Figure 2의 오른쪽에 시각화하였다. 그림을 보면 이러한 heuristic solution의 성능이 안정적이고 꾸준히 증가하는 것을 확인할 수 있다. 이는 generative pre-training이 다양한 task 관련 기능의 학습을 지원한다는 것을 의미한다. 또한 LSTM의 zero-shot performance에서는 높은 변동을 보이는 것을 확인할 수 있는데, 이는 Transformer 구조의 inductive bias가 transfer를 돕는다는 것을 의미한다.
CoLA에서의 example은 generative model이 할당하는 average token log-probability로 점수가 매겨지고 threshold에 의해 예측한다. 이루어집니다. SST2에서의 각 example에는 token을 추가하고 language model의 출력 분포를 긍정적인 단어와 부정적인 단어로만 제한하고 더 높은 확률을 가지는 쪽으로 예측한다. RACE에서는 각 document와 question에 따라 generative model이 가장 높은 average token log-probability를 할당할 때 asnwer로 예측했다. DPRD에서는 특정 문장에 있는 명시된 대명사를 두 가지의 가능한 참초체로 대체하고, generative model이 대체 후의 나머지 sequence에 대해 가장 높은 average token log-probability를 할당할 때 이를 resolution으로 예측한다.
5. 3. Ablation Studies
본 연구에서는 Table 5에서 나타나 듯이 세 가지의 ablation 연구를 수행한다. 첫째로, auxiliary LM objective 없이 fine-tuning할 때의 성능을 실험한다. 이에 따라 auxilary objective가 NLI과 QQP task를 도운다는 것을 확인할 수 있다. 전반적으로 dataset의 크기가 클 수록 auxiliary objective의 도움을 많이 받는다는 것을 알 수 있다. 둘째로, 같은 frame work에서 2048 unit의 single layer를 가지는 LSTM과 비교함으로써 transformer의 효과를 분석한다. 이에 따라 transformer 대신 LSTM을 사용하였을 때 평균 점수가 5.6 정도로 떨어지는 것을 확인할 수 있다. LSTM은 오직 MRPC에서만 transformer보다 성능이 좋았다. 마지막으로, pre-training 없이 바로 supervised target task에 학습하여 수행한 transformer와 비교한다. 이에 따라 full model보다 14.8% 떨어진 성능을 보이며, pre-training이 없다면 모든 task의 성능에 확연한 영향을 미친다는 것을 확인할 수 있다.
6. Conclusion
본 논문에서는 generative pre-training과 discriminative fine-tuning을 통한 single task-agnositic model로 strong natrual language understanding을 성취하기 위한 frame work를 소개하였다. 긴 연속적인 text로 이루어진 여러 corpus를 pre-training을 함으로써, 본 연구에서 사용한 모델은 상당한 world knowledge를 얻고 장기의존성을 수행할 수 있다. 또한 question answering, semantic similarity assessment, entailment determination, 그리고 test classification등의 discriminative task를 수행하며 12개의 task 중 9개의 task에서 SOTA를 달성하였다. discriminative task의 성능 향상을 위해 unsupervised pre-training을 사용하는 것은 machine learning 연구의 오래동안 중요한 목표였다. 본 연구에서는 상당한 성능 향상은 사실상 가능한 것임을 보여주고, 이러한 approach에 어떤 model(transformer)과 dataset(text with long-range dependencies)가 가장 적합한지를 보여준다.