Transformer(2017) - 3
์ด ํฌ์คํธ๋ ์ ๊ฐ ๊ฐ์ธ์ ์ธ ์ฉ๋๋ก ์ ๋ฆฌํ ๊ธ ์ ๋๋ค.
- โAttention is all you needโ
- 2017, Google
Decoder in Transformer
์ธ์ฝ๋ ๋ชจ๋์ ๋ด๋ถ์ ์ผ๋ก Self-Attention๊ณผ FFNN์ sub-layer๋ก ๊ตฌ์ฑ๋์๋ค๋ฉด, ๋์ฝ๋์ ๊ฒฝ์ฐ๋ 3๊ฐ์ง sub-layer๋ก ๊ตฌ์ฑ๋๋ค. ๊ฐ๊ฐ์ ์ดํด๋ณด์.
Self-Attention
์ธ์ฝ๋์์ sequence์ Positional Encoding์ ์ ์ฉํ ํ๋ ฌ์ ์ ๋ ฅ์ผ๋ก ๋ฐ์๋ค. ๋์ฝ๋ ์ญ์ ์ ๋ต sequence์ Positional Encoding์ ์ ์ฉํ ํ๋ ฌ์ ์ ๋ ฅ์ผ๋ก ๋ฐ๋๋ค.
ํ์ง๋ง ์ด๋ ๊ฒ ์ ๋ต sequencce๋ฅผ ์ ๋ ฅ ๋ฐ๋ ๊ฒ์ seq2seq์ ์ปจ์ ํธ์ธ โ๋์ฝ๋๋ ์ถ๋ก ํ ๋จ์ด๋ฅผ ๋ค์ ์ ๋ ฅ์ผ๋ก ๋ฃ์ด ํ๋ฒ๋ ์ถ๋ก ํ๋ ๊ต์ฌ ๊ฐ์(Teacher Forcing)๋ฅผ ํตํด ํ์ตํ๋ค.โ๋ฅผ ์๋ฐํ๊ฒ ๋๋ค.
๊ธฐ์กด RNN์์๋ ์ ๋ ฅ์ ๋งค ์์ ๋ง๋ค ์์ฐจ์ ์ผ๋ก ๋ฐ์์ง๋ง, Transformer๋ ์ ๋ต ์ ์ฒด๋ฅผ ์ ๋ ฅ์ผ๋ก ๋ฐ๋ ๊ผด์ด๊ธฐ ๋๋ฌธ์ ๋ฌธ์ ๊ฐ ๋๋ ๊ฒ์ด๋ค.
Transformer์ ๋์ฝ๋๋ ์ ๋ ฅ์ ํฌํจ๋, ๋์ค์ ์์ธกํด์ผ ํ ๋จ์ด๋ค์ ์ฐธ๊ณ ํ์ง ๋ชปํ๋๋ก Masking์ผ๋ก ๊ทธ ๋จ์ด๋ค์ ๊ฐ๋ ค๋ฒ๋ฆฐ๋ค. ์ด๊ฒ์ โLook-ahead maskโ๋ผ๊ณ ํ๋ค.
์ด๋ฐ โLAMโ๋ ๋์ฝ๋์ ์ฒซ๋ฒ์งธ sub-layer์ธ Self-Attention ์ธต์์ ์ด๋ฃจ์ด์ง๋ค. ๋์ฝ๋์ Self-Attention ์ธต์ ์ธ์ฝ๋์ Self-Attention๊ณผ ๋์ผํ ์ฐ์ฐ์ ์ํํ์ง๋ง, ์ค์ง ๋ค๋ฅธ ์ ์ ๋์ฝ๋์ ๊ฒฝ์ฐ ๋ง์คํน์ด ์ ์ฉ๋ Attention Score ํ๋ ฌ์ ์ฌ์ฉํ๋ค๋ ๊ฒ์ด๋ค.
๋๋ต ์๋์ ๊ฐ์ ๋๋์ด๋ค.
๋ง์คํน ๋ Attention Score ํ๋ ฌ์ ๊ฐ ํ์ ์ดํด๋ณด๋ฉด, ์๊ธฐ ์์ ๊ณผ ๊ทธ ์ด์ ๋จ์ด๋ค๋ง์ ์ฐธ๊ณ ํ ์ ์๊ฒ ๋์๋ค.
Encoder-Decoder Attention
์์์ ์ดํด๋ดค๋ ๋ ๋ฒ์ Attention ๋ชจ๋ $Q$, $K$, $V$๊ฐ ๋ชจ๋ ํ ๋ชจ๋ ์์์ ์ ๋ํ๋ Self-Attention ์ด์๋ค. ๋์ฝ๋์ ๋ ๋ฒ์ฌ layer์์๋ Query $Q$๊ฐ ๋์ฝ๋์์ ์ ๋ํ๋ ์ผ๋ฐ์ ์ธ Attention์ ์ ์ฉํ๋ค.
๋์ฝ๋์ ๋ ๋ฒ์งธ layer๋ก ๋ ๊ฐ์ ํ์ดํ๊ฐ ๋ค์ด์ค๋๋ฐ, ์ด๊ฒ์ $K$, $V$๋ก ์ธ์ฝ๋์ ๋ง์ง๋ง ์ธต์์ ์จ ํ๋ ฌ๋ก๋ถํฐ ์ป๋๋ค.
๋์ฝ๋์ ์ฒซ๋ฒ์งธ Attention์ ๊ฒฐ๊ณผ๋ก๋ถํฐ Query $Q$๋ฅผ ์ป๋๋ค. ์ด๋ Query $Q$๋ ๋์ฝ๋์ ์ ๋ ฅ์ Attention ๊ฐ์คํฉ์ด ์ ์ฉ๋ ์ํ๋ผ๊ณ ๋ณผ ์ ์๋ค.
๋ง์ง๋ง์ผ๋ก ๋์ฝ๋์ FFNN์ ๊ฒฝ์ฐ ์ธ์ฝ๋์ FFNN๊ณผ ๋์ผํ๋ ์๋ตํ๊ฒ ๋ค.
์ดํ์๋ ์ธ์ฝ๋์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋์ฝ๋ ๋ชจ๋์ ์์์ โDecodersโ๋ฅผ ๋ง๋ ๋ค.
๋๋์ด Transformer์ ๊ตฌ์กฐ๋ฅผ ๋ชจ๋ ์ดํด๋ดค๋ค!!
๋ง๋ฌด๋ฆฌํ ๊ฒธ Transformer์ ๊ตฌ์กฐ๋ฅผ ๋ค์ ์ดํด๋ณด์.
(๋ณธ ๊ธ์ ๋ชจ๋ ์๋ฃ๋ ๋ฅ๋ฌ๋์ ์ด์ฉํ ์์ฐ์ด ์ฒ๋ฆฌ ์ ๋ฌธ๋ก๋ถํฐ ์ ๋ํ์์ต๋๋ค!)