๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Deep Learning/2023 DL ๊ธฐ์ดˆ ์ด๋ก  ๊ณต๋ถ€

[๋ฐ‘๋ฐ”๋‹ฅ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋Š” ๋”ฅ๋Ÿฌ๋‹ 2] chap6(๊ฒŒ์ดํŠธ๊ฐ€ ์ถ”๊ฐ€๋œ RNN)

by ์ œ๋ฃฝ 2023. 7. 9.
728x90
๋ฐ˜์‘ํ˜•

 

6.1 RNN์˜ ๋ฌธ์ œ์ 
  • ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ์˜ ์žฅ๊ธฐ ์˜์กด ๊ด€๊ณ„ ํ•™์Šตํ•˜๋Š”๋ฐ ์–ด๋ ค์›€ ์กด์žฌ
  • ๊ธฐ์šธ๊ธฐ ์†Œ์‹ค ๋ฐ ๊ธฐ์šธ๊ธฐ ํญ๋ฐœ ๋ฌธ์ œ ๋ฐœ์ƒ
    • 1. ๊ธฐ์šธ๊ธฐ ์†Œ์‹ค
      • ์—ญ์ „ํŒŒ์˜ ๊ฒฝ์šฐ, tanh์„ ๋ฏธ๋ถ„ํ•˜๊ฒŒ ๋˜๋ฉด ์ ์  0์— ์ˆ˜๋ ดํ•˜๊ฒŒ ๋จ.
      • ์ด์ „์˜ ๊ธฐ์šธ๊ธฐ ๊ฐ’์„ ๊ณ„์† ๊ณฑํ•˜๋ฉด์„œ ๊ฐฑ์‹ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์†Œ์‹ค์ƒํƒœ ๋ฐœ์ƒ
    • 2. ๊ธฐ์šธ๊ธฐ ํญ๋ฐœ
      • ์—ญ์ „ํŒŒ์˜ ๊ฒฝ์šฐ, matmul ๋…ธ๋“œ์—์„œ dhWh๋ผ๋Š” ํ–‰๋ ฌ ๊ณฑ์œผ๋กœ ๊ธฐ์šธ๊ธฐ ๊ณ„์‚ฐํ•จ
      • ์ด ๋•Œ, ๋งค๋ฒˆ ๊ฐ™์€ ๊ฐ€์ค‘์น˜์ธ Wh๊ฐ€ ์‚ฌ์šฉ๋จ(ํ–‰๋ ฌ๊ณฑ์…ˆ ์œผ๋กœ ์ธํ•ด)
      • ๊ฒฐ๊ตญ ์ž…๋ ฅ์ธต์œผ๋กœ ๊ฐˆ์ˆ˜๋ก ์ ์ฐจ ์ปค์ง€๋‹ค๊ฐ€ ๊ฐ€์ค‘์น˜๋“ค์ด ๋น„์ •์ƒ์ ์œผ๋กœ ํฐ ๊ฐ’์ด ๋˜์–ด๋ฒ„๋ฆผ
  • ๊ธฐ์šธ๊ธฐ ํญ๋ฐœ์— ๋Œ€ํ•œ ํ•ด๊ฒฐ๋ฐฉ์•ˆ
    • ๊ธฐ์šธ๊ธฐ ํด๋ฆฌํ•‘(gradients clipping) ์‚ฌ์šฉ
    • ์‹ ๊ฒฝ๋ง์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๋ชจ๋“  ๋งค๊ฐœ๋ณ€์ˆ˜์— ๋Œ€ํ•œ ๊ธฐ์šธ๊ธฐ๋ฅผ ํ•˜๋‚˜๋กœ ์ฒ˜๋ฆฌ
    • gbar๋Š” L2 ๋…ธ๋ฆ„์„ ์˜๋ฏธ, L2 ๋…ธ๋ฆ„์ด ๋ฌธํ„ฑ๊ฐ’์„ ์ดˆ๊ณผํ•˜๋ฉด ๋‘ ๋ฒˆ์จฐ ์ค„์˜ ์ˆ˜์‹๊ณผ ๊ฐ™์ด ๊ธฐ์šธ๊ธฐ๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๊ธฐ๋ฒ•.
6.2 ๊ธฐ์šธ๊ธฐ ์†Œ์‹ค๊ณผ LSTM
  • ๊ธฐ์šธ๊ธฐ ์†Œ์‹ค์— ๋Œ€ํ•œ ๋Œ€์ฑ… ๋ฐฉ์•ˆ ⇒ RNN ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ „๋ถ€ ์ˆ˜์ •ํ•ด์•ผ.
  • ๊ธฐ์šธ๊ธฐ ์†Œ์‹ค์— ๋Œ€ํ•œ ๋Œ€์ฑ… ⇒ LSTM, GRU ๋ชจ๋ธ ⇒ ๊ฒŒ์ดํŠธ๋ฅผ ์ถ”๊ฐ€
  • LSTM์˜ ๊ตฌ์กฐ
    • c์˜ ๊ฒฝ๋กœ๊ฐ€ ์ถ”๊ฐ€๋จ ( c⇒ ๊ธฐ์–ต ์…€์„ ์˜๋ฏธ)
    • ์ˆœํ™˜๋˜๋Š” LSTM ์ธต์—์„œ๋งŒ ์ „ํŒŒ๋จ. h ์ถœ๋ ฅ๋ฐฉํ–ฅ์œผ๋กœ๋Š” ์ถœ๋ ฅ x
      ht= tanh(ct)
  • Gate์˜ ์—ญํ• 
    • ์–ด๋Š ์ •๋„ ์—ด์ง€๋ฅผ ์กฐ์ ˆํ•  ์ˆ˜ ์žˆ์Œ
    • ์‹œ๊ทธ๋ชจ์ด๋“œ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ์—ด๋ฆผ ์ƒํƒœ๋ฅผ ๊ตฌํ•จ
  • 1. output ๊ฒŒ์ดํŠธ
    • ๋…ธ๋ž€์ƒ‰ ๋ถ€๋ถ„์„ output ๊ฒŒ์ดํŠธ๋ผ๊ณ  ์นญํ•จ.
    • ์•„๋‹ค๋งˆ๋ฅด ๊ณฑ (์›์†Œ๋ณ„ ๊ณฑ)
    • ex) ๊ฒฐ๊ณผ๊ฐ’์ด 0.5๊ฐ€ ๋‚˜์™”๋‹ค๋ฉด, ๊ณผ๊ฑฐ์˜ ๊ธฐ์–ต ์ •๋ณด๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” tanh(ct)์˜ ์ ˆ๋ฐ˜ ์ •๋„๋งŒ ๋‹ค์Œ ์€๋‹‰ ์ƒํƒœ๋กœ ๋ณด๋‚ด๋ผ~ ์˜ ์˜๋ฏธ
    • ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” 3๊ฐœ (Wx, Wh, b)
  • 2. forget ๊ฒŒ์ดํŠธ
    • ์ด์ „ ์‹œ๊ฐ์˜ ๊ธฐ์–ต ์…€๋กœ๋ถ€ํ„ฐ ์žŠ์–ด์•ผ ํ•  ๊ธฐ์–ต ์‚ญ์ œ
    • ‘๊ณผ๊ฑฐ๋ถ€ํ„ฐ ์ง€๊ธˆ๊นŒ์ง€์˜ ๊ธฐ์–ต ์ค‘์— ๋ถˆํ•„์š”ํ•œ ์ •๋ณด๋Š” ์žŠ์–ด๋ฒ„๋ฆฌ์ž๋Š” ๋ชฉ์  ํ•˜์— ์ˆ˜ํ–‰๋จ.
  • 3. main ๊ฒŒ์ดํŠธ (๊ธฐ์–ต ๊ฒŒ์ดํŠธ)
    • ์‹œ๊ทธ๋ชจ์ด๋“œ ↔ ํ™œ์„ฑํ™” ํ•จ์ˆ˜ tanh ์‚ฌ์šฉ
    • ์ƒˆ๋กœ์šด ์ •๋ณด๋ฅผ ํ๋ฅด๊ณ  ์žˆ๋Š” ct์— ์ถ”๊ฐ€ํ•ด์ฃผ๋Š” ๋Š๋‚Œ
  • 4. input ๊ฒŒ์ดํŠธ
    • ์ƒˆ๋กœ์šด ๊ธฐ์–ต ์…€ ์•ˆ์—์„œ๋„ ์ ์ ˆํ•˜๊ฒŒ ์“ธ ์ •๋ณด๋งŒ ์„ ํƒํ•˜์ž์˜ ์˜๋ฏธ๋กœ ์ถ”๊ฐ€๋œ ๊ฒŒ์ดํŠธ
    • ์ƒˆ๋กœ ์ถ”๊ฐ€๋˜๋Š” ์ •๋ณด๋กœ์จ์˜ ๊ฐ€์น˜๊ฐ€ ์–ผ๋งˆ๋‚˜ ํฐ์ง€๋ฅผ ํŒ๋‹จ.
  • 5. ๊ทธ๋ž˜์„œ ์–ด๋–ป๊ฒŒ LSTM์ด ๊ธฐ์šธ๊ธฐ๋ฅผ ๋ง‰์„ ์ˆ˜ ์žˆ๋Š”๋ฐ?
    • 3๊ฐœ์˜ ๊ฒŒ์ดํŠธ (์•„์›ƒํ’‹, ๋ง๊ฐ, ์ธํ’‹) ์กด์žฌ
    • ๋นจ๊ฐ„์ƒ‰ ๋ง์…ˆ์˜ ๊ฒฝ์šฐ, ๊ณฑ์…ˆ์ด ์•„๋‹ˆ๊ธฐ์— ๊ธฐ์šธ๊ธฐ ๋ณ€ํ™”๊ฐ€ ์ผ์–ด๋‚˜์ง€ ์•Š์Œ (๊ทธ๋ƒฅ ํ˜๋ ค๋ณด๋‚ด๊ธฐ์—) ⇒ ๊ธฐ์šธ๊ธฐ ์†Œ์‹คx
    • ํŒŒ๋ž€์ƒ‰ ๊ณฑ์…ˆ์˜ ๊ฒฝ์šฐ, ํ–‰๋ ฌ๊ณฑ ์—ญ์ „ํŒŒ๋ฅผ ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š์Œ ⇒ ์•„๋‹ค๋งˆ๋ฅด๋ผ๋Š” ์›์†Œ๋ผ๋ฆฌ์˜ ๊ณฑ ์—ฐ์‚ฐ์„ ์ง„ํ–‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ธฐ์šธ๊ธฐ ์†Œ์‹ค์„ ๋ง‰์•„์คŒ
    • ๊ธฐ์กด์˜ ๊ฒฝ์šฐ, matmul ๋…ธ๋“œ๋กœ ํ–‰๋ ฌ ๊ณฑ ์—ญ์ „ํŒŒ๋กœ ๋ฐ˜๋ณต์  ์ง„ํ–‰ํ–ˆ์—ˆ์Œ
6.3 LSTM ๊ตฌํ˜„
  • ํ•˜๋‚˜์˜ ๊ฒŒ์ดํŠธ๋งˆ๋‹ค ๊ฐ 3๊ฐœ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์ž‡์Œ
  • ํ•œ๋ฒˆ์— ๊ฒฐํ•ฉํ•ด์คŒ ⇒ ์•„ํ•€ ๋ณ€ํ™˜ ์ง„ํ–‰affine ๋ณ€ํ™˜์ด๋ž€: ํ–‰๋ ฌ๋ณ€ํ™˜๊ณผ ํ‰ํ–‰์ด๋™์„ ๊ฒฐํ•ฉํ•œ ํ˜•ํƒœ ex) xWx+ hWh+ b ํ˜•ํƒœ๋กœ
  • ํฐ ํ–‰๋ ฌ์„ ํ•œ๋ฒˆ์— ๊ณ„์‚ฐํ•˜๋Š” ๊ฒƒ์ด ๋”ฐ๋กœ ๊ณ„์‚ฐํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ํ›จ์”ฌ ๋น ๋ฆ„.
  • ์ตœ์ข… ํ–‰๋ ฌ ํ–‰์ƒ
  • Time LSTM: T๊ฐœ๋ถ„์˜ ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ๊บผ๋ฒˆ์— ์ฒ˜๋ฆฌํ•˜๋Š” ๊ณ„์ธต
  • RNN์˜ ๊ฒฝ์šฐ ํ•™์Šต์‹œ Truncated BPTT๋ฅผ ์ˆ˜ํ–‰ ⇒ ์—ญ์ „ํŒŒ์˜ ๊ฒฝ์šฐ ์ ๋‹นํ•œ ๊ธธ์ด๋กœ ๋Š์–ด์„œ.

 

6.4 LSTM์„ ์‚ฌ์šฉํ•œ ์–ธ์–ด ๋ชจ๋ธ

์ฝ”๋“œ

6.5 RNNLM ์ถ”๊ฐ€ ๊ฐœ์„ 
6.5.1 ๊ณ„์ธต ๋‹ค์ธตํ™”
  • 2~4์ธต ์ •๋„ ์Œ“์Œ
  • GNMT ๋ชจ๋ธ: LSTM 8์ธต ์Œ“์€ ์‹ ๊ฒฝ๋ง
6.5.2 ๋“œ๋กญ ์•„์›ƒ์— ์˜ํ•œ ๊ณผ์ ํ•ฉ ์–ต์ œ
  • ์ƒํ•˜ ๋ฐฉํ–ฅ์œผ๋กœ ์‚ฝ์ž…
  • ์‹œ๊ณ„์—ด ๋ฐฉํ–ฅ์œผ๋กœ ๋„ฃ์–ด๋ฒ„๋ฆฌ๋ฉด ์‹œ๊ฐ„์˜ ํ๋ฆ„์— ๋”ฐ๋ผ ์ •๋ณด๊ฐ€ ์‚ฌ๋ผ์ง.
  • ํ๋ฅด๋Š” ์‹œ๊ฐ„์— ๋น„๋ก€ํ•ด ๋“œ๋กญ์•„์›ƒ์— ์˜ํ•œ ๋…ธ์ด์ฆˆ ์ถ•์ 
  • ๋ณ€ํ˜• ๋“œ๋กญ์•„์›ƒ (์ƒํ•˜๋ฐฉํ–ฅ + ์‹œ๊ณ„์—ด ๋ฐฉํ–ฅ)
  • ๋งˆ์Šคํฌ: ๋ฐ์ดํ„ฐ์˜ ํ†ต๊ณผ ๋ฐ ์ฐจ๋‹จ์„ ๊ฒฐ์ •ํ•˜๋Š” ์ด์ง„ ํ˜•ํƒœ์˜ ๋ฌด์ž‘์œ„ ํŒจํ„ด์„ ๊ฐ€๋ฆฌํ‚ด
  • ๋”ฐ๋ผ์„œ ์ •๋ณด๋ฅผ ์žƒ๊ฒŒ ๋˜๋Š” ๋ฐฉ๋ฒ•๋„ ๊ณ ์ •๋จ.
6.5.3 ๊ฐ€์ค‘์น˜ ๊ณต์œ 
  • ํ•™์Šต ๋งค๊ฐœ๋ณ€์ˆ˜ ์ค„์–ด๋“ฆ
+ GRU
  • ๊ธฐ์–ต์…€(c) ์—†์Œ
  • reset gate์™€ update gate๋งŒ ์กด์žฌ

728x90
๋ฐ˜์‘ํ˜•