How Backprop Works

๊ฐ€์ค‘์น˜๋Š” ์–ด๋–ป๊ฒŒ
์˜ฌ๋ฐ”๋ฅธ ๊ฐ’์„ ์ฐพ์•„๊ฐ€๋Š”๊ฐ€

์‹ ๊ฒฝ๋ง์˜ ํ•„ํ„ฐ(๊ฐ€์ค‘์น˜)๋Š” ์ฒ˜์Œ์— ์•„๋ฌด ์˜๋ฏธ ์—†๋Š” ๋‚œ์ˆ˜๋กœ ์‹œ์ž‘ํ•œ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ํ•™์Šต์ด ๋๋‚˜๋ฉด ์—์ง€ ๊ฒ€์ถœ๊ธฐ ๊ฐ™์€ "์˜ฌ๋ฐ”๋ฅธ" ๊ฐ’์ด ๋˜์–ด ์žˆ๋‹ค. ๊ทธ ์‚ฌ์ด์—์„œ ์ผ์–ด๋‚˜๋Š” ์ผ โ€” ์ˆœ์ „ํŒŒ โ†’ ์†์‹ค โ†’ ์—ญ์ „ํŒŒ โ†’ ์—…๋ฐ์ดํŠธ์˜ ๋ฐ˜๋ณต โ€” ์„ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ง์ ‘ ์‹คํ—˜ํ•˜๋ฉฐ ๋”ฐ๋ผ๊ฐ€ ๋ณธ๋‹ค.

์ˆœ์ „ํŒŒโ†’ ์†์‹ค ๊ณ„์‚ฐโ†’ ์—ญ์ „ํŒŒโ†’ ๊ฐ€์ค‘์น˜ ์—…๋ฐ์ดํŠธโ†ป

๋ชจ๋“  ๋ฐ๋ชจ๋Š” ์ด ํŽ˜์ด์ง€ ์•ˆ์—์„œ ์‹ค์ œ๋กœ ๊ณ„์‚ฐ๋ฉ๋‹ˆ๋‹ค. ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์—†์Œ.

1

์ˆœ์ „ํŒŒ โ€” ์ง€๊ธˆ์˜ ๊ฐ€์ค‘์น˜๋กœ ์˜ˆ์ธกํ•ด ๋ณด๊ธฐ

๊ฐ€์žฅ ์ž‘์€ "์‹ ๊ฒฝ๋ง"์ธ ๋‰ด๋Ÿฐ ํ•˜๋‚˜๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜์ž. ์ž…๋ ฅ x์— ๊ฐ€์ค‘์น˜ w๋ฅผ ๊ณฑํ•˜๊ณ  ํŽธํ–ฅ b๋ฅผ ๋”ํ•ด ์˜ˆ์ธก ลท๋ฅผ ๋งŒ๋“ ๋‹ค.

ลท = wยทx + b

์ˆœ์ „ํŒŒ(forward pass)๋Š” ๋‹จ์ˆœํ•˜๋‹ค: ์ง€๊ธˆ ๊ฐ–๊ณ  ์žˆ๋Š” ๊ฐ€์ค‘์น˜๋ฅผ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•ด ์ž…๋ ฅ์—์„œ ์ถœ๋ ฅ๊นŒ์ง€ ๊ณ„์‚ฐ์„ ํ˜๋ ค๋ณด๋‚ด๋Š” ๊ฒƒ. ๊ฐ€์ค‘์น˜๊ฐ€ ์—‰ํ„ฐ๋ฆฌ๋ฉด ์˜ˆ์ธก๋„ ์—‰ํ„ฐ๋ฆฌ๋‹ค. ์•„๋ž˜์—์„œ w, b๋ฅผ ์ง์ ‘ ์›€์ง์—ฌ ๋ฐ์ดํ„ฐ์— ์„ ์„ ๋งž์ถฐ ๋ณด์ž.

์†์œผ๋กœ ํ•˜๋Š” ํ•™์Šต

ํšŒ์ƒ‰ ์ ์ด ๋ฐ์ดํ„ฐ, ๋ณด๋ผ์ƒ‰ ์„ ์ด ๋ชจ๋ธ์˜ ์˜ˆ์ธก. ์ ์„ (๋นจ๊ฐ•)์ด ๊ฐ ์ ์˜ ์˜ค์ฐจ(residual)๋‹ค. ์˜ค์ฐจ๊ฐ€ ์ž‘์•„์ง€๋„๋ก ์Šฌ๋ผ์ด๋”๋ฅผ ์กฐ์ ˆํ•ด ๋ณด์ž.

ํ‰๊ท ์ œ๊ณฑ์˜ค์ฐจ(MSE) = โ€“

์ด ์ง“์„ ์‚ฌ๋žŒ์ด ์†์œผ๋กœ ํ•˜๋Š” ๋Œ€์‹ , ์ปดํ“จํ„ฐ๊ฐ€ ์ž๋™์œผ๋กœ ํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ํ•™์Šต์ด๋‹ค. ๊ทธ๋Ÿฌ๋ ค๋ฉด ๋จผ์ € "์–ผ๋งˆ๋‚˜ ํ‹€๋ ธ๋Š”์ง€"๋ฅผ ์ˆซ์ž๋กœ ์ •์˜ํ•ด์•ผ ํ•œ๋‹ค โ†’ ์†์‹ค ํ•จ์ˆ˜.

2

์†์‹ค ํ•จ์ˆ˜ โ€” "์–ผ๋งˆ๋‚˜ ํ‹€๋ ธ๋Š”๊ฐ€"๋ฅผ ์ˆซ์ž ํ•˜๋‚˜๋กœ

์†์‹ค ํ•จ์ˆ˜(loss function)๋Š” ์˜ˆ์ธก๊ณผ ์ •๋‹ต์˜ ์ฐจ์ด๋ฅผ ์ˆซ์ž ํ•˜๋‚˜๋กœ ์š”์•ฝํ•œ๋‹ค. ํšŒ๊ท€์—์„œ ๊ฐ€์žฅ ํ”ํ•œ ๊ฒƒ์ด ํ‰๊ท ์ œ๊ณฑ์˜ค์ฐจ(MSE)๋‹ค.

L(w, b) = 1n ฮฃ ( wยทxi + b โˆ’ yi )2 ๋ถ„๋ฅ˜ ๋ฌธ์ œ๋ผ๋ฉด ๊ต์ฐจ ์—”ํŠธ๋กœํ”ผ(cross-entropy)๋ฅผ ์“ด๋‹ค โ€” ํ•ต์‹ฌ ์—ญํ• ์€ ๊ฐ™๋‹ค

์—ฌ๊ธฐ์„œ ๊ด€์ ์„ ํ•˜๋‚˜ ๋ฐ”๊พธ๋Š” ๊ฒƒ์ด ๊ฒฐ์ •์ ์ด๋‹ค. ์†์‹ค์€ ๋ฐ์ดํ„ฐ์˜ ํ•จ์ˆ˜๊ฐ€ ์•„๋‹ˆ๋ผ ๊ฐ€์ค‘์น˜์˜ ํ•จ์ˆ˜๋‹ค. ๋ฐ์ดํ„ฐ๋Š” ๊ณ ์ •๋ผ ์žˆ๊ณ , ์šฐ๋ฆฌ๊ฐ€ ์›€์ง์ผ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ w์™€ b๋ฟ์ด๋‹ˆ๊นŒ. w๋ฅผ ๊ฐ€๋กœ์ถ•, ์†์‹ค์„ ์„ธ๋กœ์ถ•์— ๋†“์œผ๋ฉด ์†์‹ค ์ง€ํ˜•(loss landscape)์ด ๊ทธ๋ ค์ง„๋‹ค.

์†์‹ค ์ง€ํ˜• ์œ„์˜ ํ˜„์žฌ ์œ„์น˜

๊ณก์„  ์œ„์˜ ์ ์„ ๋“œ๋ž˜๊ทธํ•ด ๋ณด์ž. ๊ฐ ์œ„์น˜์—์„œ์˜ ์ ‘์„ (์ฃผํ™ฉ)์ด ๊ณง ๊ธฐ์šธ๊ธฐ โˆ‚L/โˆ‚w๋‹ค. ๊ธฐ์šธ๊ธฐ์˜ ๋ถ€ํ˜ธ๋Š” "์–ด๋А ์ชฝ์ด ๋‚ด๋ฆฌ๋ง‰์ธ์ง€"๋ฅผ ์•Œ๋ ค์ค€๋‹ค.

w = โ€“ L(w) = โ€“ โˆ‚L/โˆ‚w = โ€“

์ตœ์ €์  ๊ทผ์ฒ˜์—์„œ๋Š” ๊ธฐ์šธ๊ธฐ๊ฐ€ 0์— ๊ฐ€๊นŒ์›Œ์ง„๋‹ค. "๊ธฐ์šธ๊ธฐ = 0"์ด ๋˜๋Š” ๊ณณ์ด ์†์‹ค์ด ๊ฐ€์žฅ ์ž‘์€ ๊ณณ โ€” ํ•™์Šต์ด ๋„๋‹ฌํ•˜๋ ค๋Š” ์ง€์ ์ด๋‹ค.

ํ•ต์‹ฌ. ์†์‹ค ํ•จ์ˆ˜๋Š” ๋‘ ๊ฐ€์ง€ ์ผ์„ ํ•œ๋‹ค. โ‘  ๋ชจ๋ธ์ด ์–ผ๋งˆ๋‚˜ ํ‹€๋ ธ๋Š”์ง€๋ฅผ ์ˆซ์ž ํ•˜๋‚˜๋กœ ๋งŒ๋“ค๊ณ , โ‘ก ๋ฏธ๋ถ„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ๋งŒ๋“ค์–ด "์–ด๋А ๋ฐฉํ–ฅ์œผ๋กœ ๊ฐ€์ค‘์น˜๋ฅผ ๊ณ ์น˜๋ฉด ๋œ ํ‹€๋ฆฌ๋Š”์ง€"(๊ธฐ์šธ๊ธฐ)๋ฅผ ๊ณ„์‚ฐํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค. โ‘ก๊ฐ€ ์—†์œผ๋ฉด ์—ญ์ „ํŒŒ๋„ ์—†๋‹ค.
3

๊ฒฝ์‚ฌ ํ•˜๊ฐ•๋ฒ• โ€” ๊ธฐ์šธ๊ธฐ์˜ ๋ฐ˜๋Œ€ ๋ฐฉํ–ฅ์œผ๋กœ ํ•œ ๊ฑธ์Œ

๊ธฐ์šธ๊ธฐ๋ฅผ ์•Œ๋ฉด ์—…๋ฐ์ดํŠธ ๊ทœ์น™์€ ํ•œ ์ค„์ด๋‹ค. ๊ธฐ์šธ๊ธฐ๊ฐ€ ์–‘์ˆ˜๋ฉด ์™ผ์ชฝ์œผ๋กœ, ์Œ์ˆ˜๋ฉด ์˜ค๋ฅธ์ชฝ์œผ๋กœ โ€” ์ฆ‰ ํ•ญ์ƒ ๋‚ด๋ฆฌ๋ง‰์œผ๋กœ ํ•œ ๊ฑธ์Œ์”ฉ.

w โ† w โˆ’ ฮท ยท โˆ‚Lโˆ‚w ฮท(์—ํƒ€)๋Š” ํ•™์Šต๋ฅ (learning rate) โ€” ํ•œ ๊ฑธ์Œ์˜ ๋ณดํญ
ํ•œ ๊ฑธ์Œ์”ฉ ๊ตด๋Ÿฌ ๋‚ด๋ ค๊ฐ€๊ธฐ

์•„๋ฌด ๋ฐ์„œ๋‚˜ ์‹œ์ž‘ํ•ด ์Šคํ…์„ ๋ฐŸ์•„ ๋ณด์ž. ํ•™์Šต๋ฅ ์„ ํ‚ค์šฐ๋ฉด ๋นจ๋ผ์ง€์ง€๋งŒ, ๋„ˆ๋ฌด ํฌ๋ฉด(โ‰ณ 0.33) ๋ฐ˜๋Œ€ํŽธ์œผ๋กœ ํŠ•๊ฒจ ๋‚˜๊ฐ€๋ฉฐ ๋ฐœ์‚ฐํ•œ๋‹ค.

์Šคํ… 0 ยท w = โ€“ ยท L = โ€“

์ง„๋™ยท๋ฐœ์‚ฐ ๋“ฑ ํ•™์Šต๋ฅ ์ด ๋งŒ๋“œ๋Š” ํ˜„์ƒ์€ ๊ฒฝ์‚ฌ ํ•˜๊ฐ•๋ฒ• ์ž๋ฃŒ์—์„œ ๋” ๊นŠ๊ฒŒ ๋‹ค๋ฃฌ๋‹ค.

4

์—ฐ์‡„ ๋ฒ•์น™ โ€” ๊นŠ์€ ๊ณณ์˜ ๊ฐ€์ค‘์น˜์—๋„ ๊ธฐ์šธ๊ธฐ๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๋ฒ•

๋‰ด๋Ÿฐ ํ•˜๋‚˜์งœ๋ฆฌ ๋ชจ๋ธ์€ โˆ‚L/โˆ‚w๋ฅผ ์†์œผ๋กœ ๋ฐ”๋กœ ๋ฏธ๋ถ„ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค. ํ•˜์ง€๋งŒ ์‹ค์ œ ์‹ ๊ฒฝ๋ง์€ ์ˆ˜๋ฐฑ๋งŒ ๊ฐœ์˜ ๊ฐ€์ค‘์น˜๊ฐ€ ์—ฌ๋Ÿฌ ์ธต์— ๊ฑธ์ณ ์žˆ๋‹ค. ์ด๋•Œ ํ•„์š”ํ•œ ๊ฒƒ์ด ์—ฐ์‡„ ๋ฒ•์น™(chain rule)์ด๊ณ , ์—ฐ์‡„ ๋ฒ•์น™์„ ๊ณ„์‚ฐ ๊ทธ๋ž˜ํ”„ ์œ„์—์„œ ์ถœ๋ ฅโ†’์ž…๋ ฅ ๋ฐฉํ–ฅ์œผ๋กœ ์ฒด๊ณ„์ ์œผ๋กœ ์ ์šฉํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๋ฐ”๋กœ ์—ญ์ „ํŒŒ(backpropagation)๋‹ค.

โˆ‚Lโˆ‚w = โˆ‚Lโˆ‚a ยท โˆ‚aโˆ‚z ยท โˆ‚zโˆ‚w ์ค‘๊ฐ„ ๋ณ€์ˆ˜๋ฅผ ๊ฑฐ์ณ ๊ณฑํ•ด ๋‚˜๊ฐ€๋ฉด, ์•„๋ฌด๋ฆฌ ๊นŠ์€ ๊ณณ์˜ ๊ฐ€์ค‘์น˜๋ผ๋„ ๊ธฐ์šธ๊ธฐ๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค

๋‰ด๋Ÿฐ ํ•˜๋‚˜์— ์‹œ๊ทธ๋ชจ์ด๋“œ ํ™œ์„ฑํ™”๋ฅผ ๋ถ™์ธ ์ž‘์€ ๊ณ„์‚ฐ ๊ทธ๋ž˜ํ”„๋กœ ์ง์ ‘ ํ•ด ๋ณด์ž: z = wยทx + b โ†’ a = ฯƒ(z) โ†’ L = (a โˆ’ t)ยฒ. ์ˆœ์ „ํŒŒ๋กœ ๊ฐ’์„ ์ฑ„์šด ๋’ค, ๋’ค์—์„œ๋ถ€ํ„ฐ ๊ธฐ์šธ๊ธฐ๋ฅผ ํ•œ ๋‹จ๊ณ„์”ฉ ๊ณฑํ•˜๋ฉฐ ์ „๋‹ฌํ•œ๋‹ค.

์—ญ์ „ํŒŒ ํ•œ ๋‹จ๊ณ„์”ฉ ๋ฐŸ์•„ ๋ณด๊ธฐ

์Šฌ๋ผ์ด๋”๋กœ ์ˆœ์ „ํŒŒ ๊ฐ’์ด ๋ฐ”๋€๋‹ค. ใ€Œ์—ญ์ „ํŒŒ ํ•œ ๋‹จ๊ณ„ใ€๋ฅผ ๋ˆŒ๋Ÿฌ ๊ธฐ์šธ๊ธฐ(์ฃผํ™ฉ ์ˆซ์ž)๊ฐ€ ์ถœ๋ ฅ์—์„œ ์ž…๋ ฅ ์ชฝ์œผ๋กœ ํ˜๋Ÿฌ๊ฐ€๋Š” ๊ฒƒ์„ ํ™•์ธํ•˜์ž.

์ž…๋ ฅ x
โ€“
โ€“
๊ฐ€์ค‘์น˜ w
โ€“
โ€“
ํŽธํ–ฅ b
โ€“
โ€“
โ†’
z = wยทx + b
โ€“
โ€“
โ†’
a = ฯƒ(z)
โ€“
โ€“
โ†’
L = (a โˆ’ t)ยฒ
โ€“
โ€“
์ˆœ์ „ํŒŒ ์™„๋ฃŒ. ์ด์ œ ๋’ค์—์„œ๋ถ€ํ„ฐ ๋ฏธ๋ถ„์„ ๊ณฑํ•ด ๋‚˜๊ฐ„๋‹ค.
  1. โ‘  ์ถœ๋ฐœ์ . ์†์‹ค ์ž๊ธฐ ์ž์‹ ์— ๋Œ€ํ•œ ๊ธฐ์šธ๊ธฐ๋Š” ํ•ญ์ƒ โˆ‚L/โˆ‚L = 1. ์—ฌ๊ธฐ์„œ ์‹œ์ž‘ํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  โˆ‚L/โˆ‚a = 2(aโˆ’t) = โ€” ์˜ˆ์ธก a๊ฐ€ ์ปค์ง€๋ฉด ์†์‹ค์ด ์–ด๋–ป๊ฒŒ ๋ณ€ํ•˜๋Š”์ง€.
  2. โ‘ก ฯƒ๋ฅผ ํ†ต๊ณผ. ์‹œ๊ทธ๋ชจ์ด๋“œ์˜ ๊ตญ์†Œ ๋ฏธ๋ถ„์€ โˆ‚a/โˆ‚z = a(1โˆ’a) = . ์œ„์—์„œ ์˜จ ๊ธฐ์šธ๊ธฐ์— ๊ณฑํ•œ๋‹ค: โˆ‚L/โˆ‚z = โˆ‚L/โˆ‚a ยท โˆ‚a/โˆ‚z = .
  3. โ‘ข ๊ฐ€์ค‘์น˜ ๋„์ฐฉ. z = wยทx + b์—์„œ โˆ‚z/โˆ‚w = x, โˆ‚z/โˆ‚b = 1. ๋”ฐ๋ผ์„œ โˆ‚L/โˆ‚w = โˆ‚L/โˆ‚z ยท x = , โˆ‚L/โˆ‚b = . ๊ฐ ๊ฐ€์ค‘์น˜๊ฐ€ ์†์‹ค์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์ด ๊ณ„์‚ฐ๋๋‹ค.
  4. โ‘ฃ ์—…๋ฐ์ดํŠธ (ฮท = 0.5). w โ† w โˆ’ 0.5ยทโˆ‚L/โˆ‚w = , b โ† . ์ƒˆ ๊ฐ€์ค‘์น˜๋กœ ๋‹ค์‹œ ์ˆœ์ „ํŒŒํ•˜๋ฉด ์†์‹ค์€ L = โ†’

๋ชจ๋“  ๋‹จ๊ณ„๊ฐ€ ใ€Œ๊ตญ์†Œ ๋ฏธ๋ถ„ ร— ์œ„์—์„œ ํ˜๋Ÿฌ์˜จ ๊ธฐ์šธ๊ธฐใ€์˜ ๋ฐ˜๋ณต์ด๋‹ค. ์ธต์ด 100๊ฐœ์—ฌ๋„ ๊ทœ์น™์€ ๊ฐ™๋‹ค โ€” ๊ทธ๋ž˜์„œ ์•„๋ฌด๋ฆฌ ๊นŠ์€ ๋„คํŠธ์›Œํฌ๋„ ๊ธฐ์šธ๊ธฐ๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.

์—ญ์ „ํŒŒ = ์—ฐ์‡„ ๋ฒ•์น™ + ์ค‘๋ณต ๊ณ„์‚ฐ ์ œ๊ฑฐ. ์ถœ๋ ฅ์—์„œ๋ถ€ํ„ฐ ๊ฑฐ๊พธ๋กœ ๋‚ด๋ ค์˜ค๋ฉฐ ๊ฐ ๋…ธ๋“œ์˜ ๊ธฐ์šธ๊ธฐ๋ฅผ ํ•œ ๋ฒˆ์”ฉ๋งŒ ๊ณ„์‚ฐํ•ด ์•„๋ž˜๋กœ ์ „๋‹ฌํ•œ๋‹ค. ์ˆœ์ „ํŒŒ์™€ ๊ฑฐ์˜ ๊ฐ™์€ ๋น„์šฉ์œผ๋กœ ๋ชจ๋“  ๊ฐ€์ค‘์น˜์˜ ๊ธฐ์šธ๊ธฐ๋ฅผ ์–ป๋Š”๋‹ค.
5

์ „์ฒด ๋ฃจํ”„ โ€” ์ž‘์€ ์‹ ๊ฒฝ๋ง์ด ํ•จ์ˆ˜๋ฅผ ๋ฐฐ์šฐ๋Š” ๊ณผ์ •

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

์‹ ๊ฒฝ๋ง ํ•™์Šต ์‹ค์‹œ๊ฐ„ ๊ด€์ฐฐ

ํšŒ์ƒ‰ ์ : ํ•™์Šต ๋ฐ์ดํ„ฐ(sin ๊ณก์„ ). ๋ณด๋ผ์ƒ‰ ์„ : ์ง€๊ธˆ ๊ฐ€์ค‘์น˜์˜ ์˜ˆ์ธก. ์ฒ˜์Œ์—” ์•„๋ฌด๋ ‡๊ฒŒ๋‚˜ ์ƒ๊ธด ์„ ์ด ์ ์  ๋ฐ์ดํ„ฐ์— ๋ถ™๋Š”๋‹ค.

์Šคํ… 0 ยท ์†์‹ค โ€“

์˜ค๋ฅธ์ชฝ์€ ์†์‹ค ๊ณก์„ (log ์Šค์ผ€์ผ). ใ€Œ์€๋‹‰ ๋‰ด๋Ÿฐ ๊ธฐ์—ฌ ๋ณด๊ธฐใ€๋ฅผ ์ผœ๋ฉด ์–‡์€ ์ƒ‰์„  8๊ฐœ๊ฐ€ ๋‚˜ํƒ€๋‚œ๋‹ค โ€” ๊ฐ ์€๋‹‰ ๋‰ด๋Ÿฐ์ด ๋‹ด๋‹นํ•˜๋Š” ์กฐ๊ฐ์ด๋ฉฐ, ์ด๋“ค์˜ ํ•ฉ์ด ๋ณด๋ผ์ƒ‰ ์˜ˆ์ธก์„ ์ด๋‹ค. ์—ญ์ „ํŒŒ๋Š” ์ด 8๊ฐœ ๋‰ด๋Ÿฐ ๊ฐ๊ฐ์—๊ฒŒ "๋„ค๊ฐ€ ๋‹ด๋‹นํ•œ ์กฐ๊ฐ์„ ์ด๋ ‡๊ฒŒ ๊ณ ์ณ๋ผ"๋ผ๋Š” ๊ธฐ์šธ๊ธฐ๋ฅผ ๋‚˜๋ˆ  ์ค€๋‹ค.

6

ํ•ฉ์„ฑ๊ณฑ ํ•„ํ„ฐ๋Š” ์–ด๋–ป๊ฒŒ ์—์ง€ ๊ฒ€์ถœ๊ธฐ๊ฐ€ ๋˜๋Š”๊ฐ€

๋“œ๋””์–ด ์›๋ž˜ ์งˆ๋ฌธ์ด๋‹ค. CNN์˜ 3ร—3 ํ•„ํ„ฐ๋„ ๊ฒฐ๊ตญ ๊ฐ€์ค‘์น˜ 9๊ฐœ์ผ ๋ฟ์ด๋‹ค. ๋‚œ์ˆ˜๋กœ ์‹œ์ž‘ํ•œ ํ•„ํ„ฐ๊ฐ€ ์†์‹ค๊ณผ ๊ธฐ์šธ๊ธฐ๋งŒ ๋ณด๊ณ  ์ˆ˜์ง ์—์ง€ ๊ฒ€์ถœ๊ธฐ(์†Œ๋ฒจ ํ•„ํ„ฐ)๋กœ ์ˆ˜๋ ดํ•ด ๊ฐ€๋Š” ๊ณผ์ •์„ ์‹ค์ œ๋กœ ๋Œ๋ ค ๋ณด์ž.

์‹คํ—˜ ์„ค์ •: ์–ด๋–ค "์ •๋‹ต ํ•„ํ„ฐ"(์†Œ๋ฒจ)๊ฐ€ ์ด๋ฏธ์ง€๋ฅผ ๋ณ€ํ™˜ํ•ด ์ •๋‹ต ์ถœ๋ ฅ์„ ๋งŒ๋“ ๋‹ค. ํ•™์Šต ํ•„ํ„ฐ๋Š” ์ •๋‹ต ํ•„ํ„ฐ๋ฅผ ์ ˆ๋Œ€ ๋ณผ ์ˆ˜ ์—†๋‹ค. ๋ณผ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ์˜ค์ง โ‘  ์ž…๋ ฅ ์ด๋ฏธ์ง€, โ‘ก ์ž์‹ ์˜ ์ถœ๋ ฅ๊ณผ ์ •๋‹ต ์ถœ๋ ฅ์˜ ์ฐจ์ด(์†์‹ค), โ‘ข ๊ทธ ๊ธฐ์šธ๊ธฐ๋ฟ์ด๋‹ค. ๋งค ์Šคํ… ๋…ธ์ด์ฆˆ๊ฐ€ ๋‹ค๋ฅธ ์ƒˆ ์ด๋ฏธ์ง€๊ฐ€ ์ฃผ์–ด์ง„๋‹ค.

โˆ‚Lโˆ‚Wu,v = 2N ฮฃi,j ์˜ค์ฐจ(i,j) ยท ์ž…๋ ฅ(i+u, j+v) ํ•„ํ„ฐ ๊ฐ ์นธ์˜ ๊ธฐ์šธ๊ธฐ = ใ€Œ์˜ค์ฐจ ๋งตใ€๊ณผ ใ€Œ๊ทธ ์นธ์ด ๊ณฑํ•ด์กŒ๋˜ ์ž…๋ ฅ ํ”ฝ์…€๋“คใ€์˜ ์ƒ๊ด€ โ€” ํ•ฉ์„ฑ๊ณฑ ์ธต์˜ ์—ญ์ „ํŒŒ๋„ ๊ฒฐ๊ตญ ๊ณฑ์…ˆ ๋…ธ๋“œ์˜ ์—ฐ์‡„ ๋ฒ•์น™์ด๋‹ค
๋‚œ์ˆ˜ ํ•„ํ„ฐ โ†’ ์†Œ๋ฒจ ํ•„ํ„ฐ: ํ•™์Šต ๊ณผ์ • ๊ด€์ฐฐ

ใ€Œโ–ถ ํ•™์Šตใ€์„ ๋ˆ„๋ฅด๊ณ  ๊ฐ€์šด๋ฐ ํ•™์Šต ํ•„ํ„ฐ์˜ 9๊ฐœ ์ˆซ์ž๊ฐ€ ์™ผ์ชฝ ์ •๋‹ต ํ•„ํ„ฐ์™€ ๊ฐ™์•„์ ธ ๊ฐ€๋Š” ๊ฒƒ์„ ์ง€์ผœ๋ณด์ž. ์•„๋ž˜ ์ถœ๋ ฅ ์ง€๋„๋„ ํ•จ๊ป˜ ์ •๋‹ต์— ์ˆ˜๋ ดํ•œ๋‹ค.

์Šคํ… 0 ยท ์†์‹ค โ€“ ยท ํ•„ํ„ฐ ๊ฑฐ๋ฆฌ โ€“
์ž…๋ ฅ ์ด๋ฏธ์ง€ (๋งค ์Šคํ… ๋…ธ์ด์ฆˆ๊ฐ€ ๋ฐ”๋€œ)
์ •๋‹ต ํ•„ํ„ฐ (์†Œ๋ฒจ ยท ๋ชจ๋ธ์€ ๋ชป ๋ด„)
ํ•™์Šต ์ค‘์ธ ํ•„ํ„ฐ โ† ์ด 9๊ฐœ ์ˆซ์ž๋ฅผ ์ง€์ผœ๋ณด์„ธ์š”
์ •๋‹ต ์ถœ๋ ฅ (์ •๋‹ต ํ•„ํ„ฐ ์ ์šฉ ๊ฒฐ๊ณผ)
ํ˜„์žฌ ์ถœ๋ ฅ (ํ•™์Šต ํ•„ํ„ฐ ์ ์šฉ ๊ฒฐ๊ณผ)
์†์‹ค (log)

"ํ•„ํ„ฐ ๊ฑฐ๋ฆฌ"๋Š” ํ•™์Šต ํ•„ํ„ฐ์™€ ์ •๋‹ต ํ•„ํ„ฐ 9๊ฐœ ๊ฐ’์˜ ํ‰๊ท  ์ œ๊ณฑ ์ฐจ์ด. ๋ชจ๋ธ์€ ์ด ๊ฐ’์„ ๋ชจ๋ฅธ ์ฑ„ ์˜ค์ง ์ถœ๋ ฅ ์˜ค์ฐจ๋งŒ ์ค„์˜€๋Š”๋ฐ๋„ 0์œผ๋กœ ๊ฐ„๋‹ค โ€” ์ถœ๋ ฅ์„ ์ •๋‹ต๊ณผ ๊ฐ™๊ฒŒ ๋งŒ๋“œ๋Š” ์œ ์ผํ•œ ๋ฐฉ๋ฒ•์ด ํ•„ํ„ฐ ์ž์ฒด๊ฐ€ ๊ฐ™์•„์ง€๋Š” ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ํ•™์Šต๋ฅ ์„ 0.9๊นŒ์ง€ ์˜ฌ๋ ค ๋ฐœ์‚ฐ๋„ ์‹œ์ผœ ๋ณด์ž.

์‹ค์ œ CNN ํ•™์Šต๋„ ์ด๊ฒƒ๊ณผ ๋ณธ์งˆ์ ์œผ๋กœ ๊ฐ™๋‹ค. ๋‹ค๋ฅธ ์ ์€ ๊ทœ๋ชจ๋ฟ์ด๋‹ค: ํ•„ํ„ฐ๊ฐ€ ์ˆ˜๋ฐฑ ๊ฐœ, ์ธต์ด ์ˆ˜์‹ญ ๊ฐœ, ์†์‹ค์ด ๋ถ„๋ฅ˜์šฉ ๊ต์ฐจ ์—”ํŠธ๋กœํ”ผ์ด๊ณ , "์ •๋‹ต ์ถœ๋ ฅ"์˜ ์ž๋ฆฌ์— ์ด๋ฏธ์ง€์— ๋ถ™์€ ๋ผ๋ฒจ์ด ์žˆ๋‹ค. AlexNet์˜ conv1 ํ•„ํ„ฐ๊ฐ€ ๊ฐ€๋ณด๋ฅด ํ•„ํ„ฐยท์ƒ‰ ๋ธ”๋กญ์ฒ˜๋Ÿผ ์ƒ๊ธด ์ด์œ ๋Š” ๋ˆ„๊ฐ€ ๊ทธ๋ ‡๊ฒŒ ์„ค๊ณ„ํ•ด์„œ๊ฐ€ ์•„๋‹ˆ๋ผ, ๋ถ„๋ฅ˜ ์†์‹ค์„ ๋‚ฎ์ถ”๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ๊ธฐ์šธ๊ธฐ๋ฅผ ๋”ฐ๋ผ๊ฐ€๋‹ค ๋ณด๋‹ˆ ๊ทธ๋Ÿฐ ํ•„ํ„ฐ๊ฐ€ "๋ฐœ๊ฒฌ"๋๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

์ด ๋ฐ๋ชจ์˜ ์ „์ฒด ํ•™์Šต ๋ฃจํ”„ โ€” ์‹ค์ œ ์ฝ”๋“œ 20์ค„
for (step = 0; step < N; step++) {
  img    = ์ƒˆ ์ด๋ฏธ์ง€();                    // ๋งค ์Šคํ… ๋…ธ์ด์ฆˆ๊ฐ€ ๋‹ค๋ฅธ ํ•™์Šต ๋ฐ์ดํ„ฐ
  target = conv(img, W_true);             // "์„ธ์ƒ"์ด ๋งŒ๋“œ๋Š” ์ •๋‹ต (๋ชจ๋ธ์€ W_true๋ฅผ ๋ชจ๋ฆ„)

  // โ‘  ์ˆœ์ „ํŒŒ
  out  = conv(img, W);                    // ์ง€๊ธˆ ํ•„ํ„ฐ๋กœ ์˜ˆ์ธก
  // โ‘ก ์†์‹ค
  err  = out - target;
  loss = mean(errยฒ);
  // โ‘ข ์—ญ์ „ํŒŒ โ€” ํ•„ํ„ฐ ๊ฐ ์นธ์˜ ๊ธฐ์šธ๊ธฐ
  for (u,v of 3ร—3)
    grad[u][v] = (2/N) * ฮฃแตขโฑผ err[i][j] * img[i+u][j+v];
  // โ‘ฃ ์—…๋ฐ์ดํŠธ โ€” ๊ธฐ์šธ๊ธฐ ๋ฐ˜๋Œ€ ๋ฐฉํ–ฅ์œผ๋กœ ํ•œ ๊ฑธ์Œ
  for (u,v of 3ร—3)
    W[u][v] -= lr * grad[u][v];
}
7

์ •๋ฆฌ, ๊ทธ๋ฆฌ๊ณ  ํ€ด์ฆˆ

์ˆœ์ „ํŒŒ
์ง€๊ธˆ์˜ ๊ฐ€์ค‘์น˜๋กœ ์ž…๋ ฅโ†’์ถœ๋ ฅ์„ ๊ณ„์‚ฐ. ์˜ˆ์ธก์„ ๋งŒ๋“ ๋‹ค.
์†์‹ค ํ•จ์ˆ˜
ํ‹€๋ฆฐ ์ •๋„๋ฅผ ๋ฏธ๋ถ„ ๊ฐ€๋Šฅํ•œ ์ˆซ์ž ํ•˜๋‚˜๋กœ. ํ•™์Šต์˜ ๋‚˜์นจ๋ฐ˜.
์—ญ์ „ํŒŒ
์—ฐ์‡„ ๋ฒ•์น™์œผ๋กœ ๋ชจ๋“  ๊ฐ€์ค‘์น˜์˜ โˆ‚L/โˆ‚w๋ฅผ ์ถœ๋ ฅโ†’์ž…๋ ฅ ๋ฐฉํ–ฅ์œผ๋กœ ๊ณ„์‚ฐ.
์—…๋ฐ์ดํŠธ
w โ† w โˆ’ ฮทยทโˆ‚L/โˆ‚w. ์ด ๋„ค ๋‹จ๊ณ„์˜ ์ˆ˜๋งŒ ๋ฒˆ ๋ฐ˜๋ณต์ด ๊ณง ํ•™์Šต.

Q1. ์ˆœ์ „ํŒŒ(forward pass)๊ฐ€ ํ•˜๋Š” ์ผ์€?

์ˆœ์ „ํŒŒ๋Š” ๊ณ„์‚ฐ์„ ์•ž์œผ๋กœ ํ˜๋ ค๋ณด๋‚ด ์˜ˆ์ธก์„ ๋งŒ๋“œ๋Š” ๋‹จ๊ณ„๋‹ค. ๊ฐ€์ค‘์น˜ ์ˆ˜์ •์€ ์—…๋ฐ์ดํŠธ, ๊ธฐ์šธ๊ธฐ ๊ณ„์‚ฐ์€ ์—ญ์ „ํŒŒ์˜ ๋ชซ.

Q2. ์†์‹ค ํ•จ์ˆ˜๊ฐ€ ๋ฐ˜๋“œ์‹œ ๋ฏธ๋ถ„ ๊ฐ€๋Šฅํ•ด์•ผ ํ•˜๋Š” ์ด์œ ๋Š”?

์†์‹ค์ด ๋ฏธ๋ถ„ ๊ฐ€๋Šฅํ•ด์•ผ โˆ‚L/โˆ‚w๊ฐ€ ์ •์˜๋˜๊ณ , ๊ทธ๋ž˜์•ผ ๊ฒฝ์‚ฌ ํ•˜๊ฐ•๋ฒ•์ด ๋‚ด๋ฆฌ๋ง‰ ๋ฐฉํ–ฅ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค. ๋ฏธ๋ถ„ ๋ถˆ๊ฐ€๋Šฅํ•œ "์ •ํ™•๋„" ๊ฐ™์€ ์ง€ํ‘œ๋ฅผ ํ•™์Šต ๋ชฉํ‘œ๋กœ ์ง์ ‘ ๋ชป ์“ฐ๋Š” ์ด์œ ๋‹ค.

Q3. ์—ญ์ „ํŒŒ๊ฐ€ ์‹ค์ œ๋กœ ๊ณ„์‚ฐํ•˜๋Š” ๊ฒƒ์€?

์—ญ์ „ํŒŒ๋Š” ์—ฐ์‡„ ๋ฒ•์น™์„ ์ถœ๋ ฅโ†’์ž…๋ ฅ ๋ฐฉํ–ฅ์œผ๋กœ ์ ์šฉํ•ด ๊ธฐ์šธ๊ธฐ๋ฅผ ๊ตฌํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ผ ๋ฟ, ๊ฐ€์ค‘์น˜๋ฅผ ๋ฐ”๊พธ๋Š” ๊ฒƒ์€ ๊ทธ๋‹ค์Œ์˜ ์—…๋ฐ์ดํŠธ ๋‹จ๊ณ„๋‹ค. ์ตœ์ ๊ฐ’์„ ํ•œ ๋ฒˆ์— ๊ตฌํ•ด ์ฃผ์ง€๋„ ์•Š๋Š”๋‹ค โ€” ๋ฐฉํ–ฅ๋งŒ ์•Œ๋ ค ์ค€๋‹ค.

Q4. ยง6์—์„œ ๋‚œ์ˆ˜ ํ•„ํ„ฐ๊ฐ€ ์ •๋‹ต(์†Œ๋ฒจ) ํ•„ํ„ฐ๋ฅผ ํ•œ ๋ฒˆ๋„ ๋ณด์ง€ ๋ชปํ–ˆ๋Š”๋ฐ๋„ ๊ทธ ๊ฐ’์œผ๋กœ ์ˆ˜๋ ดํ•œ ์ด์œ ๋Š”?

์†์‹ค์€ ์˜ค์ง ์ถœ๋ ฅ์˜ ์ฐจ์ด๋งŒ ์Ÿ€๋‹ค. ๋‹ค์–‘ํ•œ ์ž…๋ ฅ์— ๋Œ€ํ•ด ์ถœ๋ ฅ์ด ์ „๋ถ€ ๊ฐ™์œผ๋ ค๋ฉด ํ•„ํ„ฐ ์ž์ฒด๊ฐ€ ๊ฐ™์•„์•ผ ํ•˜๋ฏ€๋กœ, ์†์‹ค์„ 0์œผ๋กœ ๋งŒ๋“œ๋Š” ๊ณผ์ •์ด ๊ณง ํ•„ํ„ฐ๋ฅผ ์ •๋‹ต์œผ๋กœ ๋ฐ๋ ค๊ฐ„๋‹ค. ์‹ค์ œ CNN์—์„œ๋„ "๋ผ๋ฒจ์„ ๋งžํžˆ๋ผ"๋Š” ์†์‹ค๋งŒ์œผ๋กœ ์—์ง€ยท์ƒ‰ยท์งˆ๊ฐ ํ•„ํ„ฐ๊ฐ€ ์ €์ ˆ๋กœ ์ƒ๊ฒจ๋‚œ๋‹ค.