Hello world!

Natural Language Processing

XLNet: Generalized autoregressive pretraining for language understanding

xyz1 2023. 6. 8. 13:30

Keywords

  • XLNet = BERT + GPT = auto encoder + auto regressive
    • XLNet maximizes the expected log likelihood of a sequence w.r.t. all possible permutations of the factorization order.
  • Task Agnostic
  • Factorization order
  • AR formula
    • permutation calculation

 

Background

  • Pre-Training
    • Auto Encoding
      • 의미: 어떤 값을 그대로 복원 (토큰에 노이즈를 준다음, 해당 토큰 복원)
      • 문제점
        • Mask token 토큰이 독립적으로 예측 되기 때문에 token 사이의 dependency는 학습할 수 없음. (ex. mask token 2개, 해당 2가지는 dependency 학습이 불가능)
        • Finetuning 과정 mask token이 등장하지 않기 때문에 pretraining과 finetuning 사이에 discrepancy 발생
    • Auto Regressive
      • 문제점
        • 단일 방향 정보만 이용하여 학습 가능

 

Abstract

  • AE, AR의 문제점을 보완하고자 등장함.
  • Transformer-XL 논문을 영감을 얻어서 발전함.
    • 기존 트랜스포머 네트워크 단점: 고정된 길이의 문맥정보만 활용할 수 있다는 단점.
    • 조금 더 긴 컨텍스트 보기 위해서 segment recurrence라는 기법을 제안.
      • 현재 segment를 학습할 때 고려 대상에 포함하는 직전 segment 계산 결과를 memory라고 부름. 이러한 memory에 대해서는 gradient 업데이트 하지 않게함.

 

Method

  • Permutation Language Modeling Objective

 

  • Target-Aware Representation for Transformer
    • 앞서 permutation language modeling objective에서 정의한 objective function을 바로 standard transformer에 적용할 수 없다. 따라서 이를 적용하기 위해 고안된 방법이다.
    • Permutation을 하면 예측할 token이 명확하지 않음. 이를 해결해야함.
      • 다른 target을 설정해야한다.
      • representation(h(theta)이 같은데, x3, x4 다른 것을 예측 해야하는 것은 잘못된것이다.
      • target 위치를 인지한 representation을 만들면된다.
      • g(theta) 추가.

  • Two-Stream Self-Attention
    • 위의 새롭게 고안한 representation을 self-attention에 적용하기 위한 방법이다.
    • g(theta)가 추가 되었기에 기존의 transformer에 적용할 수가 없다. 이를 적용하기 위해서 아래와 같은 방법을 @사용.

중요한 점, 모든 permutation을 다 계산할 수 없다. 따라서 permutation 집합에서 하나의 token을 예측할 때 마지막 K개의 예측만 사용한다(partial Prediction)

 

 

 

Reference

https://www.youtube.com/watch?v=v7diENO2mEA