‹ Lecture 4 03 / 20

NSP · SOP · XLNet

두 문장이 자연스럽게 이어지는지를 배우게 하고 싶다고 해서, “이어짐/아님” label만 만들면 그 관계를 반드시 학습하는 것은 아니다. 오답이 축구 기사 뒤의 요리 recipe처럼 너무 다르면 topic만 보고도 맞힐 수 있다. Objective가 실제로 보상하는 단서는 negative를 어떻게 만들었는지에 따라 달라진다. 앞의 Contrastive Training에서 본 negative 품질 문제가 NSP에도 나타난다.

  1. Positive/negative 구성
  2. 구분에 쓸 단서
  3. NSP/SOP 또는 objective 제거
  4. controlled evaluation

Next Sentence Prediction

Next Sentence Prediction (NSP)은 50% 실제 AA→B와 50% 다른 document의 AA→XX를 구분한다. Topic과 coherence가 함께 달라 topic cue만으로 풀릴 수 있다.

Sentence Order Prediction

ALBERT의 SOP는 같은 segments A와 B를 그대로 사용하고 순서만 A → B에서 B → A로 바꾼다. 두 입력은 주제가 같으므로 “topic이 다르다”는 쉬운 단서가 사라지고 order와 discourse coherence를 구분해야 한다. 교수님은 NSP로 학습한 모델이 순서 판단에서 약 50%였던 반면 SOP에서는 약 80%에 가까웠다는 해당 논문의 관찰을 소개했다. 이 수치를 모든 task의 성능 차이로 읽지는 않는다.

ALBERT의 본래 경량화에는 layer 간 parameter sharing과 factorized Embedding도 있다. SOP는 그 과정에서 도입한 objective 변경이며, 작은 모델이 된 이유와 negative가 바뀐 이유를 하나로 합치지 않는다.

Input Format

RoBERTa는 NSP를 다른 objective로 바꾸는 대신 제거하고 input format을 함께 비교했다. Segment-pair는 문장 여러 개를 담을 수 있는 A/B segments, sentence-pair는 짧은 두 문장, full-sentences는 문서 경계를 넘어 최대 512 tokens를 채우는 방식이다. Doc-sentences는 한 document의 범위를 유지하고 남는 부분은 padding한다.

Input formatNSPSQuAD 1.1 / 2.0MNLI-mSST-2RACE
segment-pairyes90.4 / 78.784.092.964.2
sentence-pairyes88.7 / 76.282.992.163.0
full-sentencesno90.4 / 79.184.792.564.8
doc-sentencesno90.6 / 79.784.792.765.6

이 development-set 결과에서는 NSP 없이도 좋은 결과를 얻었다. 다만 NSP 여부뿐 아니라 sequence 구성과 길이도 바뀌므로, 표 전체를 “NSP 하나를 빼면 모든 scores가 오른다”는 단일 변수 법칙으로 읽으면 안 된다. SQuAD는 extractive QA, MNLI는 NLI, SST-2는 sentiment, RACE는 passage 기반 multiple-choice라는 task 차이도 있다.

Permutation Language Modeling

XLNet은 NSP 없이 autoregressive factorization의 예측 순서를 바꾸어 양쪽 context를 학습한다. 예측 order가 3 → 2 → 4 → 1이라면 x₃은 앞서 예측된 token이 없고, x₂는 x₃을, x₄는 x₃·x₂를, x₁은 x₃·x₂·x₄를 참조한다.

이때 입력 문장 자체를 x₃ x₂ x₄ x₁로 뒤섞는 것이 아니다. Original token positions는 유지하고 어떤 token을 먼저 예측하고 무엇을 참조하게 할지를 바꾸는 것이다. NSP의 topic shortcut, SOP의 order 구분, RoBERTa의 제거 실험, XLNet의 permutation factorization은 서로 다른 학습 설계로 구분한다.

Negative 구성은 objective가 보상할 신호를 결정한다.

NSP · SOP

어떤 negative를 만드는지로 task의 단서를 비교한다.

AspectNSPSOP
Positive실제 AA→B실제 AA→B
Negative다른 document의 AA→XX같은 segments B→AA
ShortcutTopic 차이만으로 풀 수 있음같은 topic이라 order/coherence 필요
모델/후속BERT; RoBERTa는 제거ALBERT

Check

SOP의 negative가 NSP보다 topic shortcut을 줄이는 이유는?

Answer

같은 segments를 뒤집어 topic을 유지하므로 순서·담화 coherence를 써야 한다. NSP의 다른 document negative는 topic 차이도 준다.

Input Format

RoBERTa ablation을 보고 모든 task에서 NSP가 해롭다고 단정할 수 없는 이유는?

Answer

Input format과 recipe가 함께 달라지고 특정 benchmarks의 결과이기 때문이다. Table의 조건과 model/objective를 함께 읽어야 한다.

같은 두 segments의 순서만 뒤집어 topic shortcut을 줄이는 objective는?

Answer

Sentence Order Prediction (SOP), ALBERT. 다른 document에서 negative를 뽑는 NSP와 비교한다.

NSP · SOP를 축별로 비교하고 그 차이가 필요한 이유를 설명하세요.

Answer

어떤 negative를 만드는지로 task의 단서를 비교한다.

Positive: NSP=실제 AA→B / SOP=실제 AA→B

Negative: NSP=다른 document의 AA→XX / SOP=같은 segments B→AA

Shortcut: NSP=Topic 차이만으로 풀 수 있음 / SOP=같은 topic이라 order/coherence 필요

모델/후속: NSP=BERT; RoBERTa는 제거 / SOP=ALBERT

Contents