Deep contextualized word representations
1. 논문 제목 : Deep contextualized word representations (ELMo)
2. 발표한 학회 : NAACL 2018
3. 논문의 핵심 키워드 : contextual, semi-supervised, BiLM, hidden representation, bi-directional
4. 논문요약 :
Bi-directional Language Model이 큰 corpus에 대해 semi-supervised 방식으로 pretraining을 진행한 뒤에, input을 embedding에 전달하여 생성되는 hidden representation들을 layer마다 뽑아내서 concat하여 weight를 곱하면 ELMo representation vector들을 얻을 수 있다.
이는 기존에 모델들이 출력하는 output에 덧붙이게 되면, 모든 task에서 성능이 높아지게 되는 효과를 얻을 수 있는데, 이는 ELMo representation이 언어의 문맥적 의미를 이해하는데 도움이 되는 것이라고 설명하는 논문.
5. 논문에서 소개하는 이전 SOTA / 기존 방법들의 한계:
1) word2vec과 같은 Pre-trained word represenation은 단어 자체의 의미를 modeling할 수 있지만, 단어가 사용되는 문맥 속에서 가진 의미를 함축시키지 못하였다.
2) "Learning Generic Context Embedding with Bidirectional LSTM(Melamud et al)"에서 소개한 context2vec은 단어 주위의 문맥을 파악하기 위해 LSTM을 사용하고,
"Learned in Translation: Contextualized Word Vectors(McCann et al et al)"에서 CoVE는 Neural Machine Translation system을 활용해서 문맥을 파악하는데, 이들은 biLM이나 MT Encoder에서 생성하는 가장 윗단의 output을 활용하여 downstream task에 fine-tuning한다는 공통점이 있다.
3) "Semi-supervised Sequence Learning(Dai and Le)"에서 소개한 pretraining을 통해 language model을 수많은 unlabeled 데이터에 학습시키고, 이를 downstream task에 fine-tuning하는 방법이 학습을 진행하는데 크게 도움이 되었다..
6. 논문에서 문제점을 해결하기 위해서 사용한 방법론:
1) biLM을 기반으로 contextualized meaning을 함축한 word representation을 생성하고, 이를 task RNN에게 전달하기 전에 input에 stack하는 방법론을 제시하였다. 이는 기존의 word representation만을 이용하는 것보다 성능 향상을 기대할 수 있고, 기존의 SOTA 모델들에 쉽게 이어붙일 수 있는 장점이 있다.
2) "Charagram: Embedding Words and Sentences via Character n-grams(Wieting et al)"에서 언급한 subword information을 이용하면 word2vec과 같이 word representation이 담지 못하는 정보까지 담을 수 있어서, character level convolution Embedding을 사용하여 입력을 준다.
3) context2vec, CoVE등은 윗단의 output만을 활용하는데, 반면에 ELMo representation은 모든 layer에서의 hidden representation을 concat하여서 풍부한 문맥적 의미를 함축하고 있다.
4) ELMo representation을 생성하는 BiLM도 pretraining 진행하게 되는데, 이후에 additional task specific model에 ELMo representation을 전달하면서, 모든 weight들을 fix시킨다.
5) 각각의 layer에 존재하는 hidden representation은 MLE Objective를 만족하기 위해 이전 hidden representation으로 다음을 predict하게 되고, 양방향으로 이를 진행한다. 이후에 3개의 layer에 걸쳐서 생성된 hidden representation을 concat하여 weight에 곱하여 scale한 뒤, 이를 ELMo vector로 활용할 수 있다.
6) Ablation Analysis를 통해서 낮은 layer는 syntax information을 가지고 있는 반면, 높은 layer는 semantic information을 가지고 있고, task마다 더욱 도움이 되는 hidden representation은 다르기 때문에 이를 concat하여 조정한 ELMo representation은 어떠한 task에서도 더욱 좋은 성능을 이끌어줄 수 있다고 분석하였다.
7. 사용한 데이터셋, 측정한 metric, 학습 진행을 위해서 사용한 hyperparameter, 기존모델대비 성능:
1) 데이터셋 : 1B Word Benchmark(Pre training), SQuAD, SNLI, SRL, Coref, NER, SST-5
2) 수행한 task : question answering, textual entailment, semantic role labeling, coreference resolution, named entity recognition, sentiment analysis
3) 사용한 metric : accuracy(higher the better), F1(higher the better)
4) 기존 모델 대비 성능 향상:
SQuAD(Question Answering) : improves BiDAF Model by 4.7% from 81.1% to 85.8%
SNLI(Textual Entailment) : improves ESIM sequence model from 88.9% to 89.3%
SRL(Semantic Role Labeling) : improves 8-layer deep biLSTM by 3.2% from 81.4% to 84.6%
Coref(Coreference Resolution) : improves end-to-end span-based neural network by 3.2% from 67.2% to 70.4%
CoNLL(Named Entity Recogntion) : improves character-based CNN representation, two bi-LSTM layers similar to previous SOTA
SST-5(Sentiment Analysis) : improves biattentive classification network by 1.0% compared to previous SOTA