K-DEVCON AI ์Šคํ„ฐ๋”” ยท How Attention Works

2017๋…„, Google์˜ ์—ฐ๊ตฌ์ง„์€ ์ˆœํ™˜(RNN)๊ณผ ํ•ฉ์„ฑ๊ณฑ(CNN)์„ ๊ฑท์–ด๋‚ด๊ณ  attention๋งŒ์œผ๋กœ ์‹œํ€€์Šค๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” Transformer๋ฅผ ๋ฐœํ‘œํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ํŽ˜์ด์ง€๋Š” ๊ทธ ์•„์ด๋””์–ด๊ฐ€ ์–ด๋””์„œ ์™”๊ณ (seq2seq โ†’ Bahdanau โ†’ Pointer Net), ์–ด๋–ป๊ฒŒ ๋™์ž‘ํ•˜๋Š”์ง€(QยทKยทV, ๋งˆ์Šคํฌ, ๋ฉ€ํ‹ฐํ—ค๋“œ, ์œ„์น˜ ์ธ์ฝ”๋”ฉ)๋ฅผ ์ง์ ‘ ๋งŒ์ ธ๋ณด๋ฉฐ ์ดํ•ดํ•˜๋Š” ์ž๋ฃŒ์ž…๋‹ˆ๋‹ค.

โ†‘ ์ œ๋ชฉ์˜ ๋‹จ์–ด์— ๋งˆ์šฐ์Šค๋ฅผ ์˜ฌ๋ ค ๋ณด์„ธ์š”. ๊ฐ ๋‹จ์–ด๊ฐ€ ๋‹ค๋ฅธ ๋‹จ์–ด์— ์ฃผ๋Š” attention ๊ฐ€์ค‘์น˜๊ฐ€ ๋ฐ‘์ค„ ๊ตต๊ธฐ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

ยง1

์–ธ์–ด ๋ชจ๋ธ: ๋ฌธ์žฅ์— ํ™•๋ฅ ์„ ๋งค๊ธฐ๋‹ค

์–ธ์–ด ๋ชจ๋ธ์€ ํ…์ŠคํŠธ์— ๋Œ€ํ•œ ํ™•๋ฅ  ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค. ๋ฌธ๋ฒ•๊ณผ ์˜๋ฏธ๋ฅผ ๋ชจ๋‘ ํ•™์Šตํ•ด์•ผ ์ข‹์€ ํ™•๋ฅ ์„ ๋งค๊ธธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜ ์„ธ ๋ฌธ์žฅ์— ์ข‹์€ ์–ธ์–ด ๋ชจ๋ธ์ด ์–ด๋–ค ํ™•๋ฅ ์„ ์ฃผ๋Š”์ง€ ๋ณด์„ธ์š”.

๋ฌธ์žฅ ํ™•๋ฅ  ๋น„๊ต

๋ง‰๋Œ€์— ๋งˆ์šฐ์Šค๋ฅผ ์˜ฌ๋ฆฌ๋ฉด ์ด์œ ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. (๊ฐœ๋… ์„ค๋ช…์šฉ ์ƒ๋Œ€๊ฐ’)

ํ˜„๋Œ€ LLM์€ ์ž๊ธฐํšŒ๊ท€(autoregressive) ๋ฐฉ์‹์œผ๋กœ "๋‹ค์Œ ํ† ํฐ"์„ ์˜ˆ์ธกํ•˜๋ฉฐ, ๋ฌธ์žฅ ์ „์ฒด ํ™•๋ฅ ์„ ์กฐ๊ฑด๋ถ€ ํ™•๋ฅ ์˜ ๊ณฑ์œผ๋กœ ๋ถ„ํ•ดํ•ฉ๋‹ˆ๋‹ค. "the theโ€ฆ" ๊ฐ™์€ ๊ตญ์†Œ ์˜์กด์„ฑ๊ณผ "์น˜์ฆˆ๋Š” ์ฅ๋ฅผ ๋จน์ง€ ์•Š๋Š”๋‹ค" ๊ฐ™์€ ์žฅ๊ฑฐ๋ฆฌ ์˜์กด์„ฑ์„ ๋™์‹œ์— ๋‹ค๋ค„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํ•ต์‹ฌ โ€” ๊ธด ๋ฌธ๋งฅ์—์„œ ๊ตฌ๋ฌธยท์˜๋ฏธยท๋งฅ๋ฝ์„ ๋™์‹œ์— ๋‹ค๋ฃจ๋Š” ๊ฒƒ์ด ์–ด๋ ต๊ณ , ํ•œ ๋ฒˆ์— ํ•œ ๋‹จ์–ด์”ฉ ์ฒ˜๋ฆฌํ•˜๋Š” RNN์—๊ฒŒ๋Š” ํŠนํžˆ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ์ด ์žฅ์˜ ๋ชจ๋“  ๋…ผ๋ฌธ์€ ๊ฒฐ๊ตญ ์ด ๋ฌธ์ œ์™€ ์‹ธ์šด ๊ธฐ๋ก์ž…๋‹ˆ๋‹ค.
ยง2

seq2seq์™€ "์ƒ๊ฐ ๋ฒกํ„ฐ"์˜ ๋ณ‘๋ชฉ

2014๋…„ SutskeverยทVinyalsยทLe์˜ seq2seq๋Š” ์ธ์ฝ”๋” RNN์ด ์ž…๋ ฅ ๋ฌธ์žฅ ์ „์ฒด๋ฅผ ๊ณ ์ • ๊ธธ์ด ๋ฒกํ„ฐ ํ•˜๋‚˜("thought vector")๋กœ ์••์ถ•ํ•˜๊ณ , ๋””์ฝ”๋”๊ฐ€ ๊ทธ ๋ฒกํ„ฐ๋กœ๋ถ€ํ„ฐ ๋ฒˆ์—ญ์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

๊ณ ์ • ๊ธธ์ด ๋ณ‘๋ชฉ ์ฒดํ—˜

๋ฌธ์žฅ์ด ๊ธธ์–ด์ ธ๋„ ๋ฒกํ„ฐ ๊ธธ์ด๋Š” ๊ทธ๋Œ€๋กœ์ž…๋‹ˆ๋‹ค. ์Šฌ๋ผ์ด๋”๋กœ ๋ฌธ์žฅ ๊ธธ์ด๋ฅผ ๋Š˜๋ ค ๋ณด์„ธ์š”.

โ†’ ์••์ถ• โ†’
[0.1, โˆ’0.2, 0.8, 1.3, โˆ’0.3]
โ†’ ๋””์ฝ”๋” โ†’ร‰l estรก comiendoโ€ฆ

๋‹จ์–ด 6๊ฐœ์˜ ๊ตฌ๋ฌธยท์˜๋ฏธ ์ „๋ถ€๊ฐ€ ๊ธธ์ด 5 ๋ฒกํ„ฐ ํ•˜๋‚˜์— โ†’ ์••์ถ• ๋ถ€๋‹ด 1.2ร—

์งง์€ ๋ฌธ์žฅ์—์„œ๋Š” ๊ทธ๋Ÿญ์ €๋Ÿญ ํ†ตํ•˜์ง€๋งŒ, ๋ฌธ์žฅ์ด ๊ธธ์–ด์งˆ์ˆ˜๋ก ์ธ์ฝ”๋”์˜ ๋งˆ์ง€๋ง‰ hidden state๋Š” ์•ž๋ถ€๋ถ„์„ "์žŠ์–ด๋ฒ„๋ฆฝ๋‹ˆ๋‹ค". ์‹ค์ œ๋กœ ๋ฌธ์žฅ ๊ธธ์ด์— ๋”ฐ๋ฅธ ๋ฒˆ์—ญ ํ’ˆ์งˆ(BLEU)์„ ๋ณด๋ฉด ๋ณ‘๋ชฉ์ด ๋šœ๋ ทํ•ฉ๋‹ˆ๋‹ค.

๋ฌธ์žฅ ๊ธธ์ด vs. ๋ฒˆ์—ญ ํ’ˆ์งˆ (Bahdanau et al. 2014, Figure 5.5 ๊ทผ์‚ฌ)

์ฐจํŠธ ์œ„์—์„œ ๋งˆ์šฐ์Šค๋ฅผ ์›€์ง์—ฌ ๋ณด์„ธ์š”. ๊ณ ์ • ๋ฒกํ„ฐ ๋ฐฉ์‹(RNNenc)์€ ์•ฝ 20๋‹จ์–ด๋ฅผ ๋„˜์œผ๋ฉด ๊ธ‰๋ฝํ•˜๊ณ , attention์„ ์“ด RNNsearch-50์€ 60๋‹จ์–ด๊นŒ์ง€ ์•ˆ์ •์ ์ž…๋‹ˆ๋‹ค.

๊ณก์„ ์€ ์› ๋…ผ๋ฌธ ๊ทธ๋ฆผ์˜ ๊ทผ์‚ฌ ์žฌํ˜„์ž…๋‹ˆ๋‹ค. ์ •ํ™•ํ•œ ์ˆ˜์น˜๋Š” ์•„๋ž˜ ํ‘œ(WMT ENโ†’FR ์ „์ฒด ์„ฑ๋Šฅ)๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”.

์‹œ์Šคํ…œ๊ธธ์ด ์ œํ•œBLEU (์ „์ฒด)BLEU (๋ฏธ๋“ฑ๋ก์–ด ์ œ์™ธ)
RNNencdec-30 (๊ณ ์ • ๋ฒกํ„ฐ)โ‰ค3013.9324.19
RNNsearch-30 (attention)โ‰ค3021.5031.44
RNNencdec-50โ‰ค5017.8226.71
RNNsearch-50 (์ถ”๊ฐ€ ํ•™์Šต)โ‰ค5028.4536.15
Moses (ํ†ต๊ณ„ ๊ธฐ๋ฐ˜, ์ฐธ๊ณ )โ€”33.3035.63
ํ•ต์‹ฌ โ€” ๋ฌธ์ œ์˜ ๊ทผ์›์€ "๋ชจ๋“  ๊ฒƒ์„ ๋ฒกํ„ฐ ํ•˜๋‚˜์— ์šฑ์—ฌ๋„ฃ๊ธฐ". ํ•ด๋ฒ•์˜ ๋ฐฉํ–ฅ์€ ๋‘ ๊ฐ€์ง€์˜€์Šต๋‹ˆ๋‹ค: ์ž„์‹œ๋ฐฉํŽธ(์ž…๋ ฅ ๋’ค์ง‘๊ธฐ, ยง3)๊ณผ ๊ตฌ์กฐ์  ํ•ด๊ฒฐ(attention, ยง4).
ยง3

์ž„์‹œ๋ฐฉํŽธ: ์ž…๋ ฅ ๋ฌธ์žฅ ๋’ค์ง‘๊ธฐ

Sutskever์˜ 2014 seq2seq ๋…ผ๋ฌธ์˜ ์œ ๋ช…ํ•œ ํŠธ๋ฆญ: ํƒ€๊นƒ์€ ๊ทธ๋Œ€๋กœ ๋‘๊ณ  ์ž…๋ ฅ ์ˆœ์„œ๋งŒ ๋’ค์ง‘์œผ๋ฉด BLEU๊ฐ€ ์•ฝ 5์  ์˜ค๋ฅด๊ณ  perplexity๊ฐ€ 5.8 โ†’ 4.7๋กœ ๋–จ์–ด์กŒ์Šต๋‹ˆ๋‹ค. ๋ชจ๋ธ์ด ๋˜‘๋˜‘ํ•ด์ง„ ๊ฒŒ ์•„๋‹ˆ๋ผ, ์ตœ์ ํ™” ๋ฌธ์ œ๊ฐ€ ์‰ฌ์›Œ์ง„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์‹ ํ˜ธ ๊ฒฝ๋กœ ๊ธธ์ด ์‹คํ—˜

๋ฒˆ์—ญ์—์„œ ๋ณดํ†ต ์†Œ์Šค์˜ ์ฒซ ๋‹จ์–ด๊ฐ€ ํƒ€๊นƒ์˜ ์ฒซ ๋‹จ์–ด์™€ ๋Œ€์‘ํ•ฉ๋‹ˆ๋‹ค. ์†Œ์Šค ์ฒซ ๋‹จ์–ด(xโ‚)์˜ ์ •๋ณด๊ฐ€ ๋””์ฝ”๋” ์‹œ์ž‘์ ๊นŒ์ง€ ๋„๋‹ฌํ•˜๋Š” ๊ฒฝ๋กœ๋ฅผ ์„ธ์–ด ๋ณด์„ธ์š”.

xโ‚ โ†’ ๋””์ฝ”๋” ์ฒซ ์˜ˆ์ธก๊นŒ์ง€ ๊ฑฐ์น˜๋Š” ๋‹จ๊ณ„: 4๋‹จ๊ณ„

๊ฒฝ๋กœ๊ฐ€ ์งง์„์ˆ˜๋ก gradient๊ฐ€ ์ž˜ ํ๋ฅด๊ณ , ์†Œ์Šค์™€ ํƒ€๊นƒ์˜ "์‹œ์ž‘ ๋ถ€๋ถ„"์„ ์ •๋ ฌํ•˜๊ธฐ ์‰ฌ์›Œ์ง‘๋‹ˆ๋‹ค. ๋‹จ, ์–ด์ˆœ์ด ํฌ๊ฒŒ ๋‹ค๋ฅธ ์–ธ์–ด์Œ(์˜ˆ: SVOโ†’SOV)์—์„œ๋Š” ์˜คํžˆ๋ ค ํ•ด๋กœ์šธ ์ˆ˜ ์žˆ๊ณ , ์ค‘โ†’์ผ ๋ฒˆ์—ญ ์‹คํ—˜์—์„œ๋Š” ํ’ˆ์งˆ์ด ๋–จ์–ด์กŒ์Šต๋‹ˆ๋‹ค. Transformer๋Š” ๋ชจ๋“  ์œ„์น˜๋ฅผ ๋™์‹œ์— ๋ณด๋ฏ€๋กœ ์ด ํŠธ๋ฆญ์ด ํ•„์š” ์—†์Šต๋‹ˆ๋‹ค.

ํ•ต์‹ฌ โ€” ๋’ค์ง‘๊ธฐ ํŠธ๋ฆญ์€ "์ •๋ณด๊ฐ€ ํ•„์š”ํ•œ ๊ณณ๊นŒ์ง€์˜ ๊ฒฝ๋กœ๋ฅผ ์ค„์ด๋ฉด ํ•™์Šต์ด ์‰ฌ์›Œ์ง„๋‹ค"๋Š” ๊ตํ›ˆ์„ ๋‚จ๊ฒผ์Šต๋‹ˆ๋‹ค. attention์€ ์ด ๊ฒฝ๋กœ๋ฅผ ์•„์˜ˆ 1๋‹จ๊ณ„๋กœ ๋งŒ๋“œ๋Š” ์ผ๋ฐ˜ํ•ด์ž…๋‹ˆ๋‹ค.
ยง4

Bahdanau Attention: ์ •๋ ฌ์„ ๋ฐฐ์šฐ๋‹ค (2014)

BahdanauยทChoยทBengio์˜ "Neural Machine Translation by Jointly Learning to Align and Translate"๋Š” ๋””์ฝ”๋”๊ฐ€ ๋งค ๋‹จ์–ด๋ฅผ ์ƒ์„ฑํ•  ๋•Œ๋งˆ๋‹ค ์†Œ์Šค ๋ฌธ์žฅ์˜ ์–ด๋А ๋ถ€๋ถ„์„ ๋ณผ์ง€ ๋™์ ์œผ๋กœ ์„ ํƒํ•˜๊ฒŒ ํ–ˆ์Šต๋‹ˆ๋‹ค(RNNsearch). thought vector ํ•˜๋‚˜์— ์˜์กดํ•˜๋Š” ๋Œ€์‹ , ๊ฐ ์Šคํ…์—์„œ ์†Œ์Šค ๋‹จ์–ด๋“ค์˜ ๊ฐ€์ค‘ ํ‰๊ท ์œผ๋กœ context vector๋ฅผ ์ƒˆ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

์ •๋ ฌ(alignment) ํžˆํŠธ๋งต โ€” ์˜์–ดโ†’ํ”„๋ž‘์Šค์–ด (Figure 5.6 ์žฌํ˜„)

ํ–‰ = ์ƒ์„ฑ ์ค‘์ธ ํ”„๋ž‘์Šค์–ด ๋‹จ์–ด, ์—ด = ์˜์–ด ์†Œ์Šค ๋‹จ์–ด. ์…€์— ๋งˆ์šฐ์Šค๋ฅผ ์˜ฌ๋ฆฌ๋ฉด ๊ฐ€์ค‘์น˜๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๋Œ€์ฒด๋กœ ๋Œ€๊ฐ์„ ์ด์ง€๋งŒ, โ€œEuropean Economic Areaโ€ โ†’ โ€œzone รฉconomique europรฉenneโ€์—์„œ ์–ด์ˆœ์ด ๋’ค์ง‘ํžˆ๋ฉฐ attention์ด ์ ํ”„ํ•˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•˜์„ธ์š” (ํ–‰ zoneยทรฉconomiqueยทeuropรฉenne).

01 (๊ฐ€์ค‘์น˜)

์ด ๋…ผ๋ฌธ์€ ์•ฝ 4๋งŒ ํšŒ ์ธ์šฉ๋˜์—ˆ๊ณ  2025๋…„ ICLR Test-of-Time Award ์ค€์šฐ์Šน์ž‘์œผ๋กœ ์„ ์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Bahdanau์˜ "์‹ ๊ฒฝ๋ง ์ •๋ ฌ" ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด ๊ณง Transformer self-attention์˜ ์ง๊ณ„ ์กฐ์ƒ์ž…๋‹ˆ๋‹ค.

ํ•ต์‹ฌ โ€” attention์˜ ์ฒซ ๋ฒˆ์งธ ์ •์ฒด: ๋ฏธ๋ถ„ ๊ฐ€๋Šฅํ•œ ์†Œํ”„ํŠธ ์ •๋ ฌ(soft alignment). "์–ด๋””๋ฅผ ๋ณผ์ง€"๋ฅผ ๋”ฑ๋”ฑํ•˜๊ฒŒ ๊ณ ๋ฅด๋Š” ๋Œ€์‹ , ๋ชจ๋“  ์œ„์น˜์— ํ™•๋ฅ  ๊ฐ€์ค‘์น˜๋ฅผ ์ฃผ๊ณ  ๊ฐ€์ค‘ ํ‰๊ท ํ•œ๋‹ค โ€” ๊ทธ๋ž˜์„œ ์—ญ์ „ํŒŒ๋กœ ํ•™์Šต๋ฉ๋‹ˆ๋‹ค.
ยง5

Scaled Dot-Product Attention: QยทKยทV

Transformer๋Š” attention์„ ์„ธ ๊ฐ€์ง€ ํ•™์Šต๋œ ํˆฌ์˜์œผ๋กœ ์ •์‹ํ™”ํ–ˆ์Šต๋‹ˆ๋‹ค. Query๋Š” "์ง€๊ธˆ ๋‚ด๊ฐ€ ์ฐพ๋Š” ๊ฒƒ", Key๋Š” "๊ฐ ํ† ํฐ์ด ์ œ๊ณตํ•˜๋Š” ๊ฒƒ", Value๋Š” "์‹ค์ œ๋กœ ์ „๋‹ฌ๋  ์ •๋ณด"์ž…๋‹ˆ๋‹ค.

Attention(Q, K, V) = softmax(QKTโˆšdk)V

์ ์ˆ˜(QKT)๋ฅผ โˆšdk๋กœ ๋‚˜๋ˆ„๋Š” ๊ฒƒ์ด "scaled"์˜ ์˜๋ฏธ์ž…๋‹ˆ๋‹ค. ์™œ ๋‚˜๋ˆ ์•ผ ํ• ๊นŒ์š”? ์ง์ ‘ ์‹คํ—˜ํ•ด ๋ด…์‹œ๋‹ค.

โˆšdฬ„โ‚– ์Šค์ผ€์ผ๋ง ์‹คํ—˜ โ€” softmax ํฌํ™”

q์™€ k์˜ ๊ฐ ์„ฑ๋ถ„์„ ํ‰๊ท  0, ๋ถ„์‚ฐ 1๋กœ ๋ฝ‘์œผ๋ฉด ๋‚ด์  qยทk์˜ ๋ถ„์‚ฐ์€ dk์— ๋น„๋ก€ํ•ด ์ปค์ง‘๋‹ˆ๋‹ค. dk๋ฅผ ํ‚ค์šฐ๊ณ  ์Šค์ผ€์ผ๋ง์„ ๊บผ ๋ณด์„ธ์š” โ€” softmax๊ฐ€ ํ•œ ๊ณณ์œผ๋กœ ์ ๋ฆฌ๋ฉฐ(ํฌํ™”) gradient๊ฐ€ ์‚ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

์ตœ๋Œ€ ๊ฐ€์ค‘์น˜ โ€” ยท ์—”ํŠธ๋กœํ”ผ โ€” bits

ํ•œ ํ† ํฐ์˜ ์ƒˆ ํ‘œํ˜„์ด ๋งŒ๋“ค์–ด์ง€๋Š” ๊ณผ์ •

์ฑ…์˜ ์˜ˆ์‹œ "How are you"์—์„œ "are"๋ฅผ ์—…๋ฐ์ดํŠธํ•œ๋‹ค๊ณ  ํ•ฉ์‹œ๋‹ค. "are"์˜ Query๊ฐ€ ์„ธ ํ† ํฐ์˜ Key์™€ ๋น„๊ต๋˜์–ด ๊ฐ€์ค‘์น˜ 0.2 / 0.1 / 0.7์ด ๋‚˜์˜ค๋ฉด, ์ƒˆ ํ‘œํ˜„์€ ์„ธ Value์˜ ๊ฐ€์ค‘ ํ˜ผํ•ฉ์ด ๋ฉ๋‹ˆ๋‹ค. ์Šฌ๋ผ์ด๋”๋กœ ์ ์ˆ˜๋ฅผ ๋ฐ”๊ฟ” ๋ณด์„ธ์š” โ€” softmax๋ฅผ ๊ฑฐ์ณ ํ˜ผํ•ฉ๋น„๊ฐ€ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

ํ•ต์‹ฌ โ€” attention์€ ๋ฏธ๋ถ„ ๊ฐ€๋Šฅํ•œ ์กฐํšŒ(soft lookup)์ž…๋‹ˆ๋‹ค: Q๋กœ ์งˆ์˜ํ•˜๊ณ , K์™€์˜ ์œ ์‚ฌ๋„๋กœ ๊ฐ€์ค‘์น˜๋ฅผ ๋งŒ๋“ค๊ณ , V๋ฅผ ๊ฐ€์ค‘ ํ‰๊ท ํ•ด ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. โˆšdk๋Š” ์ด ์กฐํšŒ๊ฐ€ ํ•™์Šต ๋‚ด๋‚ด ๋ถ€๋“œ๋Ÿฝ๊ฒŒ(gradient๊ฐ€ ํ๋ฅด๊ฒŒ) ์œ ์ง€๋˜๋„๋ก ํ•˜๋Š” ์•ˆ์ „์žฅ์น˜์ž…๋‹ˆ๋‹ค.
ยง6

Self-Attention๊ณผ ์ธ์ฝ”๋” ๋ธ”๋ก

self-attention์—์„œ๋Š” QยทKยทV๊ฐ€ ๋ชจ๋‘ ๊ฐ™์€ ๋ฌธ์žฅ์—์„œ ๋‚˜์˜ต๋‹ˆ๋‹ค. ๊ฐ ํ† ํฐ์ด ๊ฐ™์€ ๋ฌธ์žฅ์˜ ๋‹ค๋ฅธ ํ† ํฐ๋“ค์—์„œ ์ •๋ณด๋ฅผ ๋ชจ์•„, ์ž์‹ ์„ ๋ฌธ๋งฅ ๋ฏผ๊ฐํ•œ ์š”์•ฝ์œผ๋กœ ๋‹ค์‹œ ์”๋‹ˆ๋‹ค.

ํ† ํฐ์„ ํด๋ฆญํ•ด ๋ณด์„ธ์š” โ€” "The mouse ate the cheese ."

ํด๋ฆญํ•œ ํ† ํฐ(Query)์ด ๊ฐ ํ† ํฐ(Key)์— ์ฃผ๋Š” attention ๊ฐ€์ค‘์น˜๊ฐ€ ์ฃผํ™ฉ ๋ง‰๋Œ€๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ์•„๋ž˜์—๋Š” ๊ทธ ํ† ํฐ์˜ ์ƒˆ ํ‘œํ˜„์ด ์–ด๋–ค ํ˜ผํ•ฉ์ธ์ง€ ๋ณด์ž…๋‹ˆ๋‹ค.

01

๊ฐ€์ค‘์น˜๋Š” ์„ค๋ช…์šฉ์œผ๋กœ ์†์ˆ˜ ๊ตฌ์„ฑํ•œ ๊ฐ’์ž…๋‹ˆ๋‹ค. ์‹ค์ œ ๋ชจ๋ธ์—์„œ๋Š” ํ•™์Šต๋œ WQยทWKยทWV ํ–‰๋ ฌ์ด ์ด ํŒจํ„ด์„ ๋งŒ๋“ค์–ด๋ƒ…๋‹ˆ๋‹ค. "ate"๊ฐ€ ์ฃผ์–ด mouse์™€ ๋ชฉ์ ์–ด cheese๋ฅผ ๊ฐ•ํ•˜๊ฒŒ ๋ณด๊ณ , ๊ด€์‚ฌ "the"๊ฐ€ ์ž๊ธฐ ๋ช…์‚ฌ๋ฅผ ์ฐพ๋Š” ํŒจํ„ด์— ์ฃผ๋ชฉํ•˜์„ธ์š”.

attention์ด ํ† ํฐ ์‚ฌ์ด์˜ ์ •๋ณด๋ฅผ ์„ž์€ ๋’ค์—๋Š”, feed-forward ๋„คํŠธ์›Œํฌ(FFN)๊ฐ€ ๊ฐ ์œ„์น˜๋ฅผ ๊ฐœ๋ณ„์ ์œผ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค(512 โ†’ 2048 โ†’ ReLU โ†’ 512). ๊ฐ ์„œ๋ธŒ๋ ˆ์ด์–ด๋Š” residual ์—ฐ๊ฒฐ๊ณผ layer normalization์œผ๋กœ ๊ฐ์‹ธ์—ฌ ๊นŠ๊ฒŒ ์Œ“์•„๋„ ์•ˆ์ •์ ์ž…๋‹ˆ๋‹ค.

์ธ์ฝ”๋” ๋ ˆ์ด์–ด ํ•œ ์ธต (์•„๋ž˜โ†’์œ„)
์ž…๋ ฅ ์ž„๋ฒ ๋”ฉ + ์œ„์น˜ ์ธ์ฝ”๋”ฉ (ยง9)
โ†‘
Multi-Head Self-Attention โคด residual
Add & LayerNorm
โ†‘
FFN: 512 โ†’ 2048 โ†’ ReLU โ†’ 512 โคด residual
Add & LayerNorm
โ†‘ ร—6์ธต ๋ฐ˜๋ณต
ํ•ต์‹ฌ โ€” ์—ญํ•  ๋ถ„๋‹ด: attention์€ ํ† ํฐ๋“ค ์‚ฌ์ด์—์„œ ์ •๋ณด๋ฅผ ์„ž๊ณ , FFN์€ ์„ž์ธ ํ‘œํ˜„์„ ๊ฐ ์œ„์น˜์—์„œ ๋น„์„ ํ˜• ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ธ”๋ก์„ 6์ธต(base) ์Œ“์€ ๊ฒƒ์ด ์ธ์ฝ”๋”์ž…๋‹ˆ๋‹ค.
ยง7

๋””์ฝ”๋”: Causal Mask์™€ Cross-Attention

๋””์ฝ”๋”๋Š” ์ƒ์„ฑ์šฉ์œผ๋กœ ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ธต๋งˆ๋‹ค ์„ธ ๋ถ€๋ถ„ โ€” โ‘  masked self-attention, โ‘ก cross-attention, โ‘ข FFN โ€” ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

โ‘  Causal mask โ€” ๋ฏธ๋ž˜๋ฅผ ๋ณด์ง€ ๋ชปํ•˜๊ฒŒ

next-token ์˜ˆ์ธก์„ ํ•™์Šตํ•˜๋ ค๋ฉด, ๊ฐ ํ† ํฐ์€ ์ž๊ธฐ๋ณด๋‹ค ์•ž์˜ ํ† ํฐ๋งŒ ๋ณผ ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฏธ๋ž˜ ์œ„์น˜์˜ ์ ์ˆ˜๋ฅผ โˆ’โˆž๋กœ ๋ฐ”๊พธ๋ฉด softmax ์ดํ›„ ์ •ํ™•ํžˆ 0์ด ๋ฉ๋‹ˆ๋‹ค. ํ† ๊ธ€ํ•ด ๋ณด์„ธ์š”.

์…€ ๊ฐ’์€ softmax๋ฅผ ๊ฑฐ์นœ attention ๊ฐ€์ค‘์น˜(ํ–‰ ํ•ฉ = 1). ๋งˆ์Šคํฌ๋ฅผ ์ผœ๋ฉด ์œ„์‚ผ๊ฐ(๋ฏธ๋ž˜)์ด โˆ’โˆž โ†’ 0์ด ๋˜์–ด ๊ฐ ํ–‰์ด ๊ณผ๊ฑฐ์—๋งŒ ๋ถ„๋ฐฐ๋ฉ๋‹ˆ๋‹ค. ๋ฐฐ์น˜ ํ•™์Šต์—์„œ๋Š” <PAD> ์œ„์น˜๋ฅผ ๊ฐ€๋ฆฌ๋Š” padding mask๋„ ํ•จ๊ป˜ ์”๋‹ˆ๋‹ค.

โ‘ก Cross-attention โ€” "Je vais ร  l'รฉcole" โ†’ "I am going to school"

cross-attention์€ Q๋Š” ๋””์ฝ”๋”์—์„œ, KยทV๋Š” ์ธ์ฝ”๋”์—์„œ ์˜ต๋‹ˆ๋‹ค. ์ƒ์„ฑ ์Šคํ…์„ ์˜ฎ๊ธฐ๋ฉฐ, ๋””์ฝ”๋”๊ฐ€ ์†Œ์Šค์˜ ์–ด๋””๋ฅผ ์ฐธ์กฐํ•˜๋Š”์ง€ ๋ณด์„ธ์š”.

์ธ์ฝ”๋” (์†Œ์Šค, KยทV ์ œ๊ณต)
๋””์ฝ”๋” (์ƒ์„ฑ ์ค‘, Q ์ œ๊ณต)

์˜› seq2seq๋Š” ์†Œ์Šค ์ „์ฒด๋ฅผ ๋ฒกํ„ฐ ํ•˜๋‚˜๋กœ ์••์ถ•ํ–ˆ์ง€๋งŒ, cross-attention ๋•์— ๋””์ฝ”๋”๋Š” ๋งค ์Šคํ… ์–ด๋–ค ์ธ์ฝ”๋” ํ† ํฐ์ด๋“  ์ง์ ‘ ์ฐธ์กฐํ•ฉ๋‹ˆ๋‹ค. "school"์„ ๋งŒ๋“ค ๋•Œ "รฉcole"์— ๊ฐ•ํ•˜๊ฒŒ ์ฃผ๋ชฉํ•˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•˜์„ธ์š”. ๋งˆ์ง€๋ง‰์— linear + softmax๊ฐ€ ์–ดํœ˜ ์ „์ฒด์— ๋Œ€ํ•œ ํ™•๋ฅ ์„ ๋งŒ๋“ค๊ณ , ๋‹ค์Œ ํ† ํฐ์„ ๋ฝ‘์•„ ๋ถ™์ด๊ณ , ๋ฐ˜๋ณตํ•ฉ๋‹ˆ๋‹ค.

ํ•ต์‹ฌ โ€” ์› ๋…ผ๋ฌธ์˜ ์ธ์ฝ”๋”โ€“๋””์ฝ”๋”๋Š” ๋ฒˆ์—ญ์šฉ ๊ตฌ์„ฑ์ด๊ณ , ํ˜„๋Œ€ LLM ๋‹ค์ˆ˜๋Š” ๋””์ฝ”๋” ์ „์šฉ(decoder-only) ํ›„์†์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ค‘์‹ฌ ์•„์ด๋””์–ด๋Š” ๊ฐ™์Šต๋‹ˆ๋‹ค: attention์ด ๋ฌธ๋งฅ ๋ฏผ๊ฐํ•œ ํ‘œํ˜„์„ ๋งŒ๋“ค์–ด next-token ์˜ˆ์ธก์„ ์œ ์šฉํ•˜๊ฒŒ ํ•œ๋‹ค.
ยง8

Multi-Head Attention: ์—ฌ๋Ÿฌ ๊ด€์ ์œผ๋กœ ๋ณด๊ธฐ

attention์„ ํ•œ ๋ฒˆ๋งŒ ํ•˜๋ฉด "๊ด€์ "๋„ ํ•˜๋‚˜๋ฟ์ž…๋‹ˆ๋‹ค. Transformer๋Š” dmodel=512๋ฅผ h๊ฐœ์˜ head๋กœ ์ชผ๊ฐœ(head๋‹น dk=512/h), ๊ฐ head๊ฐ€ ์„œ๋กœ ๋‹ค๋ฅธ ํŒจํ„ด์„ ๋ณ‘๋ ฌ๋กœ ํ•™์Šตํ•˜๊ฒŒ ํ•œ ๋’ค ๊ฒฐ๊ณผ๋ฅผ ์ด์–ด๋ถ™์ž…๋‹ˆ๋‹ค.

head ์ˆ˜๋ฅผ ๋ฐ”๊ฟ” ๋ณด์„ธ์š”
head๋‹น ์ฐจ์› dk = 64 (= 512 / h)

์˜ˆ์‹œ ํŒจํ„ด(์„ค๋ช…์šฉ): ์‹ค์ œ ํ•™์Šต๋œ Transformer์—์„œ๋„ head๋“ค์ด "์ด์ „ ํ† ํฐ ์ถ”์ ", "๊ด€์‚ฌโ†’๋ช…์‚ฌ ์—ฐ๊ฒฐ", "๋ฌธ์žฅ ์‹œ์ž‘ ์ฐธ์กฐ", "๋™์‚ฌโ†”๋…ผํ•ญ ์—ฐ๊ฒฐ" ๊ฐ™์€ ์„œ๋กœ ๋‹ค๋ฅธ ์—ญํ• ๋กœ ๋ถ„ํ™”ํ•˜๋Š” ๊ฒƒ์ด ๊ด€์ฐฐ๋ฉ๋‹ˆ๋‹ค. h๋ฅผ ๋Š˜๋ ค๋„ ์ „์ฒด ์—ฐ์‚ฐ๋Ÿ‰์€ ๋น„์Šทํ•ฉ๋‹ˆ๋‹ค โ€” ๊ด€์ ์˜ ์ˆ˜์™€ head๋‹น ํ•ด์ƒ๋„(dk)๋ฅผ ๋งž๋ฐ”๊พธ๋Š” ๊ฒƒ.

ํ•ต์‹ฌ โ€” base(65M) โ†’ big(213M) ์Šค์ผ€์ผ์—…์—์„œ๋„ head๋‹น ์ฐจ์›์€ ๊ณ ์ •ํ•œ ์ฑ„ ํญ๊ณผ head ์ˆ˜๋ฅผ ๋Š˜๋ ธ์Šต๋‹ˆ๋‹ค. ๋™์ผ ๋ธ”๋ก์˜ ๋ฐ˜๋ณต์ด๋ผ๋Š” ๋ชจ๋“ˆ์‹ ์„ค๊ณ„๊ฐ€ Transformer๋ฅผ ์‰ฝ๊ฒŒ ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ๊ตฌ์กฐ๋กœ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.
ยง9

Positional Encoding: ์ˆœ์„œ ์—†๋Š” ๋ชจ๋ธ์— ์ˆœ์„œ๋ฅผ

์ˆœํ™˜๋„ ํ•ฉ์„ฑ๊ณฑ๋„ ์—†์•ด์œผ๋‹ˆ, ๊ทธ๋Œ€๋กœ๋ผ๋ฉด ๋ชจ๋ธ์€ "cat fat"๊ณผ "fat cat"์„ ๊ตฌ๋ถ„ํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค. attention ์ž์ฒด๋Š” ์ˆœ์„œ๋ฅผ ๋ชจ๋ฅด๋Š”(order-agnostic) ์—ฐ์‚ฐ์ด๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ํ•ด๋ฒ•: ์ฃผํŒŒ์ˆ˜๊ฐ€ ๋‹ค๋ฅธ sin/cos ํŒŒํ˜•์„ ์ž„๋ฒ ๋”ฉ์— ๋”ํ•ด ์œ„์น˜๋ฅผ ์ƒˆ๊ฒจ ๋„ฃ์Šต๋‹ˆ๋‹ค.

PE(pos, i) ํžˆํŠธ๋งต + ํŒŒํ˜• ํƒ์ƒ‰๊ธฐ

๊ฐ€๋กœ = ๋ฌธ์žฅ ๋‚ด ์œ„์น˜(0โ€“99), ์„ธ๋กœ = ์ž„๋ฒ ๋”ฉ ์ฐจ์›(0โ€“63). ์ง์ˆ˜ ์ฐจ์›์€ sin, ํ™€์ˆ˜๋Š” cos์ด๋ฉฐ ์ฐจ์›์ด ์ปค์งˆ์ˆ˜๋ก ํŒŒ์žฅ์ด ๊ธฐํ•˜๊ธ‰์ˆ˜์ ์œผ๋กœ ๊ธธ์–ด์ง‘๋‹ˆ๋‹ค. ์Šฌ๋ผ์ด๋”๋กœ ํŠน์ • ์ฐจ์›์˜ ํŒŒํ˜•์„ ๋ณด์„ธ์š”. ํžˆํŠธ๋งต ์œ„์— ๋งˆ์šฐ์Šค๋ฅผ ์˜ฌ๋ฆฌ๋ฉด ๊ฐ’์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

โˆ’1+1

๋‚ฎ์€ ์ฐจ์›(์œ„์ชฝ)์€ ๋น ๋ฅด๊ฒŒ ์ง„๋™ํ•ด ์ด์›ƒ ์œ„์น˜๋ฅผ ๊ตฌ๋ถ„ํ•˜๊ณ , ๋†’์€ ์ฐจ์›์€ ๋А๋ฆฌ๊ฒŒ ์ง„๋™ํ•ด ๋ฉ€๋ฆฌ ๋–จ์–ด์ง„ ์œ„์น˜๋ฅผ ๊ตฌ๋ถ„ํ•ฉ๋‹ˆ๋‹ค โ€” ์ž๋ฆฟ์ˆ˜๊ฐ€ ๋‹ค๋ฅธ ์‹œ๊ณ„ ๋ฐ”๋Š˜๋“ค์ฒ˜๋Ÿผ. ์‚ผ๊ฐํ•จ์ˆ˜ ๋ง์…ˆ์ •๋ฆฌ ๋•๋ถ„์— ์ƒ๋Œ€ ๊ฑฐ๋ฆฌ๋„ ์„ ํ˜• ๋ณ€ํ™˜์œผ๋กœ ํ‘œํ˜„๋ฉ๋‹ˆ๋‹ค.

ํ›„์† ๋ชจ๋ธ๋“ค์€ ์ด ๋ฐฉ์‹์„ ๋‹ค๋“ฌ์–ด ์™”์Šต๋‹ˆ๋‹ค: BERT(2018)ยทGPT-2/3์€ ํ•™์Šตํ˜• ์ ˆ๋Œ€ ์œ„์น˜ ์ž„๋ฒ ๋”ฉ, T5(2019)๋Š” ํ•™์Šตํ˜• ์ƒ๋Œ€ ์œ„์น˜, LLaMA(2023)๋Š” attention ๋‚ด๋ถ€์— ์ƒ๋Œ€ ์œ„์น˜๋ฅผ ์ง์ ‘ ์ฃผ์ž…ํ•˜๋Š” RoPE(rotary)๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ณ ์ •ยท์ ˆ๋Œ€ โ†’ ์ƒ๋Œ€ยทํ™•์žฅ ๊ฐ€๋Šฅํ•œ ๋ฐฉ์‹์œผ๋กœ์˜ ํ๋ฆ„์ž…๋‹ˆ๋‹ค.

ํ•ต์‹ฌ โ€” ๋น„ํŒ์ž๋“ค์€ ์œ„์น˜ ์ธ์ฝ”๋”ฉ์„ "์ž„์‹œ๋ฐฉํŽธ(hacky workaround)"์ด๋ผ ๋ถˆ๋ €๊ณ , ์‹ค์ œ๋กœ ๋ฌด์ž‘์œ„ ์–ด์ˆœ ๊ฐ์ง€ ์‹คํ—˜์—์„œ ์•ฝ์ ๋„ ํ™•์ธ๋์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ฒˆ์—ญ์ฒ˜๋Ÿผ ์–ด์ˆœ์— ๋ฏผ๊ฐํ•œ ๊ณผ์ œ๋กœ ํ•™์Šตํ•˜๋ฉด Transformer๋Š” ์ˆœํ™˜ ๋ชจ๋ธ๋ณด๋‹ค ์œ„์น˜ ์ •๋ณด๋ฅผ ๋” ์ž˜ ํ•™์Šตํ–ˆ์Šต๋‹ˆ๋‹ค โ€” ๊ตฌ์กฐ์˜ ๊ฒฐํ•์„ ์ตœ์ ํ™”์™€ ์Šค์ผ€์ผ์ด ๋ณด์ƒํ•œ ์‚ฌ๋ก€.
ยง10

Attention์˜ ์นœ์ฒ™๋“ค: ๊ฐ€๋ฆฌํ‚ค๊ธฐ, ๊ธฐ์–ต, ์ˆœ์„œ

Transformer ์ด์ „์—, attention์ด "๋ฌธ๋งฅ ์š”์•ฝ" ์ด์ƒ์ž„์„ ๋ณด์—ฌ์ค€ ์„ธ ๊ฐˆ๋ž˜๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

10.1 Pointer Networks (2015) โ€” ๋ถ„ํฌ ์ž์ฒด๊ฐ€ ์ถœ๋ ฅ

๋ฒˆ์—ญ์€ ์–ดํœ˜๊ฐ€ ๊ณ ์ •๋ผ ์žˆ์ง€๋งŒ, ๋ณผ๋ก ๊ป์งˆ(convex hull)ยท์ˆœํšŒ ํŒ๋งค์› ๋ฌธ์ œ(TSP)์ฒ˜๋Ÿผ ๋‹ต์ด ์ž…๋ ฅ์˜ ์›์†Œ๋“ค์ธ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. Ptr-Net์€ Bahdanau attention์˜ ๊ฐ€์ค‘์น˜๋ฅผ context ๊ณ„์‚ฐ์— ์“ฐ๋Š” ๋Œ€์‹  ์ž…๋ ฅ ์œ„์น˜์— ๋Œ€ํ•œ ํ™•๋ฅ ๋ถ„ํฌ, ์ฆ‰ ์ถœ๋ ฅ ๊ทธ ์ž์ฒด๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. "๋ณธ ๊ฒƒ์„ ์„ค๋ช…ํ•˜๊ธฐ"์™€ "๊ทธ๊ฒƒ์„ ์†๊ฐ€๋ฝ์œผ๋กœ ๊ฐ€๋ฆฌํ‚ค๊ธฐ"์˜ ์ฐจ์ด์ž…๋‹ˆ๋‹ค.

๋ณผ๋ก ๊ป์งˆ ํฌ์ธํŒ… ๋ฐ๋ชจ

์บ”๋ฒ„์Šค๋ฅผ ํด๋ฆญํ•ด ์ ์„ ์ถ”๊ฐ€ํ•˜๊ณ  ํฌ์ธํŒ… ์‹คํ–‰์„ ๋ˆ„๋ฅด์„ธ์š”. ๋ชจ๋ธ์ด ํ•˜๋“ฏ ๋งค ์Šคํ… ์ž…๋ ฅ ์  ํ•˜๋‚˜๋ฅผ "๊ฐ€๋ฆฌํ‚ค๋ฉฐ" ๊ป์งˆ์„ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค. (์—ฌ๊ธฐ์„œ๋Š” ์‹ค์ œ ๊ธฐํ•˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ์ •๋‹ต ์‹œํ€€์Šค๋ฅผ ๊ณ„์‚ฐํ•ด ์‹œ์—ฐํ•ฉ๋‹ˆ๋‹ค.)

50๊ฐœ ์  ๊ธฐ์ค€ ์ •ํ™•๋„: LSTM ๋‹จ๋… 1.9% โ†’ LSTM+attention 38.9% โ†’ Ptr-Net 72.6%. ๊ฒŒ๋‹ค๊ฐ€ 5โ€“50๊ฐœ ์ ์œผ๋กœ ํ•™์Šตํ•œ ๋ชจ๋ธ์ด 500๊ฐœ ์ ์—์„œ๋„ ๋ฉด์  ๊ธฐ์ค€ 99.2%๋ฅผ ์œ ์ง€ํ•˜๋ฉฐ ์ผ๋ฐ˜ํ™”ํ–ˆ์Šต๋‹ˆ๋‹ค. TSP์—์„œ๋Š” ์ž์‹ ์„ ๊ฐ€๋ฅด์นœ ํœด๋ฆฌ์Šคํ‹ฑ(A1)๋ณด๋‹ค ๋‚˜์€ ํ•ด๋ฅผ ์ฐพ๊ธฐ๋„ ํ–ˆ์Šต๋‹ˆ๋‹ค.

10.2 Neural Turing Machines (2014) โ€” ๋ฏธ๋ถ„ ๊ฐ€๋Šฅํ•œ ๋ฉ”๋ชจ๋ฆฌ

GravesยทWayneยทDanihelka์˜ NTM์€ ์‹ ๊ฒฝ๋ง(controller)์— ์™ธ๋ถ€ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋ถ™์ด๊ณ , ์ฝ๊ธฐ/์“ฐ๊ธฐ ํ—ค๋“œ๊ฐ€ attention์œผ๋กœ ๋ฉ”๋ชจ๋ฆฌ ์œ„์น˜๋ฅผ ์„ ํƒํ•˜๊ฒŒ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด "Graves attention"์ž…๋‹ˆ๋‹ค.

Controller (LSTM)
Read heads โ†“โ†‘
Write heads โ†“
M E M O R Y

NTM์€ ํ•™์Šต์ด ์–ด๋ ค์›Œ ๋„๋ฆฌ ์“ฐ์ด์ง„ ๋ชปํ–ˆ์ง€๋งŒ, Transformer๋Š” ์ด ์•„์ด๋””์–ด์˜ ์•”๋ฌต์  ๋ฒ„์ „์œผ๋กœ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค โ€” ๋ณ„๋„ ๋ฉ”๋ชจ๋ฆฌ ํ–‰๋ ฌ ์—†์ด, ์‹œํ€€์Šค ์ž์ฒด๋ฅผ ๋ฉ”๋ชจ๋ฆฌ๋กœ ์‚ผ์•„ self-attention์œผ๋กœ ๋ชจ๋“  ์œ„์น˜๋ฅผ ์ฝ์Šต๋‹ˆ๋‹ค.

10.3 Order Matters (2015) โ€” ์ˆœ์„œ๋Š” ๊ณต์งœ๊ฐ€ ์•„๋‹ˆ๋‹ค

VinyalsยทBengioยทKudlur๋Š” seq2seq๊ฐ€ ์ž…๋ ฅ ์ˆœ์„œ์— ๋ฏผ๊ฐํ•˜๋‹ค๋Š” ๊ฒƒ์„ ์ฒด๊ณ„์ ์œผ๋กœ ๋ณด์˜€์Šต๋‹ˆ๋‹ค. ์ง‘ํ•ฉ์ฒ˜๋Ÿผ ์ž์—ฐ ์ˆœ์„œ๊ฐ€ ์—†๋Š” ๋ฐ์ดํ„ฐ๋ผ๋„, ์–ด๋–ค ์ˆœ์„œ๋กœ ๋„ฃ๋А๋ƒ์— ๋”ฐ๋ผ ์„ฑ๋Šฅ์ด ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

์–ด์ˆœ ์‹คํ—˜ โ€” ์–ธ์–ด ๋ชจ๋ธ๋ง perplexity

๊ฐ™์€ ๋ฌธ์žฅ์„ ๋‹ค๋ฅธ ์ˆœ์„œ๋กœ ํ•™์Šต์‹œํ‚ค๋ฉด? (๋‚ฎ์„์ˆ˜๋ก ์ข‹์Œ)

ํ•ด๋ฒ•์œผ๋กœ ์ˆœ์„œ ๋ถˆ๋ณ€ Read-Process-Write ์ธ์ฝ”๋”(๋ฉ”๋ชจ๋ฆฌ์— ๋ฌด์ˆœ์„œ๋กœ ์“ฐ๊ณ , attention์œผ๋กœ ๋ฐ˜๋ณตํ•ด ์ฝ์–ด ์ฒ˜๋ฆฌ)๋ฅผ ์ œ์•ˆํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ตฌ๋ฌธ ๋ถ„์„์—์„œ๋Š” ํŠธ๋ฆฌ ์ˆœํšŒ ์ˆœ์„œ๋งŒ ๋ฐ”๊ฟ”๋„ F1์ด 89.5% โ†” 81.5%๋กœ ๊ฐˆ๋ ธ์Šต๋‹ˆ๋‹ค. attention ๊ธฐ๋ฐ˜ ๋ชจ๋ธ์€ ์ˆœ์„œ ๋ณ€ํ™”์— ๋” ๊ฐ•๊ฑดํ•˜์ง€๋งŒ, ์—ฌ์ „ํžˆ ์ˆœ์„œ์˜ ์˜ํ–ฅ์„ ๋ฐ›์Šต๋‹ˆ๋‹ค.

ํ•ต์‹ฌ โ€” ์„ธ ๋…ผ๋ฌธ์˜ ๊ณตํ†ต ์ฃผ์ œ: ์œ ์—ฐํ•œ attention ์ฃผ์†Œ์ง€์ •. ๋ชจ๋“  ๊ฒƒ์„ hidden state ํ•˜๋‚˜์— ์••์ถ•ํ•˜๋Š” ๋Œ€์‹ , ํ•„์š”ํ•  ๋•Œ ํŠน์ • ์ž…๋ ฅ ์›์†Œยท๋ฉ”๋ชจ๋ฆฌ ์œ„์น˜๋ฅผ ์ฐธ์กฐํ•˜๋Š” ์‹ ๊ฒฝ๋ง์ด ๋” ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. Transformer๋Š” ์ด ๊ตํ›ˆ์˜ ์ข…ํ•ฉ์ž…๋‹ˆ๋‹ค.
ยง11

๊ฒฐ๊ณผ, ํšŒ์˜๋ก , ๊ทธ๋ฆฌ๊ณ  ๋ฐˆ

Transformer๋Š” ๊ธฐ๊ณ„ ๋ฒˆ์—ญ์˜ ์ƒˆ ๊ธฐ๋ก์„ ์„ธ์› ๊ณ  โ€” ๋” ์ค‘์š”ํ•˜๊ฒŒ๋Š” โ€” ๋” ๋นจ๋ฆฌ, ๋ณ‘๋ ฌ๋กœ ํ•™์Šต๋์Šต๋‹ˆ๋‹ค.

41.0
BLEU ยท WMT ENโ†’FR
137B ํŒŒ๋ผ๋ฏธํ„ฐ MoE ํฌํ•จ ๊ธฐ์กด ์ „๋ถ€ ์ถ”์›”
28.4
BLEU ยท WMT ENโ†’DE
์•™์ƒ๋ธ” ํฌํ•จ ์ „ ๋ชจ๋ธ ๋Šฅ๊ฐ€
12์‹œ๊ฐ„
base ๋ชจ๋ธ ํ•™์Šต ์‹œ๊ฐ„
P100 GPU 8์žฅ 1๋Œ€
91.3
F1 ยท ๊ตฌ๋ฌธ ๋ถ„์„ (WSJ)
๊ตฌ์กฐ ๋ณ€๊ฒฝ ์—†์ด ๋ฒˆ์—ญ ๋ฐ– ๊ณผ์ œ๋„

๋น„๊ฒฐ์€ ๊ฒฝ๋กœ ๊ธธ์ด์ž…๋‹ˆ๋‹ค. RNN์€ ํ† ํฐ์„ ์ˆœ์„œ๋Œ€๋กœ ์ฒ˜๋ฆฌํ•ด ๋ฉ€๋ฆฌ ์žˆ๋Š” ๋‘ ํ† ํฐ์„ ์ž‡๋Š” ๋ฐ ๊ฑฐ๋ฆฌ๋งŒํผ์˜ ๋‹จ๊ณ„๊ฐ€ ํ•„์š”ํ•˜์ง€๋งŒ, self-attention์€ ์–ด๋–ค ๋‘ ํ† ํฐ์ด๋“  ํ•œ ๋ฒˆ์˜ ์—ฐ์‚ฐ์œผ๋กœ ์ง์ ‘ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค("cheese"๊ฐ€ ๋ช‡ ๋‹จ์–ด ๋–จ์–ด์ ธ ์žˆ๋“  "mice"๋ฅผ ๋ฐ”๋กœ ๋ด…๋‹ˆ๋‹ค). ๋Œ€์‹  ๋น„์šฉ์ด ์žˆ์Šต๋‹ˆ๋‹ค: ํ† ํฐ n๊ฐœ๋ฉด nยฒ ์Œ โ€” 500ํ† ํฐ์ด๋ฉด 25๋งŒ, 1,000ํ† ํฐ์ด๋ฉด 100๋งŒ ์ƒํ˜ธ์ž‘์šฉ. ์ด ์ œ๊ณฑ ๋น„์šฉ์ด ์˜ค๋Š˜๋‚  ์žฅ๋ฌธ๋งฅ ์—ฐ๊ตฌ์˜ ์ถœ๋ฐœ์ ์ž…๋‹ˆ๋‹ค.

ํšŒ์˜๋ก ๋„ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. "์ˆœํ™˜ ์—†์ด๋Š” ์•ˆ ๋œ๋‹ค"๋˜ ์ด๋“ค์˜ ์šฐ๋ ค๋Š” 2018๋…„ Google์˜ Universal Transformer(๊นŠ์ด ๋ฐฉํ–ฅ ์ˆœํ™˜ + ํŠœ๋ง ์™„์ „์„ฑ)๋กœ ๊ตฌ์ฒดํ™”๋์ง€๋งŒ, ์„ฑ๋Šฅ ์ด๋“ ์—†์ด ๋А๋ฆฌ๊ธฐ๋งŒ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋”ฅ๋Ÿฌ๋‹์€ ์ตœ์ ํ™”๋ฅผ ๋ฐฉํ•ดํ•˜์ง€ ์•Š๋Š” ๋‹จ์ˆœํ•œ ์„ค๊ณ„๋ฅผ ์„ ํ˜ธํ•ฉ๋‹ˆ๋‹ค. Ilya Sutskever์˜ ํšŒ๊ณ ์ฒ˜๋Ÿผ โ€” Transformer๋Š” "์—ฌ๋Ÿฌ ์•„์ด๋””์–ด์˜ ๋™์‹œ ๊ฒฐํ•ฉ"์ด๋ฉฐ, ๋…ผ๋ฌธ์„ ๋ณด์ž๋งˆ์ž ๊ทธ์˜ ๋ฐ˜์‘์€ "We're going to do Transformers now"์˜€๊ณ , OpenAI๋Š” GPT-2ยทGPT-3์œผ๋กœ ์Šค์ผ€์ผ๋ง์˜ ์‹œ๋Œ€๋ฅผ ์—ด์—ˆ์Šต๋‹ˆ๋‹ค.

"X Is All You Need" ๋ฐˆ

์ œ๋ชฉ์€ ์‹œ๋Œ€์˜ ์บ์น˜ํ”„๋ ˆ์ด์ฆˆ๊ฐ€ ๋์Šต๋‹ˆ๋‹ค. arXiv์—์„œ "All You Need"๋ฅผ ๋ณ€์ฃผํ•œ ๋…ผ๋ฌธ์ด 700ํŽธ ์ด์ƒ โ€” ์นฉ์— ๋งˆ์šฐ์Šค๋ฅผ ์˜ฌ๋ ค ๋ณด์„ธ์š”.

2025๋…„ Nature ๋ถ„์„ ๊ธฐ์ค€, ์ด ๋…ผ๋ฌธ์€ 21์„ธ๊ธฐ ํ”ผ์ธ์šฉ 7์œ„. ChatGPT ์ถœ์‹œ ์ „์•ผ(2022-11-29) Sutskever๋Š” ์ด๋ ‡๊ฒŒ ๋งํ–ˆ์Šต๋‹ˆ๋‹ค โ€” "The Transformer is well named, as it transformed everything."

ํ•ต์‹ฌ โ€” ์ด ๋…ผ๋ฌธ์˜ ์ง„์งœ ์ฃผ์žฅ์€ AGI ์„ ์–ธ์ด ์•„๋‹ˆ๋ผ ์ •๋ฐ€ํ•œ ๊ณตํ•™์  ํ†ต์ฐฐ์ด์—ˆ์Šต๋‹ˆ๋‹ค: ํ•„์ˆ˜๋ผ๊ณ  ์—ฌ๊ฒจ์กŒ๋˜ ์ˆœํ™˜๊ณผ ํ•ฉ์„ฑ๊ณฑ์€ ๋” ๋‹จ์ˆœํ•˜๊ณ  ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ๋ฉ”์ปค๋‹ˆ์ฆ˜์œผ๋กœ ๋Œ€์ฒด๋  ์ˆ˜ ์žˆ๋‹ค. ์ˆœ์„œ ์ฒ˜๋ฆฌ๊ฐ€ "๊ตฌ์กฐ"๊ฐ€ ์•„๋‹ˆ๋ผ "ํ•™์Šต"์œผ๋กœ ํ•ด๊ฒฐ๋˜์ž, ๋‚จ์€ ์ง€๋ฐฐ ๋ณ€์ˆ˜๋Š” ์Šค์ผ€์ผ์ด์—ˆ์Šต๋‹ˆ๋‹ค.
ยง12

์ฝ”๋“œ๋กœ ๋ณด๊ธฐ: The Annotated Transformer

Alexander "Sasha" Rush์˜ The Annotated Transformer๋Š” ์› ๋…ผ๋ฌธ์„ ์ค„ ๋‹จ์œ„ ์ฃผ์„๊ณผ ํ•จ๊ป˜ ์•ฝ 400์ค„์˜ PyTorch๋กœ ์žฌํ˜„ํ•œ ์ž๋ฃŒ์ž…๋‹ˆ๋‹ค(GitHub ์Šคํƒ€ 6,000+, ํฌํฌ 1,300+). "Transformer๋Š” ๊ตฌํ˜„์ด ์–ด๋ ต๋‹ค"๋Š” ํ†ต๋…์„ ๊นจ๋ฉฐ The Illustrated Transformer ๋“ฑ ์ˆ˜๋งŽ์€ "annotated" ํ”„๋กœ์ ํŠธ์˜ ์›ํ˜•์ด ๋์Šต๋‹ˆ๋‹ค. ์•„๋ž˜๋Š” ๊ทธ ํŽ˜์ด์ง€์—์„œ ๊ทธ๋Œ€๋กœ ๊ฐ€์ ธ์˜จ ํ•ต์‹ฌ 4๊ฐœ ์กฐ๊ฐ์ž…๋‹ˆ๋‹ค โ€” ยง5~ยง9์—์„œ ๋งŒ์ ธ ๋ณธ ๊ฒƒ๋“ค์ด ์ฝ”๋“œ๋กœ๋Š” ์ด๋ ‡๊ฒŒ ์งง์Šต๋‹ˆ๋‹ค.

attention() โ€” ยง5์˜ ์ˆ˜์‹ ๊ทธ๋Œ€๋กœ ยท 5์ค„์ด๋ฉด ์ถฉ๋ถ„

    
subsequent_mask() โ€” ยง7์˜ causal mask ยท ์œ„์‚ผ๊ฐ ํ–‰๋ ฌ

    
MultiHeadedAttention โ€” ยง8์˜ head ๋ถ„ํ•  ยท view + transpose๊ฐ€ ์ „๋ถ€

    
PositionalEncoding โ€” ยง9์˜ sin/cos ยท log ๊ณต๊ฐ„ ๊ณ„์‚ฐ

    
ยง13

์ฒดํฌํฌ์ธํŠธ ํ€ด์ฆˆ

8๋ฌธํ•ญ. ๊ณ ๋ฅด๋ฉด ๋ฐ”๋กœ ์ฑ„์ ๋˜๊ณ  ํ•ด์„ค์ด ๋‚˜์˜ต๋‹ˆ๋‹ค.