Large Scale Language Model (Ex, GPT-3 : 1,750억 개의 매개변수) 의 경우 모델을 학습하기 힘들다.
-> 이 매개변수의 0.1%만을 사용하는 앙상블 마스크 언어 모델 학습 방법.
Pattern Exploiting Train(PET)
분류 문제에서..
basic fine tuning : MLM(Masked Language Modeling) 혹은 다른 학습 목표를 가지고 학습한 Pre-Training 이후 학습된 해당 위치에 할당되는 Vocab Softmax Layer는 사용하지 않고 새로운 Classification Task을 위한 Softmax Layer를 추가하여 Fine Tuning 진행. 따라서 많은 Sample이 필요함.
PET (Pattern Exploiting Training) : 학습된 해당 위치에 할당되는 Vocab Softmax Layer를 Fine Tuning에 적용(Classification의 Class와 Vocab을 Mapping 하는 방식) -> Pre-Training 의 정보를 활용하면서 Sample들의 Class 분류 가능.
요약
Few-shot Text Classification 및 Natural Language Inference를 위한 Cloze 질문 활용한 것.
-> 특정 빈칸을 수반한 문장이 있고, 해당 위치에서 생성되는 Text를 소프트 레이블로 보고 이것과 실제 데이터와의 오차를 최소화하여 시퀀스 분류기를 훈련하는데 사용?
= 입력 예제를 클로즈 스타일 구문으로 다시 공식화하는 반 지도 교육 절차인 패턴 활용 교육(PET)
+
iPET = 앙상블 기법을 활용해 서로 다른 모델에서 라벨링 되지 않은 데이터의 결과를 예측하여 학습 데이터로 주며 학습하며 매 학습시마다 데이터의 양을 늘려 학습하여 지속적으로 향상된 성능의 모델을 만드는 알고리즘.
PET의 핵심 아이디어는 v(y)가 P(x)의 마스킹된 위치에서 "올바른" 토큰일 확률에서 y가 x에 대한 올바른 출력일 확률을 도출하는 것.
자세한 사항.
PET 방식. 간단하게 사전 훈련된 ALBERT 모델과 결합하여 PET가 Pattern Verbalizer Pair를 Cloze 스타일 질문들로 변환하고, 서로 다른 모델들의 조합을 훈련시켜 재 공식화 한다.
아래와 같이 빈칸이 수반된 문장.
Cloze Style = X2 ____, X1.
인풋을 하나의 빈칸을 포함하는 Cloze 질문으로 매핑하는 것을 P(x) (A가 B이고 B가 C이면 A가 C인가? , A가 C입니다.
빈칸에 들어가는 하나의 토큰으로 표현해주는 Verbalizer v(y) (ex. Yes, No 등)
M= Masked Language Modeling, ( [MASK] Token )
T = Vocabulary, T* = All token sequence, z ∈T* 적어도 k의 마스크와 t ∈T
$$ q_{M}^{k}(t|z) = probability M assigns to t at the kth masked position in z$$
$$ before applying softmax s_{M}^{k}(t|z)
결국 v(y)가 P(x)의 마스킹된 자리에 올 점수 = $$ Score_{p}(y|x) = Score_{M}^{1}(v(y)|P(x)) = raw score of v(y) at the masked position in P(x)$$
이후 인풋 x에 대한 정답이 y일 확률은 다음과 같다.
$$ q_{p} (y|x)=\frac{\exp s_{P} (y|x)} {\sum_{y'\in Y} \exp s_{P} (y'|x)}$$
목적 : 입력 x와 출력 y에 대해, Cloze 스타일로 테스크를 잘 정의하는 P와 v를 알아내는 것.
어떤 PVP가 잘 작동하는지 알아내는 것은 어렵기 때문에 여러 개의 PVP들을 조합해서 사용.
1. For each PVP pair, MLM은 Training example (x,y)에 대해 fine tuning 됨 이후 y와 q_probability(y|x) cross entroy loss를 최소화.
2. 이렇게 학습된 MLM은 레이블이 지정되지 않은 예제는 각 예제 자리의 MLM 확률 분포를 기반으로 한 소프트 레이블로 주석 처리.
3. 결과 소프트 레이블 데이터 세트는 출력과 q(P) 사이의 교차 엔트로피를 최소화하여 정규 시퀀스 분류기를 훈련하는데 사용
이후 입력 x에 대한 정답 y일 확률을 아래와 같이 계산.
인풋 x와 아웃풋 y에 대해 Cloze 스타일로 테스크를 잘 정의하는 P와 v를 알아내는 것.
iPET ( = 학습된 모델들을 이용해 학습 데이터를 만들어내며, 모델을 계속 업데이트 하는 방법)
1. PET를 사용해 MLM의 앙상블을 학습.
2. 각각의 모델에 랜덤 모델의 집합을 사용해 라벨링되지 않은 데이터를 라벨링하여 학습데이터로 이용. 이후 새로 맏르어진 학습 데이터를 사용해 다시 학습.
3. 1, 2과정을 거치며 생성하는 학습 데이터를 늘려 학습.
'Study' 카테고리의 다른 글
Fewshot Learning Training Approach (0) | 2022.02.16 |
---|---|
Fewshot Learning Similarity Approach (0) | 2022.02.15 |
positive-definite, negative-definite matrix (0) | 2021.05.06 |
Git 설치하기 (window, 2.31.1) (0) | 2021.04.13 |
TextRank, PageRank (0) | 2020.07.31 |