SlideShare a Scribd company logo
D S A I Lab.
2021.12.23
Text Generation Task
Evaluation of Text generation : A Survey (Celikyilmaz et al., 2020)
숭실대학교 소프트웨어학과 DSAI Lab. 지승현 발표
1
D S A I Lab.
목차
1. Text generation task
– 개요
– 예시
2. The Importance of Text generation task
3. Metrics
– Text based
– Embedding based
– Language model based
4. 결론
2
D S A I Lab.
1. Text generation task - 개요
– Language Modeling ≅ Text generation
– Language modeling은 다음 목표로 모델을 학습시키는 것을 의미
Objective of Language Modeling : 𝑷(𝒙) 를 정확히 예측
이 때 𝒙 = 𝑥1, 𝑥2, … 𝑥𝑡 인 sentence
또한, 𝑷 𝒙 = 𝒊
𝒕
𝑷(𝑥𝑖|𝒙𝟏:𝒊−𝟏)
– 이를 역이용하면, 𝒙1:𝑡+1 입력을 넣어 𝑥𝑡+2 를 예측하고, 𝒙1:𝑡+2를 입력하여 𝑥𝑡+3을 예측하고…
 이 과정을 반복하여 Text generation 수행
3
D S A I Lab.
1. Text generation task – 예시 (RNN)
– RNN Language Model (RNNLM) 의 학습 예시
4
https://wikidocs.net/46496
D S A I Lab.
1. Text generation task - 예시 (RNN)
– 학습된 RNNLM은 다음과 같이 Text generation 수행
– input : “what will the fat”, result : “cat”
5
D S A I Lab.
1. Text generation task – 예시 (Transformer)
– Transformer는 문맥에 따라 token의 hidden vector를 조절하는 모델
– Encoder-decoder 구조를 가짐
– Encoder와 Decoder의 학습 방향이 다름
6
https://jalamm
ar.github.io/illu
strated-
transformer/
𝒉1:𝑡 = 𝐸𝑛𝑐𝑜𝑑𝑒𝑟(𝒙1:𝑡) 𝑥𝑙+1
′
= 𝐷𝑒𝑐𝑜𝑑𝑒𝑟(𝒉1:𝑡, 𝒙1:𝑙
′
)
D S A I Lab.
GPT-2 / 3
BERT
Transformer
1. Text generation task – 예시 (Transformer)
– Transformer를 응용한 다양한 언어모델의 대두
7
Encoder Decoder
Encoder Decoder
Objective:
𝑥𝑘 = 𝐸𝑛𝑐𝑜𝑑𝑒𝑟 𝒙1:𝑘, 𝑀𝐴𝑆𝐾 , 𝒙𝑘+1:𝑡
Objective:
𝑥𝑡+1 = 𝐷𝑒𝑐𝑜𝑑𝑒𝑟 𝒙1:𝑡
D S A I Lab.
2. Importance of Text generation task
– Brown et al. (2020) 은 GPT-3 모델을 통해 다양한 task를 수행하고자 함
– 학습 방법 :
context, question, answer 문단을 전부 sentence 𝒙라 하면
𝑷 𝑥𝑡+1 𝒙1:𝑡) for every t
 즉 다양한 context, question에 대해 GPT-3를 학습시키면
다양한 문제를 해결할 수 있을 것이라 주장
 그러나 여기에는 어느정도 한계가 존재하여, few-shot setting을 추가 도입
8
D S A I Lab.
2. Importance of Text generation task
– Zero-shot : 기존의 inference
– Input : context, question
– output : answer
– One-shot : 추가 입력된 inference
– Input : question, context, answer, context*
– output : answer on context*
 즉 inference 시 미리 질문 – 답 예제를 추가 제공
9
Language Models are Few-shot learners,
Brown et al.
D S A I Lab.
2. Importance of Text generation task
– Few-shot setting (Brown et al. 제안)
– inference 시 질문 – 답 예시를 여러 개 제공
– GPT-3 모델이 여러 예시를 입력받는 동시에
패턴을 파악(in-context learning) 한다고 주장
 그 결과 42가지 task를 어느정도 수행하는 단일 모델
을 만들었으며, Fine-tuned SOTA보다도 더 좋은 결
과를 보인 task도 존재
 이처럼 Text generation task를 잘 하는 것
만으로 다양한 Task를 수행할 수 있음
10
D S A I Lab.
3. Metrics
– Text generation은 자연어에 가까운 text를 생성하는 것이 목표
– 따라서 사람이 직접 평가하는 방법도 많이 활용되나, 여기서는 제외
– Metric은 Text, Embedding, Language model based 방법으로 구분
(발표자가 임의로 구분)
11
D S A I Lab.
3. Metrics – Text based
– Text based metric
– 출력 텍스트와 정답 텍스트를 직접적으로 비교하는 방법
– BLEU, ROUGE, METEOR, CIDEr 등이 대표적
12
D S A I Lab.
3. Metrics – Text based (BLEU)
– BLEU
– 정답 텍스트와 출력 텍스트의 uni-gram ~ 4-gram 정확도를 각각 합친 평가지표
– 정답 텍스트가 answer, 출력 텍스트가 output이라고 할 때,
13
𝐵𝐿𝐸𝑈 = exp
𝑛
𝑁
𝑤𝑛 log 𝑝𝑛 , w𝑛 = ℎ𝑦𝑝𝑒𝑟𝑝𝑎𝑟𝑎𝑚𝑒𝑡𝑒𝑟
(일반적으로 N = 4)
𝑝𝑛 =
𝑛 − 𝑔𝑟𝑎𝑚(𝒐𝒖𝒕𝒑𝒖𝒕, 𝒂𝒏𝒘𝒆𝒓)
𝑐𝑜𝑢𝑛𝑡(𝒐𝒖𝒕𝒑𝒖𝒕)
D S A I Lab.
3. Metrics – Text based (BLEU)
example
reference :
https://donghwa-
kim.github.io/BLEU.
html
14
D S A I Lab.
3. Metrics – Text based (BLEU)
– 기계번역에서는 좋은 metric으로 평가됨
– 이후 다양한 보정 수식이 추가돼 여러 결함을 수정함
– 기계번역 task 평가 시, human judgement와 상관관계가 높은 것으로 알려짐
– 그러나 다른 task에서는 좋은 metric으로 평가되지 못하며, 정보의 풍부함이나 의미 함유 정도 등은
평가하지 못하는 것으로 알려짐 (Caccia et al., 2018)
 텍스트의 의미 등을 고려하려면 다른 metric을 사용해야 할 것으로 사료
15
D S A I Lab.
3. Metrics – Text based
– ROUGE
– BLEU에서 n-gram precision을 계산한 반면 ROUGE는 n-gram recall을 계산
– METEOR
– n-gram F1 score를 계산
– CIDEr
– TF-IDF 아이디어를 차용하여 자주 사용되는 정답 텍스트 단어에는 낮은 가중치를 부여
 위 metric들은 텍스트의 의미, 다양성 등을 평가하지 못한다고 알려짐
16
D S A I Lab.
3. Metrics – Embedding based
– Embedding based metric
– 텍스트의 단어를 임베딩 벡터로 만들거나 문장을 임베딩 벡터로 만들어 평가
– 출력 텍스트와 정답 텍스트의 의미를 기준으로 평가하려는 시도
– WMD (word mover’s distance), SMD (sentence mover’s distance) 등이 대표적
17
D S A I Lab.
3. Metrics – Embedding based (WMD)
– Word mover’s distance
– Word2vec 임베딩을 사용
– 출력 텍스트와 정답 텍스트의 동사, 명사, 형
용사 등의 임베딩 벡터를 추출
– 각 임베딩 벡터들의 유사도를 측정
 단어 순서나 문장 구조 등을 반영하지 못함
18
From Word Embeddings To Document Distances,
Kusner et al., 2015
D S A I Lab.
3. Metrics – Embedding based (SMD)
– Sentence mover’s distance
– 단어 임베딩 벡터 뿐만 아니라 문장 임베
딩 벡터*끼리와도 비교
– WMD보다 좀 더 human judgement에
가까워짐
* 문장 내 단어 임베딩 벡터들의 평균을 취해 계산
19
Sentence Mover’s Similarity: Automatic Evaluation for Multi-
Sentence Texts, Clark et al. 2019
D S A I Lab.
3. Metrics – LM based
– Language model based metric
– 정답 텍스트로 만들어진 언어 모델을 활용
– 출력 텍스트를 이 언어 모델에 입력하면, 어느정도 적합한지 로짓, 확률분포 등을 통해 확인 가능
– 비교적 최근에 시도되는 방법이므로 다수의 접근 방법이 존재
– 본 발표에서는 Perplexity based, Self-BLEU를 소개
20
D S A I Lab.
3. Metrics – LM based (Perplexity based)
– Perplexity는 모델의 confidence를 측정
– Perplexity : Entropy를 통해 유도 가능한 수식으로, [1:∞) 의 범위를 출력
– 훈련 텍스트 내 단어를 모두 100%의 확률 예측값 (이하 confidence로 통칭) 으로 추론하면 1,
0%의 confidence로 출력할 경우 ∞를 출력 (confidence에 반비례)
예시 ) 문장 내 모든 단어의 출력 확률값이 0.7이면, PPL =
𝑵 𝟏
𝟎.𝟕𝑵 =
𝟏
𝟎.𝟕
1.0이면 PPL =
𝑵 𝟏
𝟏.𝟎𝑵 =
𝟏
𝟏.𝟎
= 𝟏
21
D S A I Lab.
3. Metrics – LM based (Perplexity based)
– Generation perplexity (Fan et al., 2018)
– 훈련 데이터에 대해 overfitting되면 훈련 데이터에 대한 perplexity는 1
– 테스트 데이터에 대해 완벽히 훈련된다면, 데이터 내의 모든 단어를 100%의 confidence로 출력.
따라서 테스트 데이터에 대한 perplexity는 1이 된다.
 이를 응용하면, 어떤 텍스트로 훈련된 언어 모델이 있을 때
해당 텍스트와 매우 흡사한 텍스트를 입력하면 낮은 perplexity를 출력할 것.
반대로 매우 다른 출력 텍스트에 대해선 높은 perplexity를 출력할 것.
 이를 통해 출력 텍스트가 자연어에 얼마나 흡사한지를 평가함
22
D S A I Lab.
3. Metrics – LM based (Self-BLEU)
– Self-BLEU (Zhu et al., 2018)
– Max likelihood로 생성된 텍스트는 빈출 단어만을 출력하게 될 수 있음
– 따라서 출력 텍스트가 서로 비슷해지는 현상을 방지할 필요가 있음
 출력 텍스트들이 얼마나 비슷한지 평가하는 지표를 제안
– 방법은 단순히 출력 텍스트들끼리의 BLEU를 계산
 self-BLEU와 텍스트의 다양성은 서로 반비례
23
D S A I Lab.
4. 결론
– Text generation task는 다양한 응용이 가능하며, 잠재력도 큼
– 그러나 이를 잘 평가할 수 있는 metric은 아직까지도 요원
– 특히 문장의 유의미성, 다양성 등을 평가하기 매우 어려움
24

More Related Content

What's hot

딥러닝 자연어처리 - RNN에서 BERT까지
딥러닝 자연어처리 - RNN에서 BERT까지딥러닝 자연어처리 - RNN에서 BERT까지
딥러닝 자연어처리 - RNN에서 BERT까지
deepseaswjh
 
Siamese neural networks for one shot image recognition paper explained
Siamese neural networks for one shot image recognition paper explainedSiamese neural networks for one shot image recognition paper explained
Siamese neural networks for one shot image recognition paper explained
taeseon ryu
 
딥러닝 기반의 자연어처리 최근 연구 동향
딥러닝 기반의 자연어처리 최근 연구 동향딥러닝 기반의 자연어처리 최근 연구 동향
딥러닝 기반의 자연어처리 최근 연구 동향
LGCNSairesearch
 
딥러닝 논문 리뷰 Learning phrase representations using rnn encoder decoder for stati...
딥러닝 논문 리뷰 Learning phrase representations using rnn encoder decoder for stati...딥러닝 논문 리뷰 Learning phrase representations using rnn encoder decoder for stati...
딥러닝 논문 리뷰 Learning phrase representations using rnn encoder decoder for stati...
keunbong kwak
 
Convolutional neural networks for sentence classification
Convolutional neural networks for sentence classificationConvolutional neural networks for sentence classification
Convolutional neural networks for sentence classification
keunbong kwak
 
REALM
REALMREALM
REALM
Hoon Heo
 
Sequence to Sequence Learning with Neural Networks
Sequence to Sequence Learning with Neural NetworksSequence to Sequence Learning with Neural Networks
Sequence to Sequence Learning with Neural Networks
Hoon Heo
 
Efficient Training of Bert by Progressively Stacking
Efficient Training of Bert by Progressively StackingEfficient Training of Bert by Progressively Stacking
Efficient Training of Bert by Progressively Stacking
Hoon Heo
 
Bi directional attention flow for nlp
Bi directional attention flow for nlpBi directional attention flow for nlp
Bi directional attention flow for nlp
kwon soonmok
 
메이크챗봇 자연어기초
메이크챗봇 자연어기초메이크챗봇 자연어기초
메이크챗봇 자연어기초
김용범 | 무영인터내쇼날
 
인하대 프로그래밍 경진대회 - 문제풀이
인하대 프로그래밍 경진대회 - 문제풀이인하대 프로그래밍 경진대회 - 문제풀이
인하대 프로그래밍 경진대회 - 문제풀이
NAVER D2
 
Masked Sequence to Sequence Pre-training for Language Generation
Masked Sequence to Sequence Pre-training for Language GenerationMasked Sequence to Sequence Pre-training for Language Generation
Masked Sequence to Sequence Pre-training for Language Generation
Hoon Heo
 
한양대 2017 hcpc advanced division 해설
한양대 2017 hcpc advanced division 해설한양대 2017 hcpc advanced division 해설
한양대 2017 hcpc advanced division 해설
NAVER D2
 
TinyBERT
TinyBERTTinyBERT
TinyBERT
Hoon Heo
 
Bidirectional attention flow for machine comprehension
Bidirectional attention flow for machine comprehensionBidirectional attention flow for machine comprehension
Bidirectional attention flow for machine comprehension
Woodam Lim
 
딥러닝을 이용한 자연어처리의 연구동향
딥러닝을 이용한 자연어처리의 연구동향딥러닝을 이용한 자연어처리의 연구동향
딥러닝을 이용한 자연어처리의 연구동향
홍배 김
 
Character-Aware Neural Language Models
Character-Aware Neural Language ModelsCharacter-Aware Neural Language Models
Character-Aware Neural Language Models
Hoon Heo
 
Efficient and effective passage search via contextualized late interaction ov...
Efficient and effective passage search via contextualized late interaction ov...Efficient and effective passage search via contextualized late interaction ov...
Efficient and effective passage search via contextualized late interaction ov...
taeseon ryu
 
GNMT로 알아보는 신경망 기반 기계번역
GNMT로 알아보는 신경망 기반 기계번역GNMT로 알아보는 신경망 기반 기계번역
GNMT로 알아보는 신경망 기반 기계번역
Byeong il Ko
 
문자 단위의 Neural Machine Translation
문자 단위의 Neural Machine Translation문자 단위의 Neural Machine Translation
문자 단위의 Neural Machine Translation
NAVER LABS
 

What's hot (20)

딥러닝 자연어처리 - RNN에서 BERT까지
딥러닝 자연어처리 - RNN에서 BERT까지딥러닝 자연어처리 - RNN에서 BERT까지
딥러닝 자연어처리 - RNN에서 BERT까지
 
Siamese neural networks for one shot image recognition paper explained
Siamese neural networks for one shot image recognition paper explainedSiamese neural networks for one shot image recognition paper explained
Siamese neural networks for one shot image recognition paper explained
 
딥러닝 기반의 자연어처리 최근 연구 동향
딥러닝 기반의 자연어처리 최근 연구 동향딥러닝 기반의 자연어처리 최근 연구 동향
딥러닝 기반의 자연어처리 최근 연구 동향
 
딥러닝 논문 리뷰 Learning phrase representations using rnn encoder decoder for stati...
딥러닝 논문 리뷰 Learning phrase representations using rnn encoder decoder for stati...딥러닝 논문 리뷰 Learning phrase representations using rnn encoder decoder for stati...
딥러닝 논문 리뷰 Learning phrase representations using rnn encoder decoder for stati...
 
Convolutional neural networks for sentence classification
Convolutional neural networks for sentence classificationConvolutional neural networks for sentence classification
Convolutional neural networks for sentence classification
 
REALM
REALMREALM
REALM
 
Sequence to Sequence Learning with Neural Networks
Sequence to Sequence Learning with Neural NetworksSequence to Sequence Learning with Neural Networks
Sequence to Sequence Learning with Neural Networks
 
Efficient Training of Bert by Progressively Stacking
Efficient Training of Bert by Progressively StackingEfficient Training of Bert by Progressively Stacking
Efficient Training of Bert by Progressively Stacking
 
Bi directional attention flow for nlp
Bi directional attention flow for nlpBi directional attention flow for nlp
Bi directional attention flow for nlp
 
메이크챗봇 자연어기초
메이크챗봇 자연어기초메이크챗봇 자연어기초
메이크챗봇 자연어기초
 
인하대 프로그래밍 경진대회 - 문제풀이
인하대 프로그래밍 경진대회 - 문제풀이인하대 프로그래밍 경진대회 - 문제풀이
인하대 프로그래밍 경진대회 - 문제풀이
 
Masked Sequence to Sequence Pre-training for Language Generation
Masked Sequence to Sequence Pre-training for Language GenerationMasked Sequence to Sequence Pre-training for Language Generation
Masked Sequence to Sequence Pre-training for Language Generation
 
한양대 2017 hcpc advanced division 해설
한양대 2017 hcpc advanced division 해설한양대 2017 hcpc advanced division 해설
한양대 2017 hcpc advanced division 해설
 
TinyBERT
TinyBERTTinyBERT
TinyBERT
 
Bidirectional attention flow for machine comprehension
Bidirectional attention flow for machine comprehensionBidirectional attention flow for machine comprehension
Bidirectional attention flow for machine comprehension
 
딥러닝을 이용한 자연어처리의 연구동향
딥러닝을 이용한 자연어처리의 연구동향딥러닝을 이용한 자연어처리의 연구동향
딥러닝을 이용한 자연어처리의 연구동향
 
Character-Aware Neural Language Models
Character-Aware Neural Language ModelsCharacter-Aware Neural Language Models
Character-Aware Neural Language Models
 
Efficient and effective passage search via contextualized late interaction ov...
Efficient and effective passage search via contextualized late interaction ov...Efficient and effective passage search via contextualized late interaction ov...
Efficient and effective passage search via contextualized late interaction ov...
 
GNMT로 알아보는 신경망 기반 기계번역
GNMT로 알아보는 신경망 기반 기계번역GNMT로 알아보는 신경망 기반 기계번역
GNMT로 알아보는 신경망 기반 기계번역
 
문자 단위의 Neural Machine Translation
문자 단위의 Neural Machine Translation문자 단위의 Neural Machine Translation
문자 단위의 Neural Machine Translation
 

Similar to 211223 지승현 text generation survey

GPT-X
GPT-XGPT-X
Deep neural networks for You-Tube recommendations
Deep neural networks for You-Tube recommendationsDeep neural networks for You-Tube recommendations
Deep neural networks for You-Tube recommendations
seungwoo kim
 
Machine translation survey vol2
Machine translation survey   vol2Machine translation survey   vol2
Machine translation survey vol2
gohyunwoong
 
TTS System을 이용한 교육용 소프트웨어 개발
TTS System을 이용한 교육용 소프트웨어 개발TTS System을 이용한 교육용 소프트웨어 개발
TTS System을 이용한 교육용 소프트웨어 개발
Jongmyoung Kim
 
검색엔진에 적용된 ChatGPT
검색엔진에 적용된 ChatGPT검색엔진에 적용된 ChatGPT
검색엔진에 적용된 ChatGPT
Tae Young Lee
 
CS294-112 18
CS294-112 18CS294-112 18
CS294-112 18
Gyubin Son
 
검색엔진에 적용된 딥러닝 모델 방법론
검색엔진에 적용된 딥러닝 모델 방법론검색엔진에 적용된 딥러닝 모델 방법론
검색엔진에 적용된 딥러닝 모델 방법론
Tae Young Lee
 
220804 지승현 CausaLM.pptx
220804 지승현 CausaLM.pptx220804 지승현 CausaLM.pptx
220804 지승현 CausaLM.pptx
ssuserf03c031
 
20230727_tinystories
20230727_tinystories20230727_tinystories
20230727_tinystories
YongSang Yoo
 
Hadoop 기반 문서 검색
Hadoop 기반 문서 검색Hadoop 기반 문서 검색
Hadoop 기반 문서 검색
치완 박
 
Automated program corrector for programming assignments using Deep Learning
Automated program corrector for programming assignments using Deep LearningAutomated program corrector for programming assignments using Deep Learning
Automated program corrector for programming assignments using Deep Learning
Soo Kim
 
파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)
SK(주) C&C - 강병호
 
Chapter 11 Practical Methodology
Chapter 11 Practical MethodologyChapter 11 Practical Methodology
Chapter 11 Practical Methodology
KyeongUkJang
 
MRC recent trend_ppt
MRC recent trend_pptMRC recent trend_ppt
MRC recent trend_ppt
seungwoo kim
 
PaLM Paper Review
PaLM Paper ReviewPaLM Paper Review
PaLM Paper Review
Tae Young Lee
 
Improving Language Understanding by Generative Pre-Training
Improving Language Understanding by Generative Pre-TrainingImproving Language Understanding by Generative Pre-Training
Improving Language Understanding by Generative Pre-Training
pko89403
 
Ml for 정형데이터
Ml for 정형데이터Ml for 정형데이터
Ml for 정형데이터
JEEHYUN PAIK
 
Using Behavioral Data to Identify Interviewer Fabrication in Surveys + CHI 20...
Using Behavioral Data to Identify Interviewer Fabrication in Surveys + CHI 20...Using Behavioral Data to Identify Interviewer Fabrication in Surveys + CHI 20...
Using Behavioral Data to Identify Interviewer Fabrication in Surveys + CHI 20...Hyunjin Ahn
 
2012 Dm B3 보고서(10백지원)
2012 Dm B3 보고서(10백지원)2012 Dm B3 보고서(10백지원)
2012 Dm B3 보고서(10백지원)arong1234
 
2012 Dm B3 보고서(06박찬흥)
2012 Dm B3 보고서(06박찬흥)2012 Dm B3 보고서(06박찬흥)
2012 Dm B3 보고서(06박찬흥)pchmago
 

Similar to 211223 지승현 text generation survey (20)

GPT-X
GPT-XGPT-X
GPT-X
 
Deep neural networks for You-Tube recommendations
Deep neural networks for You-Tube recommendationsDeep neural networks for You-Tube recommendations
Deep neural networks for You-Tube recommendations
 
Machine translation survey vol2
Machine translation survey   vol2Machine translation survey   vol2
Machine translation survey vol2
 
TTS System을 이용한 교육용 소프트웨어 개발
TTS System을 이용한 교육용 소프트웨어 개발TTS System을 이용한 교육용 소프트웨어 개발
TTS System을 이용한 교육용 소프트웨어 개발
 
검색엔진에 적용된 ChatGPT
검색엔진에 적용된 ChatGPT검색엔진에 적용된 ChatGPT
검색엔진에 적용된 ChatGPT
 
CS294-112 18
CS294-112 18CS294-112 18
CS294-112 18
 
검색엔진에 적용된 딥러닝 모델 방법론
검색엔진에 적용된 딥러닝 모델 방법론검색엔진에 적용된 딥러닝 모델 방법론
검색엔진에 적용된 딥러닝 모델 방법론
 
220804 지승현 CausaLM.pptx
220804 지승현 CausaLM.pptx220804 지승현 CausaLM.pptx
220804 지승현 CausaLM.pptx
 
20230727_tinystories
20230727_tinystories20230727_tinystories
20230727_tinystories
 
Hadoop 기반 문서 검색
Hadoop 기반 문서 검색Hadoop 기반 문서 검색
Hadoop 기반 문서 검색
 
Automated program corrector for programming assignments using Deep Learning
Automated program corrector for programming assignments using Deep LearningAutomated program corrector for programming assignments using Deep Learning
Automated program corrector for programming assignments using Deep Learning
 
파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)
 
Chapter 11 Practical Methodology
Chapter 11 Practical MethodologyChapter 11 Practical Methodology
Chapter 11 Practical Methodology
 
MRC recent trend_ppt
MRC recent trend_pptMRC recent trend_ppt
MRC recent trend_ppt
 
PaLM Paper Review
PaLM Paper ReviewPaLM Paper Review
PaLM Paper Review
 
Improving Language Understanding by Generative Pre-Training
Improving Language Understanding by Generative Pre-TrainingImproving Language Understanding by Generative Pre-Training
Improving Language Understanding by Generative Pre-Training
 
Ml for 정형데이터
Ml for 정형데이터Ml for 정형데이터
Ml for 정형데이터
 
Using Behavioral Data to Identify Interviewer Fabrication in Surveys + CHI 20...
Using Behavioral Data to Identify Interviewer Fabrication in Surveys + CHI 20...Using Behavioral Data to Identify Interviewer Fabrication in Surveys + CHI 20...
Using Behavioral Data to Identify Interviewer Fabrication in Surveys + CHI 20...
 
2012 Dm B3 보고서(10백지원)
2012 Dm B3 보고서(10백지원)2012 Dm B3 보고서(10백지원)
2012 Dm B3 보고서(10백지원)
 
2012 Dm B3 보고서(06박찬흥)
2012 Dm B3 보고서(06박찬흥)2012 Dm B3 보고서(06박찬흥)
2012 Dm B3 보고서(06박찬흥)
 

211223 지승현 text generation survey

  • 1. D S A I Lab. 2021.12.23 Text Generation Task Evaluation of Text generation : A Survey (Celikyilmaz et al., 2020) 숭실대학교 소프트웨어학과 DSAI Lab. 지승현 발표 1
  • 2. D S A I Lab. 목차 1. Text generation task – 개요 – 예시 2. The Importance of Text generation task 3. Metrics – Text based – Embedding based – Language model based 4. 결론 2
  • 3. D S A I Lab. 1. Text generation task - 개요 – Language Modeling ≅ Text generation – Language modeling은 다음 목표로 모델을 학습시키는 것을 의미 Objective of Language Modeling : 𝑷(𝒙) 를 정확히 예측 이 때 𝒙 = 𝑥1, 𝑥2, … 𝑥𝑡 인 sentence 또한, 𝑷 𝒙 = 𝒊 𝒕 𝑷(𝑥𝑖|𝒙𝟏:𝒊−𝟏) – 이를 역이용하면, 𝒙1:𝑡+1 입력을 넣어 𝑥𝑡+2 를 예측하고, 𝒙1:𝑡+2를 입력하여 𝑥𝑡+3을 예측하고…  이 과정을 반복하여 Text generation 수행 3
  • 4. D S A I Lab. 1. Text generation task – 예시 (RNN) – RNN Language Model (RNNLM) 의 학습 예시 4 https://wikidocs.net/46496
  • 5. D S A I Lab. 1. Text generation task - 예시 (RNN) – 학습된 RNNLM은 다음과 같이 Text generation 수행 – input : “what will the fat”, result : “cat” 5
  • 6. D S A I Lab. 1. Text generation task – 예시 (Transformer) – Transformer는 문맥에 따라 token의 hidden vector를 조절하는 모델 – Encoder-decoder 구조를 가짐 – Encoder와 Decoder의 학습 방향이 다름 6 https://jalamm ar.github.io/illu strated- transformer/ 𝒉1:𝑡 = 𝐸𝑛𝑐𝑜𝑑𝑒𝑟(𝒙1:𝑡) 𝑥𝑙+1 ′ = 𝐷𝑒𝑐𝑜𝑑𝑒𝑟(𝒉1:𝑡, 𝒙1:𝑙 ′ )
  • 7. D S A I Lab. GPT-2 / 3 BERT Transformer 1. Text generation task – 예시 (Transformer) – Transformer를 응용한 다양한 언어모델의 대두 7 Encoder Decoder Encoder Decoder Objective: 𝑥𝑘 = 𝐸𝑛𝑐𝑜𝑑𝑒𝑟 𝒙1:𝑘, 𝑀𝐴𝑆𝐾 , 𝒙𝑘+1:𝑡 Objective: 𝑥𝑡+1 = 𝐷𝑒𝑐𝑜𝑑𝑒𝑟 𝒙1:𝑡
  • 8. D S A I Lab. 2. Importance of Text generation task – Brown et al. (2020) 은 GPT-3 모델을 통해 다양한 task를 수행하고자 함 – 학습 방법 : context, question, answer 문단을 전부 sentence 𝒙라 하면 𝑷 𝑥𝑡+1 𝒙1:𝑡) for every t  즉 다양한 context, question에 대해 GPT-3를 학습시키면 다양한 문제를 해결할 수 있을 것이라 주장  그러나 여기에는 어느정도 한계가 존재하여, few-shot setting을 추가 도입 8
  • 9. D S A I Lab. 2. Importance of Text generation task – Zero-shot : 기존의 inference – Input : context, question – output : answer – One-shot : 추가 입력된 inference – Input : question, context, answer, context* – output : answer on context*  즉 inference 시 미리 질문 – 답 예제를 추가 제공 9 Language Models are Few-shot learners, Brown et al.
  • 10. D S A I Lab. 2. Importance of Text generation task – Few-shot setting (Brown et al. 제안) – inference 시 질문 – 답 예시를 여러 개 제공 – GPT-3 모델이 여러 예시를 입력받는 동시에 패턴을 파악(in-context learning) 한다고 주장  그 결과 42가지 task를 어느정도 수행하는 단일 모델 을 만들었으며, Fine-tuned SOTA보다도 더 좋은 결 과를 보인 task도 존재  이처럼 Text generation task를 잘 하는 것 만으로 다양한 Task를 수행할 수 있음 10
  • 11. D S A I Lab. 3. Metrics – Text generation은 자연어에 가까운 text를 생성하는 것이 목표 – 따라서 사람이 직접 평가하는 방법도 많이 활용되나, 여기서는 제외 – Metric은 Text, Embedding, Language model based 방법으로 구분 (발표자가 임의로 구분) 11
  • 12. D S A I Lab. 3. Metrics – Text based – Text based metric – 출력 텍스트와 정답 텍스트를 직접적으로 비교하는 방법 – BLEU, ROUGE, METEOR, CIDEr 등이 대표적 12
  • 13. D S A I Lab. 3. Metrics – Text based (BLEU) – BLEU – 정답 텍스트와 출력 텍스트의 uni-gram ~ 4-gram 정확도를 각각 합친 평가지표 – 정답 텍스트가 answer, 출력 텍스트가 output이라고 할 때, 13 𝐵𝐿𝐸𝑈 = exp 𝑛 𝑁 𝑤𝑛 log 𝑝𝑛 , w𝑛 = ℎ𝑦𝑝𝑒𝑟𝑝𝑎𝑟𝑎𝑚𝑒𝑡𝑒𝑟 (일반적으로 N = 4) 𝑝𝑛 = 𝑛 − 𝑔𝑟𝑎𝑚(𝒐𝒖𝒕𝒑𝒖𝒕, 𝒂𝒏𝒘𝒆𝒓) 𝑐𝑜𝑢𝑛𝑡(𝒐𝒖𝒕𝒑𝒖𝒕)
  • 14. D S A I Lab. 3. Metrics – Text based (BLEU) example reference : https://donghwa- kim.github.io/BLEU. html 14
  • 15. D S A I Lab. 3. Metrics – Text based (BLEU) – 기계번역에서는 좋은 metric으로 평가됨 – 이후 다양한 보정 수식이 추가돼 여러 결함을 수정함 – 기계번역 task 평가 시, human judgement와 상관관계가 높은 것으로 알려짐 – 그러나 다른 task에서는 좋은 metric으로 평가되지 못하며, 정보의 풍부함이나 의미 함유 정도 등은 평가하지 못하는 것으로 알려짐 (Caccia et al., 2018)  텍스트의 의미 등을 고려하려면 다른 metric을 사용해야 할 것으로 사료 15
  • 16. D S A I Lab. 3. Metrics – Text based – ROUGE – BLEU에서 n-gram precision을 계산한 반면 ROUGE는 n-gram recall을 계산 – METEOR – n-gram F1 score를 계산 – CIDEr – TF-IDF 아이디어를 차용하여 자주 사용되는 정답 텍스트 단어에는 낮은 가중치를 부여  위 metric들은 텍스트의 의미, 다양성 등을 평가하지 못한다고 알려짐 16
  • 17. D S A I Lab. 3. Metrics – Embedding based – Embedding based metric – 텍스트의 단어를 임베딩 벡터로 만들거나 문장을 임베딩 벡터로 만들어 평가 – 출력 텍스트와 정답 텍스트의 의미를 기준으로 평가하려는 시도 – WMD (word mover’s distance), SMD (sentence mover’s distance) 등이 대표적 17
  • 18. D S A I Lab. 3. Metrics – Embedding based (WMD) – Word mover’s distance – Word2vec 임베딩을 사용 – 출력 텍스트와 정답 텍스트의 동사, 명사, 형 용사 등의 임베딩 벡터를 추출 – 각 임베딩 벡터들의 유사도를 측정  단어 순서나 문장 구조 등을 반영하지 못함 18 From Word Embeddings To Document Distances, Kusner et al., 2015
  • 19. D S A I Lab. 3. Metrics – Embedding based (SMD) – Sentence mover’s distance – 단어 임베딩 벡터 뿐만 아니라 문장 임베 딩 벡터*끼리와도 비교 – WMD보다 좀 더 human judgement에 가까워짐 * 문장 내 단어 임베딩 벡터들의 평균을 취해 계산 19 Sentence Mover’s Similarity: Automatic Evaluation for Multi- Sentence Texts, Clark et al. 2019
  • 20. D S A I Lab. 3. Metrics – LM based – Language model based metric – 정답 텍스트로 만들어진 언어 모델을 활용 – 출력 텍스트를 이 언어 모델에 입력하면, 어느정도 적합한지 로짓, 확률분포 등을 통해 확인 가능 – 비교적 최근에 시도되는 방법이므로 다수의 접근 방법이 존재 – 본 발표에서는 Perplexity based, Self-BLEU를 소개 20
  • 21. D S A I Lab. 3. Metrics – LM based (Perplexity based) – Perplexity는 모델의 confidence를 측정 – Perplexity : Entropy를 통해 유도 가능한 수식으로, [1:∞) 의 범위를 출력 – 훈련 텍스트 내 단어를 모두 100%의 확률 예측값 (이하 confidence로 통칭) 으로 추론하면 1, 0%의 confidence로 출력할 경우 ∞를 출력 (confidence에 반비례) 예시 ) 문장 내 모든 단어의 출력 확률값이 0.7이면, PPL = 𝑵 𝟏 𝟎.𝟕𝑵 = 𝟏 𝟎.𝟕 1.0이면 PPL = 𝑵 𝟏 𝟏.𝟎𝑵 = 𝟏 𝟏.𝟎 = 𝟏 21
  • 22. D S A I Lab. 3. Metrics – LM based (Perplexity based) – Generation perplexity (Fan et al., 2018) – 훈련 데이터에 대해 overfitting되면 훈련 데이터에 대한 perplexity는 1 – 테스트 데이터에 대해 완벽히 훈련된다면, 데이터 내의 모든 단어를 100%의 confidence로 출력. 따라서 테스트 데이터에 대한 perplexity는 1이 된다.  이를 응용하면, 어떤 텍스트로 훈련된 언어 모델이 있을 때 해당 텍스트와 매우 흡사한 텍스트를 입력하면 낮은 perplexity를 출력할 것. 반대로 매우 다른 출력 텍스트에 대해선 높은 perplexity를 출력할 것.  이를 통해 출력 텍스트가 자연어에 얼마나 흡사한지를 평가함 22
  • 23. D S A I Lab. 3. Metrics – LM based (Self-BLEU) – Self-BLEU (Zhu et al., 2018) – Max likelihood로 생성된 텍스트는 빈출 단어만을 출력하게 될 수 있음 – 따라서 출력 텍스트가 서로 비슷해지는 현상을 방지할 필요가 있음  출력 텍스트들이 얼마나 비슷한지 평가하는 지표를 제안 – 방법은 단순히 출력 텍스트들끼리의 BLEU를 계산  self-BLEU와 텍스트의 다양성은 서로 반비례 23
  • 24. D S A I Lab. 4. 결론 – Text generation task는 다양한 응용이 가능하며, 잠재력도 큼 – 그러나 이를 잘 평가할 수 있는 metric은 아직까지도 요원 – 특히 문장의 유의미성, 다양성 등을 평가하기 매우 어려움 24