SlideShare a Scribd company logo
1 of 14
Download to read offline
BERT : Pre-training of Deep Bidirectional
Transformers for Language Understanding
유용상
Google 2019
2022.10.11 NLP 스터디
Introduction
WordPiece Embedding
+
Segment Embedding
+
Position Embedding
Masked Language Model
Next Sentence Prediction
Encoders of Transformers
Bidirectional + Multi-layer
Pre-train
Fine-Tuning
WordPiece Embedding
• BERT에서 사용한 tokenizer, 30000개의 토큰 사용
• OOV문제를 해결할 수 있는 Subword Tokenizer의 일종임
• Likelihood를 기반으로 BPE(Byte Pair Encoding)을 수행한 알고리즘
글자(character) 단위로 분리
설정한 횟수만큼 알고리즘 실행 : 빈도가 높은 유니그램의 쌍을 통합
Segment Embedding
• [SEP] 토큰을 이용해 문장을 구분함
• Task에 따라 문장단위가 아닐수도
있음
• (예 : QA 태스크에서 질문은 한
문장이지만 본문은 여러 문장,
[SEP]으로 구분함)
Position Embedding
• Transformer의 self attention은 입력의 위치를 고려하지 않고
입력 토큰의 위치정보만을 고려함 (positional encoding)
• 포지션 위치에 따라 다음 값을 더해 토큰의 상대적 위치와 관련한 정보를 학습시킴 (최대 512)
WordPiece Embedding
+
Segment Embedding
+
Position Embedding
LayerNorm Dropout Encoder Block
Pre-Training : Masked Language Model
• Motivation :
기존의 언어 모델들은 단방향적인 문맥만 학습에 참고하였으나 실제 언어의 이해는
Bi-Directional하게 이루어짐
• 그런데 Bi-Directional 하게 학습을 하면 “cheating” 이 가능하게됨
-> 마스킹 시키자!
• 전체 예측 대상 토큰 15% 중
• 80% -> [MASK] 토큰으로 교환
• 10% -> 다른 무작위 단어로 교환
• 10% -> 바꾸지 않고 놔둠
Pre-Training : Next Sentence Prediction
• 두 문장이 주어졌을 때, 두 문장의 순서를 예측하는 방식
• 두 문장 간 관계가 고려되어야 하는 NLI 와 QA의 파인 튜닝을 위해 두 문장의 연관을 맞추는
학습을 진행
Fine-tuning
• Pre-train을 마치고 Downstream task에 맞춰 Labeled Data를 추가로 학습시키는 과정
• 기존 연구에서는 문장 embedding만을 transfer 시켰으나 BERT에서는 모든 파라미터를 그대로 옮겨서 학습
Fine-tuning : Single Sentence Classification
• Input : single sentence
• Output : class
• Task : Sentiment analysis, Document Classification
• Datasets : SST-2, CoLa
Fine-tuning : Single Sentence Tagging
• Input : single sentence
• Output : class of each word
• Task : Slot filling
• Datasets : CoNLL-2003 NER
Fine-tuning : Sentence Pair Classification
• Input : two sentences
• Output : class
• Task : Natural Language Inference
• Datasets : MNLI, QQP, QNLI, STS-B, MRPC, RTE, SWAG
Fine-tuning : Question Answering
• Input : Question, Paragraph(Document)
• Output : Answer
• Task : Natural Language Inference
• Datasets : MNLI, QQP, QNLI, STS-B, MRPC, RTE, SWAG
summary
• Model Architecture
- BERT Base : L = 12, H = 768, A = 12
- BERT Large : L = 24, H = 1024, A = 16
• Input Representation
- Wordpiece embeddings
- Learned positional embedding
- [CLS] – Classification embedding
- Packed sentence embedding [SEP]
- Segment Embedding
• Pre-training Tasks
- Masked LM
- Next Sentence Prediction
Reference
• https://wikidocs.net/109251
• https://mino-park7.github.io/nlp/2018/12/12/bert-
%EB%85%BC%EB%AC%B8%EC%A0%95%EB%A6%AC/?fbclid=IwAR3S
-8iLWEVG6FGUVxoYdwQyA-zG0GpOUzVEsFBd0ARFg4eFXqCyGLznu7w
• https://docs.likejazz.com/bert/

More Related Content

Similar to 221011_BERT

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
 

Similar to 221011_BERT (8)

Albert
AlbertAlbert
Albert
 
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...
 
De text a deep text ranking framework with bert
De text  a deep text ranking framework with bertDe text  a deep text ranking framework with bert
De text a deep text ranking framework with bert
 
Mt
MtMt
Mt
 
딥러닝 기반의 자연어처리 최근 연구 동향
딥러닝 기반의 자연어처리 최근 연구 동향딥러닝 기반의 자연어처리 최근 연구 동향
딥러닝 기반의 자연어처리 최근 연구 동향
 
Attention is all you need
Attention is all you needAttention is all you need
Attention is all you need
 
A joint many task model
A joint many task modelA joint many task model
A joint many task model
 
네이버 NLP Challenge 후기
네이버 NLP Challenge 후기네이버 NLP Challenge 후기
네이버 NLP Challenge 후기
 

More from YongSang Yoo (10)

20230727_tinystories
20230727_tinystories20230727_tinystories
20230727_tinystories
 
20230608_megabyte
20230608_megabyte20230608_megabyte
20230608_megabyte
 
221220_페르소나챗봇
221220_페르소나챗봇221220_페르소나챗봇
221220_페르소나챗봇
 
220920_AI ETHICS
220920_AI ETHICS220920_AI ETHICS
220920_AI ETHICS
 
230309_LoRa
230309_LoRa230309_LoRa
230309_LoRa
 
230305_Characterizing English Variation across Social Media Communities with ...
230305_Characterizing English Variation across Social Media Communities with ...230305_Characterizing English Variation across Social Media Communities with ...
230305_Characterizing English Variation across Social Media Communities with ...
 
230223_Knowledge_Distillation
230223_Knowledge_Distillation230223_Knowledge_Distillation
230223_Knowledge_Distillation
 
221108_Multimodal Transformer
221108_Multimodal Transformer221108_Multimodal Transformer
221108_Multimodal Transformer
 
220910_GatedRNN
220910_GatedRNN220910_GatedRNN
220910_GatedRNN
 
220906_Glove
220906_Glove220906_Glove
220906_Glove
 

221011_BERT

  • 1. BERT : Pre-training of Deep Bidirectional Transformers for Language Understanding 유용상 Google 2019 2022.10.11 NLP 스터디
  • 2. Introduction WordPiece Embedding + Segment Embedding + Position Embedding Masked Language Model Next Sentence Prediction Encoders of Transformers Bidirectional + Multi-layer Pre-train Fine-Tuning
  • 3. WordPiece Embedding • BERT에서 사용한 tokenizer, 30000개의 토큰 사용 • OOV문제를 해결할 수 있는 Subword Tokenizer의 일종임 • Likelihood를 기반으로 BPE(Byte Pair Encoding)을 수행한 알고리즘 글자(character) 단위로 분리 설정한 횟수만큼 알고리즘 실행 : 빈도가 높은 유니그램의 쌍을 통합
  • 4. Segment Embedding • [SEP] 토큰을 이용해 문장을 구분함 • Task에 따라 문장단위가 아닐수도 있음 • (예 : QA 태스크에서 질문은 한 문장이지만 본문은 여러 문장, [SEP]으로 구분함)
  • 5. Position Embedding • Transformer의 self attention은 입력의 위치를 고려하지 않고 입력 토큰의 위치정보만을 고려함 (positional encoding) • 포지션 위치에 따라 다음 값을 더해 토큰의 상대적 위치와 관련한 정보를 학습시킴 (최대 512) WordPiece Embedding + Segment Embedding + Position Embedding LayerNorm Dropout Encoder Block
  • 6. Pre-Training : Masked Language Model • Motivation : 기존의 언어 모델들은 단방향적인 문맥만 학습에 참고하였으나 실제 언어의 이해는 Bi-Directional하게 이루어짐 • 그런데 Bi-Directional 하게 학습을 하면 “cheating” 이 가능하게됨 -> 마스킹 시키자! • 전체 예측 대상 토큰 15% 중 • 80% -> [MASK] 토큰으로 교환 • 10% -> 다른 무작위 단어로 교환 • 10% -> 바꾸지 않고 놔둠
  • 7. Pre-Training : Next Sentence Prediction • 두 문장이 주어졌을 때, 두 문장의 순서를 예측하는 방식 • 두 문장 간 관계가 고려되어야 하는 NLI 와 QA의 파인 튜닝을 위해 두 문장의 연관을 맞추는 학습을 진행
  • 8. Fine-tuning • Pre-train을 마치고 Downstream task에 맞춰 Labeled Data를 추가로 학습시키는 과정 • 기존 연구에서는 문장 embedding만을 transfer 시켰으나 BERT에서는 모든 파라미터를 그대로 옮겨서 학습
  • 9. Fine-tuning : Single Sentence Classification • Input : single sentence • Output : class • Task : Sentiment analysis, Document Classification • Datasets : SST-2, CoLa
  • 10. Fine-tuning : Single Sentence Tagging • Input : single sentence • Output : class of each word • Task : Slot filling • Datasets : CoNLL-2003 NER
  • 11. Fine-tuning : Sentence Pair Classification • Input : two sentences • Output : class • Task : Natural Language Inference • Datasets : MNLI, QQP, QNLI, STS-B, MRPC, RTE, SWAG
  • 12. Fine-tuning : Question Answering • Input : Question, Paragraph(Document) • Output : Answer • Task : Natural Language Inference • Datasets : MNLI, QQP, QNLI, STS-B, MRPC, RTE, SWAG
  • 13. summary • Model Architecture - BERT Base : L = 12, H = 768, A = 12 - BERT Large : L = 24, H = 1024, A = 16 • Input Representation - Wordpiece embeddings - Learned positional embedding - [CLS] – Classification embedding - Packed sentence embedding [SEP] - Segment Embedding • Pre-training Tasks - Masked LM - Next Sentence Prediction