#์ค์ค๋ก ๊ณต๋ถํ๊ณ ๋ง๋ ๋ด์ฉ์ ๋๋ค.
BERT : Pre-training of Deep Bidirectional Transformers for Language Understanding
https://arxiv.org/abs/1810.04805 (์๋ฌธ)
์์ฐ์ด์ฒ๋ฆฌ์์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ด ๋๊ณ ์ค์ํ ๋ ผ๋ฌธ ์ค ํ๋์ธ ๋ฒํธ ๋ ผ๋ฌธ์ ๋๋ค.
์๋ฌธ์ ๋ฐํ์ผ๋ก ์ค๋ช ํ์์ผ๋ฉฐ, ์ดํด๋ฅผ ๋๊ธฐ ์ํ ๋ช ๊ฐ์ง ํ๊ตญ์ด ์์๋ฅผ ๋ฆฌ์์นํ์ฌ ๋ฃ์์ต๋๋ค!
์๋ง 5๋ถ๋ถ์ผ๋ก ๋๋์ด ์ค๋ช ํ ๊ฒ ๊ฐ์ต๋๋ค!
<๋ชฉ์ฐจ>
- Introduction & Related Works
- Pre-training
- Fine-tuning
- Experiment
- Conclusion + koBert
BERT๋ ๊ตฌ๊ธ์์ ๊ฐ๋ฐํ NLP ์ฌ์ ํ๋ จ ๋ชจ๋ธ๋ก, ํน์ ๋ถ์ผ์ ๊ตญํ๋ ๊ธฐ์ ์ด ์๋๋ผ ๋ชจ๋ ์์ฐ์ด ์ฒ๋ฆฌ ๋ถ์ผ์์ ์ข์ ์ฑ๋ฅ์ ๋ด๋ ๋ฒ์ฉ ์ธ์ด ๋ชจ๋ธ์ ๋๋ค. BERT๋ ํธ๋์คํฌ๋จธ์ ์๋ฐฉํฅ ์ธ์ฝ๋ ํํ(Bidirectional Encoder Representations from Transformers)์ ์ฝ์์ ๋๋ค. BERT์ T๊ฐ Transformer์ธ ๋งํผ, BERT๋ Transformer์ ๊ตฌ์กฐ์ ๊ฑฐ์ ํก์ฌํ์ง๋ง, ๊ธฐ์กด Transformer์ Encoder๋ง์ ํ์ฉํ๋ค๋ ์ ์์ ์ฐจ์ด๊ฐ ์์ต๋๋ค.
์ธ์ฝ๋๋ ์ ๋ ฅ์ ์ซ์๋ก ๋ฐ๊พธ๋ ๋ชจ๋ธ์ด๊ธฐ์ BERT๋ ๋ฌธ๋งฅ์ ์๋ฐฉํฅ์ผ๋ก ์ดํดํ์ฌ ์ซ์๋ก ๋ฐ๊พธ๋ ๋ฅ๋ฌ๋ ์ธ์ด ๋ชจ๋ธ์ด๋ผ๊ณ ํ ์ ์์ต๋๋ค.
BERT๋ Masked ์ธ์ด ๋ชจ๋ธ๋ง(MLM)์ ํ์ฉํ ๋น ์นธ ๋ง์ถ๊ธฐ, ๋ค์ ๋ฌธ์ฅ ์์ธก(NSP)์ด๋ผ๋ ์ฌ์ ํ๋ จ ๋ฐฉ๋ฒ์ ํตํด ์ ํ์ฑ์ ์ฌ๋ ธ์ต๋๋ค.
์ธ์ด ๋ชจ๋ธ์์ ์ฌ์ ํ์ต์ paraphrasing๊ณผ ๊ฐ์ sentence-level tasks์ ๊ฐ์ฒด๋ช ์ธ์, ์ง์ ์๋ต๊ณผ ๊ฐ์ token-level tasks์ ์์ด ํจ๊ณผ์ ์ธ ์ฑ๋ฅ์ ๋ณด์ ๋๋ค.
์ฌ์ ํ์ต์์ ์ธ์ด ํํ์ downstream task์ ์ ์ฉํ๋ ๋ฐฉ์์๋ feature-based ์ fine-tuning์ด๋ผ๋ ๋ ๊ฐ์ง ๋ฐฉ์์ด ์์ต๋๋ค.
๋จผ์ Feature-based ๋ฐฉ์์ ํน์ task๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ architecture๋ฅผ task์ ๋ง๊ฒ ๊ตฌ์ฑํ๊ณ ๊ฑฐ๊ธฐ์ ์ฌ์ ํ์ต๋ ์ธ์ด ํํ์ ์ถ๊ฐ์ ์ธ feature๋ก ํ์ฉํ๋ ๋ฐฉ๋ฒ์ผ๋ก, ๋ ๊ฐ์ ๋คํธ์ํฌ๋ฅผ ๋ถ์ฌ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ๋ํ์ ์ธ ๋ชจ๋ธ๋ก๋ ELMo๊ฐ ์์ต๋๋ค.
์๋ชจ๋ left-to-right๋ก ์ฝ๋ forward์ + right-to-left๋ก ์ฝ๋ backward LSTM์ ๊ฒฐํฉํ ์ธ์ด๋ชจ๋ธ์ ๋๋ค.
์ด๋ฌํ ์ ์์๋ ์๋ฐฉํฅ์ฑ์ ๊ฐ์ก๋ค๊ณ ํ ์ ์์ง๋ง, ๋จ์ํ ๋จ๋ฐฉํฅ๊ณผ ๋จ๋ฐฉํฅ์ ํฉ์ณค๊ธฐ์ ์์ ์๋ฐฉํฅ์ ๊ฐ์ง๋ค๊ณ ํ ์ ์์ต๋๋ค.
๊ทธ๋ฌ๋ ์๋ฐฉํฅ ์ธ์ด ๋ชจ๋ธ์ ๊ณ ํ๋ฆฌํฐ ์ธ์ดํํ์ด ๊ฐ๋ฅํด์ ธ ๋จ์ด ํน์ฑ์ด๋ ๋ฌธ๋งฅ์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ํํํ ์ ์๋ค๋ ์ฅ์ ์ด ์์ต๋๋ค.
์๋ฅผ ๋ค์ด play๋ผ๋ ๋จ์ด๋ Glove์์๋ playing,game,players์ ๊ฐ์ ์คํฌ์ธ ์ ๊ด๋ จ๋ ๋ด์ฉ์ผ๋ก ํ์ต๋์ง๋ง, ELMo์์๋ ์ฐ๊ทน์ playํ๋ค๋ผ๋ ์๋ฏธ์ ์คํฌ์ธ ๋ฅผ playํ๋ ๊ฒ, ๋ ๊ฐ์ง๊ฐ ์๋ก ๋ค๋ฅด๊ฒ ์๋ฒ ๋ฉ๋์ด ์๋ฏธ๋ฅผ ๊ตฌ๋ณํ๋ ๊ฒ์ด ๊ฐ๋ฅํฉ๋๋ค.
๋ค์์ผ๋ก Fine-tuning ๋ฐฉ์์ task์ ๋ง๊ฒ ์ต์ํ์ parameter๋ง์ ์ถ๊ฐํ๊ณ , pre-trained๋ parameter๋ค์ downstream task ํ์ต์ ํตํด ์กฐ๊ธ๋ง ๋ฐ๊ฟ์ฃผ๋ ๋ฐฉ์์ ๋๋ค. fine-tuning์ ๋ํ์ ์ธ ๋ชจ๋ธ๋ก๋ OpenAI GPT๊ฐ ์์ต๋๋ค.
GPT๋ 2018๋ OpenAI์์ ์ ์ํ ๋ชจ๋ธ๋ก, ๋ฌธ์ฅ ๋ด ๋จ์ด๋ค์ ์ผ์ชฝ์์ ์ค๋ฅธ์ชฝ์ผ๋ก ๋ณด๋ ๋จ๋ฐฉํฅ ์ธ์ดํ์ต ๋ชจ๋ธ์ ๋๋ค.
๋ฐ๋ผ์ GPT๋ ์ด์ ๋จ์ด๋ค์ด ์ฃผ์ด์ก์ ๋ ๋ค์ ๋จ์ด๊ฐ ๋ฌด์์ธ์ง ๋งํ๋ ๊ณผ์ ์์ ์ฌ์ ํ์ต๋ฉ๋๋ค.
Transformer๋ฅผ ์ฌ์ฉํ ๊ตฌ์กฐ์ด๊ธฐ๋ ํ์ง๋ง Encoder๋ฅผ ์ ์ธํ Decoder์ Masked self-attention์ ์ฌ์ฉํ๊ณ ์์ต๋๋ค.
์ด๋ n๊ฐ์ decoder๊ฐ ์์ฌ ์๋ ํํ์ธ๋ฐ ์ต์ํ์ ๊ตฌ์กฐ ๋ณํ๋ก task์ ์ ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ธ์ ๋๋ค.
๊ทธ๋ฆผ์ GPT์ BERT์ ํ๋ฆฌํธ๋ ์ธ ๋ฐฉ์์ ๋์์ ์ผ๋ก ๋ํ๋ธ ๊ฒ์ธ๋ฐ, GPT๋ ์ด์ ๋จ์ด๋ค์ด ์ฃผ์ด์ก์ ๋ ๋ค์ ๋จ์ด๊ฐ ๋ฌด์์ธ์ง ๋ง์ถ๋ ๊ณผ์ ์์ ํ๋ฆฌํธ๋ ์ธ์ ํ๊ณ ๋ฌธ์ฅ์ ์์๋ถํฐ ๋จ๋ฐฉํฅ์ผ๋ก ๊ณ์ฐํฉ๋๋ค.
๊ทธ๋ฌ๋ BERT๋ ๋ฌธ์ฅ ์ค๊ฐ์ ๋น์นธ์ ๋ง๋ค๊ณ ๋น์นธ์ ์ด๋ค ๋จ์ด๊ฐ ์ ์ ํ์ง ๋ง์ถ๋ ๊ณผ์ ์์ ํ๋ฆฌํธ๋ ์ธ์ ํ๋ฉฐ ๋น์นธ ์๋ค ๋ฌธ๋งฅ์ ๋ชจ๋ ์ดํผ๋ ์๋ฐฉํฅ ๋ชจ๋ธ์ ๋๋ค. ๋ฐ๋ผ์ GPT๋ ๋ฌธ์ฅ ์์ฑ์, BERT๋ ๋ฌธ์ฅ์ ์๋ฏธ๋ฅผ ์ถ์ถํ๋๋ฐ ๊ฐ์ ์ ์ง๋๊ณ ์์ต๋๋ค.
GPT๋ ์ด์ ๋จ์ด๋ค๋ง ์ฐธ๊ณ ํ ์ ์๊ธฐ ๋๋ฌธ์ ‘๊ฑฐ๊ธฐ' ๋ฅผ ๋ง์ถ๊ธฐ ์ํด์ ์ด์ ์ ‘์ด์ ',’์นดํ',’๊ฐ์์ด’๋ผ๋ ๋จ์ด๋ง ์ฐธ๊ณ ํ ์ ์๊ณ
๋ค์ ์๋ ๋๋จธ์ง ๋จ์ด๋ค์ ๋ง์คํน์ฒ๋ฆฌ ํด์ค๋๋ค.
BERT๋ ‘๊ฑฐ๊ธฐ'๋ฅผ ๋ง์ถ๊ธฐ ์ํด์ MASK๋ก ๋ง๋ค์ด์ฃผ๊ณ ๋ง์คํฌ ํ ํฐ ์๋ค ๋ฌธ๋งฅ์ธ ‘์ด์ ',’์นดํ',’๊ฐ์์ด',’์ฌ๋',’๋ง๋๋ผ'๋ฅผ ์ฐธ๊ณ ํ์ฌ ์์ธกํฉ๋๋ค.
์ธ๊ธํ๋ ์ธ๊ฐ์ง ์ธ์ด๋ชจ๋ธ์ ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํด๋ณด๋ฉด ์ด ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ๊ตฌ์กฐ์ ์ธ ์ฐจ์ด๋ฅผ ๋ณผ ์ ์์ต๋๋ค.
ELMo๋ ๋ ๋ฆฝ๋ Left-to-Right ์ธ์ด๋ชจ๋ธ๊ณผ Right-to-Left ์ธ์ด๋ชจ๋ธ์ ๊ฐ๊ฐ ํ๋ จ์์ผ concatํจ์ผ๋ก์จ ์์ ์๋ฐฉํฅ ์ธ์ด ๋ชจ๋ธ์ ๋ง๋ค์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ GPT๋ Left-to-Right์ ๋จ๋ฐฉํฅ ์ธ์ด๋ชจ๋ธ์ ๋๋ค.
๊ทธ๋ฆผ์์์ ๊ฐ์ด ์ด์ ๋จ์ด๋ค๋ก๋ถํฐ๋ง ๋ค์ ๋จ์ด๋ฅผ ์์ธกํ ์ ์์ต๋๋ค.
GPT์ ๋ฌ๋ฆฌ BERT๋ ํ์ดํ๊ฐ ์๋ฐฉํฅ์ผ๋ก ๋ป์ด๋๊ฐ๋ ๋ชจ์ต์ ๋ณผ ์ ์๋๋ฐ, ์ด๋ Masked ์ธ์ด ๋ชจ๋ธ์ ํตํด ๊น์ ์๋ฐฉํญ์ฑ์ ์ป์๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋ ผ๋ฌธ์์๋ ๊น์ ์๋ฐฉํฅ์ฑ์ผ๋ก ๋ฌธ์ฅ์ ์๋ฏธ๋ฅผ ์ถ์ถํ๋๋ฐ ๊ฐ์ ์ด ์๋ BERT๋ฅผ ํตํด ๋ฌธ๋งฅ ์ดํด๊ฐ ์ค์ํ ์ง์ ์๋ต๊ณผ ๊ฐ์ NLP task์์ ์ฑ๋ฅ์ ๋์์ต๋๋ค.
๋ํ ์ด ๋ ผ๋ฌธ์์๋ Fine-tuning ๊ธฐ๋ฐ ์์ฃผ๋ก ์์ฑ๋์์ผ๋ ํ์ ํ๋ Feature-based์์๋ ์ข์ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์ฌ์ฃผ๋ฉฐ, ์ต์ํ์ ํ๋ผ๋ฏธํฐ ์์ ๋ง์ผ๋ก ๋๋ถ๋ถ NLP ๊ณผ์ ์์ ์ข์ ์ฑ๋ฅ์ ๋ณด์์ต๋๋ค.์ด์ ์ ์ธ์ด ๋ชจ๋ธ๊ณผ ๋ฌ๋ฆฌ, BERT๋ ๋ชจ๋ layer์์ ์๋ฐฉํฅ์ผ๋ก context๋ฅผ ์ฝ๊ธฐ์ ๋ฌธ๋งฅ์ ์ ๋๋ก ์ฝ์ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค.์ค์ ๋ก BERT๋ 11๊ฐ NLP task์์ SOTA๋ฅผ ๋ฌ์ฑํ๋ค๋ ์ ์์ ์ฐ์ํ ๋ชจ๋ธ์ ๋๋ค