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

ネットワークスイッチ構築実践 2.STP・RSTP・PortSecurity・StormControl・SPAN・Stacking編
ネットワークスイッチ構築実践 2.STP・RSTP・PortSecurity・StormControl・SPAN・Stacking編ネットワークスイッチ構築実践 2.STP・RSTP・PortSecurity・StormControl・SPAN・Stacking編
ネットワークスイッチ構築実践 2.STP・RSTP・PortSecurity・StormControl・SPAN・Stacking編株式会社 NTTテクノクロス
 
Mantenimiento a Subestaciones Eléctricas
Mantenimiento a Subestaciones EléctricasMantenimiento a Subestaciones Eléctricas
Mantenimiento a Subestaciones EléctricasTRANSEQUIPOS S.A.
 
WindowsタブレットでLinux、*BSD改造特集と裏技ハッキング in OSC東京2020 #osc20tk Hacking Linux and *...
WindowsタブレットでLinux、*BSD改造特集と裏技ハッキング in OSC東京2020 #osc20tk Hacking Linux and *...WindowsタブレットでLinux、*BSD改造特集と裏技ハッキング in OSC東京2020 #osc20tk Hacking Linux and *...
WindowsタブレットでLinux、*BSD改造特集と裏技ハッキング in OSC東京2020 #osc20tk Hacking Linux and *...Netwalker lab kapper
 
1. LIBRO COMUNICACIONES INDUSTRIALES Y WINCC - AUTOMATISSANDRO EMERSON EDUARD...
1. LIBRO COMUNICACIONES INDUSTRIALES Y WINCC - AUTOMATISSANDRO EMERSON EDUARD...1. LIBRO COMUNICACIONES INDUSTRIALES Y WINCC - AUTOMATISSANDRO EMERSON EDUARD...
1. LIBRO COMUNICACIONES INDUSTRIALES Y WINCC - AUTOMATISSANDRO EMERSON EDUARD...EMERSON EDUARDO RODRIGUES
 
【EX/QFX】JUNOS ハンズオントレーニング資料 EX/QFX シリーズ サービス ゲートウェイ コース
【EX/QFX】JUNOS ハンズオントレーニング資料 EX/QFX シリーズ サービス ゲートウェイ コース 【EX/QFX】JUNOS ハンズオントレーニング資料 EX/QFX シリーズ サービス ゲートウェイ コース
【EX/QFX】JUNOS ハンズオントレーニング資料 EX/QFX シリーズ サービス ゲートウェイ コース Juniper Networks (日本)
 
JANOG43 Forefront of SRv6, Open Source Implementations
JANOG43 Forefront of SRv6, Open Source ImplementationsJANOG43 Forefront of SRv6, Open Source Implementations
JANOG43 Forefront of SRv6, Open Source ImplementationsKentaro Ebisawa
 
濁点の話
濁点の話濁点の話
濁点の話emasaka
 
Cassandraのバックアップと運用を考える
Cassandraのバックアップと運用を考えるCassandraのバックアップと運用を考える
Cassandraのバックアップと運用を考えるKazutaka Tomita
 
閉域網接続の技術入門
閉域網接続の技術入門閉域網接続の技術入門
閉域網接続の技術入門Masayuki Kobayashi
 
YJTC19 B-5 Kubernetesで実現したYahoo! JAPANの次世代開発環境 ~ 100以上のクラスタを少人数で運用する秘訣 ~ #yjtc
YJTC19 B-5 Kubernetesで実現したYahoo! JAPANの次世代開発環境 ~ 100以上のクラスタを少人数で運用する秘訣 ~ #yjtcYJTC19 B-5 Kubernetesで実現したYahoo! JAPANの次世代開発環境 ~ 100以上のクラスタを少人数で運用する秘訣 ~ #yjtc
YJTC19 B-5 Kubernetesで実現したYahoo! JAPANの次世代開発環境 ~ 100以上のクラスタを少人数で運用する秘訣 ~ #yjtcYahoo!デベロッパーネットワーク
 
“見てわかる”ファイバーチャネルSAN基礎講座(第6弾: 最終回)~困った時もこれで安心(?)、FC SANにおけるトラブルシューティングのコツとは??~
“見てわかる”ファイバーチャネルSAN基礎講座(第6弾: 最終回)~困った時もこれで安心(?)、FC SANにおけるトラブルシューティングのコツとは??~“見てわかる”ファイバーチャネルSAN基礎講座(第6弾: 最終回)~困った時もこれで安心(?)、FC SANにおけるトラブルシューティングのコツとは??~
“見てわかる”ファイバーチャネルSAN基礎講座(第6弾: 最終回)~困った時もこれで安心(?)、FC SANにおけるトラブルシューティングのコツとは??~Brocade
 
Transformer and Swift MT Messages
Transformer and Swift MT MessagesTransformer and Swift MT Messages
Transformer and Swift MT MessagesTrace Financial
 
09_C_3_100 percent - Stator Earth Fault Protection.ppt
09_C_3_100 percent - Stator Earth Fault Protection.ppt09_C_3_100 percent - Stator Earth Fault Protection.ppt
09_C_3_100 percent - Stator Earth Fault Protection.pptMAHMOUDMOHAMED431205
 
Efficient logging in multithreaded C++ server
Efficient logging in multithreaded C++ serverEfficient logging in multithreaded C++ server
Efficient logging in multithreaded C++ serverShuo Chen
 
【第二回 ゼロからはじめる Oracle Solaris 11】02 Solaris 11 を支える最強のファイルシステム ZFS ~ ZFS ファイルシ...
【第二回 ゼロからはじめる Oracle Solaris 11】02 Solaris 11 を支える最強のファイルシステム ZFS ~ ZFS ファイルシ...【第二回 ゼロからはじめる Oracle Solaris 11】02 Solaris 11 を支える最強のファイルシステム ZFS ~ ZFS ファイルシ...
【第二回 ゼロからはじめる Oracle Solaris 11】02 Solaris 11 を支える最強のファイルシステム ZFS ~ ZFS ファイルシ...SolarisJP
 
Analog and Digital Electronics Lab Manual
Analog and Digital Electronics Lab ManualAnalog and Digital Electronics Lab Manual
Analog and Digital Electronics Lab ManualChirag Shetty
 

What's hot (20)

ネットワークスイッチ構築実践 2.STP・RSTP・PortSecurity・StormControl・SPAN・Stacking編
ネットワークスイッチ構築実践 2.STP・RSTP・PortSecurity・StormControl・SPAN・Stacking編ネットワークスイッチ構築実践 2.STP・RSTP・PortSecurity・StormControl・SPAN・Stacking編
ネットワークスイッチ構築実践 2.STP・RSTP・PortSecurity・StormControl・SPAN・Stacking編
 
データセンターネットワークでのPrometheus活用事例
データセンターネットワークでのPrometheus活用事例データセンターネットワークでのPrometheus活用事例
データセンターネットワークでのPrometheus活用事例
 
Mantenimiento a Subestaciones Eléctricas
Mantenimiento a Subestaciones EléctricasMantenimiento a Subestaciones Eléctricas
Mantenimiento a Subestaciones Eléctricas
 
WindowsタブレットでLinux、*BSD改造特集と裏技ハッキング in OSC東京2020 #osc20tk Hacking Linux and *...
WindowsタブレットでLinux、*BSD改造特集と裏技ハッキング in OSC東京2020 #osc20tk Hacking Linux and *...WindowsタブレットでLinux、*BSD改造特集と裏技ハッキング in OSC東京2020 #osc20tk Hacking Linux and *...
WindowsタブレットでLinux、*BSD改造特集と裏技ハッキング in OSC東京2020 #osc20tk Hacking Linux and *...
 
1. LIBRO COMUNICACIONES INDUSTRIALES Y WINCC - AUTOMATISSANDRO EMERSON EDUARD...
1. LIBRO COMUNICACIONES INDUSTRIALES Y WINCC - AUTOMATISSANDRO EMERSON EDUARD...1. LIBRO COMUNICACIONES INDUSTRIALES Y WINCC - AUTOMATISSANDRO EMERSON EDUARD...
1. LIBRO COMUNICACIONES INDUSTRIALES Y WINCC - AUTOMATISSANDRO EMERSON EDUARD...
 
【EX/QFX】JUNOS ハンズオントレーニング資料 EX/QFX シリーズ サービス ゲートウェイ コース
【EX/QFX】JUNOS ハンズオントレーニング資料 EX/QFX シリーズ サービス ゲートウェイ コース 【EX/QFX】JUNOS ハンズオントレーニング資料 EX/QFX シリーズ サービス ゲートウェイ コース
【EX/QFX】JUNOS ハンズオントレーニング資料 EX/QFX シリーズ サービス ゲートウェイ コース
 
JANOG43 Forefront of SRv6, Open Source Implementations
JANOG43 Forefront of SRv6, Open Source ImplementationsJANOG43 Forefront of SRv6, Open Source Implementations
JANOG43 Forefront of SRv6, Open Source Implementations
 
濁点の話
濁点の話濁点の話
濁点の話
 
Cassandraのバックアップと運用を考える
Cassandraのバックアップと運用を考えるCassandraのバックアップと運用を考える
Cassandraのバックアップと運用を考える
 
閉域網接続の技術入門
閉域網接続の技術入門閉域網接続の技術入門
閉域網接続の技術入門
 
YJTC19 B-5 Kubernetesで実現したYahoo! JAPANの次世代開発環境 ~ 100以上のクラスタを少人数で運用する秘訣 ~ #yjtc
YJTC19 B-5 Kubernetesで実現したYahoo! JAPANの次世代開発環境 ~ 100以上のクラスタを少人数で運用する秘訣 ~ #yjtcYJTC19 B-5 Kubernetesで実現したYahoo! JAPANの次世代開発環境 ~ 100以上のクラスタを少人数で運用する秘訣 ~ #yjtc
YJTC19 B-5 Kubernetesで実現したYahoo! JAPANの次世代開発環境 ~ 100以上のクラスタを少人数で運用する秘訣 ~ #yjtc
 
“見てわかる”ファイバーチャネルSAN基礎講座(第6弾: 最終回)~困った時もこれで安心(?)、FC SANにおけるトラブルシューティングのコツとは??~
“見てわかる”ファイバーチャネルSAN基礎講座(第6弾: 最終回)~困った時もこれで安心(?)、FC SANにおけるトラブルシューティングのコツとは??~“見てわかる”ファイバーチャネルSAN基礎講座(第6弾: 最終回)~困った時もこれで安心(?)、FC SANにおけるトラブルシューティングのコツとは??~
“見てわかる”ファイバーチャネルSAN基礎講座(第6弾: 最終回)~困った時もこれで安心(?)、FC SANにおけるトラブルシューティングのコツとは??~
 
Cours VTP
Cours VTPCours VTP
Cours VTP
 
Transformer and Swift MT Messages
Transformer and Swift MT MessagesTransformer and Swift MT Messages
Transformer and Swift MT Messages
 
09_C_3_100 percent - Stator Earth Fault Protection.ppt
09_C_3_100 percent - Stator Earth Fault Protection.ppt09_C_3_100 percent - Stator Earth Fault Protection.ppt
09_C_3_100 percent - Stator Earth Fault Protection.ppt
 
IEEE Motor Presentation
IEEE Motor PresentationIEEE Motor Presentation
IEEE Motor Presentation
 
Efficient logging in multithreaded C++ server
Efficient logging in multithreaded C++ serverEfficient logging in multithreaded C++ server
Efficient logging in multithreaded C++ server
 
【第二回 ゼロからはじめる Oracle Solaris 11】02 Solaris 11 を支える最強のファイルシステム ZFS ~ ZFS ファイルシ...
【第二回 ゼロからはじめる Oracle Solaris 11】02 Solaris 11 を支える最強のファイルシステム ZFS ~ ZFS ファイルシ...【第二回 ゼロからはじめる Oracle Solaris 11】02 Solaris 11 を支える最強のファイルシステム ZFS ~ ZFS ファイルシ...
【第二回 ゼロからはじめる Oracle Solaris 11】02 Solaris 11 を支える最強のファイルシステム ZFS ~ ZFS ファイルシ...
 
Analog and Digital Electronics Lab Manual
Analog and Digital Electronics Lab ManualAnalog and Digital Electronics Lab Manual
Analog and Digital Electronics Lab Manual
 
YJTC18 A-1 データセンタネットワークの取り組み
YJTC18 A-1 データセンタネットワークの取り組みYJTC18 A-1 データセンタネットワークの取り組み
YJTC18 A-1 データセンタネットワークの取り組み
 

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
 

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