Artificial Intelligence/Paper

RoBERTa: A Robustly Optimized BERT Pretraining Approach

geum 2023. 1. 5. 17:19

๐Ÿ’ฌ ๋…ผ๋ฌธ ๋‚ด์šฉ๊ณผ ์ด ๊ธ€์— ๋Œ€ํ•œ ์˜๊ฒฌ ๊ณต์œ , ์˜คํƒˆ์ž ์ง€์  ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค. ํŽธํ•˜๊ฒŒ ๋Œ“๊ธ€ ๋‚จ๊ฒจ์ฃผ์„ธ์š” !

๐Ÿ’ฌ โ—ฝ ๊ธฐํ˜ธ๋Š” ๊ธ€ ์ž‘์„ฑ์ž์˜ ๊ฐœ์ธ์ ์ธ ์ƒ๊ฐ์ด๋ฉฐ, โ—พ ๊ธฐํ˜ธ๋Š” ์›๋ฌธ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค.


์›๋ฌธ: https://arxiv.org/pdf/1907.11692.pdf

 

Abstract

โ—พ BERT ๋ชจ๋ธ์— ๋Œ€ํ•ด ์žฌํ˜„ ์—ฐ๊ตฌ(replication study)๋ฅผ ์ˆ˜ํ–‰ํ•˜๋ฉด์„œ ๋ฐ์ดํ„ฐ ํฌ๊ธฐ, ์ฃผ์š” ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ๊ฒฐ๊ณผ์— ์–ด๋–ค ์˜ํ–ฅ์„ ์ฃผ๋Š”์ง€ ํ™•์ธ

โ—พ BERT ๋ชจ๋ธ์ด undertrained๋˜์—ˆ์œผ๋ฉฐ BERT ๋ชจ๋ธ ๋ฐœํ‘œ ์ดํ›„ ๋‚˜์˜จ ๋ชจ๋ธ๋“ค์˜ ์„ฑ๋Šฅ์„ ๋Šฅ๊ฐ€ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ ๋จ

โ—พ ์ด์ „์— ๊ฐ„๊ณผ๋˜๋˜ ๋ชจ๋ธ ์„ค๊ณ„ ๋ฐฉ๋ฒ•์˜ ์ค‘์š”์„ฑ์— ๋Œ€ํ•ด ๊ฐ•์กฐ 

 

โ—ฝ RoBERTa๋ผ๋Š” ์ƒˆ๋กœ์šด ๋ชจ๋ธ์„ ์ œ์•ˆํ•œ ๊ฒƒ์ด ์•„๋‹ˆ๋ผ BERT ๋ชจ๋ธ์„ ๊ฐ€์žฅ ์ข‹์€ ๋ฐฉ๋ฒ•์œผ๋กœ ํ•™์Šต์‹œํ‚จ ๊ฒƒ

โ—ฝ 'undertrained'๋ผ๋Š” ํ‘œํ˜„์€ ๋ง๊ทธ๋Œ€๋กœ ์ ๊ฒŒ ํ•™์Šต(epoch ์ˆ˜๊ฐ€ ์ ์—ˆ๋‹ค๋˜์ง€)๋๋‹ค๋Š” ๊ฑธ๋กœ ์ดํ•ดํ–ˆ๊ณ  ํ•™์Šต์„ ๋” ์‹œ์ผœ๋ณด๋‹ˆ๊นŒ ์„ฑ๋Šฅ์ด ์ข‹์•„์ง€๋”๋ผ~ ์ด๋Ÿฐ ๋œป์œผ๋กœ ํ•ด์„

 

Introduction

โ—พ Self-training ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋Š” ELMo, GPT, BERT, XLM, XLNet์€ ๋†€๋ผ์šด ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ๋ณด์—ฌ์คŒ

โ—พ 1) ํ•™์Šต ๋น„์šฉ์ด ๋น„์‹ธ๊ธฐ ๋•Œ๋ฌธ์— ํŠœ๋‹์ด ์ œํ•œ์ ์ด๊ณ  2) ๋‹ค์–‘ํ•œ ํฌ๊ธฐ์˜ private ๋ฐ์ดํ„ฐ๋กœ ํ•™์Šต๋˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ •ํ™•ํžˆ ์–ด๋–ค ์š”์†Œ๊ฐ€ ์„ฑ๋Šฅ ํ–ฅ์ƒ์— ํฌ๊ฒŒ ๊ธฐ์—ฌํ•˜๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์–ด๋ ค์›€

โ—พ ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ ํŠœ๋‹๊ณผ ํ•™์Šต ๋ฐ์ดํ„ฐ ํฌ๊ธฐ์˜ ์˜ํ–ฅ์— ๋Œ€ํ•œ careful evaluation์„ ํฌํ•จํ•˜๋Š” BERT ์žฌํ˜„ ์—ฐ๊ตฌ ๊ฒฐ๊ณผ ์ œ์‹œ

โ—พ BERT๊ฐ€ undertrain ๋๋‹ค๋Š” ๊ฒƒ์„ ๋ฐœ๊ฒฌํ–ˆ๊ณ  ๋” ๋‚˜์€ ํ•™์Šต ๋ฐฉ๋ฒ•์„ ์ ์šฉํ•œ BERT ๋ชจ๋ธ์ธ RoBERTa ์ œ์•ˆ

โ—พ RoBERTa ๋ชจ๋ธ์— ์ ์šฉํ•œ ๋ฐฉ๋ฒ• - 1) ํฐ ๋ฐฐ์น˜์™€ ๋งŽ์€ ๋ฐ์ดํ„ฐ๋กœ ์˜ค๋ž˜ ํ•™์Šต, 2) ๋‹ค์Œ ๋ฌธ์žฅ ์˜ˆ์ธก ํƒœ์Šคํฌ ์‚ญ์ œ, 3) ๊ธด ๋ฌธ์žฅ์œผ๋กœ ํ•™์Šต, 4) ํ•™์Šต ๋ฐ์ดํ„ฐ์— ์ ์šฉ๋˜๋Š” ๋งˆ์Šคํ‚น ํŒจํ„ด์„ dynamicํ•˜๊ฒŒ ๋ณ€๊ฒฝ

โ—พ ํ•™์Šต ๋ฐ์ดํ„ฐ์…‹ ํฌ๊ธฐ๊ฐ€ ์ฃผ๋Š” ์˜ํ–ฅ์„ ๋” ์ž˜ ๊ด€์ฐฐํ•˜๊ธฐ ์œ„ํ•ด ์ƒˆ๋กœ์šด ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ์…‹ ์ˆ˜์ง‘

โ—พ ์—ฌ๋Ÿฌ ํƒœ์Šคํฌ์—์„œ SOTA๋ฅผ ๋‹ฌ์„ฑํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— BERT์˜ ๋งˆ์Šคํ‚น ์–ธ์–ด ๋ชจ๋ธ ํ•™์Šต ๋ชฉํ‘œ๊ฐ€ ๊ฒฝ์Ÿ๋ ฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Œ

 

โ—ฝ 1) → ์ด๊ฒƒ์ €๊ฒƒ ํŠœ๋‹ํ•˜๋ฉด์„œ ๋งค๋ฒˆ ์žฌํ•™์Šต์‹œํ‚ค๊ธฐ์—” ์‹œ๊ฐ„์ด ๋„ˆ๋ฌด ์˜ค๋ž˜ ๊ฑธ๋ฆผ

โ—ฝ BERT์˜ ๋งˆ์Šคํ‚น ์–ธ์–ด ๋ชจ๋ธ ํ•™์Šต ๋ชฉํ‘œ๊ฐ€ ๊ฒฝ์Ÿ๋ ฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Œ → masked language model pretrain ๋ฐฉ๋ฒ•์œผ๋กœ ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ์ด๋Œ์–ด ๋‚ผ ์ˆ˜ ์žˆ๋‹ค๋Š” ์˜๋ฏธ๋กœ ํ•ด์„

 

Background

BERT ๋…ผ๋ฌธ์— ๋Œ€ํ•œ ๊ฐ„๋‹จ ์š”์•ฝ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ƒ๋žต

 

Experimental Setup

์ƒ๋žต

 

Training Procedure Analysis

โ—พ BERT ๋ชจ๋ธ์˜ ์„ฑ๊ณต์ ์ธ ์‚ฌ์ „ํ•™์Šต์— ๊ฐ€์žฅ ํฐ ์˜ํ–ฅ์„ ์ฃผ๋Š” ์š”์†Œ๋ฅผ ์•Œ์•„๋ณด๊ธฐ ์œ„ํ•ด BERT base ๋ชจ๋ธ๋กœ ์‹คํ—˜ ์ง„ํ–‰

 

1. Static vs Dynamic Masking

โ—พ ์›๋ณธ BERT ๋ชจ๋ธ์€ ๋ฐ์ดํ„ฐ ์ „์ฒ˜๋ฆฌ ๊ณผ์ •์—์„œ ๋งˆ์Šคํ‚น์„ ํ•œ ๋ฒˆ๋งŒ ์ˆ˜ํ–‰ํ•˜์—ฌ single static mask ์ƒ์„ฑ

โ—พ ๊ฐ epoch๋งˆ๋‹ค ๋™์ผํ•œ ๋งˆ์Šคํฌ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋„๋ก ํ•™์Šต ๋ฐ์ดํ„ฐ๋ฅผ 10๋ฒˆ ๋ณต์ œํ•˜์—ฌ 40 epochs ๋™์•ˆ 10๊ฐœ์˜ ๋‹ค๋ฅธ ๋ฐฉ์‹์œผ๋กœ ๋งˆ์Šคํ‚น → ํ•™์Šต ์ค‘์— ๋™์ผํ•œ ๋งˆ์Šคํฌ๋ฅผ 4๋ฒˆ ๊ฐ€์ง

โ—พ ํ•™์Šตํ•  ๋•Œ๋งˆ๋‹ค ๋งˆ์Šคํ‚น ํŒจํ„ด์„ ์ƒ์„ฑํ•ด์„œ ์ ์šฉํ•˜๋Š” dynamic masking๊ณผ static masking ๋น„๊ต

โ—พ Dynamic masking์€ ๋” ๋งŽ์ด ์‚ฌ์ „ํ•™์Šต์‹œํ‚ค๊ฑฐ๋‚˜ ๋” ํฐ ๋ฐ์ดํ„ฐ์…‹์„ ์‚ฌ์šฉํ•  ๋•Œ ์ค‘์š”ํ•จ

โ—พ Dynamic masking์ด static masking(์›๋ณธ BERT ๋ชจ๋ธ์ด ์“ด ๋ฐฉ๋ฒ•)๊ณผ ๋น„์Šทํ•˜๊ฑฐ๋‚˜ ์ข€ ๋” ๋‚˜์€ ์„ฑ๋Šฅ์„ ๋ณด์˜€๊ธฐ ๋•Œ๋ฌธ์— ๋‚จ์€ ์‹คํ—˜์— ๋ชจ๋‘ dynamic masking ์‚ฌ์šฉ

 

โ—ฝ A๋ผ๋Š” ์‹œํ€€์Šค ํ•˜๋‚˜์— ๋งˆ์Šคํ‚น ๋ฐฉ์‹ 1 ์ ์šฉํ•ด์„œ ํ•™์Šต์‹œํ‚ค๊ณ  ๋งˆ์Šคํ‚น ๋ฐฉ์‹ 2 ์ ์šฉํ•ด์„œ ํ•™์Šต์‹œํ‚ค๊ณ  ์ด ๊ณผ์ • ๋ฐ˜๋ณต

 

์‹คํ—˜ ๊ฒฐ๊ณผ

 

2. Model Input Format and Next Sentence Prediction

โ—พ ์›๋ณธ BERT ๋ชจ๋ธ์„ ์‚ฌ์ „ํ•™์Šต ์‹œํ‚ค๋Š” ๋‹จ๊ณ„์—์„œ ๋ชจ๋ธ์€ ๋™์ผํ•˜๊ฑฐ๋‚˜ ์„œ๋กœ ๋‹ค๋ฅธ ๋ฌธ์„œ์—์„œ ์—ฐ์†์ ์œผ๋กœ ์ƒ˜ํ”Œ๋ง๋œ ๋‘ ๊ฐœ์˜ ๋ฌธ์žฅ์„ ๊ด€์ฐฐ

โ—พ ๋‘ ๋ฌธ์žฅ์ด ๊ฐ™์€ ๋ฌธ์„œ์—์„œ ์ƒ˜ํ”Œ๋ง๋œ๊ฑด์ง€, ๋‹ค๋ฅธ ๋ฌธ์„œ์—์„œ ์ƒ˜ํ”Œ๋ง๋œ๊ฑด์ง€ ๋งž์ถ”๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•™์Šต๋จ

โ—พ NSP loss๋ฅผ ์ œ๊ฑฐํ•˜๋ฉด ์„ฑ๋Šฅ์ด ํฌ๊ฒŒ ์ €ํ•˜๋œ๋‹ค๋Š” ์—ฐ๊ตฌ๊ฐ€ ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— BERT ๋ชจ๋ธ ํ•™์Šต์˜ ์ค‘์š”ํ•œ ์š”์†Œ๋กœ ์ƒ๊ฐ๋˜์–ด ์™”์ง€๋งŒ NSP loss์˜ ํ•„์š”์„ฑ์— ์˜๋ฌธ์„ ์ œ๊ธฐํ•œ ์—ฐ๊ตฌ ์กด์žฌ

โ—พ NSP loss ์กด์žฌ ์œ ๋ฌด์— ๋”ฐ๋ฅธ ์ฐจ์ด๋ฅผ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ํ•™์Šต ํ˜•ํƒœ๋ฅผ ๋ฐ”๊พธ๋ฉด์„œ ์‹คํ—˜ ์ง„ํ–‰ ํ›„ ๊ฒฐ๊ณผ ํ™•์ธ → segment pair+NSP, sentence pair+NSP, full-sentences, doc-sentences

โ—พ Sentence-pair ํ˜•ํƒœ ๋ง๊ณ  ๋‹จ์ผ ๋ฌธ์žฅ์„ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ ๋‹ค์šด์ŠคํŠธ๋ฆผ ํƒœ์Šคํฌ์—์„œ์˜ ์„ฑ๋Šฅ์ด ์ €ํ•˜๋จ

 

์‹คํ—˜ ๊ฒฐ๊ณผ

 

3. Training with large batches

โ—พ ์‹ ๊ฒฝ๋ง ๊ธฐ๊ณ„ ๋ฒˆ์—ญ์— ๊ด€ํ•œ ์ด์ „ ์—ฐ๊ตฌ๋“ค์€ ํ•™์Šต๋ฅ ์ด ์ ์ ˆํ•˜๊ฒŒ ์ฆ๊ฐ€ํ•  ๋•Œ ๋ฏธ๋‹ˆ ๋ฐฐ์น˜ ํฌ๊ธฐ๋ฅผ ํฌ๊ฒŒ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ด ์ตœ์ ํ™” ์†๋„์™€ end-task ์„ฑ๋Šฅ์„ ๋‘˜๋‹ค ํ–ฅ์ƒ์‹œํ‚จ๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์ž„

โ—พ BERT base ๋ชจ๋ธ์€ ๋ฐฐ์น˜ ํฌ๊ธฐ 256, 1M(million) step์œผ๋กœ ํ•™์Šต ์ง„ํ–‰

โ—พ ๋ฐฐ์น˜ ํฌ๊ธฐ๋ฅผ ํ‚ค์›Œ์„œ ํ•™์Šต์‹œ์ผฐ์„ ๋•Œ์˜ ํผํ”Œ๋ ‰์„œํ‹ฐ ๋น„๊ต → end-task ์ •ํ™•๋„์™€ ๋งˆ์Šคํ‚น๋œ ์–ธ์–ด ๋ชจ๋ธ๋ง์˜ ํผํ”Œ๋ ‰์„œํ‹ฐ๋ฅผ ํ–ฅ์ƒ์‹œํ‚จ๋‹ค๋Š” ๊ฒƒ์„ ํ™•์ธ

โ—พ ๋ฐฐ์น˜ ํฌ๊ธฐ๋ฅผ ํฌ๊ฒŒ ์žก์•„์„œ ํ•™์Šต์„ ์ง„ํ–‰ํ•˜๋Š” ๊ฒƒ์€ ๋ณ‘๋ ฌํ™”๋„ ์‰ฌ์›€

 

์‹คํ—˜ ๊ฒฐ๊ณผ

4. Text Encoding

โ—พ Byte-Pair ์ธ์ฝ”๋”ฉ์€ ๋ฌธ์ž ๋‹จ์œ„ ํ‘œํ˜„๊ณผ ๋‹จ์–ด ๋‹จ์œ„ ํ‘œํ˜„์„ ํ•จ๊ป˜ ์“ฐ๋Š” ๋ฐฉ์‹์œผ๋กœ ์ž์—ฐ์–ด ๋ง๋ญ‰์น˜(corpora)์—์„œ ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ๋Œ€์šฉ๋Ÿ‰์˜ ์–ดํœ˜ ์ฒ˜๋ฆฌ ๊ฐ€๋Šฅ

โ—พ ์›๋ณธ BERT ๊ตฌํ˜„์ฒด๋Š” ํœด๋ฆฌ์Šคํ‹ฑ ํ† ํฐํ™” ๊ทœ์น™์œผ๋กœ ์ž…๋ ฅ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์ฒ˜๋ฆฌํ•˜๊ณ  3๋งŒ ๊ฐœ์˜ ๋ฌธ์ž ๋‹จ์œ„ BPE ์–ดํœ˜๋ฅผ ํ•™์Šต์— ์‚ฌ์šฉ

โ—พ ์ž…๋ ฅ์— ์ถ”๊ฐ€์ ์ธ ์ „์ฒ˜๋ฆฌ๋‚˜ ํ† ํฐํ™” ์—†์ด 5๋งŒ ๊ฐœ์˜ ์„œ๋ธŒ์›Œ๋“œ ์œ ๋‹›์„ ํฌํ•จํ•˜๊ณ  ์žˆ๋Š” ๋ฐ”์ดํŠธ ๋‹จ์œ„ BPE ๋‹จ์–ด ์‚ฌ์ „์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•™์Šต์‹œํ‚ด

 

RoBERTa

โ—พ ์ด์ „ ์„น์…˜์—์„œ end-task ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” BERT ์‚ฌ์ „ํ•™์Šต ๋‹จ๊ณ„์˜ ์ˆ˜์ • ๋ฐฉ๋ฒ•์„ ์ œ์•ˆ → ์ œ์•ˆํ•œ ๊ฐœ์„  ์‚ฌํ•ญ์„ ๋ชจ๋‘ ํ•ฉ์น˜๊ณ  ํ•ฉ์นœ ํ›„์˜ ์˜ํ–ฅ์„ ํ‰๊ฐ€

โ—พ ์ œ์•ˆํ•œ ์ˆ˜์ • ์‚ฌํ•ญ์„ ๋ชจ๋‘ ํ•ฉ์นœ ๊ตฌ์กฐ๋ฅผ RoBERTa๋ผ๊ณ  ๋ถ€๋ฆ„ → Robustly optimized BERT approach

โ—พ ์œ„์—์„œ ์ œ์•ˆํ•œ ๊ฐœ์„  ์‚ฌํ•ญ ์™ธ์—๋„ ์ด์ „ ์—ฐ๊ตฌ์—์„œ ์ค‘์š”์„ฑ์ด ๊ฐ•์กฐ๋˜์ง€ ์•Š์€ ๋‘ ๊ฐ€์ง€ ์š”์†Œ 1) ์‚ฌ์ „ ํ›ˆ๋ จ์— ์‚ฌ์šฉ๋œ ๋ฐ์ดํ„ฐ ์ˆ˜์™€ 2) ํ•™์Šต ํšŸ์ˆ˜ ์กฐ์‚ฌ

 

๊ธฐ์กด BERT๋ชจ๋ธ, XLNet๊ณผ RoBERTa์˜ ๊ฒฐ๊ณผ ๋น„๊ต

 

โ—พ GLUE, SQuAD, RACE์—์„œ RoBERTa์˜ ๊ฒฐ๊ณผ ํ™•์ธ

 

Related Work

์ƒ๋žต

 

Conclusion

โ—พ BERT ๋ชจ๋ธ์„ ์‚ฌ์ „ํ•™์Šต ์‹œํ‚ฌ ๋•Œ design decisions์„ ๋‹ค์–‘ํ•˜๊ฒŒ ํ•˜๋ฉด์„œ ๋ชจ๋ธ ์„ฑ๋Šฅ ํ‰๊ฐ€ 

โ—พ 1) ํ•™์Šต ๋ฐ์ดํ„ฐ ์–‘๊ณผ ๋ฐฐ์น˜ ํฌ๊ธฐ๋ฅผ ๋Š˜๋ฆฌ๊ณ  ์˜ค๋ž˜ ํ•™์Šต์‹œํ‚ฌ ๋•Œ, 2) NSP ํƒœ์Šคํฌ๊ฐ€ ์—†์„ ๋•Œ, 3) ๊ธด ๋ฌธ์žฅ์œผ๋กœ ํ•™์Šต์‹œํ‚ฌ ๋•Œ, 4) ํ•™์Šต ๋ฐ์ดํ„ฐ์— ์ ์šฉ๋˜๋Š” ๋งˆ์Šคํ‚น ํŒจํ„ด์„ ๋‹ค์ด๋‚˜๋ฏนํ•˜๊ฒŒ ๋ณ€๊ฒฝํ–ˆ์„ ๋•Œ ์„ฑ๋Šฅ์ด ํ–ฅ์ƒ๋จ

โ—พ RoBERTa๋Š” GLUE๋กœ ์—ฌ๋Ÿฌ ํƒœ์Šคํฌ์— ๋Œ€ํ•œ ํŒŒ์ธํŠœ๋‹์„ ํ•˜์ง€ ์•Š๊ณ  SQuAD์— ๋Œ€ํ•œ ์ถ”๊ฐ€์ ์ธ ๋ฐ์ดํ„ฐ๋ฅผ ์“ฐ์ง€ ์•Š์•„๋„ GLUE, RACE, SQuAD์—์„œ SOTA ๋‹ฌ์„ฑ 

โ—พ ์œ„์˜ ๊ฒฐ๊ณผ๋“ค์€ design decisions์˜ ์ค‘์š”์„ฑ์ด ๊ฐ„๊ณผ๋˜์—ˆ๋‹ค๋Š” ๊ฒƒ์„ ๋งํ•ด์ฃผ๊ณ  ์žˆ์œผ๋ฉฐ BERT์˜ ์‚ฌ์ „ํ•™์Šต ๋ชฉํ‘œ๊ฐ€ ์—ฌ์ „ํžˆ ๊ฒฝ์Ÿ๋ ฅ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์—ฌ์คŒ