2018년도에 자연어 처리와 관련해서 중요한 개념을 소개한 논문이 여러개 발표되었다. 그 중 하나인 ULMfiT에 대해 간단히 정리하고자 한다. 논문은 여기서 확인할 수 있다.
핵심 정리: general transfer learning을 위한 pre-training + fine-tuning 방법론 제안
1. Introduction
NLP에서도 transfer learning이 연구되고 있다. 이 중 inductive transfer의 경우 pre-trained된 word ebmedding을 모델의 첫 layer에 고정시켜두는 경우가 많다(e.g. Word2Vec).
하지만 대부분의 Language Model은 작은 데이터셋에 overfit하며, classifer를 붙여서 fine-tuning이 일어나는 경우 catastrophic forgetting이 자주 발생한다. 비전 모델들은 NLP 모델들에 비해 깊이가 더 얕으며, 때문에 다른 fine-tuning 방법이 필요한다.
2. Related Work
컴퓨터 비전에서의 transfer learning 방법론들이 있다.
- general $\rightarrow$ specific domain transfer learning: 모델의 처음 또는 마지막 layer만 학습하고 나머지는 frozen
- Hypercolumns: embedding을 pre-train하고 다른 추가 feature들을 concat하여 사용
- Fine-tuning
대부분의 연구들은 비슷한 도메인이나 비슷한 task에서의 transfer learning에 집중하였다. ULMFiT은 general-domain pretraining + fine-tuning을 사용하여 적은 데이터셋으로도 좋은 성능을 낸다. 참고로 최근에는 음성 인식이나 합성에서도 ULMFiT 방법론을 적용하여 적은 데이터셋으로도 좋은 성능들을 내고 있다.
3. ULMFit
핵심적인 사항은 도메인, task에 상관없이 pre-training한 모델을 만들고 transfer learning을 하는 것이다(most general inductive transfer learning)
- source task $T_{S}$와 어떠한 종류의 target task $T_{T}$ $(T_{S} \neq T_{T})$가 있을 때, $T_{T}$의 성능을 개선하고자 함
- source task로 Language Modeling을 활용
ULMFit 방법론은 다음과 같이 수행된다.
- General-domain LM: LM을 general-domain corpus에 대해 pre-train
- target task LM fine-tuning: 학습된 LM을 해당 도메인에서 추가 pre-train
- target task classifier fine-tuning: 학습이 완료된 LM에 classifier를 추가하여 fine-tuning
왜 Universal하다는 표현을 쓴 것일까? 아주 큰 corpus에 대해 적절한 Language Model Objective로 LM을 학습시키면 다음과 같은 장점들이 있기 때문이다.
- 문서 수, label 종류와 상관 없이 모든 task에 대해 좋은 성능을 보임
- feature engineering이 없음!
- in-domain 문서에 종속되지 않음
- 하나의 모델, 하나의 학습 프로세스 사용
'논문 및 개념 정리' 카테고리의 다른 글
[2020] Spot The Bot: A Robust and Efficient Framework for the Evaluation of Conversational Dialogue Systems (0) | 2021.08.13 |
---|---|
[2017] On Calibration of Modern Neural Networks (0) | 2021.05.26 |
[2018] Deep contextualized word representations(ELMo) (0) | 2021.03.15 |
[2017] Attention is All you Need (0) | 2021.03.15 |
Big Bird Implementation details (0) | 2021.02.16 |