Weight Initialization

Weight Initialization

๊ฐ€์ค‘์น˜๋ฅผ ์–ด๋–ป๊ฒŒ ์ดˆ๊ธฐ์— ์ •ํ•˜๋А๋ƒ์— ๋ผ ๋ชจ๋ธ์˜ ํ•™์Šต ์„ฑ๋Šฅ์ด ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ๋‹ค.
ย 

๋ชจ๋“  ๊ฐ€์ค‘์น˜๋ฅผ 0์œผ๋กœ ์ดˆ๊ธฐํ™”


๋ชจ๋“  ๋‰ด๋Ÿฐ์€ ๋ชจ๋‘ ๋‹ค ๊ฐ™์€ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๊ฒŒ ๋œ๋‹ค. ์ถœ๋ ฅ๊ฐ’๋„ ๊ฐ™์„ ๊ฒƒ์ด๊ณ  gradient๋„ ์„œ๋กœ ๊ฐ™์•„์ ธ ๋ชจ๋“  ๊ฐ€์ค‘์น˜๊ฐ€ ๋˜‘๊ฐ™์€ ๊ฐ’์œผ๋กœ ์—…๋ฐ์ดํŠธ๋œ๋‹ค. ๋ชจ๋“  ๋‰ด๋Ÿฐ์ด ๋ชจ๋‘ ๋˜‘๊ฐ™์€ ํ˜•ํƒœ๋ฅผ ๊ฐ–๊ฒŒ ๋˜์–ด Symmtric Breaking(๊ฐ€์ค‘์น˜ ์„ค์ •์„ ์ž˜๋ชปํ•˜์—ฌ ๋ชจ๋“  ๋‰ด๋Ÿฐ์ด ๊ฐ™์€ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•ด ์ถœ๋ ฅ๋„ ๊ฐ™๊ณ , gradient๋„ ๊ฐ™์•„ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ)์ด ๋ฐœ์ƒํ•œ๋‹ค.
ย 

์ž‘์€ ๋žœ๋ค ๊ฐ’์œผ๋กœ ์ดˆ๊ธฐํ™”


์•„๋ž˜์˜ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ‰๊ท =0, ํ‘œ์ค€ํŽธ์ฐจ=0.01์ธ ๊ฐ€์šฐ์‹œ์•ˆ ์ •๊ทœ๋ถ„ํฌ์—์„œ ๋žœ๋คํ•˜๊ฒŒ ์ƒ˜ํ”Œ๋งํ•œ ํ›„, 0.01์„ ๊ณฑํ•ด ์ž‘์€ ์ˆ˜๋ฅผ ๋งŒ๋“ค์–ด์ค€๋‹ค.
W = 0.01 * np.random.randn(D, H)
ย 
Small data์—์„œ๋Š” ์ž˜ ๋™์ž‘ํ•˜์ง€๋งŒ activation ํ•จ์ˆ˜๊ฐ€ ์žˆ๋Š” Deep Network์—์„œ๋Š” ์ž˜ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š”๋‹ค.
๋ ˆ์ด์–ด๋ฅผ ๋”ฐ๋ผ ์ง„ํ–‰ํ• ์ˆ˜๋ก ํ‰๊ท ์€ ๊ทธ๋Œ€๋กœ 0์— ๊ฐ€๊น์ง€๋งŒ ํ‘œ์ค€ ํŽธ์ฐจ๋Š” 1์—์„œ 0์œผ๋กœ ๊ณ„์† ์ค„์–ด๋“ค๊ฒŒ ๋˜๊ณ  ๋ชจ๋“  ์ถœ๋ ฅ๊ฐ’์ด 0์— ๊ฐ€๊นŒ์šด ๊ฐ’์„ ๊ฐ–๋Š”๋‹ค. ๋•Œ๋ฌธ์— backpropagation ๋‹จ๊ณ„์—์„œ X๊ฐ€ ์—„์ฒญ ์ž‘์€ ๊ฐ’์ด๊ธฐ ๋•Œ๋ฌธ์— gradient๋„ ์ž‘์„ ๊ฒƒ์ด๊ณ  ์—…๋ฐ์ดํŠธ๊ฐ€ ์ด๋ฃจ์–ด์ง€์ง€ ์•Š๊ฒŒ ๋œ๋‹ค.

ํฐ ๊ฐ’์œผ๋กœ ์ดˆ๊ธฐํ™”


W = 1 * np.random.randn(D, H)
ย 
๊ฐ€์ค‘์น˜๊ฐ€ ํฐ ๊ฐ’์„ ๊ฐ€์ง€๋ฏ€๋กœ ์ถœ๋ ฅ์€ ํ•ญ์ƒ saturation ๋  ๊ฒƒ์ด๋‹ค. X๋Š” -1 ๋˜๋Š” 1๋กœ ์ˆ˜๋ ดํ•˜๊ณ  gradient๋Š” 0์„ ๊ฐ–๊ฒŒ ๋˜์–ด ๊ฐ€์ค‘์น˜ ์—…๋ฐ์ดํŠธ๊ฐ€ ์ผ์–ด๋‚˜์ง€ ์•Š๋Š”๋‹ค.
ย 
ย 

Xavier initialization


W = np.random.randn(D,H)/np.sqrt(D)
ย 
์ดˆ๊ธฐํ™” ๊ฐ’์„ input ๋‰ด๋Ÿฐ์˜ ์ˆ˜์— ๋งž๊ฒŒ ์กฐ์ •ํ•œ๋‹ค. input์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋งŽ์•„์ง€๋ฉด ํฌ๊ฒŒ ๋‚˜๋ˆ ์ฃผ๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ’์ด ์ž‘์•„์ง€๊ณ , input์˜ ๊ฐœ์ˆ˜๊ฐ€ ์ ์œผ๋ฉด weight ๊ฐ’์ด ์ปค์ง€๊ฒŒ ๋œ๋‹ค. ์ด์ „ ๋ ˆ์ด์–ด์—์„œ ๋“ค์–ด์˜ค๋Š” input ๋‰ด๋Ÿฐ์˜ ์ˆ˜๊ฐ€ ๋งŽ๋‹ค๋ฉด ํŒŒ๋ผ๋ฏธํ„ฐ์˜ ์ดˆ๊ธฐํ™”๊ฐ’์„ ์กฐ๊ธˆ ๋” ๋‚ฎ์ถฐ ๋„ˆ๋ฌด ํฐ๊ฐ’์ด ๋˜์ง€ ์•Š๋„๋ก ์กฐ์ •ํ•˜๊ณ  ๊ทธ ๋ฐ˜๋Œ€์˜ ๊ฒฝ์šฐ์—๋Š” ์ดˆ๊ธฐํ™”๊ฐ’์„ ์กฐ๊ธˆ ๋†’ํžˆ๋Š” ์—ญํ• ์„ ํ•œ๋‹ค.
ReLU์˜ ๊ฒฝ์šฐ ์Œ์ˆ˜๋ถ€๋ถ„์ด ๋ชจ๋‘ 0์ด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ถœ๋ ฅ๊ฐ’, ํ‰๊ท , ํ‘œ์ค€ํŽธ์ฐจ๊ฐ€ ๋ชจ๋‘ 0์œผ๋กœ ์ˆ˜๋ ดํ•˜๋ฏ€๋กœ gradient๊ฐ€ ์ฃฝ์–ด, ๋ถ„์‚ฐ์ด ๋ฐ˜๋งŒ ๋‚˜์™€ ๋ถ„ํฌ๊ฐ€ ์ค„์–ด๋“ค๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ™์ด ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.
ย 
ย 
ย 
ย 
ย 
ย