์ดํ ์ ๋ฉ์ปค๋์ฆ์ ๋ด์ ์ผ๋ก ์ ์ฌ๋๋ฅผ ๊ตฌํ๊ณ ์ํํธ๋งฅ์ค๋ก ๊ฐ์ค์น๋ฅผ ๋ง๋ ๋ค ๊ฐ์ ์๋ ์ ํ๋์ ๊ณ์ฐ์ด๋ค. ํํ ์นผ๋ผ์ด ๋ค๋ฃฌ ์ดํ ์ ์ ์์์ ์ซ์ ์์ ๋ก ๋๊น์ง ํ์ด ์ ๋ฆฌํ๋ค.

ํํ ๋งค๊ฑฐ์ง์ด 10์ 12์ผ ์นผ๋ผ ใ์ดํ ์ ์ ์ง๋ฅ์ ๋ณธ์ง์ธ๊ฐใ์์ ์ฑGPT ๊ฐ์ ์ธ๊ณต์ง๋ฅ์ ๋ฟ๋ฆฌ๋ฅผ 2014๋ ์ดํ ์ ๋ฉ์ปค๋์ฆ๊น์ง ๊ฑฐ์ฌ๋ฌ ์ฌ๋ผ๊ฐ ์๊ฐํ๋ค. ์ด ์นผ๋ผ์ ์์ ์์ด ์ค๋ช ํ์ง๋ง, ์ดํ ์ ๋ฉ์ปค๋์ฆ์ ์ค์ฒด๋ ๋ด์ ๊ณผ ์ํํธ๋งฅ์ค, ํ๋ ฌ๊ณฑ์ผ๋ก ์ด๋ฃจ์ด์ง ์ ํ๋์ ๊ณ์ฐ์ด๋ค. ์ด ๊ธ์ ๊ทธ ์์์ ์ ์๋ถํฐ ์ซ์ ์์ ๊น์ง ์ ๋ํ๋ค.
ํํ ์นผ๋ผ์ ์ดํ ์ ๋ฉ์ปค๋์ฆ์ ์ด๋ป๊ฒ ์ค๋ช ํ๋์?
ํํ ๋งค๊ฑฐ์ง์ ๋ํ๋ฆฌ ์์ด๋ฒ๋ 10์ 12์ผ์ ์นผ๋ผ์์ ์ดํ ์ ๋ฉ์ปค๋์ฆ์ด 2014๋ ๋ชฌํธ๋ฆฌ์ฌ๋ํ์ ๊ธฐ๊ณ๋ฒ์ญ ์ฐ๊ตฌ์์ ์์๋๋ค๊ณ ์๊ฐํ๋ค. ๋๋ฏธํธ๋ฆฌ ๋ฐ๋ค๋์ฐ, ์์์ ๋ฒค์ง์ค, ์กฐ๊ฒฝํ ์ฐ๊ตฌ์ง์ด ๋ฌธ์ฅ ์ ์ฒด๋ฅผ ๊ณ ์ ๋ ํฌ๊ธฐ์ ๊ธฐ์ต์ผ๋ก ์์ถํ๋ ์ ๊ฒฝ๋ง์ ๋ณ๋ชฉ์ ํ๋ ค๊ณ ์ดํ ์ ์ ๋์ ํ๋ค. ๋ฒ์ญํ ๋ ์๋ฌธ๊ณผ ๋ฒ์ญ๋ฌธ์ ๋ฒ๊ฐ์ ๋ณด๋ ์ฌ๋์ฒ๋ผ, ๋จ์ด๋ง๋ค ๋ฌธ์ฅ์ ์ด๋ ๋ถ๋ถ์ ์ผ๋ง๋ ๋ณผ์ง ๊ฐ์ค์น๋ฅผ ์ ํ๋ ๋ฐฉ์์ด๋ค.
2017๋ ๊ตฌ๊ธ์ ๋ ผ๋ฌธ ใAttention Is All You Needใ๋ ๋ค๋ฅธ ๊ตฌ์ฑ์์๋ฅผ ๋์ด๋ด๊ณ ์ดํ ์ ๋ฉ์ปค๋์ฆ๋ง์ผ๋ก ํธ๋์คํฌ๋จธ๋ฅผ ๋ง๋ค์๋ค. ์นผ๋ผ์ ๋ฐ๋ฅด๋ฉด ์ด ๋ ผ๋ฌธ์ 25๋ง ํ ๋๊ฒ ์ธ์ฉ๋๋ค. ์นผ๋ผ์ ์ดํ ์ ๋ง์ผ๋ก ํจ์จ์ ์ธ ์ธ์ด ์ต๋์ด ์ถฉ๋ถํ์ง๋ ์์ ๊ฒ์ด๋ผ๋ ์๊ฒฌ๋ ํจ๊ป ์๊ฐํ๋ค. ์ด์ ์นผ๋ผ์ด ๊ธ๋ก ํ์ด ์ด ์ดํ ์ ๋ฉ์ปค๋์ฆ์ ๊ณ์ฐ์ ์์์ผ๋ก ์ฎ๊ฒจ ๋ณด์.
์ดํ ์ ๋ฉ์ปค๋์ฆ์ ์์์ ์ด๋ป๊ฒ ์ ์๋๋์?
๊ฐ ๋จ์ด๋ ์ซ์ ๋ฒกํฐ๋ก ๋ฐ๋๋ค. ํ์ต๋ ๊ฐ์ค์น ํ๋ ฌ์ ๊ณฑํด ๋จ์ด๋ง๋ค ์ฟผ๋ฆฌ \(q\), ํค \(k\), ๋ฐธ๋ฅ \(v\) ์ธ ๋ฒกํฐ๋ฅผ ๋ง๋ ๋ค. ์ฟผ๋ฆฌ๋ ๋ด๊ฐ ์ฐพ๋ ๊ฒ, ํค๋ ๊ฐ ๋จ์ด๊ฐ ๋ด์ธ์ฐ๋ ์ ๋ณด, ๋ฐธ๋ฅ๋ ์ค์ ๋ก ์ ๋ฌํ ๋ด์ฉ์ ํด๋นํ๋ค. ๋จ์ด \(i\)๊ฐ ๋จ์ด \(j\)๋ฅผ ์ผ๋ง๋ ๋ณผ์ง๋ ์ฟผ๋ฆฌ์ ํค์ ๋ด์ ์ผ๋ก ๋งค๊ธด๋ค.
$$ \mathbf{q}\cdot\mathbf{k} = \sum_{m=1}^{d} q_m k_m = \|\mathbf{q}\|\,\|\mathbf{k}\|\cos\theta $$
์ดํ ์ ๋ฉ์ปค๋์ฆ์์ ๋ด์ ์ ๋ ๋ฒกํฐ๊ฐ ๊ฐ์ ๋ฐฉํฅ์ ๊ฐ๋ฆฌํฌ์๋ก ์ปค์ง๋ค. ์นผ๋ผ์ด ๋งํ ๋ ๋ฒกํฐ๊ฐ ๊ฐ์ ๋ฐฉํฅ์ ๊ฐ๋ฆฌํค๋ ์ ๋๊ฐ ๋ฐ๋ก \(\cos\theta\)์ด๊ณ , \(d\)๋ ๋ฒกํฐ์ ์ฐจ์์ด๋ค. ์ด ์ ์๋ค์ ํ๊บผ๋ฒ์ ํ๋ฅ ๋ถํฌ๋ก ๋ฐ๊พธ๋ ํจ์๊ฐ ์ํํธ๋งฅ์ค๋ค.
$$ \mathrm{softmax}(s_j) = \frac{e^{s_j}}{\sum_{l} e^{s_l}} $$
์ดํ ์ ๋ฉ์ปค๋์ฆ์ ์ํํธ๋งฅ์ค๋ ๋ชจ๋ ์ ์๋ฅผ ์์๋ก ๋ง๋ค๊ณ ํฉ์ด 1์ด ๋๊ฒ ํ๋ค. ์ ์๊ฐ ํฐ ํญ๋ชฉ์ ์ง์ ํจ์๋ก ๋ ํฌ๊ฒ ๋ถํ๋ ค์ ธ์ ๊ฐ์ค์น๊ฐ ์ง์ค๋๋ค. ์ด์ ์ดํ ์ ๋ฉ์ปค๋์ฆ์ ์ ์ฒด ์์ ํค ํ๋ ฌ \(K\), ์ฟผ๋ฆฌ ํ๋ ฌ \(Q\), ๋ฐธ๋ฅ ํ๋ ฌ \(V\)๋ก ๋ค์๊ณผ ๊ฐ์ด ์ด๋ค.
$$ \mathrm{Attention}(Q,K,V) = \mathrm{softmax}\!\left(\frac{QK^{\top}}{\sqrt{d_k}}\right)V $$
\(d_k\)๋ ํค ๋ฒกํฐ์ ์ฐจ์์ด๋ค. ์ดํ ์ ๋ฉ์ปค๋์ฆ์ ์ ์ํ ์ด ์์ด 2017๋ ๋ ผ๋ฌธ์ด ์ ์ํ ์ค์ผ์ผ ๋ด์ ์ดํ ์ ์ด๋ค. ๋ถ๋ชจ์ \(\sqrt{d_k}\)๋ ์ ์์ ํฌ๊ธฐ๋ฅผ ์กฐ์ ํ๋ ค๋ ์ฅ์น๋ก, ์๋์์ ์ด์ ๋ฅผ ๋ฐ์ ธ ๋ณธ๋ค.
์ซ์ ์์ ๋ก ์ดํ ์ ๋ฉ์ปค๋์ฆ์ ์ง์ ๊ณ์ฐํ๋ฉด?
์ดํ ์ ๋ฉ์ปค๋์ฆ์ ์ฐจ์ \(d_k=2\)๋ก ์ค์ฌ ๊ณ์ฐํด ๋ณด์. ์ฟผ๋ฆฌ \(q=(1,0)\)์ด๊ณ ๋จ์ด 3๊ฐ์ ํค๊ฐ \(k_1=(1,0)\), \(k_2=(0,1)\), \(k_3=(1,1)\)์ด๋ค. ๋ด์ ์ ์๋ \(q\cdot k_1=1\), \(q\cdot k_2=0\), \(q\cdot k_3=1\)์ด๋ค. \(\sqrt{2}\approx1.414\)๋ก ๋๋๋ฉด \(0.707,\ 0,\ 0.707\)์ด ๋๋ค.
$$ w_j=\frac{e^{s_j}}{\sum_l e^{s_l}}:\quad w_1=\frac{2.028}{5.056}\approx0.401,\ \ w_2\approx0.198,\ \ w_3\approx0.401 $$
์ง์ ๊ฐ์ \(e^{0.707}\approx2.028\), \(e^{0}=1\)์ด๊ณ ํฉ์ \(2.028+1+2.028=5.056\)์ด๋ค. ์ฟผ๋ฆฌ์ ๋ฐฉํฅ์ด ๊ฐ๊ฑฐ๋ ๋น์ทํ ๋จ์ด 1, 3๋ฒ์ 0.401์ฉ, ์ง๊ตํ๋ 2๋ฒ์ 0.198์ ๊ฐ์ค์น๊ฐ ๋ถ์๋ค. ๋ฐธ๋ฅ๊ฐ \(v_1=(2,0)\), \(v_2=(0,2)\), \(v_3=(1,1)\)์ด๋ฉด ์ถ๋ ฅ์ ๊ฐ์คํฉ์ด๋ค.
$$ \mathbf{o} = 0.401\,(2,0)+0.198\,(0,2)+0.401\,(1,1)\approx(1.203,\ 0.797) $$
์ด๊ฒ์ด ์ดํ ์ ๋ฉ์ปค๋์ฆ์ด ๋จ์ด ํ๋์ ํํ์ ๊ฐฑ์ ํ๋ ๊ณผ์ ์ด๋ค. ๋ฌธ์ฅ ์ ์ฒด์ ๋ํด์๋ ๋ชจ๋ ์ฟผ๋ฆฌ๋ฅผ ํ๋ ฌ \(Q\)๋ก ์์ ํ ๋ฒ์ ํ๋ ฌ๊ณฑ์ผ๋ก ๊ณ์ฐํ๋ค. ์ฌ๋ฌ ์ดํ ์ ํค๋๋ฅผ ๋ณ๋ ฌ๋ก ๋๋ฆฌ๊ณ ์ธต์ ๋ฐ๋ณตํ๋ฉด ํํ์ด ์ ์ ํ๋ถํด์ง๋ค๋ ๊ฒ์ด ์นผ๋ผ์ ์ค๋ช ์ด๋ค.
์ ์ ๊ณฑ๊ทผ d_k๋ก ๋๋๋์?
์ฟผ๋ฆฌ์ ํค์ ์ฑ๋ถ์ด ํ๊ท 0, ๋ถ์ฐ 1์ธ ๋ ๋ฆฝ ํ๋ฅ ๋ณ์๋ผ๊ณ ๊ฐ์ ํ๋ฉด ๋ด์ \(\sum_{m=1}^{d_k} q_m k_m\)์ ํ๊ท 0, ๋ถ์ฐ \(d_k\)๊ฐ ๋๋ค. ํ์คํธ์ฐจ๊ฐ \(\sqrt{d_k}\)์ด๋ฏ๋ก ์ฐจ์์ด ํด์๋ก ์ ์์ ํญ์ด ์ปค์ง๋ค. ์ ์๊ฐ ๋๋ฌด ํฌ๋ฉด ์ํํธ๋งฅ์ค๊ฐ ํ ํญ๋ชฉ์๋ง ๊ฑฐ์ 1์ ์ฃผ๋ ํฌํ ์ํ๊ฐ ๋์ด ๊ธฐ์ธ๊ธฐ๊ฐ ์ฌ๋ผ์ง๋ค. ๊ทธ๋์ \(\sqrt{d_k}\)๋ก ๋๋ ๋ถ์ฐ์ ๋ค์ 1๋ก ๋ง์ถ๋ค.
์ ์์ ์์ ๋๋์ง ์์ผ๋ฉด ๊ฐ์ค์น๊ฐ 0.422, 0.155, 0.422๋ก ๋ ๊ทน๋จ์ ์ด ๋๋ค. \(d_k=2\)์์๋ ์ฐจ์ด๊ฐ ๋ณด์ด๋๋ฐ, ์ค์ ๋ชจ๋ธ์ฒ๋ผ \(d_k=64\)์ด๋ฉด \(\sqrt{d_k}=8\)์ด๋ผ ํจ๊ณผ๊ฐ ํจ์ฌ ํฌ๋ค.
์ดํ ์ ๋ฉ์ปค๋์ฆ์ ํ๊ณ๋ ๋ฌด์์ธ๊ฐ์?
\(QK^{\top}\)๋ ๋จ์ด ์ \(n\)์ ๋ํด \(n\times n\) ํ๋ ฌ์ด๋ผ ๊ณ์ฐ๋๊ณผ ๋ฉ๋ชจ๋ฆฌ๊ฐ \(n^2\)์ ๋น๋กํ๋ค. ๋ฌธ์ฅ์ด ๊ธธ์ด์ง์๋ก ๋ถ๋ด์ด ๊ธ๊ฒฉํ ๋์ด๋๋ ๊ฒ์ด ์ดํ ์ ๋ฉ์ปค๋์ฆ์ ๊ธฐ์ ์ ํ๊ณ๋ก ๊ผฝํ๋ค. ์นผ๋ผ์ ์ธ๊ฐ์ ๋๊ฐ ํจ์ฌ ์ ์ ๋ฐ์ดํฐ์ ์๋์ง๋ก ์ธ์ด๋ฅผ ๋ฐฐ์ด๋ค๋ ์ ๋ ์ง์ ํ๋๋ฐ, ์ด๋ ์ํ์ด ์๋๋ผ ์ธ์ง๊ณผํ์ ๋ฌธ์ ๋ค.
์ง์ ์์ ํ๋ ฌ๋ก ์ด ๊ณ์ฐ์ ์์ผ๋ก ํด ๋ณธ ์ ์ด ์๋๋ฐ, ์ํํธ๋งฅ์ค ํ ์ค๋ก ๊ฐ์ค์น๊ฐ ๊ฐ๋ฆฌ๋ ๋ชจ์ต์ ์ซ์๋ก ํ์ธํ๋ ์ดํ ์ ์ด ๋ณต์กํ ์ ๋น๊ฐ ์๋๋ผ ๋ด์ ๊ณผ ์ง์ ํจ์๋ก ์ด๋ค์ง ๋น๊ต์ ๋จ์ํ ์ฐ์ฐ์ ๋ฐ๋ณต์ด๋ผ๋ ์ ์ด ๋ถ๋ช ํด์ก๋ค. ์ ํ๋์๋ฅผ ๋ฐฐ์ฐ๋ ํ์์ด๋ผ๋ฉด ์ดํ ์ ๋ฉ์ปค๋์ฆ์ ํ๋ ฌ ๊ณฑ์ ์ฐ์ต ๋ฌธ์ ๋ก ์ผ์ ๋ณผ ๋งํ๋ค.