์ด๋ฒ์ฃผ๋ถํฐ ํ ์ฃผ์ ํ๋์ ๋ ผ๋ฌธ์ ์ฝ์ด๋ณด๋ ค๊ณ ํ๋ค. ๋ ์ํ ์ ์๊ฒ ์ง ? ^_^
๐ฌ ๋ ผ๋ฌธ ๋ด์ฉ๊ณผ ์ด ๊ธ์ ๋ํ ์๊ฒฌ ๊ณต์ , ์คํ์ ์ง์ ํ์ํฉ๋๋ค. ํธํ๊ฒ ๋๊ธ ๋จ๊ฒจ์ฃผ์ธ์ !
์๋ฌธ : https://arxiv.org/pdf/1706.03762.pdf
Abstract
dominantํ sequence transduction ๋ชจ๋ธ๋ค์ ๋ณต์กํ RNN/CNN ๊ตฌ์กฐ
→ Attention ๋งค์ปค๋์ฆ๋ง์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ์๋กญ๊ณ ๊ฐ๋จํ ๊ตฌ์กฐ์ Transformer ์ ์
2022. 3. 4 ์ถ๊ฐ
Transformer ์์ฝ : ํ์ต๊ณผ ๋ณ๋ ฌํ๊ฐ ์ฝ๊ณ attention ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ์ฌ ์๋๋ฅผ ๋์ธ ๋ชจ๋ธ
Introduction
Attention ๋งค์ปค๋์ฆ์ ์ ๋ ฅ, ์ถ๋ ฅ ๊ฐ ๊ฑฐ๋ฆฌ์ ์๊ด์์ด modeling์ ํ ์ ์๊ฒ ํ๋ค๋ ์ ์์ sequence modeling๊ณผ transduction ๋ชจ๋ธ์ ํต์ฌ์ ์ธ ๋ถ๋ถ์ด์ง๋ง ์ฌ์ ํ recurrent network์ ํจ๊ป ์ฌ์ฉ๋๋ ๊ฒฝ์ฐ๊ฐ ์ข ์ข ์์๊ธฐ ๋๋ฌธ์ ๋ ผ๋ฌธ ์ ์๋ค์ recurrent network ์์ด attention ๋งค์ปค๋์ฆ์๋ง ์์กดํ๋ ๋ชจ๋ธ ๊ตฌ์กฐ๋ฅผ ์ ์ํ๋ค.
Background
Self-attention์ด๋ ์ํ์ค์ representation์ ๊ณ์ฐํ๊ธฐ ์ํด ํ๋์ ์ํ์ค์์ ์๋ก ๋ค๋ฅธ ์์น์ ์๋ ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ attention์ ์ํํ๋ ๊ณผ์ ์ด๋ค. (์๋ก ๋ค๋ฅธ ๋ฌธ์ฅ์ attention์ ์ ์ฉํ๋ ๊ฒ ์๋๋ค ์ด๋ฐ ์๋ฏธ๋ก ํด์ํจ)
Model Architecture
๊ฒฝ์๋ ฅ ์๋ neural sequence transduction ๋ชจ๋ธ๋ค์ ๋๋ถ๋ถ ์ธ์ฝ๋-๋์ฝ๋ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๊ณ ์๋ค.
- ์ธ์ฝ๋ : ์ ๋ ฅ์ผ๋ก ๋ค์ด์ค๋ symbol representations sequence (x1, …, xn)์ ์ฐ์์ ์ธ representations sequence (z1, …, zn)์ ๋งคํํ๋ ์ญํ (1~n์ ์๋์ฒจ์)
- ๋์ฝ๋ : z๊ฐ ์ฃผ์ด์ง๋ฉด symbol์ output sequence (y1, …, yn)์ ์ถ๋ ฅ
** ๋์ฝ๋ ๋ถ๋ถ ๋ด์ฉ์ the decoder then generates an output sequence (y1, ..., ym) of symbols one element at a time. ์ด๋ผ๋ ๋ฌธ์ฅ์ด ์๋๋ฐ one element at a time์ ์๋ฏธ๋ฅผ ์์ง ๋ชป ์ดํดํ๋ค ใ
Transformer๋ ์ธ์ฝ๋-๋์ฝ๋ ๊ตฌ์กฐ๋ฅผ ์ ๋ฐ์ ์ผ๋ก ๋ฐ๋ฅด๋๋ฐ ์ธ์ฝ๋์ ๋์ฝ๋์์ ๋ชจ๋ stacked self-attention, point-wise fully connected layers๋ฅผ ์ฌ์ฉํ๋ค.
1. Transformer encoder & Transformer decoder
1) Transformer encoder
- ๋ ๊ฐ์ sub-layers(multi-head self-attention, wise-fully connected feed forward)๋ก ๊ตฌ์ฑ๋ ๋ ์ด์ด(๊ทธ๋ฆผ ํ์ ๋ถ๋ถ) 6๊ฐ๋ก ์ด๋ฃจ์ด์ ธ ์๋ค.
- ๋ ๊ฐ์ sub-layer์ residual connection๊ณผ layer normalization์ ์ ์ฉํ๋ค.
- ๊ฐ sub-layer์ ์ถ๋ ฅ์ LayerNorm(x+Sublayer(x))์ด๊ณ Sublayer(x)๋ sub-layer ์์ฒด์ ์ํด ๊ตฌํ๋ ํจ์์ด๋ค.
- residual connection์ ์ฉ์ดํ๊ฒ ํ๊ธฐ ์ํด embedding layers๋ฅผ ํฌํจํ ๋ชจ๋ธ์ ๋ชจ๋ sub-layer์ ์ถ๋ ฅ ์ฐจ์์ 512๋ก ์ค์ ํ๋ค.
2) Transformer decoder
- ์ธ ๊ฐ์ sub-layersub-layers(masked multi-head attention, multi-head self-attention, wise-fully connected feed forward)๋ก ๊ตฌ์ฑ๋ ๋ ์ด์ด 6๊ฐ๋ก ์ด๋ฃจ์ด์ ธ ์๋ค.
- ์ดํ์ ์์น์ ์ ๊ทผํ์ง ๋ชปํ๊ฒ self-attention layer๋ฅผ ์์ ํ๋ค. → position i๋ฅผ ์์ธกํ ๋ i๋ณด๋ค ์์ ์์น์ ์๋ ๊ฒ์๋ง ์์กดํ๋๋ก
** i๊ฐ ์ฒ ์ ํ๋ํ๋์ ์ธ๋ฑ์ค๋ฅผ ์๋ฏธํ๋ ๊ฒ ๋ง๋? ๐
2. Attention
1) Scaled Dot-Product Attention
- dx ์ฐจ์์ key, dv ์ฐจ์์ value, ์ฟผ๋ฆฌ๊ฐ ์ ๋ ฅ์ผ๋ก ๋ค์ด์จ๋ค.
- ํค๋ฅผ ์ด์ฉํด ์ฟผ๋ฆฌ์ dot products๋ฅผ ๊ณ์ฐํ๊ณ ๊ฐ๊ฐ์ sqrt(dk)๋ก ๋๋ ๋ค์, softmax ํจ์๋ฅผ ์ ์ฉํ์ฌ values์ ๋ํ ๊ฐ์ค์น๋ฅผ ๊ตฌํ๋ค.
- output matrix๋ ์๋์ ๊ฐ์ด ๊ณ์ฐํ๋ค.
2022. 3. 8 ์ถ๊ฐ
$sqrt(d_{k})$์ ์ญํ : $d_{k}$์ ๊ฐ์ด ์์ ๋๋ additive attention๊ณผ dot-product attention์ ์ฑ๋ฅ์ด ๋น์ทํ์ง๋ง $d_{k}$๊ฐ ํฐ ๊ฐ์ผ ๋๋ dot-product attention์ ์ฑ๋ฅ์ด ํจ์ฌ ๋จ์ด์ง๊ธฐ ๋๋ฌธ์ ๊ฐ ํฌ๊ธฐ ์กฐ์ ๋ชฉ์
2) Multi-Head Attention
- d_model ์ฐจ์์ keys, values, queries๋ฅผ ์ฌ์ฉํ๋ ๋์ dk ์ฐจ์, dv ์ฐจ์์ ๋ํด ํ์ต๋ ์๋ก ๋ค๋ฅธ linear projections์ ์ฌ์ฉํ์ฌ queries, keys, values๋ฅผ linearํ๊ฒ hํ ํฌ์ํ๋ ๊ฒ์ด ์ ์ตํ๋ค๋ ๊ฒ์ ๋ฐ๊ฒฌํ๋ค.
- queries, keys, values์ ํฌ์ ๋ฒ์ ์์ self-attention์ ๋ณ๋ ฌ๋ก ์ํํ์ฌ dv ์ฐจ์์ ์ถ๋ ฅ ๊ฐ์ ์ฐ์ถํ๋๋ฐ ์ต์ข ์ ์ผ๋ก ์ฐ์ถ๋๋ ๊ฐ์ ์๋์ ๊ฐ๋ค.
3) Applications of Attention in our Model
- Transformer๋ multi-head attention์ ์ธ ๊ฐ์ง ๋ฐฉ์์ผ๋ก ์ฌ์ฉํ๋ค.
> ์ธ์ฝ๋-๋์ฝ๋ attention ๋ ์ด์ด์์ queries๋ ์ด์ ๋์ฝ๋ ๋ ์ด์ด์์ ๋์ค๊ณ memory keys์ values๋ ์ธ์ฝ๋์ ์ถ๋ ฅ์ผ๋ก๋ถํฐ ๋์ค๋๋ฐ ์ด ๊ณผ์ ์์ ๋์ฝ๋์ ๋ชจ๋ ์์น๊ฐ ์ ๋ ฅ ์ํ์ค์ ๋ชจ๋ ์์น์ ๋ํด ๋ฐฐ์น๋๋ค. → sequence-to-sequence ๋ชจ๋ธ์์ ์ผ๋ฐ์ ์ธ ์ธ์ฝ๋-๋์ฝ๋ attention ๋งค์ปค๋์ฆ์ ๋ชจ๋ฐฉ
> ์ธ์ฝ๋์ self-attention ๋ ์ด์ด๊ฐ ํฌํจ๋์ด ์๊ธฐ ๋๋ฌธ์ ์ธ์ฝ๋์ ๊ฐ ์์น๋ ์ธ์ฝ๋ ์ด์ ๋ ์ด์ด์ ์๋ ๋ชจ๋ ์์น๋ฅผ ๊ด๋ฆฌํ ์ ์๋ค. ** ??
> ** ๋ง์ง๋ง ๋ด์ฉ์ ๋์ฝ๋ ๊ด๋ จ์ธ๋ฐ ๋ฌธ์ฅ ์ฒ์๋ถํฐ ์ดํด๋ถ๊ฐ์ฌ์ ์๋ตํ์์ ..
3. Position-wise Feed-Forward Networks
attention sub-layer ๋ฟ๋ง ์๋๋ผ ์ธ์ฝ๋์ ๋์ฝ๋์ ๊ฐ ๋ ์ด์ด๋ค์ ๊ฐ ์์น์ ๊ฐ๋ณ์ ์ผ๋ก ์ ์ฉ๋ fully connected feed-forward network๋ฅผ ๊ฐ์ง๊ณ ์๋ค.
4. Embedding and Softmax
๋ค๋ฅธ ์ํ์ค ๋ชจ๋ธ๊ณผ ์ ์ฌํ๊ฒ Transformer๋ ํ์ต๋ ์๋ฒ ๋ฉ์ ์ฌ์ฉํ์ฌ ์ ๋ ฅ ํ ํฐ๊ณผ ์ถ๋ ฅ ํ ํฐ์ d_model ์ฐจ์์ ๊ฐ๋ ๋ฒกํฐ๋ก ๋ณํํ๋ค. ๋ํ ๋์ฝ๋ ์ถ๋ ฅ์ ์์ธก๋๋ ๋ค์ ํ ํฐ์ ํ๋ฅ ๋ก ๋ณํํ๊ธฐ ์ํด usual learned linear transformation๊ณผ softmax ํจ์๋ฅผ ์ฌ์ฉํ๋ค.
5. Positional Encoding
Transformer๋ recurrence, convolution์ด ์๊ธฐ ๋๋ฌธ์ ๋ชจ๋ธ์ด ์ํ์ค ์์๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด ์ํ์ค์ ํ ํฐ์ ์๋์ ์ธ ์์น(๋๋ ์ ๋์ ์ธ ์์น)์ ๋ํ ์ ๋ณด๋ฅผ ์ฃผ์ ํด์ผ ํ๋ค. ์ด๋ฅผ ์ํด ์ธ์ฝ๋์ ๋์ฝ๋์ ํ๋จ์ ์์นํ ์ ๋ ฅ ์๋ฒ ๋ฉ์ d_model ์ฐจ์์ ๊ฐ๋ positional encodings์ ์ถ๊ฐํ๋ค.
Why Self-Attention
์ด ๋ถ๋ถ์ ์ข ๋ ๊ผผ๊ผผํ ๋ณธ ํ์ ๋ด์ฉ์ ์ถ๊ฐํ ์์ ์ด๋ค.
2022. 2. 28 ์ถ๊ฐ
self-attention layer์ recurrent and convolution layer๋ฅผ ๋น๊ตํ๊ณ ์ self-Attention์ ์ฌ์ฉํ๋์ง์ ๋ํ ๋ด์ฉ์ด๋ค. ๋ ผ๋ฌธ ์ ์๋ค์ ์๋ ์ธ ๊ฐ์ง ์ด์ ๋ ๊ณ ๋ คํ์ฌ self-Attention์ ์ฌ์ฉํ๋ค.
โ ๋ ์ด์ด ๋น ์ด ์ฐ์ฐ ๋ณต์ก๋
โก ํ์ํ ์ต์ํ์ ์์ฐจ ์ฐ์ฐ ์๋ก ์ธก์ ํ ๋ ๋ณ๋ ฌํํ ์ ์๋ ๊ณ์ฐ์ ์ **ํต์ฌ์ '๋ณ๋ ฌํ'๋ผ๊ณ ์๊ฐํ๋ค.
โข ๋คํธ์ํฌ์ long-dependencies(์ฅ๊ธฐ ์์กด์ฑ) ์ฌ์ด ๊ฒฝ๋ก์ ๊ธธ์ด
๐ โข ๊ด๋ จ ๋ถ์ฐ ์ค๋ช (๋ ผ๋ฌธ์ ์๋ ๋ด์ฉ)
- long-range dependencies๋ sequence ๋ณํ ๊ณผ์ ์ ํต์ฌ ๋ฌธ์ ์ด๋ค.
- ๋คํธ์ํฌ์์ forward&backward ์ ํธ๊ฐ ์ด๋ํด์ผ ํ๋ ๊ฒฝ๋ก์ ๊ธธ์ด๋ ์์กด์ฑ ํ์ต ๋ฅ๋ ฅ์ ์ํฅ์ ๋ฏธ์น๋ ์์ธ ์ค ํ๋๋ค.
- ์ ๋ ฅ ๋ฐ ์ถ๋ ฅ ์ํ์ค์์ ์์น ์กฐํฉ ์ฌ์ด ๊ฒฝ๋ก๊ฐ ์งง์์๋ก long-range dependencies ํ์ต์ด ์ฝ๋ค.
**์์น ์กฐํฉ์ด ์ ํํ ๋ญ๊น
์์ ๋น๊ต ํ๋ฅผ ๋ณด๋ฉด ๋ชจ๋ ๋ฉด์์ self-Attention์ ์ฑ๋ฅ์ด ๊ฐ์ฅ ์ข์ ๊ฒ์ ํ์ธํ ์ ์๋ค.
Training & Results & Conclusion
์๋ต