본문 바로가기
논문 리뷰

[논문 리뷰] Deep contextualized word representations

by 곽정우 2024. 7. 8.

이 논문은 "Deep contextualized word representations"이라는 제목의 논문입니다.

작성자는 Mark Neumann, Mohit Iyyer, Matt Gardner, Christopher Clark, Kenton Lee, Luke Zettlemoyer, 그리고 Matthew E. Peters이며, 2018년에 발표된 해당 논문은 새로운 단어 임베딩 방법을 제안합니다.


Abstract

이 논문의 주요 내용을 요약하면 다음과 같습니다:

  • 새로운 유형의 심층 문맥화된 단어 표현(deep contextualized word representation)을 소개합니다.
  • 이 표현은 두 가지 주요 특성을 모델링합니다:
    • 단어 사용의 복잡한 특성(예: 구문론과 의미론)
    • 이러한 사용이 언어적 맥락에 따라 어떻게 변화하는지(다의성 모델링)
  • 제안된 단어 벡터는 대규모 텍스트 코퍼스로 사전 훈련된 깊은 양방향 언어 모델(biLM)의 내부 상태를 기반으로 학습됩니다.
  • 이 표현을 기존 모델에 쉽게 추가할 수 있으며, 질문 답변, 텍스트 함의, 감성 분석 등 6가지 도전적인 NLP 문제에서 최신 기술 수준을 크게 향상시킵니다.
  • 사전 훈련된 네트워크의 깊은 내부 상태를 노출시키는 것이 중요하다는 분석 결과를 제시합니다. 이를 통해 다운스트림 모델이 다양한 유형의 준지도 학습 신호를 혼합할 수 있습니다.

요약하면, 이 논문은 문맥에 따른 단어의 복잡한 특성을 포착하는 새로운 단어 표현 방법을 제안하고, 이를 통해 다양한 NLP 작업의 성능을 향상시켰음을 보여줍니다.

 

1. Introduction

이 논문에서는 ELMo(Embeddings from Language Models)라는 새로운 유형의 깊이 있는 맥락화된 단어 표현을 소개합니다. 이 표현은 전통적인 단어 임베딩과 달리 각 토큰을 전체 입력 문장의 함수로 표현하며, 양방향 LSTM을 사용하여 대규모 텍스트 말뭉치에서 학습됩니다. ELMo는 기존 모델에 쉽게 통합할 수 있으며, 텍스트 간추림, 질의 응답, 감정 분석 등 여러 언어 이해 문제에서 뛰어난 성능을 보입니다. 실험 결과에서는 기존 방법들과 비교해 상대적 에러 감소율이 최대 20%까지 나타나며, 깊이 있는 표현이 단일 LSTM 레이어보다 우수함을 입증합니다.

 

2. Related work

ELMo 관련된 배경, 기존 연구, 그리고 ELMo의 차별점

  • 기존 단어 벡터의 한계:
    • 전통적인 단어 벡터는 각 단어에 대해 단일의 문맥 독립적 표현만을 허용합니다.
    • 이를 개선하기 위해 하위 단어 정보를 풍부하게 하거나 각 단어 의미에 대해 별도의 벡터를 학습하는 방법들이 제안되었습니다.
  • 문맥 의존적 표현 학습에 대한 최근 연구:
    • context2vec: 양방향 LSTM을 사용하여 중심 단어 주변의 문맥을 인코딩합니다.
    • CoVe: 지도 학습된 신경망 기계 번역 시스템의 인코더를 사용합니다.
    • Peters et al. (2017): 비지도 학습된 언어 모델을 사용합니다.
  • ELMo의 특징:
    • 대규모 단일 언어 데이터를 활용합니다 (약 3천만 문장).
    • 깊은 문맥적 표현을 일반화하여 다양한 NLP 작업에 적용합니다.
  • 깊은 양방향 RNN의 특성:
    • 다른 layer 들이 다른 유형의 정보를 인코딩한다는 것이 밝혀졌습니다.
    • 하위 layer는 구문적 정보를, 상위 layer는 단어 의미 정보를 더 잘 포착합니다.
  • ELMo의 접근 방식:
    • 언어 모델 목적 함수를 통해 이러한 다양한 신호를 유도합니다.
    • 다운스트림 작업에서 이러한 다양한 유형의 반지도 학습을 혼합하는 모델을 학습합니다.
  • 기존 연구와의 차이점:
    • 사전 학습된 biLM의 가중치를 고정하고 작업별 모델 용량을 추가합니다.
    • 이를 통해 작은 지도 학습 데이터셋에서도 큰 규모의 풍부하고 보편적인 biLM 표현을 활용할 수 있습니다.

이 연구는 ELMo가 기존의 단어 표현 방식들의 한계를 극복하고, 다양한 NLP 작업에서 효과적으로 사용될 수 있는 깊은 문맥화된 단어 표현을 제공한다는 점을 강조하고 있습니다.

 

3. ELMo: Embeddings from Language Models

ELMo 단어 표현의 주요 특징과 구조

  • 문맥 의존성:
    • ELMo 단어 표현은 전체 입력 문장의 함수입니다.
    • 이는 Pennington et al. (2014)의 GloVe와 같은 대부분의 널리 사용되는 단어 임베딩과 다른 점입니다.
  • 기본 구조:
    • 두 layer의 양방향 언어 모델(biLM)과 문자 수준의 합성곱을 사용하여 구성됩니다.
  • 표현 계산:
    • 내부 네트워크 상태의 선형 함수로 표현이 계산됩니다.
  • 반지도 학습:
    • 대규모로 사전 학습된 biLM을 이용하여 반지도 학습을 가능하게 합니다.
  • 범용성:
    • 기존의 다양한 NLP 모델 구조에 쉽게 통합될 수 있습니다.
  • ELMo의 장점:
    • 문맥 인식: 전체 문장을 고려하므로 단어의 문맥적 의미를 더 잘 포착할 수 있습니다.
    • 풍부한 표현: 문자 수준의 정보와 다층 구조를 통해 더 풍부한 단어 표현을 생성합니다.
    • 유연성: 다양한 NLP 모델에 쉽게 통합될 수 있어 폭넓은 응용이 가능합니다.
    • 효율성: 대규모 사전 학습을 통해 작은 규모의 지도 학습 데이터셋에서도 효과적으로 사용될 수 있습니다.

이러한 특성들 덕분에 ELMo는 다양한 NLP 작업에서 성능 향상을 이끌어낼 수 있습니다.

3-1.  Bidirectional language models

양방향 언어 모델(biLM)의 구조와 작동 방식을 설명

 

  • 순방향 언어 모델 (Forward LM):
    • N개의 토큰 시퀀스 (t1, t2, ..., tN)에 대해, 이전 토큰들의 history를 바탕으로 다음 토큰의 확률을 계산합니다.
    • 각 토큰에 대해 문맥 독립적인 표현 xLMk를 생성한 후, L개의 LSTM layer을 통과시킵니다.
    • 각 위치 k에서, 각 LSTM layer은 문맥 의존적인 표현 −→h LMk,j를 출력합니다.
    • 최상위 layer의 출력 −→h LMk,L은 다음 토큰 tk+1을 예측하는 데 사용됩니다.
  • 역방향 언어 모델 (Backward LM):
    • 순방향 LM과 유사하지만, 시퀀스를 역순으로 처리합니다.
    • 미래의 문맥을 바탕으로 이전 토큰을 예측합니다.
    • 각 역방향 LSTM layer은 표현 ←− h LMk,j를 생성합니다.
  • 양방향 언어 모델 (biLM):
    • 순방향과 역방향 LM을 결합합니다.
    • 순방향과 역방향의 로그 우도를 공동으로 최대화합니다.
    • 토큰 표현(Θx)과 Softmax layer(Θs)의 매개변수는 양방향에서 공유됩니다.
    • LSTM의 매개변수는 각 방향에 대해 별도로 유지됩니다.
    • 모델 주요 특징:
    • 양방향성: 순방향과 역방향 정보를 모두 활용하여 더 풍부한 문맥 정보를 포착합니다.
    • 깊은 구조: 여러 layer의 LSTM을 사용하여 복잡한 언어 패턴을 학습할 수 있습니다.
    • 매개변수 공유: 일부 매개변수를 공유함으로써 모델의 효율성을 높입니다.
    • 유연한 표현: biLM layer의 선형 조합을 통해 다양한 수준의 언어 정보를 포착할 수 있습니다.

이 구조는 ELMo가 단어의 풍부하고 문맥화된 표현을 생성하여 다양한 자연어 처리(NLP) 작업에서 성능을 크게 향상시킬 수 있는 중요한 역할을 합니다.

3-2. ELMo

ELMo의 구체적인 구조와 작동 방식을 설명

  • ELMo의 기본 구조:
    • ELMo는 biLM의 중간 layer 표현들을 작업 특화적으로 조합한 것입니다.
    • L layer biLM은 각 토큰 tk에 대해 2L + 1개의 표현 집합 Rk를 계산합니다.
  • 표현 집합 Rk:
    • 토큰 layer hLMk,0와 각 biLSTM lyaer의 표현 hLMk,j로 구성됩니다.
    • hLMk,j는 순방향과 역방향 LSTM 출력의 연결입니다.
  • ELMo 벡터 생성:
    • Rk의 모든 layer을 단일 벡터 ELMok로 축소합니다.
    • 가장 간단한 경우, 최상위 layer만 선택할 수 있습니다.
  • 작업 특화적 가중치 부여:
    • 모든 biLM layer에 대해 작업 특화적 가중치를 계산합니다.
    • ELMotaskk = γtask ∑Lj=0 staskj hLMk,j
  • 가중치 조정:
    • stask는 softmax로 정규화된 가중치입니다.
    • γtask는 전체 ELMo 벡터의 스케일을 조정하는 스칼라 매개변수입니다.
  • 추가 최적화:
    • 각 biLM layer에 layer 정규화(layer normalization)를 적용하는 것이 도움이 될 수 있습니다.
  • 구조의 주요 특징:
    • 유연성: 작업에 따라 다른 layer의 표현을 강조할 수 있습니다.
    • 풍부한 표현: 여러 layer의 정보를 조합하여 더 풍부한 단어 표현을 생성합니다.
    • 적응성: γtask를 통해 전체 ELMo 벡터의 영향력을 조절할 수 있습니다.
    • 최적화: layer정규화를 통해 학습 과정을 안정화할 수 있습니다.

이러한 구조는 ELMo는 다양한 NLP 작업에 쉽게 적용될 수 있으며, 각 작업의 특성에 맞게 최적화된 단어 표현을 제공할 수 있습니다.

3-3. Using biLMs for supervised NLP tasks

ELMo를 기존의 지도 학습 NLP 모델에 통합하는 방법을 설명

  • ELMo 통합 과정:
    • 사전 학습된 biLM을 실행하여 각 단어에 대한 모든 layer의 표현을 기록합니다.
    • 최종 작업 모델이 이러한 표현들의 선형 조합을 학습하도록 합니다.
  • 기존 지도 학습 모델 구조:
    • 토큰 시퀀스 (t1, ..., tN)에 대해 문맥 독립적인 토큰 표현 xk를 형성합니다.
    • 이후 문맥 의존적인 표현 hk를 생성합니다 (주로 양방향 RNN, CNN, 피드포워드 네트워크 사용).
  • ELMo 추가 방법:
    • biLM의 가중치를 고정(freeze)합니다.
    • ELMo 벡터 ELMotask k를 xk와 연결(concatenate)합니다.
    • 향상된 표현 [xk; ELMotask k]를 작업 RNN에 입력합니다.
    • 일부 작업에서는 작업 RNN의 출력에도 ELMo를 포함시켜 hk를 [hk; ELMotask k]로 대체합니다.
  • 복잡한 모델에의 적용:
    • 이 방법은 더 복잡한 신경망 모델에도 적용될 수 있습니다.
    • 예: SNLI 실험에서의 bi-attention layer , 공지시 해결 실험에서의 클러스터링 모델
  • 추가적인 기법:
    • ELMo에 적당한 양의 드롭아웃을 추가합니다.
    • 일부 경우에는 λ||w||^2_2 항을 손실 함수에 추가하여 ELMo 가중치를 정규화합니다.
  • 접근 방식의 장점:
    • 유연성: 다양한 기존 NLP 모델에 쉽게 통합될 수 있습니다.
    • 성능 향상: 문맥화된 단어 표현을 추가함으로써 모델의 성능을 향상시킬 수 있습니다.
    • 적응성: 각 작업에 맞게 ELMo 표현의 선형 조합을 학습할 수 있습니다.
    • 안정성: 드롭아웃과 정규화를 통해 과적합을 방지하고 모델의 안정성을 높일 수 있습니다.

ELMo는 다양한 NLP 작업에서 성능 향상을 이끌어낼 수 있으며, 기존 모델의 구조를 크게 변경하지 않고도 적용할 수 있습니다.

3-4. Pre-trained bidirectional language model architecture

ELMo에서 사용된 사전 학습된 양방향 언어 모델(biLM)의 구체적인 구조와 학습 과정에 대해 설명

  • 모델 구조:
    • Jozefowicz et al. (2016)과 Kim et al. (2015)의 아키텍처를 기반으로 합니다.
    • 양방향 공동 학습을 지원하도록 수정되었으며, LSTM layer사이에는 잔차 연결(residual connection)이 추가되었습니다.
  • 모델 크기 조정:
    • 전체적인 언어 모델 복잡도, 모델 크기, 계산 요구사항을 균형 있게 조정했습니다.
    • Jozefowicz et al. (2016)의 CNN-BIG-LSTM 모델에서 모든 임베딩과 은닉 차원을 절반으로 줄였습니다.
  • 최종 모델 사양:
    • 2개의 biLSTM layer를 사용하며, 각 lyaer는 4096 유닛과 512 차원의 투영을 갖습니다.
    • 첫 번째에서 두 번째 layer로의 잔차 연결이 있습니다.
    • 문맥 비의존적 타입 표현으로는 2048 개의 문자 n-gram 합성곱 필터를 사용하고, 이를 2개의 highway layer와 선형 투영을 거쳐 512 차원으로 축소합니다.
  • 입력 표현:
    • 순수하게 문자 기반 입력 표현을 사용합니다.
    • 이를 통해 학습 세트 외의 토큰에 대해서도 표현을 제공할 수 있습니다.
  • 학습 과정:
    • 1B Word Benchmark에서 10 에폭 동안 학습
    • 평균 순방향 및 역방향 복잡도(perplexity): 39.7
    • CNN-BIG-LSTM의 순방향 복잡도: 30.0
  • 도메인 적응:
    • 특정 도메인 데이터로 biLM을 미세 조정하면 복잡도가 크게 감소하고 하위 작업 성능이 향상됩니다.
    • 대부분의 경우 하위 작업에서 미세 조정된 biLM을 사용했습니다.
  • 모델의 특징:
    • 대규모 학습: 큰 규모의 데이터셋에서 학습되어 풍부한 언어 패턴을 포착합니다.
    • 문자 기반 입력: 미등록 단어 문제를 해결하고 모든 입력에 대해 표현을 생성할 수 있습니다.
    • 다층 표현: 각 입력 토큰에 대해 3개 layer의 표현을 제공합니다.
    • 도메인 적응 가능: 특정 도메인에 맞게 미세 조정될 수 있어 다양한 작업에 적용 가능합니다.

ELMo는 이러한 구조와 학습 과정을 통해 강력하고 유연한 단어 표현 모델로서 다양한 자연어 처리 작업에서 높은 성능을 보이고 있습니다.

 

4. Evaluation

질문 응답(Question Answering):

  • Stanford Question Answering Dataset (SQuAD) (Rajpurkar et al., 2016)에서 ELMo를 기존의 Baseline 모델(Clark and Gardner, 2017)에 추가했습니다.
  • 기존 모델에 ELMo를 추가하여 테스트 세트 F1 점수가 81.1%에서 85.8%로 개선되었습니다. 이는 기준 모델 대비 24.9%의 상대적 오류 감소를 나타내며, 단일 모델의 최고 성능을 1.4% 향상시켰습니다.
  • 11개 모델 앙상블을 사용하여 F1 점수를 87.4로 끌어올려, 최종적으로 리더보드에 제출한 시점의 최고 성능을 달성하였습니다.

텍스트 논리 관계(Textual entailment):

  • Stanford Natural Language Inference (SNLI) corpus (Bowman et al., 2015)에서는 ESIM sequence 모델(Chen et al., 2017)에 ELMo를 추가하였습니다.
  • ELMo를 ESIM 모델에 추가하면서 평균적으로 정확도가 0.7% 향상되었습니다.
  • 5개 모델 앙상블을 사용하여 전체 정확도를 89.3%로 높여, 이전 최고 성능인 88.9%를 초과하였습니다.

의미 역할 라벨링(Semantic role labeling):

  • SRL 시스템(He et al., 2017)에 ELMo를 추가하였으며, OntoNotes 벤치마크(Pradhan et al., 2013)에서 단일 모델 테스트 세트 F1 점수가 81.4%에서 84.6%로 향상되었습니다.
  • 이는 이전 최고 앙상블 결과보다 1.2% F1 점수를 능가하는 새로운 최고 성능을 설정하였습니다.

공통 참조 해결(Coreference resolution):

  • Coreference resolution 작업에는 ELMo를 사용하여 OntoNotes coreference annotations (CoNLL 2012 shared task)에서 평균 F1 점수를 67.2%에서 70.4%로 개선하였습니다.
  • 이는 이전 최고 앙상블 결과보다 1.6% F1 점수를 능가하며, 새로운 최고 성능을 달성하였습니다.

개체명 인식(Named entity extraction):

  • CoNLL 2003 NER 작업(Sang and Meulder, 2003)에서는 ELMo 강화 biLSTM-CRF 모델을 사용하여 평균 F1 점수 92.22%를 달성하였습니다.
  • 이 모델은 모든 biLM layer의 가중 평균을 학습할 수 있는 점에서 이전의 최고 성능 모델과 차별화되었습니다.

감정 분석(Sentiment analysis):

  • Stanford Sentiment Treebank (SST-5; Socher et al., 2013)에서 ELMo를 기존의 BCN 모델(McCann et al., 2017)에 추가하였습니다.
  • BCN 모델에서 CoVe를 ELMo로 대체하여 절대 정확도가 1.0% 향상되었습니다

 

5. Analysis

ELMo는 깊은 양방향 언어 모델을 기반으로 한 문맥화된 단어 표현 방식으로, 전체 입력 문장을 고려하여 각 단어의 표현을 생성합니다. 이 방식은 구문 정보와 의미 정보를 효과적으로 포착하며, 다양한 NLP 작업에 쉽게 통합되어 성능을 크게 향상시킬 수 있습니다. 특히 ELMo는 하위 lyaer에서 구문 정보를, 상위 lyaer에서 의미 정보를 더 잘 표현하며, 기존의 단어 임베딩 방식보다 풍부하고 유연한 표현을 제공합니다.

5-1. Alternate layer weighting schemes

 

  • biLM layer 결합 방식:
    • 여러 layer을 결합하는 다양한 방법 탐구
    • 정규화 매개변수 λ의 중요성 강조
  • 실험 결과 (SQuAD, SNLI, SRL):
    • 모든 biLM layer를 포함하는 것이 마지막 layer만 사용하는 것보다 성능이 우수함
    • 문맥적 표현을 포함하는 것이 기준선보다 성능을 향상시킴
  • SQuAD 사례:
    • 마지막 layer, 모든 layer 평균, 개별 layer 가중치 학습 순으로 성능 향상
  • λ 값의 영향:
    • 대부분의 경우 작은 λ 값이 선호됨
    • NER 등 작은 훈련 세트에서는 λ 값에 덜 민감
  • CoVe와의 비교:
    • 유사한 경향을 보이지만 성능 향상 폭이 더 작음
    • SRL에서는 λ=1일 때 소폭으로 0.1% 성능 향상

5-2. Where to include ELMo?

 

  • 기본 적용 방식:
    • 모든 태스크 아키텍처에서 ELMo를 최하위 layer biRNN의 입력으로만 사용
  • 실험 결과:
    • SNLI와 SQuAD:
      • ELMo를 입력 layer와 출력 layer 모두에 포함시키는 것이 성능 향상
    • SRL (및 상호참조해결):
      • ELMo를 입력 layer에만 포함시킬 때 성능이 가장 높음
  • 결과 해석:
    • SNLI와 SQuAD:
      • biRNN 후 주의 집중(attention) layer를 사용
      • ELMo를 출력 layer에 포함시키면 모델이 biLM의 내부 표현에 직접 주의를 기울일 수 있음
    • SRL:
      • 태스크별 문맥 표현이 biLM의 표현보다 더 중요할 수 있음

5-3. What information is captured by the biLM’s representations?

 

  • 문맥적 의미 표현:
    • ELMo는 단어의 문맥적 의미를 잘 포착함
    • 예: "play"의 다의성을 문맥에 따라 적절히 구분
  • 단어 의미 중의성 해소(WSD):
    • ELMo의 상위 layer 표현이 WSD에 효과적
    • 최신 지도 학습 모델과 경쟁력 있는 성능 달성
  • 품사 태깅(POS):
    • ELMo의 하위 layer표현이 POS 태깅에 더 효과적
    • 특화된 biLSTM 모델과 비슷한 수준의 정확도 달성
  • CoVe와의 비교:
    • ELMo가 WSD와 POS 태깅 모두에서 CoVe보다 우수한 성능
  • layer 어별 특성:
    • 하위 layer : 구문적 정보에 강점
    • 상위 layer : 의미적 정보에 강점
    • 모든 layer 를 포함하는 것이 downstream 태스크에서 중요
  • 전이 학습 능력:
    • ELMo의 표현이 CoVe보다 WSD와 POS 태깅에 더 잘 전이됨

5-4. Sample efficiency

 

  • 매개변수 업데이트 효율성:
    • ELMo 추가 시 최신 성능 도달에 필요한 업데이트 횟수 크게 감소
    • 예: SRL 모델에서 486 에폭에서 10 에폭으로 98% 감소
  • 훈련 세트 크기 효율성:
    • ELMo 사용 모델이 더 작은 훈련 세트로도 효율적으로 학습
    • 전체 훈련 세트의 0.1%에서 100%까지 다양한 비율로 실험
  • 성능 향상:
    • 작은 훈련 세트에서 ELMo의 개선 효과가 가장 큼
    • 주어진 성능 수준 도달에 필요한 훈련 데이터량 크게 감소
  • 구체적 사례:
    • SRL 태스크에서 ELMo 모델은 훈련 세트의 1%만으로도 기준 모델의 10% 사용 시와 비슷한 F1 점수 달성

5-5. Visualization of learned weights

입력 layer의 가중치 분포:

  • 태스크 모델은 첫 번째 biLSTM layer을 선호합니다.
  • Coref와 SQuAD 태스크에서 이 선호도가 매우 강합니다.
  • 다른 태스크들에서는 분포가 덜 뾰족합니(더 고르게 분포됩니다).

출력 layer의 가중치 분포:

  • 비교적 균형 잡힌 분포를 보입니다.
  • 하위 layer에 대해 약간의 선호도가 있습니다.

6. Conclusion

ELMo (Embeddings from Language Models) 소개:

  • 양방향 언어 모델(biLMs)에서 고품질 깊은 맥락 의존적 표현을 학습하는 일반적 접근법입니다.
  • 다양한 자연어 처리(NLP) 작업에 적용 시 큰 성능 향상을 보입니다.

실험을 통한 확인 사항:

  • biLM layer들이 다양한 유형의 구문 및 의미 정보를 효율적으로 인코딩합니다.
  • 이 정보는 맥락 속 단어들에 대한 것입니다.
  • 모든 layer 을 사용하는 것이 전반적인 작업 성능을 향상시킵니다.

검증 방법:

  • ablations 실험과 기타 통제된 실험들을 통해 이러한 사실들을 확인했습니다.

Reference

논문 출저: Deep contextualized word representations