๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์ˆ˜ํ•™ ๊ฐœ๋…

ํ€€ํƒ€ ์นผ๋Ÿผ '์–ดํ…์…˜์€ ์ง€๋Šฅ์˜ ๋ณธ์งˆ์ธ๊ฐ€' — ์–ดํ…์…˜ ๋ฉ”์ปค๋‹ˆ์ฆ˜ ์ˆ˜์‹ ์ด์ •๋ฆฌ

๋ฐ˜์‘ํ˜•
๐Ÿ“ ์ˆ˜ํ•™ ์ด์•ผ๊ธฐ

์–ดํ…์…˜ ๋ฉ”์ปค๋‹ˆ์ฆ˜์€ ๋‚ด์ ์œผ๋กœ ์œ ์‚ฌ๋„๋ฅผ ๊ตฌํ•˜๊ณ  ์†Œํ”„ํŠธ๋งฅ์Šค๋กœ ๊ฐ€์ค‘์น˜๋ฅผ ๋งŒ๋“  ๋’ค ๊ฐ’์„ ์„ž๋Š” ์„ ํ˜•๋Œ€์ˆ˜ ๊ณ„์‚ฐ์ด๋‹ค. ํ€€ํƒ€ ์นผ๋Ÿผ์ด ๋‹ค๋ฃฌ ์–ดํ…์…˜์˜ ์ˆ˜์‹์„ ์ˆซ์ž ์˜ˆ์ œ๋กœ ๋๊นŒ์ง€ ํ’€์–ด ์ •๋ฆฌํ–ˆ๋‹ค.

์–ดํ…์…˜ ๋ฉ”์ปค๋‹ˆ์ฆ˜์˜ ์ฟผ๋ฆฌ์™€ ํ‚ค, ๋ฐธ๋ฅ˜ ๋ฒกํ„ฐ ๊ณ„์‚ฐ ๊ณผ์ •์„ ํ‘œํ˜„ํ•œ ์ˆ˜ํ•™ ์ผ๋Ÿฌ์ŠคํŠธ

ํ€€ํƒ€ ๋งค๊ฑฐ์ง„์ด 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\)์— ๋น„๋ก€ํ•œ๋‹ค. ๋ฌธ์žฅ์ด ๊ธธ์–ด์งˆ์ˆ˜๋ก ๋ถ€๋‹ด์ด ๊ธ‰๊ฒฉํžˆ ๋Š˜์–ด๋‚˜๋Š” ๊ฒƒ์ด ์–ดํ…์…˜ ๋ฉ”์ปค๋‹ˆ์ฆ˜์˜ ๊ธฐ์ˆ ์  ํ•œ๊ณ„๋กœ ๊ผฝํžŒ๋‹ค. ์นผ๋Ÿผ์€ ์ธ๊ฐ„์˜ ๋‡Œ๊ฐ€ ํ›จ์”ฌ ์ ์€ ๋ฐ์ดํ„ฐ์™€ ์—๋„ˆ์ง€๋กœ ์–ธ์–ด๋ฅผ ๋ฐฐ์šด๋‹ค๋Š” ์ ๋„ ์ง€์ ํ–ˆ๋Š”๋ฐ, ์ด๋Š” ์ˆ˜ํ•™์ด ์•„๋‹ˆ๋ผ ์ธ์ง€๊ณผํ•™์˜ ๋ฌธ์ œ๋‹ค.

์ง์ ‘ ์ž‘์€ ํ–‰๋ ฌ๋กœ ์ด ๊ณ„์‚ฐ์„ ์†์œผ๋กœ ํ•ด ๋ณธ ์ ์ด ์žˆ๋Š”๋ฐ, ์†Œํ”„ํŠธ๋งฅ์Šค ํ•œ ์ค„๋กœ ๊ฐ€์ค‘์น˜๊ฐ€ ๊ฐˆ๋ฆฌ๋Š” ๋ชจ์Šต์„ ์ˆซ์ž๋กœ ํ™•์ธํ•˜๋‹ˆ ์–ดํ…์…˜์ด ๋ณต์žกํ•œ ์‹ ๋น„๊ฐ€ ์•„๋‹ˆ๋ผ ๋‚ด์ ๊ณผ ์ง€์ˆ˜ ํ•จ์ˆ˜๋กœ ์ด๋ค„์ง„ ๋น„๊ต์  ๋‹จ์ˆœํ•œ ์—ฐ์‚ฐ์˜ ๋ฐ˜๋ณต์ด๋ผ๋Š” ์ ์ด ๋ถ„๋ช…ํ•ด์กŒ๋‹ค. ์„ ํ˜•๋Œ€์ˆ˜๋ฅผ ๋ฐฐ์šฐ๋Š” ํ•™์ƒ์ด๋ผ๋ฉด ์–ดํ…์…˜ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ํ–‰๋ ฌ ๊ณฑ์…ˆ ์—ฐ์Šต ๋ฌธ์ œ๋กœ ์‚ผ์•„ ๋ณผ ๋งŒํ•˜๋‹ค.