[Transformer] Part 5
2023. 1. 25. 13:45
๐ง๐ป๐ป์ฉ์ด ์ ๋ฆฌ
Transformer
Transformer
- RNN๊ณผ CNN ์์ด attention module๋ง์ผ๋ก ์ ์ฒด Sequence๋ฅผ ์ ๋ ฅ ๋ฐ ์ถ๋ ฅ์ผ๋ก ์ฒ๋ฆฌํ ์ ์๋ ๋์์ด ์ด๋ฃจ์ด์ง๋๋ค.
- RNN model์ Long-term Dependency Issue๊ฐ ์กด์ฌํฉ๋๋ค.
- ์ ๋ ฅ์ผ๋ก ์ฃผ๋ h t์ ์ ๋ณด๊ฐ ๋ณ์ง๋์ง ์๊ณ ์ ์ถ์ ๋์ด ์์ด์ผ ํฉ๋๋ค.
- ์ ๋ฉ๋ฆฌ์๋ ๊ณณ์์ ํ์ต ๋ฐ์ดํฐ ์์ค์ด ์ผ์ด๋ฌ๋ค๋ฉด, gradient signal์ ์ ๋ฉ๋ฆฌ ์๋ time step๊น์ง ์ ๋ฌํด ์ค์ผ ํ๋๋ฐ, ์ฌ๋ฌ time step์ ๊ฑธ์ณ์ gradient ์ ๋ณด๊ฐ ์ ๋ฌ๋๋ฉด์, ์ ๋ณด๊ฐ ๋ณ์ง๋๋ ๋ฌธ์ ๊ฐ ์๊ฒจ ํ์ต์ด ์ ๋๋ก ์ด๋ฃจ์ด์ง์ง ์์ ์ ์์ต๋๋ค.
- ๊ทธ๋์, transformer model์์ attention model์ ์ฌ์ฉํด์ sequence data๋ฅผ encodingํ ๋์๋, time step ๊ฐ์ ์ฐจ์ด๊ฐ ๋ฉ ๋, ์ฆ, long-term dependency์ ์ด์๋ฅผ ๊ทผ๋ณธ์ ์ผ๋ก ํด๊ฒฐํฉ๋๋ค.
- ๊ฑฐ๋ฆฌ์ ์๊ด ์์ด ๋ฐ๋ก๋ฐ๋ก ์ ๊ทผํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ ์ถ์ ํ ์ ์๋ ํํ๋ก ๋ง๋ญ๋๋ค.
- Seq2seq and attention model์์๋ ์ ๋ณด๋ฅผ ์ฐพ๊ณ ์ ํ๋ query์ ํด๋นํ๋ decoder hidden state vector๋ ์ ํฌ๊ฐ ์ ๋ณด๋ฅผ ๊บผ๋ด๊ฐ๋ ค๊ณ ํ๋ ์ฌ๋ฃ์ ํด๋นํ๋ encoder hidden state vector์๋ ๋ถ๋ฆฌ๊ฐ ๋ ์ํฉ์ด์์ต๋๋ค.
- ์ด query vector๋ฅผ ์ฌ๋ฃ vector๋ค๊ณผ ๊ฐ์ ์ฃผ์ฒด๋ก์ ์๊ฐํ๋ค๋ฉด, sequence๋ฅผ attention model์ ํตํด encoding ํ ์ ์์ต๋๋ค.
- ์ด๋ฐ Sequence data ๋ฅผ encoding ํ ๋, ์ฐ์ด๋ attention module์ self-attention์ด๋ผ๊ณ ๋ถ๋ฅด๊ฒ ๋ฉ๋๋ค.
- sequence data ๊ฐ๊ฐ์ ๊ฒ์ ์ ์ฒด sequence์์์ ๊ฐ์คํฉ์ ํตํด ์ ์ฌ๋๋ฅผ ํ์ ํฉ๋๋ค.
- ๋ณํ๋ vector๋ฅผ query vector๋ก ์ฌ์ฉํฉ๋๋ค.
- vector ์ฐ์ฐ์ ์์ด์, query vector, key vector, value vector๋ก ๋๋ฉ๋๋ค.
Scaled Dot-product Attention
- softmax ๊ฐ์ด ํ๋์ Peak์ด ๋จ๊ฒ ๋์ด ํ์ต์ด ์ ์ด๋ฃจ์ด์ง์ง ์๊ฒ ๋ฉ๋๋ค.
- dk๋ผ๋ ์์๊ฐ ์์น ์๊ฒ attention weight์ softmax์ ์ ๋ ฅ์ผ๋ก ์ฌ์ฉ๋๋๋ logit vector์ ์ด๋ค ๋ถํฌ์ ๋ถ์ฐ ๊ฐ์ ์ํฅ์ ์ฃผ๋ ๋งํผ, ์ด ์ํฅ๋ ฅ์ ์์ ๊ธฐ ์ํด์ ์ด๋ฐ key vector์ query vector ๊ฐ์ ๊ฐ๊ฐ์ measure ๊ฐ์ key vector ํน์ query vector์ dimension์ ๋ฃจํธ ๊ฐ์ ๋๋ ์ค์ผ๋ก์จ ์ผ์ ํ ๋ถ์ฐ ๊ฐ์ ๊ฐ์ง๋๋ก ํ๋ ์ถ๊ฐ์ ์ธ ์ฅ์น๋ฅผ ๋ง๋ค์ด์ฃผ๊ฒ ๋ฉ๋๋ค.
Multi-head Attention
- Scaled dot product ๊ธฐ๋ฐ์ self-attention module์ ์ข ๋ ๋ค์ํ ํํ๋ก ํ์ฅํ ๊ฒ์ ๋๋ค.
- ์ฃผ์ด์ง Sequence์ ๊ฐ๊ฐ์ ์ ๋ ฅ vector ๋ค์ encodingํ ๋, Wq, Wk, Wv๋ฅผ ํ๋์ ์ ํด์ง ๋ณํ์ผ๋ก attention module์ ์ํํด์ Sequence๋ฅผ encodingํ๊ฒ ๋ ๊ฒ์ ๋๋ค.
- ๋จ์ด encoding ์์, ๊ทธ ์ฌ๋์ด ์ด๋ค ํ๋์ ํ๋๊ฐ์ ๋ํ ์ ๋ณด๋ฅผ ์์ฃผ๋ก encoding ํ ์๋ ์๊ณ , ์๊ฐ, ์ฅ์ ์ ๋ณด ๋ฑ ๋ค์ํ ์ ๋ณด๋ฅผ ์ถ์ถํ๋ ํ์์ฑ์ ์๊ฐํ ์ ์์ต๋๋ค.
- ์ด๋ค ๊ธฐ์ค์ผ๋ก ๋ง๋ค ๊ฒ์ธ์ง๋ฅผ ๊ฒฐ์ ํ๋ ์ธ ๊ฐ์ ์ ํ ๋ณํ์ Matrix๋ฅผ ์ฌ๋ฌ ๊ฐ set๋ฅผ ๋์ด์ ๊ฐ set๋ฅผ ํตํด ๋ณํ๋ query, key, value vector๋ค์ ์ฌ์ฉํด์ attention model์ ํตํด sequence์ ๊ฐ ๋จ์ด๋ค์ encodingํ๊ณ ๊ฐ set์ ์ ํ ๋ณํ์ ์ฌ์ฉํด์ ๋์จ attention model์ Output ๋ค์ ๋์ค์ concatํ๋ ํํ๋ก ์ ๋ณด๋ฅผ ํฉ์น๋ ์์ผ๋ก ํฉ๋๋ค.
- ๋ค์ํ ๊ธฐ์ค๊ณผ ๋ค์ํ ์ ๋ณด๋ฅผ ๋ฐํ์ผ๋ก sequence๋ฅผ encodingํ ๊ทธ๋ฐ ํํ๋ก ํ์ฅ์ ํ๊ฒ ๋ฉ๋๋ค.
- attention์ ์ฌ๋ฌ ๊ฐ์ linear transformation set๋ฅผ ์ฌ์ฉํด์ attention์ ์ํํ๋ค๊ณ ํ์ฌ multi-head attention์ด๋ผ ํฉ๋๋ค.
- ์ถ๊ฐ์ ์ธ linear transformation์ ๊ฑฐ์ณ์ ์ํ๋ Dimension์ผ๋ก ๋ง๋ค ์ ์์ต๋๋ค.
- long-term dependency ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค.
- ๋ฉ๋ชจ๋ฆฌ ๋ณต์ก๋๊ฐ ๋๋ค๋ ๊ฒ์ด ๋จ์ ์ด ๋๊ฒ ์ต๋๋ค.
- Output vector์ Input vector์ dimension์ ๊ฐ๊ฒ ํ๋ ์ด์ ๋ residual network์์ ๋์จ Skip connection์ ์ฌ์ฉํ๊ธฐ ์ํจ์ ๋๋ค.
- ๊ฒฐ๊ณผ๋ก ๋์จ vector์ ๋ํ์ฌ ํ๊ท ๊ณผ ๋ถ์ฐ์ ๊ณ์ฐํ๊ณ , ๊ทธ๊ฒ์ ํ๊ท ๊ณผ ๋ถ์ฐ์ด ๊ฐ๊ฐ 0๊ณผ 1์ด ๋๋๋๋ก ํ๊ณ , ๊ทธ ๋ค์ ์๋ค์ ๋ํด y = ax + b ๊ผด๋ก ๋ง๋๋ affine transformation์ ์ํํ๊ฒ ๋ฉ๋๋ค.
- positional encoding ์ ์์๋ฅผ ๊ตฌ๋ถํ์ง ๋ชป ํ๋ self-attention model์ ๋จ์ ์ ๋ณด์ํ๊ณ ์ ๋จ์ด์ ๋ฌธ์ฅ์์์ ์์น๋ฅผ ๋ํ๋ ๋๋ค.
- ์์น์ ๋ฐ๋ผ ๊ฐ์ ๋จ์ด๋ ๋ค๋ฅธ vector๋ก ๋์ค๊ฒ ๋ฉ๋๋ค.
- cheating์ ๋ฌธ์ ๋ฅผ ๋ง๊ธฐ ์ํด masking์ด๋ผ๋ ๊ฒ์ ์ด์ฉํด query๋ค์ด ๋ฐ๋ก ๋ค์ ๋จ์ด๋ค์ ๋ณด์ง ๋ชป ํ๋๋ก ๊ทธ ๋ค์ ๊ฐ๋ค์ logit ๊ฐ์ ๋ง์ด๋์ค ๋ฌดํ๋๋ก ๋ฐ๊ฟ๋๋ค. ์ด๋ฌํ Masked self-attention ๊ณผ์ ์ ๊ฑฐ์นฉ๋๋ค.
- ์ต์ด๋ก ๊ธฐ๊ณ ๋ฒ์ญ task์ ์ฐ์ฌ์ RNN ๊ธฐ๋ฐ, convolution ๊ธฐ๋ฐ์ sequence๋ฅผ encodingํ๋ model๋ค ๋ณด๋ค ์ข์ ์ฑ๋ฅ์ ๋ํ๋์ต๋๋ค.
- Long-term dependency๋ฅผ ๊ทผ๋ณธ์ ์ผ๋ก ํด๊ฒฐํ์ฌ ์ข์ ์ฑ๋ฅ์ ๋ผ ์ ์์์ต๋๋ค.
- ์์ฐ์ด ์ฒ๋ฆฌ ๋ฟ ์๋๋ผ ๋ค๋ฅธ ์์ญ์๋ ํ์ฅ ๋์ด ์ข์ ์ฑ๋ฅ์ ๋ณด์ฌ์ฃผ๊ณ ์์ต๋๋ค.
- ๋ํ, transformer์์ ์ ํ๋ Layer ์๋ฅผ ๋ ๋ง์ด ๋๋ฆฌ๋, transformer์์ ์ ํ๋ block ์์ฒด์ ๊ทธ ์ค๊ณ ํน์ ๋์์ธ์ ๊ทธ๋๋ก ๊ณ์นํ์ฌ model size๋ฅผ ์ ์ฐจ ๋๋ฆฌ๋, self-supervised model์ ์ ๋ชฉ์์ผ task์ ์ฑ๋ฅ์ ๋๋ฆฝ๋๋ค.
- time step ๋ง๋ค ์์ธกํ๋ค๋ auto regressive model์ ํ๊ณ๋ฅผ ์ฌ์ ํ ๊ฐ์ง๊ณ ์์ต๋๋ค.
'Artificial Intelligence' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Causality] ์ธ๊ณผ์ถ๋ก (0) | 2023.01.26 |
---|---|
[Self-Supervised Learning and Large-Scale Pre-Trained Models] Part 6 (0) | 2023.01.25 |
[Seq2Seq with Attention for Natural Language Understanding and Generation] Part 4 - 2 (0) | 2023.01.25 |
[Seq2Seq with Attention for Natural Language Understanding and Generation] Part 4 - 1 (0) | 2023.01.25 |
[Ensemble Learning] part 6 - 2 (0) | 2023.01.20 |