๊ฐ์ค์น๋ฅผ ์ด๋ป๊ฒ ์ด๊ธฐ์ ์ ํ๋๋์ ๋ผ ๋ชจ๋ธ์ ํ์ต ์ฑ๋ฅ์ด ๋ฌ๋ผ์ง ์ ์๋ค.
ย
๋ชจ๋ ๊ฐ์ค์น๋ฅผ 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๊ฐ ์ฃฝ์ด, ๋ถ์ฐ์ด ๋ฐ๋ง ๋์ ๋ถํฌ๊ฐ ์ค์ด๋ค๊ธฐ ๋๋ฌธ์ ๊ฐ์ด ์ฌ์ฉํ์ง ์๋ ๊ฒ์ด ์ข๋ค.
ย
ย
ย
ย
ย
ย