Weight Initialization
๋ฅ๋ฌ๋ ๋ชจ๋ธ์ ํ์ตํ๋ค๋ ๊ฑด loss ๊ฐ์ด ์ต์๊ฐ ๋๋ parameter๋ฅผ ์ฐพ๋ ๊ฒ์ด๋ค. ์ต์ ์ parameter๋ฅผ ์ฐพ๊ธฐ ์ํด ๊ณ ๋ คํด์ผ ํ ์ ๋ค์ด ์ฌ๋ฟ ์์ง๋ง, ๊ทธ ์ค parameter์ ์ด๊ธฐ๊ฐ ์ค์ ์ ์ค์ํ ์ํฅ์ ๋ฏธ์น๋ค. ์ด ๊ธ์์ parameter ์ฆ, weight์ ์ด๊ธฐ๊ฐ์ ์ค์ ํ๋ ์ฌ๋ฌ ๊ฐ์ง ๋ฐฉ๋ฒ์ ๋ํด ๋ค๋ค๋ณด๋ ค ํ๋ค.
Zero Initialization (or Same Initialization)
weight ํฌ๊ธฐ๋ฅผ ํฌ๊ฒ ๋ถ์ฌํ ์๋ก ๋ชจ๋ธ์ ํน์ ๋ฐ์ดํฐ์๋ง ์ ๋ง๋ overfitting ๋ฌธ์ ๊ฐ ๋ฐ์ํ๊ธฐ ์ฝ๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ weight์ 0 ํน์ ๊ต์ฅํ ์์ ๊ฐ์ผ๋ก ๋ถ์ฌํด ํ์ต์ ์งํ์์ผ๋ณด์.
$h_1 = h_2 = h_3 = \mathbf{W}(i_1 + i_2)$
์ฌ๊ธฐ 2์ธต์ผ๋ก ๊ตฌ์ฑ๋ ๋คํธ์ํฌ๊ฐ ์๋ค. ๊ฐ ๋ ธ๋์ weight์ด ๋ชจ๋ ๋์ผํ๋ค๋ฉด, ๊ทธ ๋ค์ ๋ ์ด์ด์ ๋ ธ๋๋ค์ ๋ชจ๋ ๋์ผํ ๊ฐ์ ๊ฐ์ง ๊ฒ์ด๋ค.
์ด๋ ๊ฒ ๋ชจ๋ ๋ ธ๋์ ๊ฐ์ด ๊ฐ๋ค๋ฉด backpropagation ์งํ ์์๋ weight๋ค์ ๋ชจ๋ ๋ค ๊ฐ์ ๊ฐ์ผ๋ก ์ ๋ฐ์ดํธ ๋์ด ๊ฒฐ๊ตญ ํ ๋ ์ด์ด์ ํ๋์ ๋ ธ๋๋ง์ด ์กด์ฌํ๋ ๋คํธ์ํฌ์ ๋์ผํ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๊ฒ ๋๋ค. ์ด๋ฐ ๋ชจ๋ธ์ ๋ฎ์ ํํ๋ ฅ์ ๊ฐ์ ธ ์ฃผ์ด์ง ๋ฐ์ดํฐ๋ฅผ ์ถฉ๋ถํ ์ค๋ช ํ์ง ๋ชปํ๋ค.
๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋ ๋ฐฉ๋ฒ์ ๊ฐ๋จํ๋ค. ๋ฐ๋ก, weight์ ์ด๊ธฐ๊ฐ์ด ๋์ผํ ๊ฐ์ ๊ฐ์ง์ง ๋ชปํ๊ฒ ๋์๋ก ์ด๊ธฐํํ๋ ๊ฒ์ด๋ค.
Random Initialization
์ ๋ด์ฉ์ ํตํด weight์ด ๊ฐ์ ๋ค ๋ค๋ฅด๊ฒ ์ด๊ธฐํ ๋์ด์ผ ํ๋ค๋ ๊ฒ์ ์์๋ค. Randomํ๊ฒ ๋ถ์ฌํ๊ธฐ ์ํด ํน์ ๋ถํฌ์ ๋ฐ๋ผ weight ๊ฐ์ ์ด๊ธฐํ ์์ผ๋ณด์.
- ํ์คํธ์ฐจ๊ฐ 1์ธ ์ ๊ท๋ถํฌ๋ฅผ ๋ฐ๋ฅผ ๋
๋จผ์ , ๋ชจ๋ธ์ weight์ ํ์คํธ์ฐจ๊ฐ 1์ธ ์ ๊ท๋ถํฌ์์ randomํ๊ฒ ์ค์ ํ ๊ฒฐ๊ณผ์ด๋ค. ์ด๋ ํ์ฑํ๊ฐ ๋ถํฌ๋ 0๊ณผ 1์ ์น์ฐ์ณ์ ธ ์๋ค๋ ๊ฒ์ ์ ์ ์๋ค. (์ด๋, ํ์ฑํ ํจ์๋ Sigmoid๋ฅผ ์ฌ์ฉํด์ฃผ์๋ค)
Sigmoid ํจ์์์ 0๊ณผ 1์ ๊ธฐ์ธ๊ธฐ๋ 0์ ๊ฐ๊น์ด ๊ฐ์ด๋ค. ๊ธฐ์ธ๊ธฐ๊ฐ 0์ ๊ฐ๊น์์ง๋ฉด ๋ ์ด์ด๊ฐ ๊น์ด์ง์๋ก ๊ธฐ์ธ๊ธฐ๊ฐ ์์ค๋๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค. ์ด ๋ฌธ์ ๋ backpropagation ์งํ ์ weight ๊ฐ์ update ํ ์ ์์ด ํ์ต์ด ๋์ด์ ์งํ๋์ง ๋ชปํ๊ฒ ๋ง๋ ๋ค.
- ํ์คํธ์ฐจ๊ฐ 0.01์ธ ์ ๊ท๋ถํฌ๋ฅผ ๋ฐ๋ฅผ ๋
๊ทธ๋ผ ์ข ๋ ์ข์ ๋ถํฌ์์ weight ๊ฐ์ ์ด๊ธฐํ์ํค๋ฉด ์ด๋จ๊น? ํ์คํธ์ฐจ ๊ฐ์ด 0.01์ธ ๋ถํฌ์์ weight ๊ฐ์ ์ด๊ธฐํ ์์ผ๋ณด์.
ํด๋น ๊ฒฝ์ฐ ํ์ฑํ๊ฐ๋ค์ด 0.5 ๋ถ๊ทผ์ ๋ชจ์ฌ์๋ค๋ ๊ฒ์ ์ ์ ์๋ค. ๋คํํ๋ Sigmoid์์ 0.5 ๊ทผ์ฒ์์ ๊ธฐ์ธ๊ธฐ ๊ฐ์ 0.25 ์ ๋์ด๊ธฐ ๋๋ฌธ์ ๊ธฐ์ธ๊ธฐ ์์ค ๋ฌธ์ ๋ฅผ ์ผ๊ธฐํ์ง ์๋๋ค. ๊ทธ๋ฌ๋ ์ด๋ ๊ฒ ํ์ฑํ๊ฐ์ด ํ์ชฝ์ ์น์ฐ์ณ์ ธ ์๋ค๋ ๊ฒ์ ๋๋ค์์ ๋ ธ๋๋ค์ด ๋น์ทํ ๊ฐ์ ๊ฐ์ง๋ค๋ ๊ฒ์ด๊ณ , ๊ฒฐ๊ตญ ๋ฐ์ดํฐ๋ฅผ ์ค๋ช ํ ์ ์๋ ํํ๋ ฅ์ด ์ ํ๋๊ธฐ ๋๋ฌธ์ ์ด ์ญ์๋ ํ์ต์ด ์ํํ ์งํ๋๋ค๊ณ ๋ณด๊ธฐ ์ด๋ ต๋ค.
๊ณ ์ ๋ ํ์คํธ์ฐจ๋ฅผ ์ฌ์ฉํด weight ๊ฐ๋ค์ ๋์๋ก ์ด๊ธฐํ ํ๋ฉด ๊ธฐ์ธ๊ธฐ ์์ค์ด๋ ํํ๋ ฅ ์ ํ ๋ฑ์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค๋ ๊ฒ์ ์์๋ค. ์ด๋ฐ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๊ณ ์ ๋ ํ์คํธ์ฐจ(ํน์ ํ๋ฅ ๋ถํฌ)๊ฐ ์๋ ์ด์ node์ ๋ฐ๋ผ weight ๊ฐ์ ์ด๊ธฐํ ์ํค๋ ๋ฐฉ๋ฒ์ด ์ ์๋์๋ค. ํด๋น ๋ฐฉ๋ฒ์๋ ์ด๋ค ๊ฒ๋ค์ด ์๋์ง ์์๋ณด์.
Xavier Initialization
๋จผ์ , Xavier Initialization์ด๋ค. ์ด ๋ฐฉ๋ฒ์ ์์ ๋งํ๋ฏ weight์ ๋ถํฌ๊ฐ ๊ณ ์ ๋ ํ์คํธ์ฐจ๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ์ด์ hidden state์ node ์์ ๋ง๊ฒ ๋ณํํ๋ค. ์ด๋ forward ๋ฐฉํฅ์์์ ์ด์ node๋ ์ ๋ ฅ node๊ฐ ๋๊ณ , backward ๋ฐฉํฅ์์์ ์ด์ node๋ ์ถ๋ ฅ node๊ฐ ๋๋ฏ๋ก ์ ๋ ฅ๊ณผ ์ถ๋ ฅ node๋ฅผ ๋ชจ๋ ๊ณ ๋ คํด weight ๊ฐ์ ์ด๊ธฐํ ์ํจ๋ค๊ณ ํํํ ์ ์๋ค.
์ ๋ฆฌํ์๋ฉด Xavier Initialization์ ๋ค์ layer์ weight ๊ฐ๋ค์ ์ด๊ธฐํํ ๋ layer์ ์ ๋ ฅ ๋ ธ๋ ์์ธ $n_{\text{in}}$๊ณผ ์ถ๋ ฅ ๋ ธ๋ ์์ธ $n_{\text{out}}$์ ๋ชจ๋ ๊ณ ๋ คํ๋ฉฐ, ์ด๋ ๋ค์๊ณผ ๊ฐ์ด ํ๊ท 0, ๋ถ์ฐ $\frac{2}{n_{\text{in}} + n_{\text{out}}}$๋ฅผ ๊ฐ๋ ์ ๊ท๋ถํฌ์ ๋ฐ๋ผ ์ด๊ธฐํ๋๋ค๊ณ ํ๊ธฐํ ์ ์๋ค.
์ด ๋ฐฉ๋ฒ์ ํ์ฑํ ํจ์๊ฐ ์ ํ์ผ ๋ ์ฌ์ฉํ ์ ์๋ค. sigmoid ๊ฒฝ์ฐ ์ข์ฐ ๋์นญ ํํ๋ฅผ ๋๋ ํจ์์ด๊ธฐ ๋๋ฌธ์ ์ค์ ๋ถ๋ถ์์ ์ ํ ํจ์์ฒ๋ผ ์๊ฐํ ์ ์๋ค. ๋ฐ๋ผ์ sigmoid๋ tanh์ ๊ฐ์ด S์ ํํ์ ํ์ฑํ ํจ์๋ฅผ ์ฌ์ฉํ ๋ ์ ์ฉํ๊ฒ ์ฌ์ฉํ ์ ์๋ ๋ฐฉ๋ฒ์ด๋ค. ๊ทธ๋ฌ๋ ํ์ฑํ ํจ์๋ก ์ด ๋๋ณด๋ค ์์ฃผ ์ฐ์ด๋ ReLU์ ๊ฒฝ์ฐ ์ ํ ํจ์๋ผ ๋ณผ ์ ์๋ค. ์์์ผ ๋ 0์, 0๋ณด๋ค ํฐ ๊ฐ์ผ ๋ ๊ทธ ๊ฐ ๊ทธ๋๋ก ์ฌ์ฉํ๋ ReLU ํจ์๋ฅผ ์ฌ์ฉํ ๋ ํจ๊ณผ์ ์ผ๋ก ๊ฐ์ค์น๋ฅผ ์ด๊ธฐํ ํ ์ ์๋ ๋ฐฉ๋ฒ์ ์ด๋ค๊ฑธ๊น?
He Initialization
He Initializatoin์ ReLU ํจ์์ ์ ํฉํ ๊ฐ์ค์น ์ด๊ธฐํ ๋ฐฉ๋ฒ์ด๋ค. ์ด ๋ฐฉ๋ฒ ๋ํ ์ด์ hidden state์ node ์์ ๋ง๊ฒ weight์ ๋ถํฌ๊ฐ ๋ณํํ๋ค. ๊ทธ๋ฌ๋ Xavier์ ๋ฌ๋ฆฌ ์ ๋ ฅ node์ ์๋ง ๊ณ ๋ คํด weight๋ฅผ ์ด๊ธฐํ์ํจ๋ค.
๋ฐ๋ผ์ ํ๊ท 0, ๋ถ์ฐ $\frac{2}{n_{\text{in}}}$๋ฅผ ๊ฐ๋ ์ ๊ท๋ถํฌ์ ๋ฐ๋ผ weight์ ์ด๊ธฐํ ์ํค๋ ๋ฐฉ๋ฒ์ด๋ผ ๋งํ ์ ์๊ณ , ์์์ผ๋ก ๋ค์๊ณผ ๊ฐ์ด ํํํ ์ ์๋ค.
๐ก Reference
1. ๋ฐ๋ฐ๋ฅ๋ถํฐ ์์ํ๋ ๋ฅ๋ฌ๋ / ํ๋น๋ฏธ๋์ด
'๐ Jero's Wiki > Deep Learning' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Regularization (1) | 2024.04.26 |
---|---|
Likelihood & MLE (2) | 2024.04.21 |
Backpropagation (1) | 2024.04.18 |
Gradient Descent (0) | 2024.04.17 |