(08๊ฐ•) Sequential Models - Transformer

210812

์‹œํ€€์Šค๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์‹œํ€€์Šค๋“ค ๋•Œ๋ฌธ์— ๋ชจ๋ธ์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์–ด๋ ต๋‹ค.

Transformer

ํŠธ๋žœ์Šคํฌ๋จธ๋Š” RNN๊ณผ ๋‹ฌ๋ฆฌ ์žฌ๊ท€์ ์ธ ๋ถ€๋ถ„์ด ์—†๊ณ  attention์ด๋ผ๋Š” ๊ฒƒ์„ ์‚ฌ์šฉํ–ˆ๋‹ค

์ด ํŠธ๋žœ์Šคํฌ๋จธ๋Š” ์ธ์ฝ”๋”ฉ์˜ ์ž‘์—…์„ ๊ฑฐ์น˜๊ธฐ ๋•Œ๋ฌธ์— ๋‹จ์ˆœํžˆ NMT ๋ฌธ์ œ์—๋งŒ ์ ์šฉ๋˜์ง€ ์•Š๋Š”๋‹ค. ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜๋‚˜ ํƒ์ง€ ๋˜๋Š” DALL:E ๋“ฑ์— ์ ์šฉ๋  ์ˆ˜ ์žˆ๋‹ค

  • NMT๋Š” Nerual machine translation์˜ ์•ฝ์–ด์ด๋‹ค.

  • DALL:E ๋Š” ๋‹จ์–ด๋ฅผ ์ œ์‹œํ•˜๋ฉด ๋‹จ์–ด์— ํ•ด๋‹นํ•˜๋Š” ์ด๋ฏธ์ง€๋ฅผ ์ฃผ๋Š” ๊ฒƒ

๋ถˆ์–ด๋ฅผ ์˜์–ด๋กœ ๋ฐ”๊พธ๋Š” ๋“ฑ์˜ ๊ณผ์ •์„ Sequence To Sequnce ๋ผ๊ณ  ํ•œ๋‹ค.

์ž…๋ ฅ ์‹œํ€€์Šค์™€ ์ถœ๋ ฅ ์‹œํ€€์Šค์˜ ๊ธธ์ด, ๋„๋ฉ”์ธ์ด ๋‹ค๋ฅผ ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํ•˜๋‚˜์˜ ๋ชจ๋ธ๋กœ ์ด๋ฃจ์–ด์ ธ์žˆ๋‹ค. RNN ๊ฐ™์€ ๊ฒฝ์šฐ๋Š” 3๊ฐœ์˜ ๋‹จ์–ด๊ฐ€ ๋“ค์–ด๊ฐ€๋ฉด 3๋ฒˆ์„ ์žฌ๊ท€์ ์œผ๋กœ ๋„๋Š”๋ฐ์ด ๋ฐ˜ํ•ด Transformer๋Š” 100๊ฐœ๋“  1000๊ฐœ๋“  1๋ฒˆ์— Encoding ํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ๋ฌผ๋ก  Generation ํ•  ๋•Œ๋Š” ํ•œ ๋‹จ์–ด์”ฉ ๋งŒ์ง€๊ฒŒ ๋œ๋‹ค. Enocding ํ•  ๋•Œ๋ฅผ ๋งํ•˜๋Š” ๊ฒƒ

์šฐ๋ฆฌ๊ฐ€ ์ดํ•ดํ•ด์•ผ ํ•  ๊ฒƒ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค

  • N๊ฐœ์˜ ๋‹จ์–ด๊ฐ€ ์–ด๋–ป๊ฒŒ ์ธ์ฝ”๋”์—์„œ ํ•œ๋ฒˆ์— ์ฒ˜๋ฆฌ๊ฐ€ ๋˜๋Š”์ง€

  • ์ธ์ฝ”๋”์™€ ๋””์ฝ”๋”๊ฐ€ ์–ด๋–ค ์ •๋ณด๋ฅผ ์ฃผ๊ณ  ๋ฐ›๋Š”์ง€

  • ๋””์ฝ”๋”๊ฐ€ ์–ด๋–ป๊ฒŒ ์ œ๋„ˆ๋ ˆ์ด์…˜ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€

์ด ์„ธ๋ฒˆ์งธ๋Š” ์‹œ๊ฐ„์ƒ์˜ ์ด์œ ๋กœ ์ˆ˜์—…์—์„œ ๋œ ๋‹ค๋ฃฐ ๊ฒƒ์ด๋‹ค.

์ƒˆ๋กœ์šด ๋ถ€๋ถ„์€ Self-attention

์ฃผ์–ด์ง„ 3๊ฐœ์˜ ๋ฒกํ„ฐ๊ฐ€ ์žˆ๋‹ค๊ณ  ํ•˜์ž.

์ด ๋•Œ, ์ธ์ฝ”๋”๋Š” ๋ฒกํ„ฐ๋“ค์„ ๋‹ค๋ฅธ ๋ฒกํ„ฐ๋“ค๋กœ ๋Œ€์‘์‹œ์ผœ์ค€๋‹ค.

์ด ๋•Œ ์ค‘์š”ํ•œ ์ ์€ ๋‹จ์ˆœํžˆ x1 ์—์„œ z1์œผ๋กœ ๋Œ€์‘๋˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๋‚˜๋จธ์ง€ x2์™€ x3๋ฒกํ„ฐ๋ฅผ ๊ณ ๋ คํ•ด์„œ z1์œผ๋กœ ๋Œ€์‘๋œ๋‹ค๋Š” ๊ฒƒ. ์ฆ‰, i๋ฒˆ์งธ x๋ฅผ i๋ฒˆ์งธ z๋กœ ๋ฐ”๊ฟ€ ๋•Œ์—๋Š” ๋‚˜๋จธ์ง€ i-1 ๊ฐœ์˜ x๋ฒกํ„ฐ๋ฅผ ๊ณ ๋ คํ•˜๊ฒŒ ๋œ๋‹ค. ๊ทธ๋ž˜์„œ dependencies ๊ฐ€ ์žˆ๋‹ค๊ณ  ํ•œ๋‹ค.

๋ฐ˜๋Œ€๋กœ, ์ดํ›„์˜ feed-forward๋Š” ๊ทธ๋ƒฅ ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ต๊ณผํ•˜๋Š” ๊ณผ์ •์ด๊ธฐ ๋•Œ๋ฌธ์— dependencies๊ฐ€ ์—†๋‹ค.

์ด๋ฒˆ์—๋Š” ๋‘ ์‹œํ€€์Šค "Thinking" ๊ณผ "Machine" ์ด ์žˆ๋‹ค๊ณ  ํ•ด๋ณด์ž. ์ด ๋•Œ Self-Attention ์„ ์„ค๋ช…ํ•˜๊ณ ์ž ํ•˜๋Š”๋ฐ, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฌธ์žฅ์ด ์žˆ๋‹ค๊ณ  ํ•˜์ž

The animal didn't cross the street because it was too tired.

์—ฌ๊ธฐ์„œ It ์€ ๋‹จ์ˆœํžˆ ๋‹จ์–ด์˜ ์˜๋ฏธ๋กœ ํ•ด์„ํ•˜๋ฉด ์•ˆ๋˜๊ณ  ๋‹จ์–ด๊ฐ€ ๋ฌธ์žฅ์†์—์„œ ๋‹ค๋ฅธ ๋‹จ์–ด๋“ค๊ณผ ์–ด๋– ํ•œ Interaction์ด ์žˆ๋Š”์ง€ ํŒŒ์•…ํ•ด์•ผ ํ•œ๋‹ค.

์ด ๋•Œ, Transformer๋Š” ๋‹ค๋ฅธ ๋‹จ์–ด๋“ค๊ณผ์˜ ๊ด€๊ณ„์„ฑ์„ ํ•™์Šตํ•˜๊ฒŒ ๋˜๊ณ  ๊ฒฐ๋ก ์ ์œผ๋กœ Animal๊ณผ ๋†’์€ ๊ด€๊ณ„์„ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค๊ณ  ํ•™์Šตํ•˜๊ฒŒ ๋œ๋‹ค.

Self-Attention ๊ตฌ์กฐ๋Š” 3๊ฐ€์ง€ ๋ฒกํ„ฐ๋ฅผ ๋งŒ๋“ค์–ด ๋‚ด๊ฒŒ ๋œ๋‹ค. 3๊ฐ€์ง€ ๋ฒกํ„ฐ๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฒƒ์€ 3๊ฐœ์˜ NN์ด ์žˆ๋‹ค๋Š” ๋œป๊ณผ ๊ฐ™๋‹ค.

  • 3๊ฐœ์˜ ๋ฒกํ„ฐ๋Š” Queries, Keys, Values ์ด๋‹ค.

๊ทธ๋ž˜์„œ x1๋ฒกํ„ฐ๊ฐ€ ์ž…๋ ฅ๋˜๋Š” ์ด๋ฅผ ํ†ตํ•ด q1, k1, v1 ๋ฒกํ„ฐ๋ฅผ ๋งŒ๋“ค๊ฒŒ ๋˜๊ณ  ์ด ๋ฒกํ„ฐ๋“ค์„ ํ†ตํ•ด x1 ๋ฒกํ„ฐ๋ฅผ ๋‹ค๋ฅธ ๋ฒกํ„ฐ๋กœ ๋ฐ”๊ฟ”์ฃผ๊ฒŒ ๋œ๋‹ค.

Thinking๊ณผ Machine์ด๋ผ๋Š” ๋‹จ์–ด๊ฐ€ ์ž…๋ ฅ๋˜์—ˆ๋‹ค๋ฉด ๊ฐ๊ฐ์˜ ๋‹จ์–ด์— ๋Œ€ํ•ด ์„ธ๊ฐ€์ง€ ๋ฒกํ„ฐ๋ฅผ ๋งŒ๋“ค๊ฒŒ ๋œ๋‹ค. ์ดํ›„์—, Score๋ผ๋Š” ๋ฒกํ„ฐ๋ฅผ ๋งŒ๋“ค๊ฒŒ ๋˜๋Š”๋ฐ ๋‚ด๊ฐ€ ์ธ์ฝ”๋”ฉํ•˜๊ณ ์ž ํ•˜๋Š” ๋ฒกํ„ฐ์˜ ์ฟผ๋ฆฌ๋ฒกํ„ฐ์™€ ์ž์‹ ์„ ํฌํ•จํ•œ ๋‚˜๋จธ์ง€ ๋‹จ์–ด๋ฒกํ„ฐ๋“ค์˜ ํ‚ค๋ฒกํ„ฐ๋ฅผ ๋‚ด์ ํ•œ๋‹ค.

  • ์ด๋ฅผ ํ†ตํ•ด ํ•ด๋‹น ๋‹จ์–ด๊ฐ€ ๋‚˜๋จธ์ง€ ๋‹จ์–ด๋“ค๊ณผ ์–ผ๋งˆ๋‚˜ ์œ ์‚ฌํ•œ์ง€๋ฅผ ํŒŒ์•…ํ•˜๊ฒŒ ๋œ๋‹ค

  • ๋‚ด์ ์„ ํ•œ ๊ฒƒ์€ ํ•ด๋‹น ๋‹จ์–ด์™€ ๋‚˜๋จธ์ง€ ๋‹จ์–ด๋“ค ์‚ฌ์ด์—์„œ ์–ผ๋งˆ๋‚˜ Interaction์„ ํ•ด์•ผํ•˜๋Š”์ง€ ์•Œ์•„์„œ ํ•™์Šตํ•˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•จ์ด๋‹ค.

  • ์ด๊ฒƒ์ด ๋ฐ”๋กœ Attention ์— ํ•ด๋‹นํ•œ๋‹ค. ๋‚ด๊ฐ€ ์–ด๋–ค ๋‹จ์–ด๋ฅผ ์ธ์ฝ”๋”ฉํ•˜๊ณ ์‹ถ์€๋ฐ ์–ด๋–ค ๋‚˜๋จธ์ง€ ๋‹จ์–ด๋“ค๊ณผ intraction์ด ๋งŽ์ด ์ผ์–ด๋‚˜์•ผ ํ•˜๋Š”์ง€ ํŒŒ์•…ํ•ด์•ผํ•จ

์ดํ›„ ์ด ์ ์ˆ˜๋ฅผ 8๋กœ ๋‚˜๋ˆ ์ฃผ๋Š”๋ฐ ์ด 8์ด๋ผ๋Š” ์ˆซ์ž๋Š” Keys ๋ฒกํ„ฐ์˜ Dimension์— ๋”ฐ๋ผ ๊ฒฐ์ •๋œ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” ํ‚ค๋ฒกํ„ฐ๋Š” ์ด 64๊ฐœ๊ฐ€ ์žˆ๊ณ  ์ด๊ฒƒ์„ squareํ•œ 8๋กœ ๋‚˜๋ˆ ์ฃผ๊ฒŒ๋œ๋‹ค.

  • ์ด๋Š” score value๊ฐ€ ๋„ˆ๋ฌด ์ปค์ง€์ง€ ์•Š๋„๋ก ์–ด๋–ค ๋ ˆ์ธ์ง€ ์•ˆ์— ๋‘๊ฒŒ ํ•˜๋Š” ํšจ๊ณผ๊ฐ€์žˆ๋‹ค.

์ดํ›„ ๊ณ„์‚ฐ๋œ ์ ์ˆ˜๋Š” Softmax๋ฅผ ๊ฑฐ์น˜๊ฒŒ๋˜๊ณ  ์ดํ›„ Values ๋ฒกํ„ฐ์™€ ๊ณฑํ•ด์ง€๊ฒŒ ๋œ๋‹ค.

  • ๊ฒฐ๊ตญ Value ๋ฒกํ„ฐ์˜ ๊ฐ€์ค‘์น˜๋ฅผ ๊ตฌํ•˜๋Š” ๊ณผ์ •์€ Queries ๋ฒกํ„ฐ์™€ Keys ๋ฒกํ„ฐ์˜ ๋‚ด์ ์„ ํ†ตํ•ด ์–ป์€ ๊ฐ’์„ ๊ตฌํ•œ๋‹ค. ์ด ๊ฐ’์„ Key์˜ Dimension์˜ square๋กœ ๋‚˜๋ˆ ์ฃผ๊ณ  Softmaxํ•ด์„œ ๋‚˜์˜จ attention์„ Values ๋ฒกํ„ฐ์™€ ๊ณฑํ•˜๊ฒŒ ๋œ๋‹ค.

์—ฌ๊ธฐ์„œ ์ค‘์š”ํ•œ ์ 

  • ์ฟผ๋ฆฌ๋ฒกํ„ฐ์™€ ํ‚ค ๋ฒกํ„ฐ๋Š” ๋‚ด์ ์„ ํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ฐจ์›์ด ํ•ญ์ƒ ๊ฐ™์•„์•ผ ํ•œ๋‹ค.

  • ํ•˜์ง€๋งŒ ๋ฐธ๋ฅ˜ ๋ฒกํ„ฐ๋Š” Weight sum๋งŒ ํ•˜๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ฐจ์›์ด ๋‹ฌ๋ผ๋„ ๋œ๋‹ค.

  • ๋‹จ์–ด ๋ฒกํ„ฐ ์ธ์ฝ”๋”ฉ ๋œ ๋ฒกํ„ฐ์˜ ์ฐจ์›์€ ๋ฐธ๋ฅ˜ ๋ฒกํ„ฐ์˜ ์ฐจ์›๊ณผ ๋™์ผํ•ด์•ผ ํ•œ๋‹ค

    • Mutl-Attention์—์„œ๋Š” ๋˜ ๋‹ฌ๋ผ์ง„๋‹ค.

ํ–‰๋ ฌ ์—ฐ์‚ฐ์œผ๋กœ ์ƒ๊ฐํ•ด๋ณด์ž. ๋‹จ์–ด๊ฐ€ ๋‘๊ฐœ์ด๊ณ  ์ž„๋ฒ ๋”ฉ ์ฐจ์›์€ 4์ฐจ์›์ด์–ด์„œ (2, 4)๋กœ ํ‘œํ˜„ํ•œ๋‹ค

  • ์›๋ž˜ ๋‹จ์–ด์˜ ๊ฐœ์ˆ˜๋งŒํผ ์ž„๋ฒ ๋”ฉ ๋ฒกํ„ฐ์˜ ์ฐจ์›์˜ ํฌ๊ธฐ๊ฐ€ ๊ฒฐ์ •๋˜๋Š”๋ฐ ์—ฌ๊ธฐ์„œ๋Š” ๊ทธ๋ƒฅ 4์ฐจ์›์œผ๋กœ ํ‘œํ˜„ํ•œ ๊ฒƒ ๊ฐ™๋‹ค

๊ทธ๋ฆฌ๊ณ  W๋ฅผ ๊ณฑํ•ด์„œ Q, K, V๋ฅผ ์–ป๋Š”๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์ฟผ๋ฆฌ์™€ ํ‚ค๋ฅผ ๊ณฑํ•ด์„œ ์†Œํ”„ํŠธ๋งฅ์Šค๋ฅผ ๊ฑฐ์นœ๋’ค ๋ฐธ๋ฅ˜๊ฐ’์„ ๊ตฌํ•ด์„œ Sum์„ ๊ตฌํ•œ๋‹ค.

์ฝ”๋“œ๋กœ ๊ตฌํ˜„ํ•˜๋ฉด ํ•œ๋‘์ค„๋กœ ๊ตฌํ˜„์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

์™œ ํŠธ๋žœ์Šคํฌ๋จธ๊ฐ€ ์ž˜๋ ๊นŒ?

๊ธฐ์กด์˜ CNN ๊ฐ™์€ ๋ชจ๋ธ์€ ์ž…๋ ฅ์ด ๊ณ ์ •๋˜๋ฉด ์ถœ๋ ฅ๋„ ๊ณ ์ •๋œ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ Transformer ๊ฐ™์€ ๊ฒฝ์šฐ๋Š” ์ž…๋ ฅ์ด ๊ณ ์ •๋˜์–ด๋„ ์ฃผ๋ณ€ ๋‹จ์–ด๋“ค์— ๋”ฐ๋ผ ์ธ์ฝ”๋”ฉ ๊ฐ’์ด ๋ฐ”๋€” ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— Flexible ํ•œ ๋ชจ๋ธ์ด๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

  • ๊ทธ๋ž˜์„œ ๋‹ค์–‘ํ•œ ์ถœ๋ ฅ์„ ๋‚ผ ์ˆ˜ ์žˆ๋‹ค.

Competition๋„ ์กด์žฌํ•œ๋‹ค.

  • n๊ฐœ์˜ ๋‹จ์–ด๊ฐ€ ์žˆ์œผ๋ฉด n*n๊ฐœ์˜ attention map์ด ์žˆ์–ด์•ผ ํ•œ๋‹ค.

    • RNN์€ ์ฒœ๊ฐœ์˜ ์‹œํ€€์Šค๊ฐ€ ์žˆ์œผ๋ฉด ์ฒœ๋ฒˆ ๋Œ๋ฆฌ๋ฉด ๋œ๋‹ค.(์‹œ๊ฐ„์  ์—ฌ์œ ๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ๋ฆฌ๋Š”๋ฐ ๋ฌธ์ œ๊ฐ€ ์—†๋‹ค๋Š” ๋œป) ๊ทธ๋Ÿฌ๋‚˜ ํŠธ๋žœ์Šคํฌ๋จธ๋Š” N๊ฐœ์˜ ๋‹จ์–ด๋ฅผ ํ•œ๋ฒˆ์— ์ฒ˜๋ฆฌํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋งŽ์ด ์žก์•„ ๋จน๋Š”๋‹ค

    • ๊ทธ๋Œ€์‹  ์ด๋Ÿฐ๊ฒƒ์„ ๊ทน๋ณตํ•˜๋ฉด ๋” Flexble ํ•˜๊ณ  ๋” ์„ฑ๋Šฅ์ด ์ข‹์€ ๋ชจ๋ธ์ด ๋œ๋‹ค

ํ•œ ๊ฐœ์˜ ๋‹จ์–ด์— ๋Œ€ํ•ด์„œ ์—ฌ๋Ÿฌ๊ฐœ์˜ ๋ฒกํ„ฐ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์œผ๋ฉด Multi-headed attention, MHA ๋ผ๊ณ  ํ•œ๋‹ค.

๋งŒ์•ฝ์— 8๊ฐœ์˜ ๋ฒกํ„ฐ๋ฅผ ๋งŒ๋“ ๋‹ค๊ณ  ํ•˜์ž.

๊ทธ๋Ÿฐ๋ฐ ์—ฌ๊ธฐ์„œ, ์ž…๋ ฅ ํฌ๊ธฐ์™€ ์ถœ๋ ฅ ํฌ๊ธฐ๊ฐ€ ๋™์ผํ•ด์•ผ ํ•˜๋Š”๋ฐ, ์ถœ๋ ฅ์ด 8๊ฐœ์ด๋ฏ€๋กœ ์ถœ๋ ฅ ํฌ๊ธฐ๊ฐ€ 8๋ฐฐ๊ฐ€ ๋œ๋‹ค.

๊ทธ๋ž˜์„œ ์ถœ๋ ฅ ํฌ๊ธฐ๋ฅผ ๋งž์ถฐ์ฃผ๊ธฐ ์œ„ํ•ด ์ถ”๊ฐ€๋กœ ํ–‰๋ ฌ์„ ๊ณฑํ•ด์ฃผ๊ฒŒ ๋œ๋‹ค.

  • ์˜ˆ๋ฅผ ๋“ค์–ด ์ด (10, 80) ํ–‰๋ ฌ์ด ์™„์„ฑ๋œ๋‹ค๋ฉด (80, 10) ํ–‰๋ ฌ์„ ๊ณฑํ•ด์„œ (10, 10) ํ–‰๋ ฌ๋กœ ๋งŒ๋“ ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜, ์‹ค์ œ๋กœ ์ด๋ ‡๊ฒŒ ๊ตฌํ˜„๋˜์ง€๋Š” ์•Š๋‹ค. ์ž์„ธํ•œ ๊ฑด ์ฝ”๋“œ์‹ค์Šต์—์„œ.

์šฐ๋ฆฌ๊ฐ€ N๊ฐœ์˜ ๋‹จ์–ด๋ฅผ sequential ํ•˜๊ฒŒ ๋„ฃ์—ˆ์ง€๋งŒ ์‹ค์ œ๋กœ Transformer์—๋Š” ์ˆœ์„œ์ •๋ณด๊ฐ€ ๋ฐ˜์˜๋˜์ง€ ์•Š๋Š”๋‹ค. ๊ทธ๋ž˜์„œ positional encoding์ด ํ•„์š”ํ•˜๊ฒŒ ๋œ๋‹ค. ๋งŒ๋“ค์–ด์ง€๋Š” ๋ฐฉ๋ฒ•์€ ์‚ฌ์ „์— pre-defined ๋œ ๋ฐฉ๋ฒ•์„ ๊ฐ€์ง€๊ณ  ๋งŒ๋“ ๋‹ค๊ณ  ํ•œ๋‹ค(๊ทธ๋ž˜์„œ ๊ทธ ๋ฐฉ๋ฒ•์ด ๋ญ˜๊นŒ...ใ…Ž)

์™ผ์ชฝ์€ ์˜ˆ์ „์— ์“ฐ์ด๋˜ positional encoding ๋ฐฉ๋ฒ•์ด๊ณ  ์ตœ๊ทผ์—๋Š” ์˜ค๋ฅธ์ชฝ์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ํ•œ๋‹ค.

์–ด์จ‹๋“ , attention์ด ๋˜๋ฉด Z ๋ฒกํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๊ฒŒ ๋˜๊ณ  ์ด ๋•Œ LayerNorm ๊ณผ์ •์„ ๊ฑฐ์นœ๋‹ค. ์ด๊ฒŒ ๋ฌด์—‡์ธ์ง€ ์„ค๋ช…ํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ๋‚ด๊ฐ€ ์ฐพ์•„๋ด์•ผ๊ฒ ์ง€...

์—ฌ๊ธฐarrow-up-right๋ฅผ ์ฐธ๊ณ ํ•œ ๊ฒฐ๊ณผ LN์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค (BN๊ณผ์˜ ์ฐจ์ด๋ฅผ ํ†ตํ•ด ์„ค๋ช…)

๋จผ์ € BN์€ โ€œ๊ฐ feature์˜ ํ‰๊ท ๊ณผ ๋ถ„์‚ฐโ€์„ ๊ตฌํ•ด์„œ batch์— ์žˆ๋Š” โ€œ๊ฐ feature ๋ฅผ ์ •๊ทœํ™”โ€ ํ•œ๋‹ค.

๋ฐ˜๋ฉด LN์€ โ€œ๊ฐ input์˜ feature๋“ค์— ๋Œ€ํ•œ ํ‰๊ท ๊ณผ ๋ถ„์‚ฐโ€์„ ๊ตฌํ•ด์„œ batch์— ์žˆ๋Š” โ€œ๊ฐ input์„ ์ •๊ทœํ™”โ€ ํ•œ๋‹ค.

๊ทธ๋ฆผ๋งŒ ๋ด๋„ ์ดํ•ด๊ฐ€ ์ž˜๋œ๋‹ค!

์ธ์ฝ”๋”๋Š” ๊ฒฐ๊ตญ ๋””์ฝ”๋”์—๊ฒŒ ํ‚ค์™€ ๋ฐธ๋ฅ˜๋ฅผ ๋ณด๋‚ด๊ฒŒ ๋œ๋‹ค.

  • ์ถœ๋ ฅํ•˜๊ณ ์ž ํ•˜๋Š” ๋‹จ์–ด๋“ค์— ๋Œ€ํ•ด attention map์„ ๋งŒ๋“œ๋ ค๋ฉด ์ธํ’‹์— ํ•ด๋‹นํ•˜๋Š” ๋‹จ์–ด๋“ค์˜ ํ‚ค๋ฒกํ„ฐ์™€ ๋ฐธ๋ฅ˜๋ฒกํ„ฐ๊ฐ€ ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

์ธํ’‹์€ ํ•œ๋ฒˆ์— ์ž…๋ ฅ๋ฐ›์ง€๋งŒ ์ถœ๋ ฅ์€ ํ•œ ๋‹จ์–ด์”ฉ ๋””์ฝ”๋”์— ๋„ฃ์–ด์„œ ์ถœ๋ ฅํ•˜๊ฒŒ ๋œ๋‹ค.

๋””์ฝ”๋”์—์„œ๋Š” ์ธ์ฝ”๋”์™€ ๋‹ฌ๋ฆฌ ์ˆœ์ฐจ์ ์œผ๋กœ ๊ฒฐ๊ณผ๋ฅผ ๋งŒ๋“ค์–ด๋‚ด์•ผ ํ•ด์„œ self-attention์„ ๋ณ€ํ˜•ํ•˜๊ฒŒ๋œ๋‹ค. ๋ฐ”๋กœ masking์„ ํ•ด์ฃผ๋Š” ๊ฒƒ. ์ธ์ฝ”๋”๋Š” ์ž…๋ ฅ์ˆœ์„œ๊ฐ€ ์ด๋ฏธ ์ •ํ•ด์ ธ์žˆ๊ธฐ ๋•Œ๋ฌธ์— decoder์ž…์žฅ์—์„œ๋Š” i๋ฒˆ์งธ ๋‹จ์–ด๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์˜ˆ์ธกํ•˜๊ธฐ๊ฐ€ ์‰ฌ์›Œ์ง€๊ธฐ ๋•Œ๋ฌธ์— ์ด๋Ÿฌํ•œ ๋งˆ์Šคํ‚น์„ ํ•ด์ค€๋‹ค.

Encoder-Decoder Attention ์€ ๋””์ฝ”๋”๊ฐ€ ์ฟผ๋ฆฌ ๋ฒกํ„ฐ๋ฅผ ์ œ์™ธํ•˜๊ณ ๋Š” ํ‚ค ๋ฒกํ„ฐ์™€ ๋ฐธ๋ฅ˜ ๋ฒกํ„ฐ๋Š” ์ธ์ฝ”๋”์—์„œ ์ƒ์„ฑ๋œ ๊ฒƒ์„ ์‚ฌ์šฉํ•˜๊ฒ ๋‹ค๋ผ๋Š” ์ธ์ฝ”๋”์™€ ๋””์ฝ”๋”์˜ ์ƒํ˜ธ์—ฐ๊ฒฐ์„ฑ์„ ์˜๋ฏธํ•œ๋‹ค

์ถ”๊ฐ€์ ์œผ๋กœ ๋™๋ฃŒ์™€ ์ด๋Ÿฐ ์ด์•ผ๊ธฐ๋ฅผ ๋‚˜๋ˆ„์—ˆ๋‹ค.

๊ทผ๋ฐ positional encoding์ด ๊ณผ์—ฐ ํ•„์ˆ˜์ผ๊นŒ?

Language Modeling with Deep Transformersarrow-up-right ๋…ผ๋ฌธ์—์„œ๋Š” ์ด๋ ‡๊ฒŒ ๋งํ•œ๋‹ค

๋ณดํ†ต ์–ธ์–ด๋ชจ๋ธ์—์„œ๋Š” positional encoding์ด ๊ฑฐ์˜ ํ•„์ˆ˜์ด๋‹ค. ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„๋„ ์ž‘๋™์€ ๊ทธ๋Ÿญ์ €๋Ÿญ ํ•œ๋‹ค. ๊ทผ๋ฐ ๊นŠ์€ autoregressive model(ํŠธ๋žœ์Šคํฌ๋จธ ๋ชจ๋ธ์˜ ํ•œ ์ข…๋ฅ˜)์—์„œ๋Š” ๋ฐ์ดํ„ฐ์…‹์ด ๋งŽ๊ณ  ๋ชจ๋ธ์ด ๊นŠ๋‹ค๋ณด๋‹ˆ๊นŒ ์ˆœ์„œ์ •๋ณด๊ฐ€ ์—†๋Š”๋ฐ๋„ ๋ฐ์ดํ„ฐ ์ž์ฒด์—์„œ ๊ฐ€์ค‘์น˜์—๊ฒŒ ์ˆœ์„œ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ด์ค€๋‹ค. ๊ทธ๋ž˜์„œ ๋งˆ์ง€๋ง‰์—๋Š” ์˜คํžˆ๋ ค ์ˆœ์„œ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜์ง€ ์•Š์•˜๋”๋‹ˆ ์„ฑ๋Šฅ์ด ๋Š˜์–ด๋‚ฌ๋‹ค.

Vision Transformer

self-attention์„ ๋‹จ์–ด๋“ค์˜ sequence์—๋งŒ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์ด๋ฏธ์ง€์—๋„ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค.

์ธ์ฝ”๋”๋งŒ ์‚ฌ์šฉํ•˜๊ณ , ์ธ์ฝ”๋”์—์„œ ๋‚˜์˜ค๋Š” ๋ฒกํ„ฐ๋ฅผ ๋ฐ”๋กœ ๋ถ„๋ฅ˜๋ชจ๋ธ์— ์‚ฌ์šฉํ•˜๊ฒŒ๋œ๋‹ค.

์ฐจ์ด์ ์ด๋ผ๊ณ  ํ•˜๋ฉด ์–ธ์–ด๋Š” ๋ฌธ์žฅ๋“ค์„ sequenceํ•˜๊ฒŒ ๋„ฃ์–ด์ค€ ๊ฒƒ์— ๋น„ํ•ด ์ด๋ฏธ์ง€๋Š” ๋ช‡ ๊ฐœ์˜ ๋ถ€๋ถ„์กฐ๊ฐ์œผ๋กœ ๋‚˜๋ˆˆ๋’ค Linear Layer๋ฅผ ํ†ต๊ณผํ•ด๊ฐ€์ง€๊ณ  ํ•˜๋‚˜์˜ ์ž…๋ ฅ์ธ ๊ฒƒ ์ฒ˜๋Ÿผํ•ด์„œ ๋„ฃ๋Š”๋‹ค.

  • ๋ฌผ๋ก  positional encoding์ด ๋“ค์–ด๊ฐ„๋‹ค.

DALL-E

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

Last updated