์ด ํฌ์ŠคํŠธ๋Š” ์ œ๊ฐ€ ๊ฐœ์ธ์ ์ธ ์šฉ๋„๋กœ ์ •๋ฆฌํ•œ ๊ธ€ ์ž…๋‹ˆ๋‹ค.

2 minute read

์ด ํฌ์ŠคํŠธ๋Š” ์ œ๊ฐ€ ๊ฐœ์ธ์ ์ธ ์šฉ๋„๋กœ ์ •๋ฆฌํ•œ ๊ธ€ ์ž…๋‹ˆ๋‹ค.




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์˜ ๊ตฌ์กฐ๋ฅผ ๋‹ค์‹œ ์‚ดํŽด๋ณด์ž.

(๋ณธ ๊ธ€์˜ ๋ชจ๋“  ์ž๋ฃŒ๋Š” ๋”ฅ๋Ÿฌ๋‹์„ ์ด์šฉํ•œ ์ž์—ฐ์–ด ์ฒ˜๋ฆฌ ์ž…๋ฌธ๋กœ๋ถ€ํ„ฐ ์œ ๋ž˜ํ•˜์˜€์Šต๋‹ˆ๋‹ค!)

Reference