SlideShare a Scribd company logo
1 of 25
Download to read offline
MT-DNN
(Multi-Task Deep Neural
Networks for Natural Language
Understanding )
2019. 00. 00
Copyright© 2018 Tmax. All Rights Reserved.
I. Language Representation
II. GLUE Tasks
III. Model Architecture
IV. Evaluation
I. Language Representation
II. GLUE Tasks
III. Model Architecture
IV. Evaluation
2/21
핵심 요약
• MT-DNN은 BERT에 Multi-task learning(GLUE의 9개의 Task 활용)을 수행하여
성능 개선한 모델
- 다양한 Task의 Supervised Dataset을 모두 사용하여 대용량 데이터로 학습
- Multi-task Learning을 통해 특정 Task에 Overfitting되지 않도록 Regularization
• 다음의 Task들에 대해 State-of-the Art 성능 (BERT 보다 높은 성능)
- 8개의 GLUE Task
- SNLI와 SciTail Task로 Domain Adaptation
- Fine Tuning 데이터가 적을 때에도 Classification 정확도가 꽤 높음
3/21
Language Representation
• Natural Language Understanding에서 Word 혹은 Sentence의 Vector Representation을
생성하는 방식 2가지
• Language Model Pre-Training
• Unlabeled dataset을 활용한 학습 방법
• (대표적인 방법)문장에서 특정 단어를 맞추는 방식으로 Unsupervised Learning
• ELMO, BERT….
• Multi-task learning
• 여러 Task의 Labeled Dataset을 활용하여 1개의 모델 Supervised Learning
• 어떤 Task에서의 학습 효과가 다른 Task의 성능에 영향을 미칠 것이라는 가정
• Ex) 스키를 잘 타는 사람이 스케이트를 잘 탈 수 있음
4/21
Langue Model Pre-Training – BERT
• Book Corpus와 Wikipedia Data를 활용하여 다음 2가지 방식으로 학습
• Masked Word Prediction
• 문장이 주어졌을 때 특정 Word를 Masking하고 다른 주변 Word들을 활용하여 해당 Word를
예측하는 방식으로 학습
• ex) my dog is [Mask] -> my dog is hairy
• Next Sentence Prediction
• 문장이 2개 주어졌을 때, 2개의 문장이 연결된 문장인지 아닌지를 Classification 하는 방식으로
학습
- ex) Input = the man went to the store [SEP] he bought a gallon of milk → IsNext
5/21
Multi Task Learning
• Supervised Task를 1개의 모델을 통해 학습
• GLUE의 9개 Task 활용
• Multi-Task Learning의 이점은?
• 대용량 Supervised Dataset을 활용하여 학습 가능
- Supervised Dataset은 Task에 따라 데이터가 적을 경우 성능이 상당히 저하되지만, Multi-task Learning 시 이러한
데이터를 모두 합쳐서 활용 가능
• 모델이 특정 Task에 Overfitting 되지 않도록 Regularization 효과를 줄 수 있음
• 어떤 식으로 Multi-Task Learning이 가능한건지??
-> 뒤에서 설명
6/21
GLUE Tasks
• Single Sentence Classification
• 하나의 문장이 Input으로 주어졌을 때 class를 분류하는 Task
• CoLA - 문장이 문법적으로 맞는지 분류 (True/False)
• 1 (Acceptable) The book was written by John.
• 0 (Unacceptable) Books were sent to each other by the students.
• SST-2 - 영화 Review 문장의 감정 분류 (Positive/Negative)
• Text Similarity
• 문장 쌍이 주어졌을 때, 점수를 예측하는 Regression Task
• STS-B - 문장 간의 의미적 유사도를 점수로 예측
• Pairwise Text Classification
• Relevance Ranking
7/21
GLUE Tasks
• Single Sentence Classification
• Text Similarity
• Pairwise Text Classification
• 문장 쌍이 주어졌을 때, 문장의 관계를 분류하는 Task
• RTE, MNLI - 문장 간의 의미적 관계를 3가지로 분류 (Entailment, Contradiction Neutral)
• QQP, MRPC - 문장 간 의미가 같음 여부를 분류 (True/False)
• Relevance Ranking
8/21
GLUE Tasks
• Single Sentence Classification
• Text Similarity
• Pairwise Text Classification
• Relevance Ranking
• 질문 문장과 지문이 주어졌을 때, 지문 중 정답이 있는 문장을 Ranking을 통해 찾는 Task
• QNLI - 질문, 지문 중 한 문장이 쌍으로 주어졌을 때 해당 지문 문장에 질문의 답이 있는지 여부를
분류 (True/False)
- MT-DNN에서는 이를 Rank 방식으로 바꾸어 모든 지문 문장에 정답이 있을 가능성을 Scoring 하여 가장 높은 지문
문장만을 True로 분류하는 방식으로 수행
9/21
Model Architecture
10/21
Model – Lexicon Encoder
• Input을 생성하는 Layer로 다음 3개의 Embedding으로 구성
• Token Embedding - Wordpiece Embedding Vector
- 1번째 Token은 [CLS] Token으로 추후 Output에서 Classification 등을 위해 사용됨
- 각 문장은 Wordpiece로 Tokenization 된 Vector로 구성되며 [SEP] Token이 두 문장 사이의
구분자로 사용됨
• Sentence Embedding - 1번째 혹은 2번째 문장을 표시해주는 Vector
• Positional Embedding - 각 Token의 위치 정보를 표현하는 Vector
11/21
Model – Transformer Encoder
• Lexicon Encoder로 부터 각 Token의 Input Vector를 입력으로 받아 Transformer를 통해
각 Token의 Output Vector를 추출
• Transformer이기 때문에 생성된 Vector는 Self Attention을 통해 주변 Token 정보를
반영한 Contextual Embedding Vector
12/21
Model – Single Sentence Classification
• Single Sentence Classification
• CoLA - 문장이 문법적으로 맞는지 Classification
• SST-2 – Movie Review 문장의 Sentiment Classification (Positive / Negative)
class Input
Sentence
Task specific
Parameter
Class
Token
13/21
Model – Text Similarity Output
• Text Similarity
• STS-B – 문장 Pair의 Similarity를 1~5점으로 Regression
Input
Sentence
Pair
Sigmoid Task specific
Parameter
Class
Token
14/21
Model – Pairwise Text Classification Output (1)
• Pairwise Text Classification
• MNLI – 문장 Pair의 entailment, contradiction, neutral을 Classification
• RTE – 문장 Pair의 Entailment 여부를 Binary Classification
• QQP, MRPC – 문장 Pair의 의미 같음 여부를 Binary Classification
• Stochastic Answer Network(SAN)를 활용하여 Classification
• 핵심 Idea - Multi-step Reasoning
• RNN을 활용하여 2번 이상의 예측을 통해 문장 간 관계를 분류
• 다음 2가지 문장이 있을 때 한번에 문장 간 관계를 분류하기는 쉽지 않음
• If you need this book, it is probably too late unless you are about to take an SAT or GRE
• It’s never too late, unless you’re about to take a test.
• 두 문장이 Cotradiction이라고 분류하기 위해서는 SAT, GRE가 Test라고 예측 단계가 먼저 필요함
15/21
Model – Pairwise Text Classification Output (2)
• RNN을 통해 Hypothesis 문장과 Premise 문장 간 관계를 예측
• Hidden State – Hypothesis Token Vector들의 Weighted Sum
• Input – Premise Token Vector들의 Weighted Sum
• 이전 Hidden State를 활용하여 Weight 계산
GRU!"#$ !"
%"
Hypothesis 문장
Token의 Vector Premise 문장
Token의 Vector
16/21
Model – Pairwise Text Classification Output (3)
• Time step 마다 hidden state와 input을 각각 문장의 Vector로 활용하여 문장 간 관계 분류
• 문장 간 관계를 예측 하기 위해 다음 수식과 같이 Heuristic하게 Vector를 구성하여 예측
• 문장 간 거리, Similarity(dot-product)를 문장 간 관계를 나타내는 값으로 활용
• K step 예측을 했다면 평균 값을 최종 예측 값으로 사용
각 문장의
Vector
문장 간
거리
문장 간
Similarity
17/21
Model – Relevance Ranking Output
• Relevance Ranking
• QNLI – 질문과 지문 pair에서 지문에 질문에 대한 답이 있는지 여부를 Binary Classification
• Sigmoid function을 통해 모든 answer candidate 문장을 scoring을 하고 Ranking을 통해
1개의 문장만을 True로 분류
Input
Sentence
Pair
Sigmoid Task
specific
Parameter
Class
Token
18/21
Training Procedure
• 9개의 GLUE Dataset을 모아서 Training dataset을
구성
• Batch 단위로 Training 시 마다 Shared Layer와 해당
Task의 Layer를 학습
Answer가
포함된 문장
19/21
Evaluation – Testing set 평가 결과
• BERT (80.4) -> MT-DNN (82.2) 1.8% 성능 향상
• BERT large로 학습한 다음에 GLUE Task 9개로 Fine Tuning
Relevance
Ranking
Pairwise Text
Classification
Single
Sentence
Classification
Text
Similarity
Regression
NLI ProblemSemantically
Equivalent Problem
데이터가 적을 때 더
높은 성능 향상
20/21
Evaluation – Development set 평가 결과
• ST-DNN – Multi Task Learning을 하지 않고 Task Specific Layer만 바꾸어서(SAN,
Pairwise Ranking loss) 학습한 모델
• SAN을 사용하여 얻은 성능 향상 효과가 크지는 않은듯… (Class Token을 쓰지 않고 Token
Embedding을 썼다는 정도 의미…)
• QNLI는 Ranking Approach로 큰 성능 향상
Stochastic Answer
Network Relevance
Ranking Loss
Accuracy / F1
21/21
Evaluation – Domain Adaptation
• BERT, MT-DNN에 각각 새로운 Task Specific Layer를 붙여서 학습 및 평가 결과
• NLI Dataset인 SNLI, SciTail을 활용하여 Domain Adaptation 평가
• 0.1%, 1%, 10%, 100%로 평가
• 데이터가 적을 때 MT-DNN의 성능이 BERT 보다 훨씬 높은 성능을 보임
Q & A
감사합니다
24/21
GLUE Dataset

More Related Content

What's hot

Recurrent Neural Net의 이론과 설명
Recurrent Neural Net의 이론과 설명Recurrent Neural Net의 이론과 설명
Recurrent Neural Net의 이론과 설명홍배 김
 
Introduction to Natural Language Processing
Introduction to Natural Language ProcessingIntroduction to Natural Language Processing
Introduction to Natural Language ProcessingPranav Gupta
 
R言語による簡便な有意差の検出と信頼区間の構成
R言語による簡便な有意差の検出と信頼区間の構成R言語による簡便な有意差の検出と信頼区間の構成
R言語による簡便な有意差の検出と信頼区間の構成Toshiyuki Shimono
 
Machine Translation Introduction
Machine Translation IntroductionMachine Translation Introduction
Machine Translation Introductionnlab_utokyo
 
NN時代の自然言語処理の設計と評価
NN時代の自然言語処理の設計と評価NN時代の自然言語処理の設計と評価
NN時代の自然言語処理の設計と評価Koki Yasuda
 
Introduction to Natural Language Processing (NLP)
Introduction to Natural Language Processing (NLP)Introduction to Natural Language Processing (NLP)
Introduction to Natural Language Processing (NLP)VenkateshMurugadas
 
PPT - Enhancing the Locality and Breaking the Memory Bottleneck of Transforme...
PPT - Enhancing the Locality and Breaking the Memory Bottleneck of Transforme...PPT - Enhancing the Locality and Breaking the Memory Bottleneck of Transforme...
PPT - Enhancing the Locality and Breaking the Memory Bottleneck of Transforme...Jisang Yoon
 
Natural language processing
Natural language processingNatural language processing
Natural language processingBasha Chand
 
검색엔진에 적용된 ChatGPT
검색엔진에 적용된 ChatGPT검색엔진에 적용된 ChatGPT
검색엔진에 적용된 ChatGPTTae Young Lee
 
Optimizing MapReduce Job performance
Optimizing MapReduce Job performanceOptimizing MapReduce Job performance
Optimizing MapReduce Job performanceDataWorks Summit
 
딥러닝 자연어처리 - RNN에서 BERT까지
딥러닝 자연어처리 - RNN에서 BERT까지딥러닝 자연어처리 - RNN에서 BERT까지
딥러닝 자연어처리 - RNN에서 BERT까지deepseaswjh
 
Text prediction based on Recurrent Neural Network Language Model
Text prediction based on Recurrent Neural Network Language ModelText prediction based on Recurrent Neural Network Language Model
Text prediction based on Recurrent Neural Network Language ModelANIRUDHMALODE2
 
NLP using transformers
NLP using transformers NLP using transformers
NLP using transformers Arvind Devaraj
 
Natural language processing in artificial intelligence
Natural language processing in artificial intelligenceNatural language processing in artificial intelligence
Natural language processing in artificial intelligenceAbdul Rafay
 
Tdm probabilistic models (part 2)
Tdm probabilistic  models (part  2)Tdm probabilistic  models (part  2)
Tdm probabilistic models (part 2)KU Leuven
 

What's hot (20)

Recurrent Neural Net의 이론과 설명
Recurrent Neural Net의 이론과 설명Recurrent Neural Net의 이론과 설명
Recurrent Neural Net의 이론과 설명
 
Introduction to Natural Language Processing
Introduction to Natural Language ProcessingIntroduction to Natural Language Processing
Introduction to Natural Language Processing
 
R言語による簡便な有意差の検出と信頼区間の構成
R言語による簡便な有意差の検出と信頼区間の構成R言語による簡便な有意差の検出と信頼区間の構成
R言語による簡便な有意差の検出と信頼区間の構成
 
NLP_KASHK:N-Grams
NLP_KASHK:N-GramsNLP_KASHK:N-Grams
NLP_KASHK:N-Grams
 
Machine Translation Introduction
Machine Translation IntroductionMachine Translation Introduction
Machine Translation Introduction
 
NN時代の自然言語処理の設計と評価
NN時代の自然言語処理の設計と評価NN時代の自然言語処理の設計と評価
NN時代の自然言語処理の設計と評価
 
Introduction to Natural Language Processing (NLP)
Introduction to Natural Language Processing (NLP)Introduction to Natural Language Processing (NLP)
Introduction to Natural Language Processing (NLP)
 
PPT - Enhancing the Locality and Breaking the Memory Bottleneck of Transforme...
PPT - Enhancing the Locality and Breaking the Memory Bottleneck of Transforme...PPT - Enhancing the Locality and Breaking the Memory Bottleneck of Transforme...
PPT - Enhancing the Locality and Breaking the Memory Bottleneck of Transforme...
 
Natural language processing
Natural language processingNatural language processing
Natural language processing
 
검색엔진에 적용된 ChatGPT
검색엔진에 적용된 ChatGPT검색엔진에 적용된 ChatGPT
검색엔진에 적용된 ChatGPT
 
Optimizing MapReduce Job performance
Optimizing MapReduce Job performanceOptimizing MapReduce Job performance
Optimizing MapReduce Job performance
 
딥러닝 자연어처리 - RNN에서 BERT까지
딥러닝 자연어처리 - RNN에서 BERT까지딥러닝 자연어처리 - RNN에서 BERT까지
딥러닝 자연어처리 - RNN에서 BERT까지
 
Text prediction based on Recurrent Neural Network Language Model
Text prediction based on Recurrent Neural Network Language ModelText prediction based on Recurrent Neural Network Language Model
Text prediction based on Recurrent Neural Network Language Model
 
NLP using transformers
NLP using transformers NLP using transformers
NLP using transformers
 
Nlp
NlpNlp
Nlp
 
Natural language processing in artificial intelligence
Natural language processing in artificial intelligenceNatural language processing in artificial intelligence
Natural language processing in artificial intelligence
 
NLP
NLPNLP
NLP
 
Tdm probabilistic models (part 2)
Tdm probabilistic  models (part  2)Tdm probabilistic  models (part  2)
Tdm probabilistic models (part 2)
 
Text summarization
Text summarizationText summarization
Text summarization
 
Language models
Language modelsLanguage models
Language models
 

Similar to MT-DNN

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-Trainingpko89403
 
MRC recent trend_ppt
MRC recent trend_pptMRC recent trend_ppt
MRC recent trend_pptseungwoo kim
 
A joint many task model
A joint many task modelA joint many task model
A joint many task model성재 최
 
검색엔진에 적용된 딥러닝 모델 방법론
검색엔진에 적용된 딥러닝 모델 방법론검색엔진에 적용된 딥러닝 모델 방법론
검색엔진에 적용된 딥러닝 모델 방법론Tae Young Lee
 
(Papers Review)CNN for sentence classification
(Papers Review)CNN for sentence classification(Papers Review)CNN for sentence classification
(Papers Review)CNN for sentence classificationMYEONGGYU LEE
 
DeBERTA : Decoding-Enhanced BERT with Disentangled Attention
DeBERTA : Decoding-Enhanced BERT with Disentangled AttentionDeBERTA : Decoding-Enhanced BERT with Disentangled Attention
DeBERTA : Decoding-Enhanced BERT with Disentangled Attentiontaeseon ryu
 
Deep Learning for Chatbot (2/4)
Deep Learning for Chatbot (2/4)Deep Learning for Chatbot (2/4)
Deep Learning for Chatbot (2/4)Jaemin Cho
 
GPT-Series.pdf
GPT-Series.pdfGPT-Series.pdf
GPT-Series.pdfKyuri Kim
 
Papago/N2MT 개발이야기
Papago/N2MT 개발이야기Papago/N2MT 개발이야기
Papago/N2MT 개발이야기NAVER D2
 
[Paper] EDA : easy data augmentation techniques for boosting performance on t...
[Paper] EDA : easy data augmentation techniques for boosting performance on t...[Paper] EDA : easy data augmentation techniques for boosting performance on t...
[Paper] EDA : easy data augmentation techniques for boosting performance on t...Susang Kim
 
풀잎스쿨 - LIME 발표자료(설명가능한 인공지능 기획!)
풀잎스쿨 - LIME 발표자료(설명가능한 인공지능 기획!)풀잎스쿨 - LIME 발표자료(설명가능한 인공지능 기획!)
풀잎스쿨 - LIME 발표자료(설명가능한 인공지능 기획!)Bong-Ho Lee
 
211223 지승현 text generation survey
211223 지승현 text generation survey211223 지승현 text generation survey
211223 지승현 text generation surveyssuser23ed0c
 
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 GenerationHoon Heo
 
[224] backend 개발자의 neural machine translation 개발기 김상경
[224] backend 개발자의 neural machine translation 개발기 김상경[224] backend 개발자의 neural machine translation 개발기 김상경
[224] backend 개발자의 neural machine translation 개발기 김상경NAVER D2
 
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
 
연구실 세미나 Show and tell google image captioning
연구실 세미나 Show and tell google image captioning연구실 세미나 Show and tell google image captioning
연구실 세미나 Show and tell google image captioninghkh
 
Attention is all you need
Attention is all you needAttention is all you need
Attention is all you needHoon Heo
 

Similar to MT-DNN (20)

221011_BERT
221011_BERT221011_BERT
221011_BERT
 
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
 
MRC recent trend_ppt
MRC recent trend_pptMRC recent trend_ppt
MRC recent trend_ppt
 
A joint many task model
A joint many task modelA joint many task model
A joint many task model
 
검색엔진에 적용된 딥러닝 모델 방법론
검색엔진에 적용된 딥러닝 모델 방법론검색엔진에 적용된 딥러닝 모델 방법론
검색엔진에 적용된 딥러닝 모델 방법론
 
(Papers Review)CNN for sentence classification
(Papers Review)CNN for sentence classification(Papers Review)CNN for sentence classification
(Papers Review)CNN for sentence classification
 
DeBERTA : Decoding-Enhanced BERT with Disentangled Attention
DeBERTA : Decoding-Enhanced BERT with Disentangled AttentionDeBERTA : Decoding-Enhanced BERT with Disentangled Attention
DeBERTA : Decoding-Enhanced BERT with Disentangled Attention
 
Deep Learning for Chatbot (2/4)
Deep Learning for Chatbot (2/4)Deep Learning for Chatbot (2/4)
Deep Learning for Chatbot (2/4)
 
파이썬을 활용한 자연어 분석
파이썬을 활용한 자연어 분석파이썬을 활용한 자연어 분석
파이썬을 활용한 자연어 분석
 
GPT-Series.pdf
GPT-Series.pdfGPT-Series.pdf
GPT-Series.pdf
 
Papago/N2MT 개발이야기
Papago/N2MT 개발이야기Papago/N2MT 개발이야기
Papago/N2MT 개발이야기
 
[Paper] EDA : easy data augmentation techniques for boosting performance on t...
[Paper] EDA : easy data augmentation techniques for boosting performance on t...[Paper] EDA : easy data augmentation techniques for boosting performance on t...
[Paper] EDA : easy data augmentation techniques for boosting performance on t...
 
풀잎스쿨 - LIME 발표자료(설명가능한 인공지능 기획!)
풀잎스쿨 - LIME 발표자료(설명가능한 인공지능 기획!)풀잎스쿨 - LIME 발표자료(설명가능한 인공지능 기획!)
풀잎스쿨 - LIME 발표자료(설명가능한 인공지능 기획!)
 
211223 지승현 text generation survey
211223 지승현 text generation survey211223 지승현 text generation survey
211223 지승현 text generation survey
 
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
 
PaLM Paper Review
PaLM Paper ReviewPaLM Paper Review
PaLM Paper Review
 
[224] backend 개발자의 neural machine translation 개발기 김상경
[224] backend 개발자의 neural machine translation 개발기 김상경[224] backend 개발자의 neural machine translation 개발기 김상경
[224] backend 개발자의 neural machine translation 개발기 김상경
 
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...
 
연구실 세미나 Show and tell google image captioning
연구실 세미나 Show and tell google image captioning연구실 세미나 Show and tell google image captioning
연구실 세미나 Show and tell google image captioning
 
Attention is all you need
Attention is all you needAttention is all you need
Attention is all you need
 

Recently uploaded

JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement MethodologyJMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement MethodologyJMP Korea
 
JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!JMP Korea
 
공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화JMP Korea
 
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개JMP Korea
 
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?Jay Park
 
데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법JMP Korea
 
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석JMP Korea
 
JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례JMP Korea
 

Recently uploaded (8)

JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement MethodologyJMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
 
JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!
 
공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화
 
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
 
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
 
데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법
 
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
 
JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례
 

MT-DNN

  • 1. MT-DNN (Multi-Task Deep Neural Networks for Natural Language Understanding ) 2019. 00. 00 Copyright© 2018 Tmax. All Rights Reserved.
  • 2. I. Language Representation II. GLUE Tasks III. Model Architecture IV. Evaluation I. Language Representation II. GLUE Tasks III. Model Architecture IV. Evaluation
  • 3. 2/21 핵심 요약 • MT-DNN은 BERT에 Multi-task learning(GLUE의 9개의 Task 활용)을 수행하여 성능 개선한 모델 - 다양한 Task의 Supervised Dataset을 모두 사용하여 대용량 데이터로 학습 - Multi-task Learning을 통해 특정 Task에 Overfitting되지 않도록 Regularization • 다음의 Task들에 대해 State-of-the Art 성능 (BERT 보다 높은 성능) - 8개의 GLUE Task - SNLI와 SciTail Task로 Domain Adaptation - Fine Tuning 데이터가 적을 때에도 Classification 정확도가 꽤 높음
  • 4. 3/21 Language Representation • Natural Language Understanding에서 Word 혹은 Sentence의 Vector Representation을 생성하는 방식 2가지 • Language Model Pre-Training • Unlabeled dataset을 활용한 학습 방법 • (대표적인 방법)문장에서 특정 단어를 맞추는 방식으로 Unsupervised Learning • ELMO, BERT…. • Multi-task learning • 여러 Task의 Labeled Dataset을 활용하여 1개의 모델 Supervised Learning • 어떤 Task에서의 학습 효과가 다른 Task의 성능에 영향을 미칠 것이라는 가정 • Ex) 스키를 잘 타는 사람이 스케이트를 잘 탈 수 있음
  • 5. 4/21 Langue Model Pre-Training – BERT • Book Corpus와 Wikipedia Data를 활용하여 다음 2가지 방식으로 학습 • Masked Word Prediction • 문장이 주어졌을 때 특정 Word를 Masking하고 다른 주변 Word들을 활용하여 해당 Word를 예측하는 방식으로 학습 • ex) my dog is [Mask] -> my dog is hairy • Next Sentence Prediction • 문장이 2개 주어졌을 때, 2개의 문장이 연결된 문장인지 아닌지를 Classification 하는 방식으로 학습 - ex) Input = the man went to the store [SEP] he bought a gallon of milk → IsNext
  • 6. 5/21 Multi Task Learning • Supervised Task를 1개의 모델을 통해 학습 • GLUE의 9개 Task 활용 • Multi-Task Learning의 이점은? • 대용량 Supervised Dataset을 활용하여 학습 가능 - Supervised Dataset은 Task에 따라 데이터가 적을 경우 성능이 상당히 저하되지만, Multi-task Learning 시 이러한 데이터를 모두 합쳐서 활용 가능 • 모델이 특정 Task에 Overfitting 되지 않도록 Regularization 효과를 줄 수 있음 • 어떤 식으로 Multi-Task Learning이 가능한건지?? -> 뒤에서 설명
  • 7. 6/21 GLUE Tasks • Single Sentence Classification • 하나의 문장이 Input으로 주어졌을 때 class를 분류하는 Task • CoLA - 문장이 문법적으로 맞는지 분류 (True/False) • 1 (Acceptable) The book was written by John. • 0 (Unacceptable) Books were sent to each other by the students. • SST-2 - 영화 Review 문장의 감정 분류 (Positive/Negative) • Text Similarity • 문장 쌍이 주어졌을 때, 점수를 예측하는 Regression Task • STS-B - 문장 간의 의미적 유사도를 점수로 예측 • Pairwise Text Classification • Relevance Ranking
  • 8. 7/21 GLUE Tasks • Single Sentence Classification • Text Similarity • Pairwise Text Classification • 문장 쌍이 주어졌을 때, 문장의 관계를 분류하는 Task • RTE, MNLI - 문장 간의 의미적 관계를 3가지로 분류 (Entailment, Contradiction Neutral) • QQP, MRPC - 문장 간 의미가 같음 여부를 분류 (True/False) • Relevance Ranking
  • 9. 8/21 GLUE Tasks • Single Sentence Classification • Text Similarity • Pairwise Text Classification • Relevance Ranking • 질문 문장과 지문이 주어졌을 때, 지문 중 정답이 있는 문장을 Ranking을 통해 찾는 Task • QNLI - 질문, 지문 중 한 문장이 쌍으로 주어졌을 때 해당 지문 문장에 질문의 답이 있는지 여부를 분류 (True/False) - MT-DNN에서는 이를 Rank 방식으로 바꾸어 모든 지문 문장에 정답이 있을 가능성을 Scoring 하여 가장 높은 지문 문장만을 True로 분류하는 방식으로 수행
  • 11. 10/21 Model – Lexicon Encoder • Input을 생성하는 Layer로 다음 3개의 Embedding으로 구성 • Token Embedding - Wordpiece Embedding Vector - 1번째 Token은 [CLS] Token으로 추후 Output에서 Classification 등을 위해 사용됨 - 각 문장은 Wordpiece로 Tokenization 된 Vector로 구성되며 [SEP] Token이 두 문장 사이의 구분자로 사용됨 • Sentence Embedding - 1번째 혹은 2번째 문장을 표시해주는 Vector • Positional Embedding - 각 Token의 위치 정보를 표현하는 Vector
  • 12. 11/21 Model – Transformer Encoder • Lexicon Encoder로 부터 각 Token의 Input Vector를 입력으로 받아 Transformer를 통해 각 Token의 Output Vector를 추출 • Transformer이기 때문에 생성된 Vector는 Self Attention을 통해 주변 Token 정보를 반영한 Contextual Embedding Vector
  • 13. 12/21 Model – Single Sentence Classification • Single Sentence Classification • CoLA - 문장이 문법적으로 맞는지 Classification • SST-2 – Movie Review 문장의 Sentiment Classification (Positive / Negative) class Input Sentence Task specific Parameter Class Token
  • 14. 13/21 Model – Text Similarity Output • Text Similarity • STS-B – 문장 Pair의 Similarity를 1~5점으로 Regression Input Sentence Pair Sigmoid Task specific Parameter Class Token
  • 15. 14/21 Model – Pairwise Text Classification Output (1) • Pairwise Text Classification • MNLI – 문장 Pair의 entailment, contradiction, neutral을 Classification • RTE – 문장 Pair의 Entailment 여부를 Binary Classification • QQP, MRPC – 문장 Pair의 의미 같음 여부를 Binary Classification • Stochastic Answer Network(SAN)를 활용하여 Classification • 핵심 Idea - Multi-step Reasoning • RNN을 활용하여 2번 이상의 예측을 통해 문장 간 관계를 분류 • 다음 2가지 문장이 있을 때 한번에 문장 간 관계를 분류하기는 쉽지 않음 • If you need this book, it is probably too late unless you are about to take an SAT or GRE • It’s never too late, unless you’re about to take a test. • 두 문장이 Cotradiction이라고 분류하기 위해서는 SAT, GRE가 Test라고 예측 단계가 먼저 필요함
  • 16. 15/21 Model – Pairwise Text Classification Output (2) • RNN을 통해 Hypothesis 문장과 Premise 문장 간 관계를 예측 • Hidden State – Hypothesis Token Vector들의 Weighted Sum • Input – Premise Token Vector들의 Weighted Sum • 이전 Hidden State를 활용하여 Weight 계산 GRU!"#$ !" %" Hypothesis 문장 Token의 Vector Premise 문장 Token의 Vector
  • 17. 16/21 Model – Pairwise Text Classification Output (3) • Time step 마다 hidden state와 input을 각각 문장의 Vector로 활용하여 문장 간 관계 분류 • 문장 간 관계를 예측 하기 위해 다음 수식과 같이 Heuristic하게 Vector를 구성하여 예측 • 문장 간 거리, Similarity(dot-product)를 문장 간 관계를 나타내는 값으로 활용 • K step 예측을 했다면 평균 값을 최종 예측 값으로 사용 각 문장의 Vector 문장 간 거리 문장 간 Similarity
  • 18. 17/21 Model – Relevance Ranking Output • Relevance Ranking • QNLI – 질문과 지문 pair에서 지문에 질문에 대한 답이 있는지 여부를 Binary Classification • Sigmoid function을 통해 모든 answer candidate 문장을 scoring을 하고 Ranking을 통해 1개의 문장만을 True로 분류 Input Sentence Pair Sigmoid Task specific Parameter Class Token
  • 19. 18/21 Training Procedure • 9개의 GLUE Dataset을 모아서 Training dataset을 구성 • Batch 단위로 Training 시 마다 Shared Layer와 해당 Task의 Layer를 학습 Answer가 포함된 문장
  • 20. 19/21 Evaluation – Testing set 평가 결과 • BERT (80.4) -> MT-DNN (82.2) 1.8% 성능 향상 • BERT large로 학습한 다음에 GLUE Task 9개로 Fine Tuning Relevance Ranking Pairwise Text Classification Single Sentence Classification Text Similarity Regression NLI ProblemSemantically Equivalent Problem 데이터가 적을 때 더 높은 성능 향상
  • 21. 20/21 Evaluation – Development set 평가 결과 • ST-DNN – Multi Task Learning을 하지 않고 Task Specific Layer만 바꾸어서(SAN, Pairwise Ranking loss) 학습한 모델 • SAN을 사용하여 얻은 성능 향상 효과가 크지는 않은듯… (Class Token을 쓰지 않고 Token Embedding을 썼다는 정도 의미…) • QNLI는 Ranking Approach로 큰 성능 향상 Stochastic Answer Network Relevance Ranking Loss Accuracy / F1
  • 22. 21/21 Evaluation – Domain Adaptation • BERT, MT-DNN에 각각 새로운 Task Specific Layer를 붙여서 학습 및 평가 결과 • NLI Dataset인 SNLI, SciTail을 활용하여 Domain Adaptation 평가 • 0.1%, 1%, 10%, 100%로 평가 • 데이터가 적을 때 MT-DNN의 성능이 BERT 보다 훨씬 높은 성능을 보임
  • 23. Q & A