자연어이해는 textual entailment¹(원문 함의), 질답, 의미 유사성 평가, 문서 분류 등 넓은 범위의 과제로 이루어져 있다. labeling 되지 않은 text corpora data가 충분하지만, 특정 task를 학습 시키기 위한 labeling된 data가 부족한 경우가 많다. 예를 들어 한국어의 경우 labeling 되지 않은 네이버 뉴스, 위키 같은 text corpora가 충분하지만 블로그의 품질을 체크하는 labeling data가 충분하지 않을 수 있다. 이러한 문제는 실상 현실세계에서 자주 발생한다. 이 논문에서는 unlabeling된 text data를 language model로 pre-training을 진행한 후, 필요한 task에 대한 fine-tuning하는 것이 효과가 있음을 보인다. 이전에 접근과 다르게, 모델 구조의 작은 수정만으로 효과적인 결과를 보여준다. 연구된 12개의 과제 중 9개에서는 state-of-the-art를 달성하였다. 예를 들어 상식추론(Cloze)에서는 8.9%, QA에서는 5.7%, 원문함의에서는 1.5% 상승하였다.
다양한 딥러닝 모델들은 레이블링 된 데이터를 이용해서 학습을 진행하지만, 헤이블된 데이터를 구하기 힘들다는 문제가 존재한다. 그렇기 때문에, 레이블링 하지 않은 데이터를 이용해서 다양한 특성들을 학습할 수 있다. 이렇게 학습한 결과를 추가적인 supervision을 통해 성능을 향상시킬 수 있다. 대표적인 pre-trained word embedding으로는 word2vec, GloVe 등이 있다. Unlabeled text를 통해서 단어 단위의 정보를 학습 하는 것은 크게 2가지 이유로 도전적이다.
이번 논문에서는 unsupervised pre-training과 supervised fine-tuning을 합친 semi-supervised 방식을 제안한다. 최종적인 목표는 다양한 task에 대해 작은 변화만으로 적용시킬 수 있는 representation을 학습 하는 것이다. 큰 규모의 레이블링 되지 않은 데이터와 task에 알맞는 레이블링된 데이터가 있다고 가정한다. 크게 두 단계로 구성된다.
모델 구조로는 Transformer를 사용한다. Transformer는 RNN과 비교했을 때, 멀리 떨어진 요소들 사이의 의존성을 학습하기에 적합하다. 모델을 transfer 해서 사용할 때 task-specific한 입력을 생성해서 사용하게 된다. 이러한 방식은 다양한 task에 해당 모델을 최소한의 변화로 fine-tunig할 수 있게 한다. 해당 모델을 4개의 서로 다른 language understanding task에 적용시켜본다
: natural language inference, question-answering, semantic similarity, text classification.
Unsupervised pre-training은 semi-supervised pre-training의 한 종류다. Unsupervised pre-training의 목적은 좋은 초기 환경을 제공하는 것에 있다. 이번 논문과 가장 유사한 방식으로는 language modeling objective로 pre-training을 진행하고 target task로 fine-tuning을 하는 방식이 있다. 해당 방식은 LSTM을 사용하게 되는데, 이러한 구조가 short range의 예측 성능을 제한하게 된다. 반면에, 이번 논문에서는 LSTM 대신 transformer를 사용함으로서 더 긴 의존성을 학습할 수 있다. 그 외에도 hidden representation을 사용하는 방식(TagLM, ELMo, CoVe 등)이 있다. 이렇게 생성한 representation을 보고 feature로 함께 사용하개 된다. 이러한 방식은 다양한 task에 대해서 서로 다른 파라미터를 사용하고 학습해야 한다는 단점이 있다.
보조적인 unsupervised training objective를 추가하는 것도 semi-supervised learning의 변형 중 하나라고 할 수 있다. 과거에는 POS tagging, chunking, NER, LM 등을 이용해서 semantic role labeling의 성능을 향상시킨 사례가 있다. 이번 논문에서도 보조적인 objective를 사용한다.
학습은 크게 2단계로 구성된다. 첫 번재 단계는 큰 규모의 텍스트를 기반으로 language model을 학습하는 것이다. 두 번재 단계는 fine-tuning 단계로, 레이블 된 데이터를 기반으로 학습을 진행한다.