[Deep Learning] Backpropagation

๊น€ํฌ์ง„ยท2021๋…„ 3์›” 28์ผ
0

DeepLearning

๋ชฉ๋ก ๋ณด๊ธฐ
5/12
post-thumbnail

๐Ÿ“– ์ผ€๋ผ์Šค ์ฐฝ์‹œ์ž์—๊ฒŒ ๋ฐฐ์šฐ๋Š” ๋”ฅ๋Ÿฌ๋‹ (ํ”„๋ž‘์†Œ์™€ ์ˆ„๋ ˆ, ๋ฐ•ํ•ด์„ , ๊ธธ๋ฒ—) ์ฐธ๊ณ 

๐ŸŒˆ Forward Propagation

ํ•จ์ˆ˜ํ˜• ๋ชจ๋ธ์˜ ํ•™์Šต ์›๋ฆฌ๋Š” ์ด์ „ ํฌ์ŠคํŒ…์—์„œ ์„ค๋ช…ํ•œ Gradient Descent์ด๋‹ค. Parameter Update๋ฅผ ํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ ํŒŒ๋ผ๋ฏธํ„ฐ๋“ค์˜ ํŽธ๋ฏธ๋ถ„๊ฐ’์„ ๊ตฌํ•ด์„œ ๋นผ๋Š” ๋ฐฉ์‹์œผ๋กœ ํ•™์Šต์„ ์ง„ํ–‰ํ•˜์˜€๋‹ค. ํ•˜์ง€๋งŒ Parameter ๊ฐœ์ˆ˜๊ฐ€ 100๋งŒ๊ฐœ ์ด์ƒ์œผ๋กœ ๊ต‰์žฅํžˆ ๋งŽ์€ ๊ฒฝ์šฐ ์ˆ˜์น˜๋ฏธ๋ถ„์œผ๋กœ ๊ณ„์‚ฐํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ• ๊นŒ?

์ด์ „ ํฌ์ŠคํŒ…์—์„œ๋„ ์–ธ๊ธ‰ํ–ˆ๋“ฏ ์‹ค์ œ ์‹ ๊ฒฝ๋ง์—์„œ๋Š” ํŒŒ๋ผ๋ฏธํ„ฐ์˜ ๊ฐœ์ˆ˜๊ฐ€ ์ˆ˜์ฒœ ๊ฐœ๋ณด๋‹ค ์ ์€ ๊ฒฝ์šฐ๊ฐ€ ๊ฑฐ์˜ ์—†์œผ๋ฉฐ ์ˆ˜์ฒœ๋งŒ ๊ฐœ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๊ฐ–๋Š” ๊ฒฝ์šฐ๋„ ์ข…์ข… ์žˆ๋‹ค. Hidden Layer์˜ ์ˆ˜, Node์˜ ๊ฐœ์ˆ˜ ๋“ฑ์— ์˜ํ–ฅ์„ ๋ฐ›์•„ ๊ฐœ์ˆ˜๊ฐ€ ์ฆ๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. Parameter์˜ ์ˆ˜๋Š” Model Capacity์— ์˜ํ–ฅ์„ ์ค€๋‹ค. ํ•˜์ง€๋งŒ ํŒŒ๋ผ๋ฏธํ„ฐ์˜ ๊ฐœ์ˆ˜๊ฐ€ ์ฆ๊ฐ€ํ•˜๋ฉด ํ•™์Šต์‹œ๊ฐ„์— ์˜ํ–ฅ์„ ์ค„ ๊ฒƒ์ด๋‹ค.

๊ทธ๋ ‡๋‹ค๋ฉด ์ˆ˜์น˜๋ฏธ๋ถ„์„ ํ•˜์ง€ ์•Š๊ณ  ๋ฏธ๋ถ„ ๊ฐ’์„ ์–ป์„ ์ˆ˜๋Š” ์—†์„๊นŒ?

๐ŸŒˆ BackPropagation


์‹ ๊ฒฝ๋ง ๋ชจ๋ธ์€ ์œ„ ์ˆ˜์‹์ฒ˜๋Ÿผ ๊ฐ„๋‹จํ•œ ํ•จ์ˆ˜๋“ค์˜ ํ•ฉ์„ฑ ํ•จ์ˆ˜๋กœ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ์ฆ‰, ๊ฐ„๋‹จํ•œ ํ•จ์ˆ˜๋“ค์ด ์ค‘์ฒฉ๋œ ํ˜•ํƒœ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค.
๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ์šฐ๋ฆฌ๋Š” ์—ฐ์‡„ ๋ฒ•์น™์„ ์ ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

Chain Rule

Chain Rule, ๋ฏธ๋ถ„์˜ ์—ฐ์‡„ ๋ฒ•์น™์ด๋ž€ ํ•ฉ์„ฑ ํ•จ์ˆ˜์˜ ๋ฏธ๋ถ„์€ ํ•ฉ์„ฑ ํ•จ์ˆ˜๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๊ฐœ๋ณ„ ํ•จ์ˆ˜ ๋ฏธ๋ถ„์˜ ๊ณฑ์œผ๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค.

Backpropagation Algorithm

์œ„์™€ ๊ฐ™์€ ๊ตฌ์กฐ์˜ ์‹ ๊ฒฝ๋ง์ด ์žˆ์„ ๋•Œ ์šฐ์„  ์™ผ์ชฝ์—์„œ ์˜ค๋ฅธ์ชฝ ๋ฐฉํ–ฅ์œผ๋กœ(Forward) ์—ฐ์‚ฐ์„ ํ•˜๋ฉฐ Cost, ์˜ค์ฐจ๊ฐ’์„ ๊ณ„์‚ฐํ•œ๋‹ค.

n3 ๋…ธ๋“œ๋ฅผ ํ™•๋Œ€ํ•ด๋ณด๋ฉด ์ด๋Ÿฐ ๊ตฌ์กฐ๋กœ ๋‚˜ํƒ€๋‚  ๊ฒƒ์ด๋‹ค. ์šฐ๋ฆฌ๋Š” W21์„ ์—…๋ฐ์ดํŠธํ–ˆ์„ ๋•Œ ์˜ค์ฐจ๊ฐ’์ด ์–ผ๋งˆ๋‚˜ ๊ฐ์†Œํ• ์ง€ ์•Œ๊ณ  ์‹ถ๋‹ค. ์ด๊ฒƒ์„ ์•„๋ž˜์™€ ๊ฐ™์€ ์ˆ˜์‹์œผ๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ด ์ˆ˜์‹์„ ์—ฐ์‡„ ๋ฒ•์น™์„ ํ™œ์šฉํ•˜์—ฌ ํ’€๋ฉด ์˜ค์ฐจ๊ฐ’ ยท ์ถœ๋ ฅ๊ฐ’(1-์ถœ๋ ฅ๊ฐ’) ยท ์ž…๋ ฅ๊ฐ’์˜ ํ˜•ํƒœ๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค. ์ฆ‰, ๋ฏธ๋ถ„ ์—ฐ์‚ฐ์„ ํ•˜์ง€ ์•Š๊ณ  Forward Propagation ๊ฒฐ๊ณผ๋งŒ์œผ๋กœ ๋ฏธ๋ถ„ ๊ฐ’์„ ์–ป์„ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค.

๋ฏธ๋ถ„์„ ํ•˜์ง€ ์•Š๊ณ  ์˜ค์ฐจ๊ฐ’, ์ถœ๋ ฅ๊ฐ’, ์ž…๋ ฅ๊ฐ’์„ ์ด์šฉํ•ด์„œ ๊ฐ€์ค‘์น˜๋ฅผ ์œ„์™€ ๊ฐ™์€ ์‹์„ ํ†ตํ•ด ์—…๋ฐ์ดํŠธ ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ˆ˜์น˜ ๋ฏธ๋ถ„์„ ๊ณ„์‚ฐํ•˜๋Š” ๊ฒƒ์€ ๋งŽ์€ ์ปดํ“จํŒ… ์ž์› ๋ฐ ์‹œ๊ฐ„์ด ์†Œ์š”๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ด์™€ ๊ฐ™์ด ๋ฏธ๋ถ„์„ ํ•˜์ง€ ์•Š๊ณ  Forward Propagation์˜ ๊ฒฐ๊ณผ๋ฅผ ์ „๋‹ฌํ•˜๋ฉฐ ํŒŒ๋ผ๋ฏธํ„ฐ ์—…๋ฐ์ดํŠธ๋ฅผ ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ๋ฐ”๋กœ Backpropagation, ์—ญ์ „ํŒŒ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค. ์—ญ์ „ํŒŒ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ†ตํ•ด ์šฐ๋ฆฌ๋Š” hidden layer๋‚˜ node์˜ ์ˆ˜๊ฐ€ ์ฆ๊ฐ€ํ•˜์—ฌ๋„ ํ•™์Šต ์†๋„์— ์˜ํ–ฅ์„ ๋ฐ›์ง€ ์•Š๊ณ  ํ•™์Šตํ•  ์ˆ˜ ์žˆ๋‹ค.

0๊ฐœ์˜ ๋Œ“๊ธ€

๊ด€๋ จ ์ฑ„์šฉ ์ •๋ณด

Powered by GraphCDN, the GraphQL CDN