BERT: Pre-training of Deep Bidrectional Transformers for Language Understanding
โ†”๏ธ

BERT: Pre-training of Deep Bidrectional Transformers for Language Understanding

Created
Jul 30, 2022
Editor
Tags
NLP
cleanUrl: 'paper/bert'
๋…ผ๋ฌธ : BERT : Pre-training of Deep Bidirectional Transformers for Language Understanding ์ €์ž : Google AI Language (Jacob Devlin, Ming-Wei Chang, Kenton Lee, Kristina Toutanova)
ย 

๋…ผ๋ฌธ ์„ ์ • ์ด์œ 

๋ณธ ๋…ผ๋ฌธ์€ ์™ผ์ชฝ๊ณผ ์˜ค๋ฅธ์ชฝ ๋ฌธ๋งฅ์„ ๋ชจ๋‘ ๊ณ ๋ คํ•˜๋Š” ์–‘๋ฐฉํ–ฅ์˜ ์ธ์ฝ”๋”๋ฅผ ๊ฐ€์ง„ ์‚ฌ์ „ํ•™์Šต ๋ชจํ˜•, BERT๋ฅผ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค. ์งˆ์˜์‘๋‹ต, ์ž์—ฐ์–ด์ถ”๋ก  ๋“ฑ ๋‹ค์–‘ํ•œ NLP task๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ์‚ฌ์ „ํ•™์Šต ๋ชจ๋ธ๋กœ์จ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๊ณ , ์ €๋ฒˆ ํฌ์ŠคํŠธ๋กœ ์†Œ๊ฐœ๋“œ๋ ธ๋˜ Transformer๋ฅผ ์ธ์ฝ”๋”๋กœ ์‚ฌ์šฉํ•˜๋Š” ์•„ํ‚คํ…์ณ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์–ด, Transformer๋ฅผ ์ด์–ด ์ž„๋ฒ ๋”ฉ ๋ชจํ˜•์„ ๊ณต๋ถ€ํ•˜๊ณ ์ž ํ•ด๋‹น ๋…ผ๋ฌธ์„ ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.
ย 

Introduction

pre-training(์‚ฌ์ „ํ•™์Šต) ์–ธ์–ด ๋ชจ๋ธ์€ ๋งŽ์€ NLP task(sentence-level task, token-level task)์—์„œ ํšจ๊ณผ์ ์ธ ๊ฒƒ์œผ๋กœ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค. ์‚ฌ์ „ํ•™์Šต๋œ ์–ธ์–ด ํ‘œํ˜„์€ 2๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
ย 
  • feature-basedย : ์‚ฌ์ „ํ•™์Šต๋œ representation์„ ์ถ”๊ฐ€ feature๋กœ ํฌํ•จ์‹œํ‚จ task-specific ๊ตฌ์กฐ (ex. ELMo)
  • fine-tuningย : ์ตœ์†Œํ•œ์˜ task-specific ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , ์‚ฌ์ „ํ•™์Šต๋œ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ fine-tuningํ•˜์—ฌ ํ•˜์œ„ task์— ๋Œ€ํ•ด ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค. (ex. OpenAI GPT)
ย 
๋‘ ๋ฐฉ๋ฒ•์€ ์‚ฌ์ „ํ•™์Šตํ•˜๋Š” ๋™์•ˆ ๊ฐ™์€ ๋ชฉ์ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์ธ language representaion์„ ํ•™์Šตํ•˜๊ธฐ ์œ„ํ•ด ๋‹จ๋ฐฉํ–ฅ ์–ธ์–ด ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.ย ๋‹จ๋ฐฉํ–ฅ ์–ธ์–ด ๋ชจ๋ธ์€ ์‚ฌ์ „ํ•™์Šต์— ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋Š” ์•„ํ‚คํ…์ณ์˜ ์„ ํƒ์„ ์ œํ•œํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ•œ๊ณ„๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด OpenAI GPT๋Š” left-to-right ๊ตฌ์กฐ๋กœ ๋ชจ๋“  ํ† ํฐ์€ self-attention layer์—์„œ ์˜ค์ง ์ด์ „์˜ ํ† ํฐ(previous token)๋งŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ํ•œ๊ณ„๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ•œ๊ณ„๋Š” sentence level task์— ์ฐจ์„ ์ฑ…์ด๊ณ  QA์™€ ๊ฐ™์ด ์–‘๋ฐฉํ–ฅ์˜ ๋ฌธ๋งฅ์„ ์ดํ•ดํ•ด์•ผํ•˜๋Š” token-level task์— ๊ธฐ๋ฐ˜ํ•˜๋Š” ์‚ฌ์ „ํ•™์Šต์„ ์ ์šฉํ•  ๋•Œ ์น˜๋ช…์ ์ž…๋‹ˆ๋‹ค.
๋ณธ ๋…ผ๋ฌธ์€ย ์–‘๋ฑกํ–ฅ์˜ ์ธ์ฝ”๋”๋ฅผ ๊ฐ€์ง„ BERT๋ฅผ ์ œ์‹œํ•˜๋ฉด์„œ ์‚ฌ์ „ํ•™์Šต์— ๊ธฐ๋ฐ˜ํ•˜๋Š” ์ ‘๊ทผ๋ฒ•์„ ๊ฐœ์„ ํ•ฉ๋‹ˆ๋‹ค. BERT๋Š”ย MLM(masked language model)๋ฅผ ์‚ฌ์šฉํ•ด ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค. MLM์€ ๋žœ๋คํ•˜๊ฒŒ ์ž…๋ ฅ์˜ ํ† ํฐ์„ maskํ•˜๊ณ , mask๋œ ๋‹จ์–ด์˜ ๋ฌธ๋งฅ๋งŒ์„ ๊ธฐ๋ฐ˜์œผ๋กœ mask๋œ ๋‹จ์–ด์˜ ์›๋ž˜์˜ vocabulary id๋ฅผ ์˜ˆ์ธกํ•˜๋Š” ๊ฒƒ์ด ๋ชฉ์ ์ž…๋‹ˆ๋‹ค. left-to-right ๊ตฌ์กฐ์™€ ๋‹ค๋ฅด๊ฒŒ masked ์–ธ์–ด ๋ชจ๋ธ ์ธ MLM์€ ์™ผ์ชฝ๊ณผ ์˜ค๋ฅธ์ชฝ ๋ฌธ๋งฅ์„ ์œตํ•ฉํ•ด ๋‚˜ํƒ€๋‚ผ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ text-pair representaion์„ ๊ฒฐํ•ฉ์ ์œผ๋กœ ์‚ฌ์ „ํ•™์Šตํ•˜๋Š”ย NSP(next sentence prdiction)์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
ย 
์ด ๋ชจ๋ธ์„ ํ†ตํ•ด ์–ธ์–ด ๋ชจ๋ธ์—์„œย ์–‘๋ฐฉํ–ฅ ์‚ฌ์ „๋ชจ๋ธ์˜ ์ค‘์š”์„ฑ์„ ๋ณด์—ฌ์คฌ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์‚ฌ์ „ํ•™์Šต์€ heavily-engineered task ์•„ํ‚คํ…์ณ์˜ ํ•„์š”์„ฑ์„ ๊ฐ์†Œ์‹œ์ผฐ์Šต๋‹ˆ๋‹ค.
ย 

Related Work

์‚ฌ์ „ํ•™์Šต(pre-training)์˜ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ์ ‘๊ทผ๋ฐฉ๋ฒ•์„ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค.
notion image

(1) Unsupervised Feature-based Approaches

์‚ฌ์ „ํ•™์Šต๋œ ๋‹จ์–ด ์ž„๋ฒ ๋”ฉ์€ NLP ์‹œ์Šคํ…œ์— ์žˆ์–ด์„œ ํฐ ์„ฑ๋Šฅ ๊ฐœ์„ ์„ ๊ฐ€๋Šฅ์ผ€ ํ•œ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค. ๋‹จ์–ด ์ž„๋ฒ ๋”ฉ ๋ฒกํ„ฐ๋ฅผ ์‚ฌ์ „ํ•™์Šตํ•˜๊ธฐ ์œ„ํ•ด, ๋˜ํ•œ ์™ผ์ชฝ๊ณผ ์˜ค๋ฅธ์ชฝ context์—์„œ correct๋ฅผ incorrect ๋‹จ์–ด์™€ ๊ตฌ๋ณ„ํ•˜๊ธฐ ์œ„ํ•ด left-to-right ์–ธ์–ด ๋ชจ๋ธ์ด ์‚ฌ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
feature-based ๋ฐฉ๋ฒ•์˜ ๋Œ€ํ‘œ์ ์ธย ELMo๋Š” ์ „ํ†ต์ ์ธ ๋‹จ์–ด ์ž„๋ฒ ๋”ฉ์„ ์ผ๋ฐ˜ํ™”ํ•ด ์ƒˆ๋กœ์šด ์ฐจ์›์œผ๋กœ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค. context-sensitive ํŠน์ง•์„ย left-to-right ๊ทธ๋ฆฌ๊ณ  right-to-left ์–ธ์–ด๋ชจ๋ธ์—์„œ ๊ฐ๊ฐ ๋…๋ฆฝ์ ์œผ๋กœ ์ถ”์ถœํ•˜๊ณ  ๊ฒฐํ•ฉํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์–•์€ ์–‘๋ฐฉํ–ฅ์„ฑ์„ ์ง€๋‹Œ๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ELMo๋Š” ๋‹ค์–‘ํ•œ NLP task์—์„œ SOTA๋ฅผ ๋‹ฌ์„ฑํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
ย 

(2) Unsupervised Fine-tuning Approaches

feature-based์™€ ๊ฐ™์ด fine-tuning๋„ ๋ผ๋ฒจ๋ง ๋˜์ง€ ์•Š์€ ํ…์ŠคํŠธ์— ๋Œ€ํ•ด์„œ ๋‹จ์–ด ์ž„๋ฒ ๋”ฉ์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ตœ๊ทผ์—๋Š” ๋ผ๋ฒจ๋ง ๋˜์ง€ ์•Š์€ ํ…์ŠคํŠธ์— ๋Œ€ํ•ด ์‚ฌ์ „ํ•™์Šตํ•˜๊ณ  ์ง€๋„ํ•™์Šต task์— fine-tuning์„ ์ง„ํ–‰ํ•˜๋Š”๋ฐ, ์ด๋Ÿฌํ•œ ๋ฐฉ์‹์€ ์ดˆ๊ธฐ์— ํ•™์Šต๋˜์–ด์•ผํ•  ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ๊ฑฐ์˜ ์—†๋‹ค๋Š” ์žฅ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œย OpenAI GPT๋Š” sentence level task์—์„œ SOTA๋ฅผ ๋‹ฌ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ชจ๋ธ์—๋Š” Left-to-right ์–ธ์–ด๋ชจ๋ธ ์ฆ‰,ย ๋‹จ๋ฐฉํ–ฅ ๊ตฌ์กฐ์™€ auto-encoder์ด ์‚ฌ์ „ํ•™์Šต์— ์‚ฌ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
ย 

(3) Transfer Learning from Supervised Data

์ง€๋„ํ•™์Šต task์ธ ์–ธ์–ด ์ถ”๋ก (language inference), ๊ธฐ๊ณ„๋ฒˆ์—ญ์—์„œ๋„ ํšจ๊ณผ์ ์ธ ์ „์ด(transfer)๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ์—ฐ๊ตฌ๋„ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ CV ์—ฐ๊ตฌ๋„ ํฐ ์‚ฌ์ „ ํ•™์Šต ๋ชจ๋ธ์— ๊ธฐ๋ฐ˜ํ•œ transfer learning์ด ์ค‘์š”ํ•˜๊ฒŒ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.(ex. ImageNet)
ย 

Bert

Bert framework๋Š” ํฌ๊ฒŒ pre-training(์‚ฌ์ „ํ•™์Šต), fine-tuning(๋ฏธ์„ธ์กฐ์ •) ๋‘ ๊ฐ€์ง€ ๋‹จ๊ณ„๋กœ ๋‚˜๋ˆ ์ง‘๋‹ˆ๋‹ค. pre-training ๋™์•ˆ ๋ชจ๋ธ์€ ๋ผ๋ฒจ๋ง์ด ๋˜์ง€ ์•Š์€ ๋ฐ์ดํ„ฐ๋กœ ํ•™์Šต์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. fine-tuning ๋™์•ˆ BERT ๋ชจ๋ธ์€ ์‚ฌ์ „ํ•™์Šต๋œ parameter๋กœ ์ดˆ๊ธฐํ™”๋œ ํ›„, ๋ชจ๋“  parameter๊ฐ€ downstream task๋กœ๋ถ€ํ„ฐ ๋ถ„๋ฅ˜๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฏธ์„ธ์กฐ์ •์ด ๋ฉ๋‹ˆ๋‹ค.
notion image
output layer๋ฅผ ๋นผ๋ฉด, pre-training๊ณผ fine-tuning์€ ๋™์ผํ•œ ์•„ํ‚คํ…์ณ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋™์ผํ•œ ์‚ฌ์ „ํ•™์Šต๋œ ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” ๋‹ค์–‘ํ•œ ๋‹ค์šด์ŠคํŠธ๋ฆผ task๋“ค์— ๋Œ€ํ•˜์—ฌ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. fine-tuning ๋™์•ˆ์—๋Š” ๋ชจ๋“  ํŒŒ๋ผ๋ฏธํ„ฐ๋“ค์ด ๋ฏธ์„ธ ์กฐ์ •๋ฉ๋‹ˆ๋‹ค.[CLS]๋Š” ๋ชจ๋“  ์ž…๋ ฅ ๋ฐ์ดํ„ฐ์˜ ์•ž๋‹จ์— ์ถ”๊ฐ€๋˜๋Š” ํŠน๋ณ„ํ•œ token์ด๊ณ , [SEP]์€ ์งˆ๋ฌธ๊ณผ ๋‹ต๋ณ€์„ ๊ตฌ๋ถ„ํ•ด์ฃผ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ํŠน๋ณ„ํ•œ ๋ถ„๋ฆฌ token์ž…๋‹ˆ๋‹ค.
BERT์˜ ๋‹ค๋ฅธ ๋ชจ๋ธ๊ณผ ๊ตฌ๋ถ„๋˜๋Š” ํŠน์ง•์€ ์—ฌ๋Ÿฌ ๋‹ค๋ฅธ task์— ๋Œ€ํ•ด์„œ๋„ ํ†ตํ•ฉ๋œ ๋ชจ๋ธ๊ตฌ์กฐ๋ฅผ ๊ฐ–๋Š”๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค. ์‚ฌ์ „ํ•™์Šต๋œ ๋ชจ๋ธ ๊ตฌ์กฐ์™€ ์ตœ์ข… ๋‹ค์šด์ŠคํŠธ๋ฆผ ๊ตฌ์กฐ์—๋Š” ์ตœ์†Œํ•œ์˜ ์ฐจ์ด๋งŒ ์กด์žฌํ•  ๋ฟ์ž…๋‹ˆ๋‹ค.

Model Architecture

BERT์˜ ๋ชจ๋ธ๊ตฌ์กฐ๋Š”ย Transformer๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ multi-layer bidirectional Transformer encoder์ž…๋‹ˆ๋‹ค.
๋Š” ๋น„๊ต๋ฅผ ์œ„ํ•ด OpenAI GPT์™€ ๊ฐ™์€ ํฌ๊ธฐ๋ฅผ ๊ฐ€์ง€๋„๋ก ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ BERT Transformer๋Š” ์–‘๋ฑกํ–ฅ self-attention์„ ์‚ฌ์šฉํ•˜๊ณ  GPT Transformer๋Š” ๋ชจ๋“  token์ด ์™ผ์ชฝ ๋ฌธ๋งฅ๋งŒ ์ฐธ์กฐํ•˜๋„๋ก ์ œํ•œ๋œ self-attention์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
ย 

Input/Output Representations

BERT๊ฐ€ ๋‹ค์–‘ํ•œ ๋‹ค์šด์ŠคํŠธ๋ฆผ task๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก, ์ž…๋ ฅ ํ‘œํ˜„์€ ๋‹จ์ผ ๋ฌธ์žฅ์ธ์ง€, ๋ฌธ์žฅ๋“ค์˜ ์Œ(Q & A ๋“ฑ)์ธ์ง€ ๊ตฌ๋ถ„๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ โ€œ๋ฌธ์žฅโ€์ด๋ž€ ์‹ค์ œ ์–ธ์–ดํ•™์  ๋ฌธ์žฅ์ด ์•„๋‹Œ ์ธ์ ‘ํ•œ ๋ฌธ์ž๋“ค์˜ ์—ฐ์†์œผ๋กœ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. โ€œSequenceโ€๊ฐ€ BERT์˜ ์ž…๋ ฅ token sequence๊ฐ€ ๋˜๋Š”๋ฐ, ์ด๋Š” ๋‹จ์ผ ๋ฌธ์žฅ์ด๋‚˜ ๋ฌธ์žฅ์˜ ์Œ์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ๋…ผ๋ฌธ์—์„œ๋Š” 3๋งŒ ๊ฐœ์˜ ๋‹จ์–ด ์ˆ˜๋ฅผ ๊ฐ–๋Š” Wordpieceย embedding์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  sequence์˜ ์ฒซ ๋ฒˆ์งธ token์€ย [CLS]๋ผ๋Š” ํŠน๋ณ„ํ•œ ๋ถ„๋ฅ˜ token์ž…๋‹ˆ๋‹ค. ์ด token๊ณผ ์—ฐ๊ด€๋œ ์ตœ์ข… hidden state๋Š” ๋ถ„๋ฅ˜๋ฌธ์ œ์—์„œ sequence ํ‘œํ˜„์„ ์ดํ•ฉํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋ฌธ์žฅ์˜ ์Œ์€ ํ•œ ๊ฐœ์˜ ๋ฌธ์žฅ์œผ๋กœ ํ•ฉ์ณ์ง€๋Š”๋ฐ, ๋‹ค์Œ์˜ ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ ๊ตฌ๋ถ„๋ฉ๋‹ˆ๋‹ค.
  1. [SEP]๋ผ๋Š” ํŠน๋ณ„ํ•œ token์ด ๋‘ ๋ฌธ์žฅ ์‚ฌ์ด์— ๋“ค์–ด๊ฐ„๋‹ค.
  1. ๋ฌธ์žฅ๋“ค์˜ ๋ชจ๋“  token์— ํ•ด๋‹น ํ† ํฐ์ด ๋ฌธ์žฅ A์— ์†ํ•˜๋Š”์ง€ B์— ์†ํ•˜๋Š”์ง€์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๋‹ด์€ embedding์ด ์ถ”๊ฐ€๋œ๋‹ค.
    1. notion image
์ฃผ์–ด์ง„ token์— ๋Œ€ํ•ด ๊ทธ ์ž…๋ ฅํ‘œํ˜„์€ ์—ฐ๊ด€๋œ token, segment, position embedding์˜ ํ•ฉ์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.
ย 

Pre-training BERT

BERT๋ฅผ ์‚ฌ์ „ํ•™์Šต์‹œํ‚ค๊ธฐ ์œ„ํ•ด ์ „ํ†ต์ ์ธ LTR(Left-to-Right) ๋˜๋Š” RTL(Right-to-Left) ์–ธ์–ด๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋Œ€์‹ , ๋‹ค์Œ์˜ ๋‘ ๊ฐ€์ง€ ๋น„์ง€๋„ task๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•™์Šต์‹œํ‚ต๋‹ˆ๋‹ค.

Task #1: Masked LM

์ง๊ด€์ ์œผ๋กœ, ๊นŠ์€ ์–‘๋ฐฉํ–ฅ ๋ชจ๋ธ์€ LTR ๋ชจ๋ธ ๋˜๋Š” ์–•์€ ์–‘๋ฐฉํ–ฅ ๋ชจ๋ธ๋ณด๋‹ค ๋” ๊ฐ•๋ ฅํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜, ์ „ํ†ต์ ์ธ ์–ธ์–ด๋ชจ๋ธ์€ ๋‹จ๋ฐฉํ–ฅ๋งŒ์œผ๋กœ ์‰ฝ๊ฒŒ ํ•™์Šต์ด ๊ฐ€๋Šฅํ•œ๋ฐ ๋ฐ˜ํ•ด, ์–‘๋ฐฉํ–ฅ ์กฐ๊ฑด์€ ๊ฐ ๋‹จ์–ด๊ฐ€ ๊ฐ„์ ‘์ ์œผ๋กœ ๊ทธ ๋‹จ์–ด ์ž์ฒด๋ฅผ ์˜๋ฏธํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ชจ๋ธ์€ ์ž๋ช…ํ•˜๊ฒŒ ๋‹ค์ธต ๋ฌธ๋งฅ ์•ˆ์—์„œ ๋ชฉํ‘œ ๋‹จ์–ด๋ฅผ ์˜ˆ์ธกํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
์–‘๋ฐฉํ–ฅ ๋ชจ๋ธ์„ ํ•™์Šต์‹œํ‚ค๊ธฐ ์œ„ํ•ด ์ž…๋ ฅ token์„ ๋ฌด์ž‘์œ„๋กœ maskingํ•œ ๋‹ค์Œ, ๋ฌธ๋งฅ์„ ํ†ตํ•ด ํ•ด๋‹น ๋‹จ์–ด๋ฅผ ์˜ˆ์ธกํ•˜๊ฒŒ ํ•œ๋‹ค. ์ด ๊ณผ์ •์„ MLM(masked LM)๋ผ ๋ถ€๋ฅธ๋‹ค.
์ด ๊ฒฝ์šฐ, mask token๊ณผ ์—ฐ๊ด€๋œ ์ตœ์ข… ์€๋‹‰๋ฒกํ„ฐ๋Š” ํ‘œ์ค€ LM์ฒ˜๋Ÿผ ๋‹จ์–ด์ง‘ํ•ฉ ๋‚ด ์ถœ๋ ฅ softmax๋กœ ๋„˜์–ด๊ฐ„๋‹ค. Denoising auto-encoder๊ณผ๋Š” ๋‹ค๋ฅด๊ฒŒ ์ „์ฒด ์ž…๋ ฅ์ด ์•„๋‹Œ masked word๋งŒ์„ ์˜ˆ์ธกํ•œ๋‹ค.
์ด๊ฒƒ์ด ์–‘๋ฐฉํ–ฅ ์‚ฌ์ „ํ•™์Šต ๋ชจ๋ธ์„ ์–ป์„ ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ฃผ์ง€๋งŒ, [mask] token์€ fine-tuning ๋‹จ๊ณ„์— ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— pre-training ๋‹จ๊ณ„์™€ fine-tuning ๋‹จ๊ณ„ ๊ฐ„ mismatch๊ฐ€ ์ƒ๊ธด๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค. ์ด๋ฅผ ์™„ํ™”ํ•˜๊ธฐ ์œ„ํ•ด, ์–ด๋–ค token์„ ํ•ญ์ƒ [mask]token์œผ๋กœ ๋ฐ”๊ฟ”๋ฒ„๋ฆฌ์ง€ ์•Š๋Š”๋‹ค. ๊ตฌ์ฒด์ ์œผ๋กœ๋Š”,
  • ํ•™์Šต๋ฐ์ดํ„ฐ ์ƒ์„ฑ์ž๋Š”, ์ „์ฒด token ์ค‘ ๋ฌด์ž‘์œ„๋กœ 15%๋ฅผ ์„ ํƒํ•œ๋‹ค.
  • ์„ ์ •๋œ ์œ„์น˜์˜ token์€
    • 80%์˜ ํ™•๋ฅ ๋กœย [mask]ย token์œผ๋กœ ์น˜ํ™˜๋˜๊ณ ,
    • 10%์˜ ํ™•๋ฅ ๋กœ ๋ฌด์ž‘์œ„ token์œผ๋กœ ์น˜ํ™˜๋˜๊ณ ,
    • 10%์˜ ํ™•๋ฅ ๋กœ ๊ทธ๋Œ€๋กœ ๋‚จ๋Š”๋‹ค.
ย 

Task #2: Next Sentence Prediction(NSP)

QA(Question Answering)๋‚˜ NLI(Natural Language Inference) ๋“ฑ์˜ ๋งŽ์€ ์ค‘์š”ํ•œ ๋ฌธ์ œ๋Š” ์–ธ์–ด๋ชจ๋ธ์—๋Š” ์ง์ ‘์ ์œผ๋กœ ํฌ์ฐฉ๋˜์ง€ ์•Š๋Š” ๋‘ ๋ฌธ์žฅ ์‚ฌ์ด์˜ย ๊ด€๊ณ„(relationship)๋ฅผ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์— ๊ธฐ๋ฐ˜ํ•œ๋‹ค. ๋ฌธ์žฅ ๊ฐ„ ๊ด€๊ณ„๋ฅผ ๋ชจ๋ธ์ด ํ•™์Šตํ•˜๋„๋ก, ์•„๋ฌด ๋‹จ์ผ ์–ธ์–ด ๋ง๋ญ‰์น˜์—์„œ ์ƒ์„ฑ๋  ์ˆ˜ ์žˆ๋Š” ์ด์ง„ํ™”๋œ ๋‹ค์Œ ๋ฌธ์žฅ ์˜ˆ์ธก(binarizedย next sentence prediction)์„ ์‚ฌ์ „ํ•™์Šต์‹œ์ผฐ๋‹ค.
๊ตฌ์ฒด์ ์œผ๋กœ, ํ•™์Šต ์˜ˆ์ œ์—์„œ ๋ฌธ์žฅ A์™€ B๋ฅผ ์„ ํƒํ•˜๋Š”๋ฐ,
  • ํ•™์Šต ๋ฐ์ดํ„ฐ์˜ 50%๋Š” A์™€ B๊ฐ€ ์ด์–ด์ง€๋Š” ๋ฌธ์žฅ์ด๊ณ (IsNext๋กœ ๋ถ„๋ฅ˜๋จ)
  • ํ•™์Šต ๋ฐ์ดํ„ฐ์˜ 50%๋Š” B๋Š” A์™€๋Š” ์•„๋ฌด ๊ด€๋ จ ์—†๋Š” ๋ฌด์ž‘์œ„๋กœ ์„ ํƒ๋œ ๋ฌธ์žฅ(NotNext๋กœ ๋ถ„๋ฅ˜๋จ)์ด๋‹ค.
์ด NSP task๋Š” ํ‘œํ˜„ ํ•™์Šต์— ๊ธด๋ฐ€ํžˆ ์—ฐ๊ด€๋˜์–ด ์žˆ์ง€๋งŒ, ์ด์ „ ์—ฐ๊ตฌ์—์„œ๋Š” ์˜ค์ง ๋ฌธ์žฅ embedding๋งŒ downstream task๋กœ ์ด์ „(transfer)์ด ๋๋Š”๋ฐ, BERT๋Š” end-task ๋ชจ๋ธ parameter๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๊ธฐ ์œ„ํ•ด ๋ชจ๋“  parameter๋ฅผ ์ด์ „์‹œํ‚จ๋‹ค.
ย 

Pre-training data

์‚ฌ์ „ํ•™์Šต ๊ณผ์ •์€ ์–ธ์–ด๋ชจ๋ธ ์‚ฌ์ „ํ•™์Šต์—์„œ ์ด๋ฏธ ์žˆ๋˜ ๊ฒƒ์„ ๊ฑฐ์˜ ๋”ฐ๋ผ๊ฐ„๋‹ค. ์‚ฌ์ „ํ•™์Šต ๋ง๋ญ‰์น˜๋กœ BooksCorpus(800M ๋‹จ์–ด)์™€ English Wikipedia(2,500M ๋‹จ์–ด)๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค. ์œ„ํ‚คํ”ผ๋””์•„์— ๋Œ€ํ•ด์„œ๋Š” ๋ฌธ์ž ์ •๋ณด๋งŒ์„ ์ถ”์ถœํ–ˆ๋‹ค.๊ธด ์—ฐ์†์  seqeunce๋ฅผ ์ถ”์ถœํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š”, ์ˆœ์„œ๊ฐ€ ์„ž์ธ ๋ฌธ์žฅ๋“ค์˜ ์ง‘ํ•ฉ์ธ Billion Word Benchmark๊ฐ™์€ ๊ฒƒ๋ณด๋‹ค๋Š” ๋ฌธ์„œ๋‹จ์œ„ ๋ง๋ญ‰์น˜๋ฅผ ์“ฐ๋Š” ๊ฒƒ์ด ๋งค์šฐ ์ค‘์š”ํ•˜๋‹ค.
ย 

Fine-tuning BERT

Downstream task์— BERT๋ฅผ ์ ์šฉํ•˜๋Š” ๊ฒƒ์€ ์ƒ๋Œ€์ ์œผ๋กœ ๋‹จ์ˆœํ•˜๋‹ค. ์ž…๋ ฅ(ํ•œ ๋ฌธ์žฅ ๋˜๋Š” ๋‘ ๋ฌธ์žฅ)์˜ ๊ฐœ์ˆ˜์— ๋”ฐ๋ผ (์•ž์„œ ์„ค๋ช…ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ) ์•Œ๋งž๊ฒŒ ํ•˜๋‚˜์˜ sequence ๋กœ ์ƒ์„ฑํ•ด์„œ ๋ชจ๋ธ์˜ ์ž…๋ ฅ์œผ๋กœ ์ œ๊ณตํ•œ๋‹ค. ๋‘ ๋ฌธ์žฅ์ด ์ž…๋ ฅ์œผ๋กœ ์ œ๊ณต๋œ ๊ฒฝ์šฐ, ํ•˜๋‚˜์˜ sequence๋กœ ์ƒ์„ฑํ•˜๊ณ , ๋‘ ๋ฌธ์žฅ ์‚ฌ์ด์˜ self-attention๋„ ์ˆ˜ํ–‰ํ•˜๊ฒŒ ๋œ๋‹ค.
Fine-tuningํ•˜๋Š” ๋ฐฉ๋ฒ•์€ task์— ์•Œ๋งž๋Š” ์ž…๋ ฅ๊ณผ ์ถœ๋ ฅ์„ ๋ชจ๋ธ์— ์ž…๋ ฅ์œผ๋กœ ์ œ๊ณตํ•ด์„œ ํŒŒ๋ผ๋ฏธํ„ฐ๋“ค์„ ํ•ด๋‹น task์— ๋งž๊ฒŒ end-to-end๋กœ ์—…๋ฐ์ดํŠธํ•œ๋‹ค. Token representation์€ token level task(sequence tagging, question-answering ๋“ฑ) ์˜ ์ž…๋ ฅ์œผ๋กœ ์‚ฌ์šฉ๋œ๋‹ค. [CLS] ํ† ํฐ์€ classification์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋œ๋‹ค.
Pre-training๊ณผ ๋น„๊ตํ–ˆ์„ ๋•Œ, fine-tuning์€ ์ƒ๋Œ€์ ์œผ๋กœ ์ ์€ ๋น„์šฉ์œผ๋กœ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค. ํ•ด๋‹น ๋…ผ๋ฌธ์—์„œ ์ œ๊ณตํ•˜๋Š” ๊ฒฐ๊ณผ๋“ค์€ ๋Œ€๋ถ€๋ถ„ Gloud TPU์—์„œ 1์‹œ๊ฐ„, ๋˜๋Š” GPU์—์„œ ๋ช‡ ์‹œ๊ฐ„ ๋‚ด์— ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค. (๋™์ผํ•œ pre-trained ๋ชจ๋ธ์—์„œ fine-tuning์„ ํ•˜๋Š” ์‹œ๊ฐ„๋งŒ ๊ณ ๋ คํ–ˆ์„ ๋•Œ)
ย 

Experiment

GLUE

GLUE benchmark๋Š” ๋‹ค์–‘ํ•œ ์ž์—ฐ์–ด์ดํ•ด ๋ฌธ์ œ๋“ค์„ ๋ชจ์•„๋†“์€ ๊ฒƒ์ด๋‹ค. ๋ชจ๋“  GLUE task์— ๋Œ€ํ•ด batch size 32, 3 epochs์œผ๋กœ ์‹คํ—˜ํ•œ ๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.
notion image
  • ๊ฐ task๋งˆ๋‹ค Dev set์—์„œ ์ตœ์ ์˜ learning rate๋ฅผ ์„ ํƒํ–ˆ๋‹ค.
  • BERT_large๋Š” ์ž‘์€ dataset์— ๋Œ€ํ•ดย fine-tuningย ํ•™์Šต์ด ๋ถˆ์•ˆ์ •ํ•  ๋•Œ๊ฐ€ ์žˆ์–ด์„œ, ๋ฌด์ž‘์œ„ ์‹œ์ž‘์„ ์—ฌ๋Ÿฌ ๋ฒˆ ํ•˜์—ฌ ๊ฐ€์žฅ ์ข‹์€ ๊ฒƒ์„ ์„ ํƒํ–ˆ๋‹ค.
BERT_base๋งŒ์œผ๋กœ๋„ state-of-the-art ๊ฒฐ๊ณผ๋ฅผ ์–ป์—ˆ์œผ๋ฉฐ, BERT_large๋Š” ๊ทธ๋ณด๋‹ค๋„ ๋” ๋›ฐ์–ด๋‚œ ์„ฑ๋Šฅ์„ ๋ณด์—ฌ์ค€๋‹ค.

SQuAD v1.1

Stanford Question Answering Dataset์€ 10๋งŒ์—ฌ ๊ฐœ์˜ ์งˆ๋‹ต ์Œ์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค. ์งˆ๋ฌธ๊ณผ ๊ทธ์— ๋Œ€ํ•œ ๋‹ต์„ ํฌํ•จํ•˜๋Š” ์œ„ํ‚คํ”ผ๋””์•„ ์ง€๋ฌธ์ด ์ฃผ์–ด์ง€๋ฉด, ํ•ด๋‹น ์ง€๋ฌธ์—์„œ ๋‹ต์ด ๋˜๋Š” ๋ถ€๋ถ„์„ ์ฐพ๋Š” ๊ณผ์ œ์ด๋‹ค.

SQuAD v2.0

SQuAD v2.0์€ (์งง์€) ๋‹ต์ด ์ง€๋ฌธ์— ์—†๋Š” ๊ฒฝ์šฐ๋ฅผ ํฌํ•จ์‹œ์ผœ ๋” ํ™•์žฅํ•œ, ๋” ํ˜„์‹ค์ ์ธ task์ด๋‹ค.
notion image

SWAG

Situations With Adversarial Generations dataset์€ 113k๊ฐœ์˜ ๋ฐฐ๊ฒฝ์ƒ์‹์„ ํ‰๊ฐ€ํ•˜๋Š” ๋ฌธ์žฅ ์Œ์œผ๋กœ ๋˜์–ด ์žˆ๋‹ค. ์ด์–ด์ง€๋Š” ๋ฌธ์žฅ์œผ๋กœ 4๊ฐœ ์ค‘ ๊ฐ€์žฅ ๊ทธ๋Ÿด๋“ฏํ•˜๊ฒŒ ์ด์–ด์ง€๋Š” ๋ฌธ์žฅ์„ ๊ณ ๋ฅด๋Š” ๊ณผ์ œ์ด๋‹ค.
notion image
ย 

Ablation Studies

: ๋ชจ๋ธ์ด๋‚˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ โ€œfeatureโ€๋“ค์„ ์ œ๊ฑฐํ•ด ๋‚˜๊ฐ€๋ฉด์„œ ๊ทธ ํ–‰์œ„๊ฐ€ ์„ฑ๋Šฅ์— ์–ผ๋งˆ๋‚˜ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š”์ง€๋ฅผ ํ™•์ธํ•ด๋ณด๋Š” ๊ฒƒ

(1) Effect of Pre-training Tasks

์™€ ์ •ํ™•ํ•˜๊ฒŒ ๋™์ผํ•œ ์„ ํ–‰ํ•™์Šต ๋ฐ์ดํ„ฐ, ํŒŒ์ธํŠœ๋‹ ๊ธฐ๋ฒ•, ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์‚ฌ์šฉํ•œ ์„ ํ–‰ํ•™์Šต์„ ํ‰๊ฐ€ํ•˜์—ฌ BERT์˜ ๊นŠ์€ ์–‘๋ฐฉํ–ฅ์„ฑ์˜ ์ค‘์š”์„ฑ์„ ์„ค๋ช…ํ•ด๋ณด๋ ค ํ•ฉ๋‹ˆ๋‹ค.
notion image
๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ ํ–‰ํ•™์Šตํ•˜๋Š”๋ฐ ablation์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
  • No NSP : ๋‹ค์Œ ๋ฌธ์žฅ ์˜ˆ์ธก ํƒœ์Šคํฌ๋ฅผ ์ง„ํ–‰ํ•˜์ง€ ์•Š๊ณ  ํ›ˆ๋ จ ์ง„ํ–‰
  • LTR & No NSP : OpenAI GPT์ฒ˜๋Ÿผ, ๋‹ค์Œ ๋ฌธ์žฅ ์˜ˆ์ธก ์—†์ด ์ขŒ์ธก์—์„œ ์šฐ์ธก์œผ๋กœ ์ง„ํ–‰๋˜๋Š”LM์„ ์ด์šฉํ•˜์—ฌ ํ›ˆ๋ จ ์ง„ํ–‰
  • +BiLSTM : ํŒŒ์ธํŠœ๋‹์„ ์ง„ํ–‰ํ•˜๋Š” ๋™์•ˆ LTR + No NSP ๋ชจ๋ธ์˜ ์ƒ๋‹จ์— ์ดˆ๊ธฐํ™”๋œ BiLSTM์„ ๋žœ๋คํ•˜๊ฒŒ ์ถ”๊ฐ€ํ•˜
NSP๋ฅผ ์ œ๊ฑฐํ•˜๋‹ˆ QNLI, MNLI, SQuAD 1.1.์˜ ์„ฑ๋Šฅ์— ์ƒ๋‹นํ•œ ์ €ํ•˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
No NSP์™€ LTR & No NSP๋ฅผ ๋น„๊ตํ•˜์—ฌ ์–‘๋ฐฉํ–ฅ ํ‘œํ˜„์„ ์ด์šฉํ•œ ํ›ˆ๋ จ์˜ ์˜ํ–ฅ๋ ฅ์„ ํ‰๊ฐ€ํ•˜์˜€์„ ๋•Œ, LTR ๋ชจ๋ธ์˜ ๊ฒฝ์šฐ ๋ชจ๋“  ํƒœ์Šคํฌ์— ๋Œ€ํ•˜์—ฌ MLM ๋ชจ๋ธ๋ณด๋‹ค ์„ฑ๋Šฅ์ด ์ข‹์ง€ ์•Š๊ณ , ํŠนํžˆ MRPC์™€ SQuAD์—์„œ๋Š” ํฌ๊ฒŒ ์ €ํ•˜๋ฉ๋‹ˆ๋‹ค. SQuAD์— ๋Œ€ํ•ด์„œ, LTR ๋ชจ๋ธ์€ ํ† ํฐ ๋ ˆ๋ฒจ์˜ hidden states๊ฐ€ ์šฐ์ธก context๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ํ† ํฐ ์˜ˆ์ธก ์„ฑ๋Šฅ์ด ์ข‹์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ๊ฐ•ํ™”ํ•˜๊ธฐ ์œ„ํ•ด, ๋ชจ๋ธ ์ƒ๋‹จ์— ์ดˆ๊ธฐํ™”๋œ BiLSTM์„ ๋žœ๋คํ•˜๊ฒŒ ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก , ์ด๊ฒƒ์ด SQuAD์˜ ๊ฒฐ๊ณผ๋ฅผ ํ–ฅ์ƒ์‹œํ‚ค๊ธด ํ–ˆ์ง€๋งŒ, ์„ ํ–‰ํ•™์Šต๋œ ์–‘๋ฐฉํ–ฅ ๋ชจ๋ธ๋ณด๋‹ค๋Š” ์—ฌ์ „ํžˆ ๊ฒฐ๊ณผ๊ฐ€ ๋งค์šฐ ์ข‹์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, GLUE ํƒœ์Šคํฌ์— ๋Œ€ํ•ด์„œ๋Š” BiLSTM์ด ์„ฑ๋Šฅ์„ ์ €ํ•˜์‹œํ‚ค๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค.
ย 
ELMo์™€ ๋™์ผํ•œ ๋ฐฉ์‹์œผ๋กœ LTR, RTL ๋ชจ๋ธ๋“ค์„ ๊ฐ๊ฐ ํ›ˆ๋ จ์‹œํ‚จ ํ›„, ๋‘ ๋ชจ๋ธ์„ ๊ฒฐํ•ฉ์‹œ์ผœ ๊ฐ ํ† ํฐ์„ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ์‹์ด ๊ฐ€๋Šฅํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ด์œ ๋กœ ํ•ด๋‹น ๋ฐฉ์‹์€ ํ›จ์”ฌ ๋” ๊ฐ•๋ ฅํ•˜์ง€ ์•Š๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  1. ํ•˜๋‚˜์˜ ์–‘๋ฐฉํ–ฅ ๋ชจ๋ธ๋ณด๋‹ค ๋‘๋ฐฐ์˜ ๋น„์šฉ์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
  1. QA ๊ฐ™์€ ํƒœ์Šคํฌ์— ๋Œ€ํ•ด์„œ, RTL๋ชจ๋ธ์˜ ๊ฒฝ์šฐ ์งˆ๋ฌธ๊ณผ ๋‹ต๋ณ€์„ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์–ด ๋‹ค์†Œ ์ง๊ด€์ ์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  1. ๊นŠ์€ ์–‘๋ฐฉํ–ฅ ๋ชจ๋ธ์˜ ๊ฒฝ์šฐ ๋ชจ๋“  ๋ ˆ์ด์–ด์—์„œ ์ขŒ์šฐ context๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ย 

(2) Effect of Model Size

๋ชจ๋ธ์˜ ์‚ฌ์ด์ฆˆ๊ฐ€ ํŒŒ์ธ ํŠœ๋‹์˜ ์ •ํ™•๋„์— ๋ผ์น˜๋Š” ์˜ํ–ฅ์„ ํ™•์ธํ•ด ๋ด…์‹œ๋‹ค. ๋™์ผํ•œ ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ํ›ˆ๋ จ ๊ณผ์ •์€ ์œ„์— ์–ธ๊ธ‰๋œ ๊ฒƒ๊ณผ ๋™์ผํ•˜๊ฒŒ ์ง„ํ–‰ํ•˜๋ฉด์„œ, layer, hidden unit, attention head ์ˆ˜๋ฅผ ๋‹ค๋ฅด๊ฒŒํ•˜์—ฌ ํ›ˆ๋ จ์„ ์ง„ํ–‰ํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค.
notion image
BERT์˜ ๋ชจ๋ธ ์‚ฌ์ด์ฆˆ์— ๋Œ€ํ•˜์—ฌ ablation์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
#L : layer ์ˆ˜
#H : hidden unit ์ˆ˜
#A : attention head ๊ฐœ์ˆ˜
LM(ppl) : ์ฃผ์–ด์ง„ ํ•™์Šต ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ Masked LM perplexity(ํ™•๋ฅ  ๋ถ„ํฌ ๋ชจ๋ธ, ์–ธ์–ด ๋ชจ๋ธ์ด ๋ถ„ํฌ๋ฅผ ์–ผ๋งˆ๋‚˜ ์ž˜ ์˜ˆ์ธกํ–ˆ๋Š”์ง€ ์ธก์ •ํ•˜๋Š” ํ‰๊ฐ€์ง€ํ‘œ)
์ƒ๋‹จ์˜ ํ‘œ์—์„œ๋Š”, ํŒŒ์ธํŠœ๋‹์„ ๋žœ๋คํ•˜๊ฒŒ 5๋ฒˆ ์žฌ์‹œ์ž‘ํ–ˆ์„ ๋•Œ ํ‰๊ท  Dev Set ์ •ํ™•๋„๋ฅผ ๋ณด๊ณ ํ•ฉ๋‹ˆ๋‹ค. 3600๊ฐœ์˜ labeled training example๋ฅผ ๊ฐ€์ง€๊ณ ์žˆ๋Š”, ์„ ํ–‰ํ•™์Šต๊ณผ๋Š” ์‹ค์งˆ์ ์œผ๋กœ ๋‹ค๋ฅธ MRPC๊นŒ์ง€๋„ 4๊ฐœ์˜ ๋ชจ๋“  ๋ฐ์ดํ„ฐ์…‹์— ๋Œ€ํ•˜์—ฌ ๋” ํฐ ๋ชจ๋ธ์ผ ์ˆ˜๋ก ์ •ํ™•๋„๊ฐ€ ํฌ๊ฒŒ ํ–ฅ์ƒ๋˜๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์˜ˆ๋ฅผ ๋“ค์–ด, ์ด์ „์— ์—ฐ๊ตฌ๋œ ๊ฐ€์žฅ ํฐ Transformer๋Š” ์ธ์ฝ”๋”๋ฅผ ํฌํ•จํ•˜์—ฌ 100M๊ฐœ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ(L=6, H=1024, A=16)๋ฅผ ๊ฐ€์ง„ ๋ชจ๋ธ์ด๊ณ , ์ €์ž๊ฐ€ ๋ฌธํ—Œ์—์„œ ์ฐพ์€ ๊ฐ€์žฅ ํฐ Tranformer๋Š” 235M๊ฐœ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ(L=64, H=512, A=2)๋ฅผ ๊ฐ€์ง„ ๋ชจ๋ธ์ด๋‹ค. ์ด์™€ ๋Œ€์กฐ์ ์œผ๋กœ, ๋Š” 110M๊ฐœ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ, ๋Š” 340M๊ฐœ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.
๊ธฐ๊ณ„๋ฒˆ์—ญ, ์–ธ์–ด ๋ชจ๋ธ๋ง๊ณผ ๊ฐ™์€ ๋Œ€์šฉ๋Ÿ‰ ํƒœ์Šคํฌ์˜ ๊ฒฝ์šฐ, ๋ชจ๋ธ ์‚ฌ์ด์ฆˆ๋ฅผ ํ‚ค์šฐ๋Š” ๊ฒƒ์ด ๊ณ„์†ํ•ด์„œ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚จ๋‹ค๋Š” ๊ฒƒ์€ ์˜ค๋ž˜ ์ „๋ถ€ํ„ฐ ์•Œ๋ ค์ ธ ์žˆ๊ณ , ์ด๋Š” ์ƒ๋‹จ ํ‘œ์˜ LM Perplexity๋ฅผ ๋ณด๋ฉด ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜, ๋ชจ๋ธ์ด ์ถฉ๋ถ„ํ•œ ์„ ํ–‰ํ•™์Šต์„ ์ง„ํ–‰ํ–ˆ๋‹ค๋Š” ์ „์ œ ํ•˜์—, ๋ชจ๋ธ ์‚ฌ์ด์ฆˆ๋ฅผ ๊ทน๋‹จ์ ์œผ๋กœ ํ™•์žฅ์‹œํ‚ค๋Š” ๊ฒƒ์€ ๋งค์šฐ ์ž‘์€ ์Šค์ผ€์ผ์˜ ํƒœ์Šคํฌ์— ๋Œ€ํ•ด์„œ๋„ ํฐ ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ์ด๋Œ์–ด ๋‚ธ๋‹ค๋Š” ๊ฒƒ์„ ์ž…์ฆํ•˜๋Š” ์ฒซ ์ž‘์—…์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ย 
Peters ์™ธ ์—ฐ๊ตฌ์ง„์€ ์„ ํ–‰ํ•™์Šต๋œ bi-LM(์–‘๋ฐฉํ–ฅ ์–ธ์–ด ๋ชจ๋ธ) ํฌ๊ธฐ๋ฅผ 2๊ฐœ ์ธต์—์„œ 4๊ฐœ ์ธต์œผ๋กœ ์ฆ๊ฐ€์‹œ์ผฐ์„ ๋•Œ ๋‹ค์šด์ŠคํŠธ๋ฆผ ํƒœ์Šคํฌ์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์— ๋Œ€ํ•ด์„œ ์—‡๊ฐˆ๋ฆฐ ๊ฒฐ๊ณผ๋ฅผ ์ œ์‹œํ•˜์˜€๊ณ , Melamud ์™ธ ์—ฐ๊ตฌ์ง„์— ๋”ฐ๋ฅด๋ฉด ์€๋‹‰์ธต์˜ ์ฐจ์› ์ˆ˜๋ฅผ 200์—์„œ 600์œผ๋กœ ์ฆ๊ฐ€์‹œํ‚ค๋Š” ๊ฒƒ์€ ๋„์›€์ด ๋˜์—ˆ์ง€๋งŒ, 1000 ์ด์ƒ์œผ๋กœ ๋Š˜๋ฆฌ๋Š” ๊ฒƒ์€ ์ถ”๊ฐ€์ ์ธ ๊ฐœ์„ ์„ ๋ถˆ๋Ÿฌ์˜ค์ง€๋Š” ๋ชป ํ–ˆ๋‹ค๊ณ  ์–ธ๊ธ‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋‘๊ฐ€์ง€ ์—ฐ๊ตฌ์˜ ๊ฒฝ์šฐ feature ๊ธฐ๋ฐ˜ ์ ‘๊ทผ์„ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ๋ชจ๋ธ์ด ๋‹ค์šด์ŠคํŠธ๋ฆผ ํƒœ์Šคํฌ์— ๋Œ€ํ•ด ์ง์ ‘์ ์œผ๋กœ ํŒŒ์ธํŠœ๋‹๋˜์–ด ์žˆ๊ณ , ๋žœ๋คํ•˜๊ฒŒ ์ดˆ๊ธฐํ™”๋œ ๊ทน์†Œ์˜ ์ถ”๊ฐ€ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ํ–ˆ์„ ๋•Œ, ๋‹ค์šด์ŠคํŠธ๋ฆผ ํƒœ์Šคํฌ๊ฐ€ ๋งค์šฐ ์ž‘๋‹ค๊ณ  ํ•˜๋”๋ผ๋„ ํƒœ์Šคํฌ ํŠนํ™” ๋ชจ๋ธ์€ ๋” ํฌ๊ณ  ๋” ํ‘œํ˜„๋ ฅ์ด ๋›ฐ์–ด๋‚œ ์„ ํ–‰ํ•™์Šต๋œ ํ‘œํ˜„์œผ๋กœ๋ถ€ํ„ฐ ์ด์ต์„ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค.
ย 

(3) Feature-based Approach with BERT

์ง€๊ธˆ๊นŒ์ง€ ์ œ์‹œ๋œ ๋ชจ๋“  BERT์˜ ๊ฒฐ๊ณผ๋“ค์€ ๊ฐ„๋‹จํ•œ ๋ถ„๋ฅ˜์ธต์ด ์„ ํ–‰ํ•™์Šต๋œ ๋ชจ๋ธ์— ์ถ”๊ฐ€๋˜๊ณ , ๋ชจ๋“  ํŒŒ๋ผ๋ฏธํ„ฐ๋“ค์ด ๋‹ค์šด์ŠคํŠธ๋ฆผ ํƒœ์Šคํฌ์— ๋Œ€ํ•ด ๊ณต๋™์œผ๋กœ ๋ฏธ์„ธ ์กฐ์ •๋˜๋Š” ํŒŒ์ธํŠœ๋‹ ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜, ์„ ํ–‰ํ•™์Šต๋œ ๋ชจ๋ธ๋กœ๋ถ€ํ„ฐ ๊ณ ์ •๋œ feature๋“ค์ด ์ถ”์ถœ๋˜๋Š” feature ๊ธฐ๋ฐ˜ ๋ฐฉ์‹์˜ ๊ฒฝ์šฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ด์ ์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.
  1. ์ฒซ๋ฒˆ์งธ๋กœ ๋ชจ๋“  ํƒœ์Šคํฌ๋“ค์ด Transformer ์ธ์ฝ”๋” ๊ตฌ์กฐ๋กœ ์‰ฝ๊ฒŒ ํ‘œํ˜„๋˜๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์—, ํƒœ์Šคํฌ ํŠนํ™” ๋ชจ๋ธ ๊ตฌ์กฐ๊ฐ€ ์ถ”๊ฐ€๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  1. ํ•™์Šต ๋ฐ์ดํ„ฐ์˜ ๊ณ„์‚ฐ์ด ๋น„์‹ผ ํ‘œํ˜„์„ ์‚ฌ์ „์— ํ•œ๋ฒˆ ๊ณ„์‚ฐํ•˜๊ณ , ํ•ด๋‹น ํ‘œํ˜„๋“ค ์œ„์—์„œ ๋” ์ €๋ ดํ•œ ๋ชจ๋ธ๋กœ ๋งŽ์€ ์‹คํ—˜์„ ๋Œ๋ฆด ์ˆ˜ ์žˆ๋Š” ๊ณ„์‚ฐ์ƒ์˜ ํฐ ์ด์ต์ด ์žˆ์Šต๋‹ˆ๋‹ค.
ย 
CoNLL-2003 ๊ฐœ์ฒด๋ช…์ธ์‹ ํƒœ์Šคํฌ์— BERT๋ฅผ ์ ์šฉํ•˜์—ฌ ๋‘๊ฐ€์ง€ ์ ‘๊ทผ๋ฒ•์„ ๋น„๊ตํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. BERT์˜ ์ž…๋ ฅ์œผ๋กœ, ์šฐ๋ฆฌ๋Š” ๋Œ€์†Œ๋ฌธ์ž๊ฐ€ ๊ตฌ๋ถ„๋˜๋Š” WordPiece ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜๊ณ , ๋ฐ์ดํ„ฐ์—์„œ ์ œ๊ณต๋  ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€์˜ ๋ฌธ์„œ context๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ํ‘œ์ค€์ ์ธ ๊ด€ํ–‰์— ๋”ฐ๋ผ, ํ•ด๋‹น ๋…ผ๋ฌธ์—์„œ๋Š” ์ด๋ฅผ ํƒœ๊ทธ ์ง€์ • ํƒœ์Šคํฌ๋กœ ๊ณต์‹ํ™”ํ•˜์ง€๋งŒ ์ถœ๋ ฅ์— CRF์ธต์„ ์‚ฌ์šฉํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. ์ฒซ๋ฒˆ์งธ ํ•˜์œ„ ํ† ํฐ์˜ ํ‘œํ˜„์„ NER ๋ผ๋ฒจ ์…‹์„ ํ†ตํ•ด ํ† ํฐ ๋‹จ์œ„์˜ ๋ถ„๋ฅ˜๊ธฐ์˜ ์ž…๋ ฅ์œผ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
ํŒŒ์ธํŠœ๋‹ ๋ฐฉ์‹์„ ์ œ๊ฑฐํ•˜๊ธฐ ์œ„ํ•ด, BERT์˜ ์–ด๋– ํ•œ ํŒŒ๋ผ๋ฏธํ„ฐ๋„ ํŒŒ์ธํŠœ๋‹ํ•˜์ง€ ์•Š๊ณ  ํ•˜๋‚˜ ์ด์ƒ์˜ ์ธต์—์„œ ํ™œ์„ฑํ™” ํ•จ์ˆ˜๋ฅผ ์ถ”์ถœํ•˜์—ฌ feature ๊ธฐ๋ฐ˜ ๋ฐฉ์‹์„ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฌธ๋งฅ์ ์ธ ์ž„๋ฒ ๋”ฉ์€ ๋ถ„๋ฅ˜์ธต ์ด์ „์— ๋žœ๋คํ•˜๊ฒŒ ์ดˆ๊ธฐํ™”๋œ 768์ฐจ์›์˜ 2๊ฐœ BiLSTM ์ธต์˜ ์ž…๋ ฅ์œผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
notion image
CoNLL-2003 ๊ฐœ์ฒด๋ช… ์ธ์‹ ํƒœ์Šคํฌ์˜ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค. ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ์˜ ๊ฒฝ์šฐ Dev set์—์„œ ์‚ฌ์šฉ๋˜์—ˆ๋˜ ๊ฒƒ๋“ค์„ ์ฑ„ํƒํ•˜์˜€์Šต๋‹ˆ๋‹ค. Dev, Test ์ ์ˆ˜์˜ ๊ฒฝ์šฐ ํ•ด๋‹น ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด์„œ ๋žœ๋คํ•˜๊ฒŒ 5๋ฒˆ ์žฌ์‹œ์ž‘๋œ ๊ฒฐ๊ณผ๋“ค์„ ํ‰๊ท  ๋‚ธ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค.
์˜ ๊ฒฝ์šฐ SOTA ๋ฐฉ์‹์œผ๋กœ ๊ฒฝ์Ÿ๋ ฅ์žˆ๋Š” ๊ฒฐ๊ณผ๋ฅผ ๋ณด์ž…๋‹ˆ๋‹ค. ๊ฐ€์žฅ ์ข‹์€ ๊ฒฐ๊ณผ๋ฅผ ๋‚ธ ๋ฐฉ์‹์˜ ๊ฒฝ์šฐ, ์„ ํ–‰ํ•™์Šต๋œ Transformer์˜ ์ƒ๋‹จ 4๊ฐœ์˜ ์€๋‹‰์ธต์œผ๋กœ๋ถ€ํ„ฐ ํ† ํฐ ํ‘œํ˜„์„ ๊ฒฐํ•ฉ์‹œํ‚ค๋Š”๋ฐ, ์ด๋Š” ์ „์ฒด ๋ชจ๋ธ์„ ํŒŒ์ธํŠœ๋‹ํ•˜๋Š”๊ฒƒ๊ณผ ๋น„๊ตํ–ˆ์„ ๋•Œ 0.3 F1๋ฐ–์— ์ฐจ์ด๊ฐ€ ๋‚˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด BERT๋Š” ํŒŒ์ธํŠœ๋‹์ด๋‚˜ feature ๊ธฐ๋ฐ˜ ๋ฐฉ์‹ ๋ชจ๋‘์— ๋Œ€ํ•ด์„œ ํšจ๊ณผ์ ์ด๋ผ๊ณ  ์ž…์ฆํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ย 

Conclusion

์–ธ์–ด ๋ชจ๋ธ์˜ transfer learning(= fine-tuning)์„ ํ†ตํ•œ ์‹ค์งˆ์ ์ธ ํ–ฅ์ƒ์€ ํ’๋ถ€ํ•˜๊ณ  ๋น„์ง€๋„์ ์ธ ์„ ํ–‰ํ•™์Šต์ด ์–ธ์–ด๋ฅผ ์ดํ•ดํ•˜๋Š” ์ฒด๊ณ„์— ์žˆ์–ด์„œ ํ•ต์‹ฌ ํŒŒํŠธ๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ, ์ด๋ฅผ ํ†ตํ•ด ์ž์›์ด ์ ์€ ํƒœ์Šคํฌ์— ๋Œ€ํ•ด์„œ๋„ ๊นŠ์€ ๋‹จ๋ฐฉํ–ฅ ๊ตฌ์กฐ๋กœ๋ถ€ํ„ฐ ์ด๋“์„ ์–ป์„ ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ๋…ผ๋ฌธ์€ ์œ„์™€ ๊ฐ™์€ ์—ฐ๊ตฌ ๊ฒฐ๊ณผ๋ฅผ ๊นŠ์€ ์–‘๋ฐฉํ–ฅ ๊ตฌ์กฐ์— ์ผ๋ฐ˜ํ™”ํ•˜์—ฌ ๋™์ผํ•œ ์„ ํ–‰ํ•™์Šต ๋ชจ๋ธ์ด ๊ด‘๋ฒ”์œ„ํ•œ NLP ํƒœ์Šคํฌ๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
ย 

์ฝ”๋“œ์‹ค์Šต

Dacon ํ•œ๊ตญ์–ด ๋ฌธ์žฅ ๊ด€๊ณ„ ๋ถ„๋ฅ˜ ๊ฒฝ์ง„๋Œ€ํšŒ
๊ด€๋ จ ๋‚ด์šฉ : ๋งํฌ https://dacon.io/competitions/official/235875/overview/description
Dataset download
์ฝ”๋“œ๋Š” Kobert ๋ชจ๋ธ ๊ตฌํ˜„ ๋ฐ ์ ์šฉ๊ณผ ๋ฐ์ดํ„ฐ์…‹ ๊ฐ„๋‹จํ•œ EDA๋กœ ๊ตฌ์„ฑ๋˜์–ด์žˆ์Šต๋‹ˆ๋‹ค.
colab์—์„œ gdirve ์—ฐ๊ฒฐ ํ›„ ํŒŒ์ผ ๊ฒฝ๋กœ ์ˆ˜์ •๋งŒ ํ•ด์ฃผ๋ฉด ์ฝ”๋“œ ๋Œ์•„๊ฐ‘๋‹ˆ๋‹ค.
Accuracy : 0.736
ย 

Reference

BERT : Pre-training of Deep Bidirectional Transformers for Language Understanding https://arxiv.org/pdf/1810.04805.pdf