Transformer
210911~210924
Attention Is All You Need
Abstract
์ ๋งํ transduction ๋ชจ๋ธ๋ค์ ์ธ์ฝ๋์ ๋์ฝ๋๋ฅผ ํฌํจํ๋ ๋ณต์กํ ๋ฐ๋ณต๊ตฌ์กฐ๋ ํฉ์ฑ๊ณฑ ๋คํธ์ํฌ์ ๊ธฐ๋ฐ์ ๋๊ณ ์๋ค. ๊ทธ ์ค ๊ฐ์ฅ ์ข์ ์ฑ๋ฅ์ ๋ด๋ ๋ชจ๋ธ์ attention ๋ฉ์ปค๋์ฆ์ ๊ฐ์ง๊ณ ์๋ ์ธ์ฝ๋์ ๋์ฝ๋๋ก ์ด๋ฃจ์ด์ ธ์๋ค. Transformer๋ ๊ธฐ์กด์ ๊ธฐ๋ฐ์ ๋์ง ์๊ณ ์ค๋ก์ง attention ๋ฉ์ปค๋์ฆ์๋ง ๊ธฐ๋ฐ์ ๋๋ ๊ฐ๋จํ ๋คํธ์ํฌ ๋ชจ๋ธ์ด๋ค. Transformer๋ ๊ธฐ์กด ๋ชจ๋ธ๋ณด๋ค ์ง์ ์ผ๋ก ๋ ์ฐ์ํ๊ณ ๋ณ๋ ฌ์์ ์ด ํจ์ฌ ์ข์ผ๋ฉฐ ํ์ตํ๋๋ฐ ์ ์ ์๊ฐ์ด ์์๋๋ค. ์ฐ๋ฆฌ ๋ชจ๋ธ์ WMT 2014 ์์ด-๋ ์ผ์ด ๋ฒ์ญ ํ์คํฌ์์ 28.4 BLEU ์ ์๋ฅผ ๊ธฐ๋กํ๋ค. ์ด ์ ์๋ ๊ธฐ์กด์ ์์๋ธ์ ์ ์ฉํ ๋ชจ๋ธ์ ์ต๊ณ ์ ์๋ฅผ 2์ ์ด๋ ์ฐจ์ด๋๊ฒ ๋ฐ์ด ๋์ ์ ์์ด๋ค. WMT 2014 ์์ด-ํ๋์ค ๋ฒ์ญ ํ์คํฌ์์๋ ์ญ๋ ์ต๊ณ ์์ค์ธ 41.0์ BLEU score๋ฅผ ๋ฌ์ฑํ๋ค. ์ด๋ 3.5์ผ๋์ 8๊ฐ์ GPU๋ง์ ์ฌ์ฉํด์ ์ป์ ๊ฒฐ๊ณผ๋ก ์ฐ๋ฆฌ ๋ ผ๋ฌธ์ ์๊ฐํ ๋ชจ๋ธ์ ์์ฃผ ์ผ๋ถ๋ถ์ ํด๋นํ๋ค.
๋ง์ง๋ง ๋ฌธ์ฅ์์ literature๋ ๋ฌธํ์ผ๋ก ์ฐ์์ผ๋ฉฐ "a small ~" ์ ๋ช ์ฌ๊ตฌ๊ฐ "for 3.5 days on eight GPUs" ๋ผ๋ ์ ์น์ฌ๊ตฌ๋ฅผ ๊พธ๋ฉฐ์ค๋ค.
transduction
ํ๊ตญ์ด๋ก ๋ณ์ญํ๊ธฐ์๋ ๋ณํ, ์ ํ, ์ ์ด, ์ ๋ ๋ฑ์ ์๋ฏธ๋ก ์ฌ์ฉ๋์ด ๋ฒ์ญํ๊ธฐ ์ฌ์ด ๋จ์ด๋ ์๋๋ค. transduce๋ ๋ฌด์ธ๊ฐ๋ฅผ ๋ค๋ฅธ ํํ๋ก ๋ณํํ๋ ๊ฒ์ ์๋ฏธํ๋ค. ์ฌ๊ธฐ์๋ ์ฃผ์ด์ง ํน์ ์์ (ํ์ต ๋ฐ์ดํฐ)๋ฅผ ์ด์ฉํด ๋ค๋ฅธ ํน์ ์์ (ํ๊ฐ ๋ฐ์ดํฐ)๋ฅผ ์์ธกํ๋ ๊ฒ์ผ๋ก ์ดํดํ ์ ์๋ค.
attention ๋ฉ์ปค๋์ฆ
RNN๊ณผ LSTM์ ๋ํ ์ดํด๊ฐ ์์ผ๋ฉด ๋ ์ฝ๊ฒ ์ดํดํ ์ ์๋ค. RNN์์ Sequence๋ฅผ ๊ณ์ ์ ๋ ฅ๋ฐ๋ค๋ณด๋ฉด ๊ณผ๊ฑฐ ์ ๋ณด๊ฐ ์ ์ ํฌ๋ฏธํด์ง๊ฒ ๋๋๋ฐ, ์ด ๋ LSTM์ด ๊ณ ์๋์๋ค. ๊ธฐ์กด์ RNN๋ณด๋ค๋ ๊ฐ์ ๋์์ง๋ง ์๋ฒฝํ Long Term Dependency๋ฅผ ํด๊ฒฐํ์ง ๋ชปํ๊ณ ์ด๋ฅผ ๊ฐ์ ํ๊ธฐ ์ํ ๋ฉ์ปค๋์ฆ์ด attention ์ด๋ค. ํน์ time step์์ ์ธ์ฝ๋์ ์ ์ฒด ์ ๋ ฅ ๋ฌธ์ฅ์ ๋ค์ ํ๋ฒ ์ฐธ๊ณ ํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ด๋ค.
WMT 2014๋ ํต๊ณํ์ ๊ธฐ๊ณ ๋ฒ์ญ์ ๋ํ 90๊ฐ์ ์ํฌ์ต์ ์ ๋ฌด์์ ์ฌ์ฉ๋ ๋ฐ์ดํฐ์ ์ด๋ค. ์ํฌ์ต์ 4๊ฐ์ task๋ก ์ด๋ฃจ์ด์ ธ์๋ค.
news translation task
quality estimation task
metrics task
medical text translation task
1 Introduction
RNN, LSTM, GRU๋ ๊ธฐ๊ณ ๋ฒ์ญ์ด๋ ์ธ์ด ๋ชจ๋ธ๋ง๊ณผ ๊ฐ์ transduction ๋ฌธ์ ์ ์ํ์ค ๋ชจ๋ธ๋ง์ ๋ํด ๊ฐ์ฅ ์ ํด๊ฒฐํ ์ ์๋ ์ต์ ๋ชจ๋ธ๋ค์ด๋ค. Recurrent ๋ชจ๋ธ๋ค์ input๊ณผ output์ ์์น์ ๋ฐ๋ผ ๊ณ์ฐ์ ํ๊ณ ๊ฐ ์์น์์ input๊ณผ ์ด์ hidden state ๋ฅผ ๊ฐ์ง๊ณ ํ์ฌ์ hidden state ๋ฅผ ๋ง๋ค์ด๋ธ๋ค. ๊ทผ๋ฐ, ์ด๋ฌํ ๊ณผ์ ์ ์ํ์ค์ ๊ธธ์ด๊ฐ ๊ธธ์ด์ง๋ฉด ๊ธธ์ด์ง์๋ก ๋ฉ๋ชจ๋ฆฌ ๋ฌธ์ ๊ฐ ๋ฐ์ํด์ ๋ฐฐ์น ์ฌ์ด์ฆ๋ ์ ์ ์์์ง๊ฒ ๋๊ณ ๋ณ๋ ฌํ๋ ํ ์ ์๊ฒ๋๋ ๋ฌธ์ ์ ์ด ์๋ค. ์ต๊ทผ ์ฐ๊ตฌ๋ค์ ์ด๋ฌํ ๋ฌธ์ ์ ๋ํด ๋ด๋ถ ์ธ์๋ฅผ ์กฐ์ํ๊ณ ์กฐ๊ฑด๋ถ ๊ณ์ฐ์ ํ๋ฉด์ ๊ณ์ฐ ํจ์จ์ ๋์๊ณ ๊ทธ๋ฌ๋ฉด์ ์ ์ ๋ชจ๋ธ์ ์ฑ๋ฅ๋ ์ฆ๊ฐํ์ง๋ง ๋ณธ์ง์ ์ธ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ง๋ ๋ชปํ๋ค.
Attention mecahnisms์ input๊ณผ output์ ๊ฑฐ๋ฆฌ์ ๋ํ ์์กด๋๋ฅผ ๊ณ ๋ คํ์ง ์๋๋ค๋ผ๋ ์ ์์ sequence modeling๊ณผ transduction models์ ๋ค์ํ task๋ค์ ์์ด ์ค๋๋ ฅ์๋ ๋ชจ๋ธ์ด๋์๋ค.
๋ ผ๋ฌธ์์ ์ ์ํ๋ Transformer๋ ์๋์ ์ผ๋ก recurrence๋ฅผ ํํผํ๋ค. ๊ทธ๋์ ์ ์ฒด์ ์ผ๋ก attention mechanism์ ์์กดํด์ input๊ณผ output ์ฌ์ด์ ์๋ ์ ๋ฐ์ ์ธ ์์กด์ฑ์ ํด์ํ๋ค. ๊ทธ๋์ Transformer๋ ๋ณ๋ ฌํ์ ๋ ์ ํฉํ๊ณ ๋ฒ์ญ ๊ธฐ์ ์ ์์ด์ ์กฐ๊ธ์ ํ์ต์ผ๋ก๋ ๋ ์ข์ ํ์ง์ ๊ฒฐ๊ณผ๋ฌผ์ ์ค ์ ์๋ค.
2 Background
์ฐ์์ ์ธ ๊ณ์ฐ์ ์ค์ด๋ ค๋ ์๋๋ Extended Neural GPU, ByteNet ๊ทธ๋ฆฌ๊ณ ConvS2S์์ ์์ํ๋๋ฐ, ๋ชจ๋ ๋ชจ๋ input๊ณผ output์ hidden layer์์ ๋ณ๋ ฌ์ ์ผ๋ก ์ฒ๋ฆฌํ๋ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๋ค. ์ด ๋ชจ๋ธ๋ค์ ์ฐ์ฐ์ ํ ๋ ์์์ ์ ๋ ฅ๊ณผ ์ถ๋ ฅ์ ์ ํธ๋ฅผ ํ์๋ก ํ๋๋ฐ, ์ด ์ฐ์ฐ์ ์๊ฐ ์ ๋ ฅ๊ณผ ์ถ๋ ฅ์ ๊ฑฐ๋ฆฌ๊ฐ ๋ฉ์ด์ง๋ฉด ๋ฉ์ด์ง์๋ก ConvS2S์์๋ ์ ํ์ ์ผ๋ก, ByteNet์์๋ log์ ์ผ๋ก ์ฆ๊ฐํ๋ค. ์ด๋ฌํ ์ฐ์ฐ์ ์ฆ๊ฐ๋ ๊ฐ ์ง์ ์์ ์ ๋ ฅ๊ณผ ์ถ๋ ฅ์ ๋ํ ์์กด์ฑ์ ํ์ตํ๊ธฐ๊ฐ ์ด๋ ค์์ง๋ ์ด์ ๊ฐ ๋์๋ค. ๋ฐ๋ฉด์ ํธ๋์คํฌ๋จธ๋ ์์๋ฒ์ ๊ณ์ฐ๋ง์ด ์๊ตฌ๋๋ค. ๋น๋ก ์ดํ ์ ๊ฐ์คํฉ์ ํ๊ท ๋์ผ๋ก์จ ์ ํจํ ์ ๋ณด์ ๊ฐ์๋ก ์ด์ด์ง์ง๋ง, ์ดํ ์ดํด๋ณผ Multi-Head Attention์์ ์ด๋ฌํ ๋จ์ ์ ํด์ํ ์ ์๋ค.
Self-attention์ ๋๋๋ก intra-attention์ผ๋ก๋ ๋ถ๋ฆฌ๋ฉฐ, ์ด๋ค ์ํ์ค์ ์๋ ํน์ง์ ๊ณ์ฐํ๊ธฐ ์ํด ์ด ์ํ์ค์ ์๋ก๋ค๋ฅธ ์์๋ค์ ๊ด๊ณ์ํค๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ๋ ํด ๋ฅ๋ ฅ, ๊ฐ์ ์์ฝ, ๋ฌธ๋งฅ์ ํจ์์ ๊ด๋ จ์๋ ๋ฌธ์ฅ ์ถ์ถ๋ฑ์, ๋ค์ํ task์์ Self-attention์ ์ฑ๊ณต์ ์ผ๋ก ์ฌ์ฉ๋์ด์๋ค.
์ฒ์๋ถํฐ ๋๊น์ง ๋ฉ๋ชจ๋ฆฌ ๋คํธ์ํฌ๋ ์ํ์ค์ ๋ฐ๋ณต ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ๋ ๋์ attention์ ๋ฐ๋ณต ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ๊ณ ๋จ์ผ ์ธ์ด ์ฒด๊ณ์ ์ง์์๋ต๊ณผ ์ธ์ด ๋ชจ๋ธ๋ง task์์ ์ข์ ์ฑ๋ฅ์ ๋ด์๋ค.
๋ด๊ฐ ์๋ ํ, ํธ๋์คํฌ๋จธ๋ ๊ธฐ์กด์ RNN์ด๋ CNN์ ๋ฐ๋ณต ์ํ์ค ๊ตฌ์กฐ๋ ๋ฒ๋ฆฌ๊ณ ์ค๋ก์ง input๊ณผ output์ผ๋ก ๊ณ์ฐ๋ self-attention์๋ง ์ ์ ์ผ๋ก ์์กดํ๋ ์ต์ด์ ๋ณํ๋ชจ๋ธ์ด๋ค. ์ด์ด์ง๋ ์์์์๋ Transformer๋ฅผ ์๊ฐํ ๊ฒ์ด๋ฉฐ, self-attention์ ๋ํ ์์ธํ ์๊ฐ์ ์ด์ ๋ํ ์ฅ์ ์ ์ด์ผ๊ธฐํ ๊ฒ์ด๋ค.
3 Model Architecture
๋๋ถ๋ถ์ ๊ณ ์ฑ๋ฅ ๋ณํ ๋ชจ๋ธ์ ์ธ์ฝ๋-๋์ฝ๋ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๊ณ ์๋ค. x๋ก ํํ๋๋ input sequence๋ ์ฐ์์ ์ธ z๋ก ํํ๋๋ค. ๋์ฝ๋๋ z๋ฅผ ๊ฐ์ง๊ณ output์ ํด๋นํ๋ y๋ฅผ ์์ฑํ๋ฉฐ ์ด๋ฌํ ๋ณํ์ ํ๋ฒ์ ์ผ์ด๋๋ค. ์ด ๋ณํ ๊ณผ์ ์์๋ auto-regressive*ํ ๋ฐฉ์์ผ๋ก ์ด๋ฃจ์ด์ง๋๋ฐ, ์ด์ ์ ์์ฑ๋ output์ input์ผ๋ก ์ ๋ ฅํด์ ๋ค์ ๋จ์ด๋ฅผ ์์ฑํ ์ ์๋๋ก ํ๋ค.
auto-regressive : ์๊ธฐ ์์ ์ ์ ๋ ฅ์ผ๋ก ํ์ฌ ์๊ธฐ ์์ ์ ์์ธกํ๋ ๋ชจ๋ธ์ ์๋ฏธํ๋ค.
ํธ๋์คํฌ๋จธ๋ ์ธ์ฝ๋์ ๋์ฝ๋์์ self-ateention๊ณผ fully connected layers๊ฐ ์์ฌ์๋ ๊ตฌ์กฐ๋ก ์ด๋ฃจ์ด์ ธ์๋ค.
3.1 Encoder and Decoder Stacks
Enocder
์ธ์ฝ๋๋ 6๊ฐ์ ๋์ผํ ๋ ์ด์ด๋ก ์ด๋ฃจ์ด์ ธ ์๋ค. ๊ฐ๊ฐ์ ๋ ์ด์ด๋ ๋ ๊ฐ์ sub layer๋ฅผ ๊ฐ์ง๋๋ฐ, ์ฒซ๋ฒ์งธ๋ multi-head self attention์ด๊ณ ๋๋ฒ์งธ๋ ๊ฐ๋จํ fully connected feed-forward network ์ด๋ค. ์ด ๋ ๋ ์ด์ด์ residual connection๊ณผ layer normalization์ ์ ์ฉํ๊ฒ ๋๋ค. ๋ค์ ๋งํ๋ฉด LayerNorm(x + Sublayer(x))
๋ก ๊ณ์ฐ์ด ๋๋ค. ์ด ๋ ์์ฐจ๋ฅผ ์ด์ฉํ๋ ค๋ฉด ๋ชจ๋ ์๋ธ ๋ ์ด์ด๊ฐ 512์ ์ฐจ์์ ๊ฒฐ๊ณผ๋ฌผ๋ก ๋ฐํํด์ผ ํ๋ค.
feed-forward network๋ ์๋ฐฉํฅ ์ ๊ฒฝ๋ง์ ์๋ฏธํ๋ค. ๋ ธ๋ ๊ฐ์ ์ฐ๊ฒฐ์ด ์ํ์ ํ์ฑํ์ง ์๋ ์ ๊ฒฝ๋ง์ด๋ฉฐ ์ด๋ RNN๊ณผ๋ ์ฐจ์ด๊ฐ ์๋ ๊ฐ๋ ์ด๋ค.
residual connection์ ResNet์์ ๊ณ ์๋ ๊ฐ๋ ์ผ๋ก layer์์ ๋์จ output์๋ค๊ฐ input์ ๋ ฅ๊ฐ์ ๋ํด์ฃผ๋ฉด ์ฑ๋ฅ๊ณผ ์์ ์ฑ์ด ์ฆ๊ฐํ๋ค.
layer normalization์ ์ฃผ์ด์ง ์ ๋ ฅ๋ฒกํฐ์์ ๊ฐ ์ฐจ์์ ๊ธฐ์ค(=์ธ๋ก๋ฐฉํฅ์ผ๋ก)์ผ๋ก normalization ํ๋ ๊ฒ์ ์๋ฏธํ๋ค. RNN์์ ์ด๋ฌํ ์์ ์ hidden state์์์ ๋ณ๋์ฑ์ ์์ ํ์ํฌ ์ ์๋ ๋งค์ฐ ํจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ์ผ๋ก ์๋ ค์ ธ์๋ค.
์ฌ๊ธฐ์ 512๋ Transformer๊ฐ ์ ํ ์๋ฒ ๋ฉ ์ฐจ์ ์์ด๋ค.
Decoder
๋์ฝ๋ ์ญ์ 6๊ฐ์ ๋์ผํ ๋ ์ด์ด๋ก ์ด๋ฃจ์ด์ ธ ์๋ค. ๋ ๊ฐ์ ์๋ธ ๋ ์ด์ด๋ก ์ด๋ฃจ์ด์ ธ ์๋ ๊ตฌ์กฐ์์ encoder์์ ๋ฐ์ output์ ๊ฐ์ง๊ณ multi-head attention์ ์ํํ๋ ์ธ๋ฒ์งธ ์๋ธ ๋ ์ด์ด๊ฐ ์ถ๊ฐ๋์ด์๋ค. ์ธ์ฝ๋์ ๋น์ทํ ์ ์ ์์ฐจ์ LN์ ์ด์ฉํ๋ค๋ ๊ฒ์ด๋ค. ๋ค๋ฅธ ์ ์ ๋์ฝ๋์์๋ ๋ค์ชฝ์ ์กด์ฌํ๋ ์์น์์ ์ค๋ attention์ ์์ง ์๋ ์ ์ด๋ค. ์ด๊ฒ์ masking์ด๋ผ๊ณ ํ๋๋ฐ, ๊ฐ๊ฐ์ ์์น์์ ๋์ค๋ ๊ฒฐ๊ณผ ์๋ฒ ๋ฉ ๋ฒกํฐ๋ฅผ i๋ฒ์งธ ๋จ๊ณ์์ ์ค๋ก์ง i๋ฒ์งธ ์ด์ ์ ์ ๋ณด๋ง ๊ฐ์ง๊ณ ์์ธกํ ์ ์๋๋ก ํ๋ค.
3.2 Attention
attention์ด๋ ๊ฒฐ๊ณผ๋ฅผ ์์ธกํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ query ๋ฒกํฐ์ key-value ๋ฒกํฐ ์์ ๊ด๊ณ๋ผ๊ณ ๋ณผ ์ ์๋ค. ๊ฒฐ๊ณผ๋ value ๋ฒกํฐ์ ๊ฐ์คํฉ์ผ๋ก ๊ณ์ฐ์ด ๋๋๋ฐ, ์ด๋์ ๊ฐ์คํฉ์ผ๋ก ์ฌ์ฉ๋๋ ๊ฐ์ค์น๋ ์ฟผ๋ฆฌ๋ฒกํฐ์ ๊ทธ์ ์์ํ๋ ํค์ ์ฐ๊ด์ฑ์ ๊ตฌํ๋ ํจ์์ ์ํด ๊ณ์ฐ๋ ๊ฐ์ด๋ค.
3.2.1 Scaled Dot-Product Attention
์ด๋ฌํ attention์ Scaled Dot-Product Attention
์ผ๋ก๋ ๋ถ๋ฅผ ์ ์๋ค. ๊ฐ๊ฐ์ ์
๋ ฅ์ dk์ ์ฐจ์์ ๊ฐ์ง ์ฟผ๋ฆฌ๋ฒกํฐ์ ํค๋ฒกํฐ ๊ทธ๋ฆฌ๊ณ dv์ ์ฐจ์์ ๊ฐ์ง ๋ฐธ๋ฅ๋ฒกํฐ๋ก ์ด๋ฃจ์ด์ง๋ค. ํ๋์ ์ฟผ๋ฆฌ ๋ฒกํฐ๋ ๋ชจ๋ ํค๋ฒกํฐ๋ฅผ ๋ด์ ํ๋ฉฐ ์ด ๊ฐ์ ๋ก ๋๋ ์ค ๋ค softmax ํจ์๋ฅผ ๊ฑฐ์ณ์ ๊ฐ์ค์น๋ฅผ ๊ตฌํ๊ฒ ๋๋ค.
(์ด์ ์ ํ๋์ ์ฟผ๋ฆฌ ๋ฒกํฐ์ ๋ชจ๋ ํค๋ฒกํฐ๋ฅผ ๋ด์ ํ๋ค๊ณ ํ์ง๋ง) ์ค์ ๋ก๋ ๋ชจ๋ ์ฟผ๋ฆฌ๋ฒกํฐ์ ๋ํ ๋ชจ๋ ํค๋ฒกํฐ์ ๋ด์ ์ ํ๋ฒ์ ๊ณ์ฐํ๊ฒ ๋๋ค. ์ด ๋ ์ฟผ๋ฆฌ ๋ฒกํฐ๋ฅผ ํ๋ ฌ Q, ํค ๋ฒกํฐ์ ๋ฐธ๋ฅ ๋ฒกํฐ๋ฅผ ํ๋ ฌ K์ V๋ก ํํํ๋ค. ์ด๋ฌํ ํ๋ ฌ ๊ณ์ฐ์ ๋ํ ์์ ๋ค์๊ณผ ๊ฐ๋ค.
์ฌ๊ธฐ์๋ ์ฃผ๋ก ๋ ๊ฐ์ attention ํจ์๋ฅผ ์ฌ์ฉํ๋๋ฐ, additive attention๊ณผ dot-product attention์ด๋ค. ์ฌ๊ธฐ์ ์ฌ์ฉํ๋ dot-product attention์ ๋ก ๋๋ ์ฃผ๋ ๊ณผ์ ์ ์ ์ธํ๋ฉด ๊ธฐ์กด dot-product attention ๋ฐฉ๋ฒ๊ณผ ์์ ํ ๋์ผํ๋ค. additive attention์ ํ ๊ฐ์ ์๋์ธต์ ๊ฐ์ง ์ ๊ฒฝ๋ง์ ์ฌ์ฉํ ๋ ์ฐ๊ด์ฑ์ ๊ตฌํ๋ ํจ์๋ฅผ ์ฌ์ฉํ๋ค. ์ด ๋ attention ๋ฐฉ๋ฒ์ ์ด๋ก ์ ์ผ๋ก ๋ณต์ก๋๋ ๋น์ทํ์ง๋ง ์ค์ ๋ก๋ dot-product attention์ด ํจ์ฌ ๋น ๋ฅด๊ณ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ๋ ๋ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ๋ค. ์๋ํ๋ฉด ์ด dot-product ์ฐ์ฐ์ ์ต์ ํ ๋ ํ๋ ฌ ๊ณ์ฐ ์ฝ๋๋ก ๋ชจ๋ธ์ ๊ตฌํํ๊ธฐ ๋๋ฌธ์ด๋ค.
์ฐจ์ dk๊ฐ ์์ ๋๋ dot-product์ additive๋ ๋น์ทํ ์ฑ๋ฅ์ ๋ณด์ด์ง๋ง dk ๊ฐ์ด ์ปค์ง๋ฉด scaling์ด ์๋ค๋ ์กฐ๊ฑดํ์ additive attention์ด ํจ์ฌ ์ข์ ์ฑ๋ฅ์ ๋ธ๋ค. dk๊ฐ ์ปค์ง์๋ก dot product์ ๊ฒฐ๊ณผ๊ฐ๋ ์ปค์ง๋ ๊ฒฝํฅ์ด ์์๋ค. ์ด๋ก์ธํด softmax ํจ์๋ฅผ ๊ฑฐ์น๋ฉด์ (๊ฐ๋ค์ด ๋๋ฌดํฌ๋ค๋ณด๋, softmax๋ฅผ ๊ฑฐ์น๋ฉด ํน์ ๊ฐ์ ๋น์จ์ด ๋ชฐ๋ฆฌ๊ฒ๋๊ณ ๊ทธ๋ฌ๋ฉด์ ๋ค๋ฅธ ๊ฐ๋ค์ด) ๊ทน๋๋ก ์์ gradient๊ฐ์ ๊ฐ์ง๊ฒ ๋์๋ค. ์ด๋ฌํ ๋ถ์์ฉ์ ํด์ํ๊ธฐ ์ํด ๋ก dot product์ ๊ฒฐ๊ณผ๊ฐ์ ๋๋ ์ฃผ๊ฒ ๋์๋ค.
3.2.2 Multi-Head Attention
์๋ฒ ๋ฉ ๋ฒกํฐ์ ์ฐจ์์ด ์ธ ํค์ ๋ฐธ๋ฅ ๊ทธ๋ฆฌ๊ณ ์ฟผ๋ฆฌ๋ฒกํฐ๋ฅผ single attenion์ ์ํํ๋ ๊ฒ๋ณด๋ค ์ ํ์ ์ผ๋ก ์ด๋ค์ ์ฌ์ํด์ ์ป์ด์ง ์ฌ๋ฌ๊ฐ์ ์๋ก ๋ค๋ฅธ๊ฐ๋ค์ ๊ฐ์ง๊ณ ์ฌ๋ฌ๋ฒ์ attention์ ๊ฐ๊ฐ ์ํํ๋ ๊ฒ์ด ๋ ์ข๋ค๋ ์ฌ์ค์ ์์๋๋ค. ๊ฐ๊ฐ์ ์ฌ์๋ ๋ฒกํฐ๋ค์ ๊ฐ์ง๊ณ ๋ณ๋ ฌ์ ์ผ๋ก attention์ ์ํํ๋ฉด ์ฐจ์ dv์ ๊ฒฐ๊ณผ๋ค์ ์ป๊ฒ๋๋ค. ์ด๋ค์ ๋ค์ concat ํ๊ณ ํ๋ฒ ๋ ์ฌ์ํด์ ์ต์ข ์ ์ผ๋ก ์ป๋ ๊ฐ์ ๊ฒฐ๊ณผ๋ฒกํฐ๋ก ํ๋ค.
Multi-head attention์ ๊ฐ๊ฐ์ (single attention ๊ณต๊ฐ์์ ์ป์ ์ ์๋ )์๋ก ๋ค๋ฅธ ํน์ง์ ๊ฐ์ง ์ ๋ณด๋ค์ ๊ฒฐํฉํ ์ ์๋๋ก ํ๋ค. single attention์์๋ ์ฌ๋ฌ ํน์ง์ ์ ๋ณด๋ค์ ํ๊ท ๋ด๋ฒ๋ฆฌ๊ฒ ๋๋ฉด์ ์ฌ๋ฌ ์ ๋ณด๋ฅผ ์ป๋ ๊ฒ์ ๋ฐฉ์งํ๋ค.
๊ฐ๊ฐ์ ๊ฐ์ค์น๋ ์ค์ ๊ณต๊ฐ์ด๋ฉฐ Q, K, V ๋ฒกํฐ๋ ๋ชจ๋ ์ ํฌ๊ธฐ๋ฅผ ๊ฐ์ง๋ค.
์ฌ๊ธฐ์๋ 8๊ฐ์ ๋ณ๋ ฌ attention layer๋ฅผ ์ ์ฉํ๋ค. ๊ฐ๊ฐ์ layer๋ ๊ธฐ์กด ์์ 8๋ฑ๋ถ ๋ 64๊ฐ์ ์ฐจ์์ ์ฌ์ฉํ๋ค. ๊ฐ๊ฐ์ head์์๋ ๊ฐ์ํ ์ฐจ์์ผ๋ก ์งํ๋์ง๋ง ์ด ์ฐ์ฐ๋์ ๋น์ทํ๋ค.
3.2.3 Applications of Attention in our Model
ํธ๋์คํฌ๋จธ๋ 3๊ฐ์ง์ ๋ค๋ฅธ ๋ฐฉ์์ผ๋ก multi-head attention์ ์ฌ์ฉํ๋ค.
encoder-decoder attention layer์์๋ ์ด์ ์ ๋์ฝ๋ ๋ ์ด์ด๋ก๋ถํฐ ์ฟผ๋ฆฌ๋ฅผ ์ป๊ณ ํค์ ๋ฐธ๋ฅ ๋ฒกํฐ๋ ์ธ์ฝ๋์ ์ต์ข output์์ ๋ถํฐ ๋ฐ๋๋ค. ์ด๋ ๋์ฝ๋์ ๋ชจ๋ ์์น์์ input sequence์ ๋ชจ๋ position์ ์ ๊ทผํ ์ ์๋๋กํ๋ค. ์ด๋ seq2seq์ attention mechanism๊ณผ ๋์ผํ๋ค.
encoder๋ self attention layer๋ฅผ ๊ฐ์ง๊ณ ์๋๋ฐ, ์ฌ๊ธฐ์ ์ฌ์ฉํ๋ queries, keys, values vector๋ ๋ชจ๋ ๊ฐ์ ์์น์์ ์์ฑ๋๋ค. ํนํ ์ด๋ ์ด์ ์ encoder์์ ์ ๋ฌ๋ฐ์ผ๋ฉฐ, ๊ฐ๊ฐ์ position์์ ๋ชจ๋ position์ผ๋ก ์ ๊ทผ ๊ฐ๋ฅํ๋ค.
์ด์ ๋น์ทํ๊ฒ decoder์ self attention layer๋ ๊ฐ๊ฐ์ position์์ ํด๋น position์ ํฌํจํ position๊น์ง ์ ๊ทผํ ์ ์๊ฒ๋๋ค. auto-regressiveํ ํน์ฑ์ ์ ์งํ๊ธฐ ์ํด ๋์ฝ๋์์๋ ์ผ์ชฝ์ผ๋ก ์ ๋ฌ๋๋ ์ ๋ณด์ ํ๋ฆ์ ๋ง์ ํ์๊ฐ ์๋ค. ์ด๋ฅผ ์ํด -inf ๊ฐ์ ๊ฐ์ง๊ณ attention์ scaled dot product๋ฅผ ๊ณ์ฐํ๋ค.์ด ๊ฐ๋ค์ ํ์ softmax๋ฅผ ๊ฑฐ์น๊ฒ ๋๋ฉด (-inf ๊ฐ์ ๊ฐ์ง๋ค๋ณด๋ 0์ ๊ฐ๊น์ด ๊ฐ์ด ๋๋ฏ๋ก) ๋ง์คํน์ด ๋๋ค.
3.3 Position-wise Feed-Forward Networks
attention layer์ feed forward network๋ ๊ฐ๊ฐ์ position์์ ๋ ๋ฆฝ์ ์ด๊ณ ๊ฐ๋ณ์ ์ผ๋ก ์ด๋ฃจ์ด์ง๋ค. ๊ทธ๋ฆฌ๊ณ ์ด ๋ ์ด์ด๋ ๋ ๊ฐ์ ์ ํ๋ณํ์ผ๋ก ์ด๋ฃจ์ด์ ธ์์ผ๋ฉฐ ReLU ํ์ฑํ ํจ์๋ฅผ ๊ทธ ์ฌ์ด์ ์ฌ์ฉํ๋ค.
์ ํ๋ณํ์ ๊ฐ๊ฐ์ ์๋ก๋ค๋ฅธ position์์ ๊ฐ์ ๋ณํ์ผ๋ก ์ ์ฉ๋๋ ๋ฐ๋ฉด์ ์ธต๊ฐ์์๋ ์๋ก ๋ค๋ฅธ ํ๋ผ๋ฏธํฐ๋ฅผ ์ฌ์ฉํ๋ค.. ์ด๊ฒ์ ๋ ๋ค๋ฅด๊ฒ ์ด์ผ๊ธฐํ๋ฉด input๊ณผ output์ด ์ฐจ์์ 512์ด๊ณ hidden layer์ ์ฐจ์์ 2048์ธ ์ปค๋ ์ฌ์ด์ฆ๊ฐ 1์ธ ๋๊ฐ์ cnn ๋ ์ด์ด๊ฐ ์๋ค๊ณ ํ ๋ ๋ ๋ฒ์ convolution์ ๊ฑฐ์น๋ ๊ฒ์ด๋ค.
3.4 Embeddings and Softmax
๋ค๋ฅธ ์ํ์ค ๋ชจ๋ธ๊ณผ ๋น์ทํ ์ ์ ์ธํ๊ณผ ์์ํ ํ ํฐ๋ค์ ๋ฒกํฐ๋ก ๋ฐ๊พธ๊ธฐ ์ํ ์๋ฒ ๋ฉ์ ํ์ตํ๋ค๋ ๊ฒ์ด๋ค. ๋, ๋์ฝ๋์ ์์ํ์ ๊ฐ์ง๊ณ ๋ค์ ํ ํฐ์ ๋ํ ํ๋ฅ ์ ๊ตฌํ๋๋ฐ ์ ํ ๋ณํ๊ณผ ์ํํธ๋งฅ์ค๋ฅผ ์ฌ์ฉํ๋ค. ๋ ๊ฐ์ ์๋ฒ ๋ฉ ๋ ์ด์ด์ ์ํํธ๋งฅ์ค ์ ์ ์ฌ์ฉํ๋ ์ ํ ๋ณํ ์ฌ์ด์๋ ๋์ผํ ํ๋ผ๋ฏธํฐ๋ฅผ ์ฌ์ฉํ๋ค. ๋ค๋ง, ์๋ฒ ๋ฉ ๋ ์ด์ด์์๋ ์ด ๊ฐ์ค์น๋ฅผ ๋ก ๋๋์ด ์ฃผ๋ ์ฐจ์ด๊ฐ ์๋ค.
3.5 Positional Encoding
ํธ๋์คํฌ๋จธ๋ ๋ฐ๋ณต ๊ตฌ์กฐ๋, ํฉ์ฑ๊ณฑ ๊ตฌ์กฐ๋ ์๊ธฐ ๋๋ฌธ์ ์ํ์ค์ ์์๋ฅผ ๊ณ ๋ คํ๊ธฐ ์ํด์๋ ๊ฐ ํ ํฐ๋ค์ ์์น์ ๋ํ ์ ๋ณด๋ฅผ ์๋์ ์ผ๋ก๋ ์ ๋์ ์ผ๋ก๋ ์ ๊ณตํด์ค์ผ๋ง ํ๋ค. ์ด๋ฅผ ์ํด positional encodings๋ฅผ ๊ฐ๊ฐ์ ์ธ์ฝ๋์ ๋์ฝ๋์ ์ฒซ input embedding์ ์ถ๊ฐํด์ฃผ์๋ค. positional encoding์ ์ฐจ์๋ ๋ชจ๋ธ์ ์๋ฒ ๋ฉ ์ฐจ์๊ณผ ๋์ผํด์ ๋์ ํฉ์ฐ์ฐ์ด ๊ฐ๋ฅํ๋ค. positional encoding ํ์ตํ๊ฑฐ๋ ๊ณ ์ ํ๋ ๋ง์ ๋ฐฉ๋ฒ์ด ์๋๋ฐ ์ฌ๊ธฐ์๋ ์ฃผ๊ธฐ๊ฐ ๋ค๋ฅธ sine๊ณผ cosine ํจ์๋ฅผ ์ฌ์ฉํ๋ค.
pos๋ (์ํ์ค์์ ํ ํฐ์) ์์น์ด๊ณ i๋ ์ฐจ์์ด๋ค. p.e์ ๊ฐ๊ฐ์ ์ฐจ์์ ์ ํํ์ ๋งคํ๋๋ค. (์ด ์ ํํ์) ์ฃผ๊ธฐ๋ ๊ธฐํํ์ ์ผ๋ก 2pi ๋ถํฐ 10000pi ๊น์ง ์งํํ๋ค. ์ด๋ค ๋ณ์ k์ ๋ํด์ ๋ ์์ ์ ํ์ ์ผ๋ก ๋ํ๋ผ ์ ์๊ธฐ ๋๋ฌธ์ ์๋์ ์ธ ์์น์์์ ํ์ต์ด ์ ๋ ๊ฒ์ด๋ผ๊ณ ๊ฐ์ ํด์ ์ ํํ๋ฅผ ์ฌ์ฉํ๋ค.
์ ํํ๋ ์ผ์ ํ ์ฃผ๊ธฐ๋ฅผ ๊ฐ์ง ์ฃผ๊ธฐํจ์์ด๋ค.
sine๊ณผ cosine ๋์ ์ positional embedding์ ํ์ตํ๋ ๋ฐฉ๋ฒ์ ์คํํด๋ดค๋๋ฐ, ๋ ๋ค ๋น์ทํ ๊ฒฐ๊ณผ๋ฅผ ๋๋ค. ๊ทธ๋์ ๋ ์ค ์ ํํ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ผ๋ก ๊ฒฐ์ ํ๋๋ฐ, ์ด์ ๋ ์ ํํ๋ก position์ ๊ฒฐ์ ํ์ ๋, ํ์ต ๋จ๊ณ์์๋ ๋ณด์ง๋ชปํ ์ํ์ค์ ๊ธธ์ด๋ณด๋ค ๋ ๊ธด ๊ธธ์ด์ ๋ํด์๋ ๋ ์ ์ธ์ฝ(=์์ ๋ฒ์์์ ๊ทธ ๋ฐ์ ๋ฒ์๋ฅผ ์ถ์ธกํ๋ ๊ฒ)ํ ์ ์์๊ธฐ ๋๋ฌธ์ด๋ค.
4 Why Self-Attention
(recurrent์ convolutional) ์์๋ ํ๋์ ๋ณ์ x๋ก ํํ๋๋ ์ํ์ค๊ฐ ์ฐ๋ฆฌ๊ฐ ๋ง์ด ์ฐ๋ ์ํ์ค ๋ณํ ์ธ์ฝ๋๋ ๋์ฝ๋์ hidden layer๋ฅผ ๊ฑฐ์น๋ฉด์ ๋์ผํ ๊ธธ์ด๋ฅผ ๊ฐ์ง ๋ค๋ฅธ ๋ณ์ z๋ก ๋งคํ๋๋ค. ์ด๋ฒ ์ฅ์์๋ self-attention layer์ ๋ค์ํ ์ธก๋ฉด์ recurrent and convolutional layer์ ๋น๊ตํ ๊ฒ์ด๋ค. self-attention์ ์ฌ์ฉํด์ผ ํ๋ 3๊ฐ์ง ์ด์ ๋ฅผ ์์๋ณด์.
์ฒซ๋ฒ์งธ๋ ๋ ์ด์ด๊ฐ ์ ์ฒด ์ฐ์ฐ๋์ด๊ณ ๋๋ฒ์งธ๋ ์ ์ ์ฐ์ฐ์ผ๋ก๋ ๊ณ์ฐ๋ ์ ์๋, ๋ณ๋ ฌํ๋ฅผ ์ฐ์ฐ์ ์ ์ฉํ๋ ๊ฒ์ด๋ค.
์ธ๋ฒ์งธ๋ network์์ ๊ธธ์ด๊ฐ ๊ธธ์์ ๋ ์๊ธฐ๋ ์์กด์ฑ(=๊ด๊ณ)์ ๋ํ ๊ธธ์ด์ด๋ค. ๊ธด ๋ฒ์์ ์์กด์ฑ์ ํ์ตํ๋ ๊ฒ์ ๋ง์ ๋ฌธ์ฅ์ ๋ฒ์ญํ๋ ์ผ์์ ๋งค์ฐ ์ด๋ ต๋ค. ์ด๋ฌํ ์์กด์ฑ์ ํ์ตํ๋ ๊ฒ์ ๋คํธ์ํฌ๋ฅผ ์๋ฐฉํฅ ๋๋ ์ญ๋ฐฉํฅ์ผ๋ก ์ด๋ํ ๋ ์ง๋๊ฐ๋ ๊ฒฝ๋ก์ ๊ธธ์ด์ ์ํฅ์ ๋ฐ๊ฒ๋๋ค. input๊ณผ output๊ฐ์ ๊ฑฐ๋ฆฌ๊ฐ ์งง์์๋ก ์ด๋ฌํ ์์กด์ฑ์ ํ์ตํ๊ธฐ๊ฐ ์ฌ์์ง๋ค. ๊ทธ๋์ ์ฌ๋ฌ ์ ํ์ layer์ ๋ํด์ input๊ณผ output ์ฌ์ด์ ๊ฑฐ๋ฆฌ๊ฐ ์ต๋์ผ๋๋ฅผ ๋น๊ตํด๋ณด๋ ค๊ณ ํ๋ค.
์ด์ ์ ํ1 ์์ ์ธ๊ธํ๋ฏ์ด self-attention layer๋ ๋ชจ๋ ์ํ์ค์ ์์น์ ์ฐ๊ฒฐ๋์ด์๋๋ฐ, ์์ฐจ์ ์ผ๋ก ์ฐ์ฐ์ด ์คํ๋ ๋ ์์๋ฒ์ ํ์๋ง ์ฐ์ฐ์ด ์ด๋ฃจ์ด์ง๋ ๋ฐ๋ฉด์ RNN์ O(n) ๋งํผ์ ์ฐ์ฐ์ด ์ด๋ฃจ์ด์ง๋ค. ์ด๋ฌํ ์๊ฐ๋ณต์ก๋์ ๊ด์ ์์ self-attention layer๋ recurrent layer๋ณด๋ค ํจ์ฌ ๋น ๋ฅด๋ค. ๋ณดํต ๋ฌธ์ฅ์ ๊ธธ์ด n์ ์๋ฒ ๋ฉ ์ฐจ์ d๋ณด๋ค ์๊ธฐ ๋ง๋ จ์ด๋ค. ์ด๋ฌํ ์๋ฒ ๋ฉ ์ฐจ์์ word ๊ธฐ๋ฐ์ผ๋ก ๋๋ byte-pair ๊ธฐ๋ฐ์ผ๋ก ํน์ง์ ๋ํ๋ ๋ ์ฌ์ฉํ๋ฉฐ ์ต์ ๋ชจ๋ธ์์๋ ๋ฌธ์ฅ์ ๊ธฐ๋ฐ์ผ๋ก ์ฌ์ฉํ๋ค. ๋ฌธ์ฅ์ด ์์ฃผ ๊ธธ๋๋ ์ฐ์ฐ ์ฑ๋ฅ์ ๋์ด๊ธฐ ์ํด์ self attention์ r
์ ํฌ๊ธฐ๋ฅผ ๊ฐ์ง๋ (๊ทธ๋์ ์์ชฝ์ผ๋ก r๋งํผ์ position์ ๋ํด์๋ง) attention๋ง์ ๊ณ ๋ คํ๋ restricted self attention์ผ๋ก ์ฌ์ฉํ๊ฒ ๋๋ค. ์ด๋ฌํ ๋ฐฉ๋ฒ์ maximum path length๋ฅผ ( O(1) ์์ ) O(n/r)๋ก ์ฆ๊ฐ์ํจ๋ค. ์ด๋ฌํ ์ ๊ทผ๋ฒ์ ๋ํด์๋ ์ข ๋ ์ฐ๊ตฌํ ๊ณํ์ด๋ค.
seq ๊ธธ์ด n๋ณด๋ค ์ปค๋ width k๊ฐ ์์ convolutional layer๋ ๋ชจ๋ input๊ณผ output์ด ์ฐ๊ฒฐ๋์ด์์ง ์๋ค. ์ผ๋ฐ์ ์ธ convolutional layer๋ O(n/k), dilated convolution layer๋ O(logk(n)) ๋งํผ์ด ์์๋๋๋ฐ ์ด ๋ length of path๋ ์ ์ ์ฆ๊ฐํ๊ฒ ๋๋ค. Convolution layer๋ ์ผ๋ฐ์ ์ผ๋ก kernel๋๋ฌธ์ recurrent layer๋ณด๋ค ํจ์ฌ ๋น์ฉ์ด ๋ง์ด๋ ๋ค. Separable convolution ๊ฐ์ ๊ฒฝ์ฐ๋ ์๋นํ ์๊ฐ๋ณต์ก๋๋ฅผ ๊ฐ์์ํฌ ์ ์๊ธดํ๋ k์ n์ด ๋์ผํ๋ค๋ฉด ์ด๋ T.F ๋ชจ๋ธ์์ ์ทจํ ๋ณต์ก๋์ ๋์ผํ๋ค.
๊ทธ๋ ์ง๋ง T.F๋ ์ฌ๊ธฐ์ ๋ ์ข์์ ์ด ์๋ค. self-attention์ด ํจ์ฌ ํด์์ ์ธ ๊ฒฐ๊ณผ๋ฅผ ์ค ์ ์๋ค๋ ๊ฒ. T.F์ attention ๋ถํฌ๋ฅผ ๋ถ์ํด๋ดค๋๋ฐ ์ด๋ ๋ถ๋ก(=appendix)์์ ์๊ฐํ๊ณ ๋ค๋ฃฌ๋ค. ๊ฐ๊ฐ์ attention์ ์ฌ๋ฌ๊ฐ์ง ํ์คํฌ๋ฅผ ์ํํ๋ฉด์ ๋ถ๋ช ํ๊ฒ ํ์ตํ ๋ฟ๋ง ์๋๋ผ, ๋ฌธ์ฅ์์ ์๋ฏธ๋ก ์ ๊ตฌ์กฐ๋ ๋ฌธ๋ฒ์ ์ธ ๊ตฌ์กฐ์ ๊ด๋ จํด์ ํ์ตํ์์ด ๋ํ๋๋ค.
dilated convolution์ reverse ์ฐ์ฐ์ ํด์ ๊ธฐ์กด ์ด๋ฏธ์ง๋ฅผ scale upํ ๋ ์ฌ์ฉํ๋ค.
5 Training
๋ชจ๋ธ์ ๋ํ ์คํ์ ์ค๋ช ํ๋ค.
5.1 Training Data and Batching
450๋ง๊ฐ์ WMT 2014 ์์ด-๋ ์ผ์ด ๋ฐ์ดํฐ์ ์ ํ์ตํ๋ค. ๋ฌธ์ฅ๋ค์ ๋ฐ์ดํธ ํ์ด ์ธ์ฝ๋ฉ์ ์ฌ์ฉํ๊ณ 37,000๊ฐ์ ํ ํฐ์ ์ฌ์ฉํ๋ค. ์์ด-ํ๋์ค์ด๋ 360๋ง๊ฐ์ ๋ฐ์ดํฐ์ ์ ํ์ตํ๊ณ 32,000๊ฐ์ ํ ํฐ์ ์ฌ์ฉํ๋ค. ๋ฐฐ์น์๋ค์ ์ ์ ํ ๋ฌธ์ฅ ๊ธธ์ด๋ฅผ ๊ฐ์ง๊ณ ๋ฐฐ์นํํ์ผ๋ฉฐ ๊ฐ๊ฐ์ ํ์ต๋ง๋ค 25,000๊ฐ์ ์ ๋ ฅ ํ ํฐ๊ณผ 25,000๊ฐ์ ์ถ๋ ฅ ํ ํฐ์ผ๋ก ๊ตฌ์ฑ๋์๋ค.
์๋ง valid set ์ฌ์ฉ ๋๋ dropout์ ํตํด 25,000๊ฐ์ ํ ํฐ์ผ๋ก๋ง ๊ตฌ์ฑ์ด ๋๊ฒ ์๋๊น ์ถ๋ค.
5.2 Hardward and Schedule
์ด ๋ชจ๋ธ์ 8๊ฐ์ NVIDIA P100 GPU๋ฅผ ์ฌ์ฉํ๋ค. ๋ ผ๋ฌธ์์ ์ธ๊ธํ ํ๋ผ๋ฏธํฐ๋ฅผ ์ฌ์ฉํ๊ณ , ํ step๋ง๋ค ๋๋ต 0.4์ด๊ฐ ๊ฑธ๋ ธ๋ค. 12์๊ฐ๋์ 10๋ง ์คํ ์ผ๋ก ํ์ตํ๋ค. ๋น๊ต์ ์ฌ์ด์ฆ๊ฐ ํฐ ๋ชจ๋ธ์ ํ step๋ง๋ค 1์ด๊ฐ ๊ฑธ๋ ธ๊ณ 3.5์ผ๋์ 30๋ง ์คํ ์ผ๋ก ํ์ตํ๋ค.
5.3 Optimizer
Adam optimizer๋ฅผ ์ฌ์ฉํ๊ณ b1 = 0.9, b2 =0.98, e = 10^-9 ๋ฅผ ์ฌ์ฉํ๋ค.ํ์ต๋ฅ ๊ณต์์ ๋ค์๊ณผ ๊ฐ๋ค.
์ด๋ฐ warm up ๋จ๊ณ์์๋ ์ ํ์ ์ผ๋ก ํ์ต๋ฅ ์ด ์ฆ๊ฐํ๋ค๊ฐ ์ดํ ๋ฃจํธ ์ญํจ์์ ๋น์จ๋ก ๊ฐ์ํ๋ค. warm up step์ 4000์ ์ฌ์ฉํ๋ค.
5.4 Regularization
3๊ฐ์ง ๊ท์ ํ๋ฅผ ์ ์ฉํ๋ค.
3๊ฐ์ง๋ผ๊ณ ํด๋๊ณ ๋ณธ๋ฌธ์๋ 2๊ฐ์ง๋ฐ์ ์๋ค.
Residual Dropout
๊ฐ๊ฐ์ ์๋ธ ๋ ์ด์ด๋ง๋ค add์ normalize ์ด์ ์ ๋๋์์์ ์ ์ฉํ๋ค. ๋, ์ธ์ฝ๋์ ๋์ฝ๋์ ์๋ ์๋ฒ ๋ฉ ๋ฒกํฐ์ ํฌ์ง์ ๋ ์๋ฒ ๋ฉ๋ฒกํฐ๋ฅผ ํฉํ ์ดํ์๋ ์ ์ฉํ๋ค. dropout ๋น์จ์ 0.1
Label Smoothing
ํ์ต ๋์, e = 0.1์ ๋ผ๋ฒจ ์ค๋ฌด๋ฉ์ ์ ์ฉํ๋ค. ์ด๊ฒ์ perplexity๋ฅผ ๊ฐ์์ํค๊ณ ๋ชจ๋ธ์ด ๋ ๋ถํ์คํ๊ฒ ํ์ตํ๊ฒ ํ์ง๋ง ๊ทธ๋์ ์ ํ๋์ BLEU score๋ฅผ ํฅ์์ํจ๋ค
6 Results
6.1 Machine Translation
WMT 2014 ์์ด-๋ ์ผ์ด ๋ฒ์ญ์์ ๋ํ ํธ๋์คํฌ๋จธ ๋ชจ๋ธ์ด ์ด์ ์ ์ต๊ณ ๊ธฐ๋ก์ 2.0 BLEU ์ฐจ์ด๋ฅผ ๋ด๋ฉฐ 28.4์ ์ ๋ฌ์ฑํ๋ค. ๋ชจ๋ธ์ ์ค์ ์ Table 3์ ์์ฑ๋์ด์๋ค. 3.5์ผ ๋์ 8๊ฐ์ GPU๋ฅผ ๊ฐ์ง๊ณ ํ์ตํ๋ค. ๊ฒจ์ฐ ์ด์ ๋๋ง ํด๋ ์ด์ ์ ์ฑ๋ฅ๋ค์ ๋ฅ๊ฐํ ๊ฒ์ด๋ค.
2014 ์์ด-๋ถ์ด ๋ฒ์ญ์์๋ 41.0์ BLEU score๋ฅผ ๋ด๋ฉฐ ๋ชจ๋ ๋ชจ๋ธ์ ์ ์ณค๋ค. ์ด๋ ๊ธฐ์กด ๋ชจ๋ธ์ด ํ์ตํ๋ ๊ฒ์ 1/4๋ ์๋๋ ์คํ์ผ๋ก๋ ๋ฅ๊ฐํ ๊ฒ์ด๋ค. ์ด ๋ dropout์ 0.1 ๋์ 0.3์ ์ฌ์ฉํ๋ค.
๊ธฐ๋ณธ์ ์ผ๋ก 5๊ฐ์ ์ฒดํฌํฌ์ธํธ๋ฅผ ํ๊ท ๋ธ ๋จ์ผ ๋ชจ๋ธ์ ์ฌ์ฉํ๋ค. ์ด ์ฒดํฌํฌ์ธํธ๋ 10๋ถ๋ง๋ค ๊ธฐ๋ก๋๋ค. ๋ํ ๋ชจ๋ธ์ 20๊ฐ์ ์ฒดํฌํฌ์ธํธ๋ฅผ ํ๊ท ๋๋ค. ๋, 4๊ฐ์ beam size์ a=0.6์ penalty์ beam search๋ฅผ ์ด์ฉํ๋ค. ์ด ํ์ดํผ ํ๋ผ๋ฏธํฐ๋ ์คํ์ ์ผ๋ก ๊ฒฐ์ ๋์๋ค. ์ถ๋ก ์ ์ป์๋ output์ ๊ธธ์ด๋ input๋ณด๋ค 50 ์ ๋ ๋ง๊ฒ ์ฐจ์ด๊ฐ ๋ ์๋ ์์์ง๋ง ๋๋ถ๋ถ ๋น์ทํ๋ค.
๊ฒฐ๊ณผ์ ๋ํ ์์ฝ๊ณผ ๋ค๋ฅธ ๋ชจ๋ธ๊ณผ์ ๋น๊ต๋ Table 2์์ ํ์ธํ ์ ์๋ค. ๋ถ๋ ์์์ ์ฐ์ฐ์ ํฌ๊ธฐ๋ ํ์ต ์๊ฐ๊ณผ GPU์ ๊ฐ์ ๊ทธ๋ฆฌ๊ณ ๊ฐ๊ฐ์ GPU์์ ์ป์ ์ค์ ์ ํ๋์ ๋ํ ์ถ์ ๊ฐ์ ๊ณฑํด์ ์ป์๋ค.
6.2 Model Variations
ํธ๋์คํฌ๋จธ์ ๋ค๋ฅธ ๊ธฐ๋ฅ์ ํ๊ฐํ๊ธฐ ์ํด์ ์ ํ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ๋ชจ๋ธ์ ๋ฐ๊ฟจ๋ค. ์์ด-๋ ์ผ์ด ๋ฒ์ญ์ ๋ํด newstest2013 ๋ฐ์ดํฐ ์ ์ ์ฌ์ฉํ๋ค. ๋, ์ด์ ์ ๋งํ beam search๋ฅผ ์ ์ฉํ์ง๋ง ์ฒดํฌํฌ์ธํธ๋ฅผ ํ๊ท ๋ด์ง๋ ์์๋ค. ์ด์ ๋ํ ๊ฒฐ๊ณผ๋ Table 3 ์์ ๋ณผ ์ ์๋ค.
Table 3์ Bํ์์ attention size๋ฅผ ์ค์ด๋ ๊ฒ์ ๋ชจ๋ธ์ ์ฑ๋ฅ์ ํด์น๋ค๋ ๊ฒ์ ๋ฐ๊ฒฌํ๋ค. ์ด๋ ๋จ์ด๋ค๊ฐ์ ์ฐ๊ด์ฑ์ด ๋จ์ํ์ง ์๊ณ ๋งค์ฐ ์ ๊ตํ๊ธฐ ๋๋ฌธ์ ๋ด์ ์ด์ธ์ ์ข ๋ ํจ์จ์ ์ธ ํจ์๋ฅผ ํ์๋ก ํ๋ค๊ณ ๋ณผ ์ ์๋ค. ๋ ๋์๊ฐ C์ Dํ์์๋ ์์ํ๋ฏ์ด ๋ชจ๋ธ์ด ์ปค์ง์๋ก ์ฑ๋ฅ์ด ์ข์๊ณ dropout ์ญ์ ๊ณผ์ ํฉ์ ๋ฐฉ์งํด์คฌ๋ค. Eํ์์๋ ์ ํํ ์์น ์๋ฒ ๋ฉ์ ํ์ต๋ ์์น ์๋ฒ ๋ฉ์ผ๋ก ๋ฐ๊ฟ๋ดค๋๋ฐ ๋งค์ฐ ๋น์ทํ๋ค.
7 Conclusion
์ด ๋ ผ๋ฌธ์์ ์ฐ๋ฆฌ๋ ํธ๋์ค ํฌ๋จธ๋ฅผ ์๊ฐํ๋ค. ์ด๋ ์ดํ ์ ์ ์ ๋ฐ์ ์ผ๋ก ์ฌ์ฉํ๊ณ ๊ธฐ์กด์ ์ธ์ฝ๋-๋์ฝ๋ ๊ตฌ์กฐ์์ ํํ ์ฌ์ฉํ๋ recurrent layer๋ฅผ multi-head self-attention์ผ๋ก ๋์ฒดํ๋ค.
๋ฒ์ญ task ์์๋ rnn์ด๋ cnn์ ์ฌ์ฉํ๋ ๊ธฐ์กด ๋ชจ๋ธ๋ณด๋ค ๋๋๋ฌ์ง๊ฒ ๋นจ๋ฆฌ ํ์ต๋์๋ค. WMT 2014 ์์ด-๋ ์ผ์ด์ ์์ด-๋ถ์ด ๋ฒ์ญ task ์์๋ ์ ๊ธฐ๋ก์ ์ธ์ ๋ค.
attention์ ๊ธฐ๋ฐ์ผ๋กํ ๋ชจ๋ธ์ ๋ฏธ๋๊ฐ ๊ธฐ๋๋๊ณ ๋ค๋ฅธ ๋ถ์ผ์์๋ ์ด๊ฒ์ ์ ์ฉํ ๊ฒ์ด๋ค. ๋, ํธ๋์คํฌ๋จธ์ ์ ์ถ๋ ฅ ๊ตฌ์กฐ๋ฅผ text๋ฟ๋ง ์๋๋ผ ์ด๋ฏธ์ง๋ ์์ฑ, ์์๊ณผ ๊ฐ์ ํฐ ๋ฐ์ดํฐ๋ฅผ ํจ์จ์ ์ผ๋ก ๋ค๋ฃจ๊ธฐ ์ํด local ๋๋ restrictedํ attention mechanism์ ์ฐ๊ตฌํ ๊ณํ์ด๋ค.
์ฐ๋ฆฌ๊ฐ ํ์ต๊ณผ ํ๊ฐ๋ฅผ ์ํด ์ฌ์ฉํ ์ฝ๋๋ https://github.com/tensorflow/tensor2tensor. ์์ ์ฌ์ฉํ ์ ์๋ค.
Last updated
Was this helpful?