- activation function
- sigmoid
- tanh
- relu
- reaky relu
1. simgoid
$$ \sigma(x) = \frac{1}{1+\exp(-x)} $$
$$ \sigma'(x)=\sigma(x)(1-\sigma(x)) $$
- [0, 1] ์ฌ์ด์ ๊ฐ์ผ๋ก ๊ฒฐ๊ณผ๋ฅผ ๋ง๋ค์ด์ค๋ค.
- ์ธ๊ฐ ๋๋์ ๋ด๋ฐ๊ณผ ์ ์ฌํ๊ธฐ ๋๋ฌธ์ ์ค๋ซ๋์ ์ฌ์ฉ๋์ด ์๋ค.
- ๐ฅ ๋ฌธ์ ์
- vanishing gradient ๋ฌธ์ ๋ฐ์
- zero-centered๊ฐ ์๋๋ค (ํ์ฑํจ์์ ๊ฒฐ๊ณผ๊ฐ์ ์ค์ฌ์ด 0.5์ด๋ค) -> zig-zag update๊ฐ ๋ฐ์ ๐ข
- exp()๋ ์ฐ์ฐ๋น์ฉ์ด ๋น๊ต์ ํฌ๋ค
* ์ฌ๊ธฐ์ ์ not zero-centered๊ฐ ๋ฌธ์ ๊ฐ ๋๋๊ฐ?
$$ x_i = \sigma(z_i) $$
$$ f = \sum w_ix_i+b $$
$$ \frac{df}{dw_i}=x_i $$
$$ \frac{dL}{dw_i} = \frac{dL}{df} \frac{df}{dw_i} = \frac{dL}{df} x_i $$
x_i๊ฐ ๋ชจ๋ sigmoid๋ฅผ ํต๊ณผํ ๊ฒฐ๊ณผ๋ฌผ๋ก, ์์(+)์ด๊ธฐ ๋๋ฌธ์
dL/dw_1, dL/dw_2, ..., dL/dw_n ๋ชจ๋ ๋์ผํ ๋ถํธ๊ฐ์ด ๋์จ๋ค.
๋ฐ๋ผ์ zig-zag ์์ parameter update๊ฐ ๋ฐ์ํ๊ธฐ ๋๋ฌธ์ ์๋ ด ์๋๊ฐ ๋๋ ค์ง๋ ๋ฌธ์ ์ ์ด ์๋ค.
+) not zero-centered์ ๋ํ ์ถ๊ฐ ๋งํฌ
2. tanh
$$ tanh(x) = \frac{e^{x}-e^{-x}}{e^{x}+e^{-x}} $$
$$ \frac{d tanh(x)}{x} = 1-(tanh(x))^{2} $$
- [-1, 1] ์ฌ์ด์ ๊ฐ์ผ๋ก ๊ฒฐ๊ณผ๋ฅผ ๋ง๋ค์ด์ค๋ค.
- zero-centered์ด๋ค (sigmoid์ ๋ฌธ์ ์ ํด๊ฒฐ โจ) -> zig-zag update๊ฐ ๋ฐ์ํ์ง ์๋๋ค.
- ๋ฌธ์ ์
- ์ฌ์ ํ vanishing gradient ๋ฌธ์ ๊ฐ ์ฌ๊ฐํ๋ค.
+)
3. ReLU
$$ relu(x) = \begin{cases}x & x \geq 0\\ 0 & x < 0\end{cases} $$
$$ relu'(x) = \begin{cases}1 & x \geq 0\\ 0 & x < 0\end{cases} $$
- ์ ๋ ฅ์ด ์์์ธ ๊ฒฝ์ฐ gradient๊ฐ ์ฌ๋ผ์ง์ง ์๋๋ค.
- ๊ณ์ฐ ๋น์ฉ์ด ๋ฎ๋ค (sigmoid, tanh๋ exp๊ฐ ์กด์ฌํ์๋ค)
- sigmoid / tanh๋ณด๋ค 6๋ฐฐ ์ ๋ ๋นจ๋ฆฌ ์๋ ดํ๋ค.
- ์๋ฌผํ์ ์ผ๋ก sigmoid๋ณด๋ค ๊ทธ๋ด๋ฏํ๋ค.
- ๋ฌธ์ ์ ๐ฅ
- not zero-centered (sigmoid์ ๋ฌธ์ ์ ์ด๊ธฐ๋ ํ๋ค)
- ์ ๋ ฅ์ด ์์์ธ ๊ฒฝ์ฐ ํญ์ 0์ ์ถ๋ ฅํ๋ค (parameter๊ฐ ํ์ต๋์ง ์๋๋ค)
- dying ReLU
* dying ReLU?
$$ a1 = w1x1+x2x2+b $$
$$ h1 = relu(a1) $$
$$ \frac{\partial L}{\partial w1} = \frac{\partial L}{\partial h1} \frac{\partial h1}{\partial a1} \frac{\partial a1}{\partial w1} $$
$$ \frac{\partial L}{\partial w2} = \frac{\partial L}{\partial h1} \frac{\partial h1}{\partial a1} \frac{\partial a1}{\partial w2} $$
$$ \frac{\partial L}{\partial b} = \frac{\partial L}{\partial h1} \frac{\partial h1}{\partial a1} \frac{\partial a1}{\partial b} $$
์ด ๋, b๊ฐ ๋งค์ฐ ์์ ์ซ์๋ผ์ h1 = max(a1, 0) = 0์ด ๋์๋ค๊ณ ํ๋ค๋ฉด, $$ \frac{\partial h1}{\partial a1} = 0 $$
์ด๊ธฐ ๋๋ฌธ์ w1, w2, b ํ๋ผ๋ฏธํฐ๊ฐ ๋ณํ์ง ์๋๋ค. (=์์ ์ ๋ ฅ์ ๋ํด gradient 0์ด๊ธฐ ๋๋ฌธ์ parameter update X)
์ด๋ ๊ฒ ๋๋ฉด ๊ณ์ฐ๋๋ a1๊ฐ์ด ๋์ผํ๊ธฐ ๋๋ฌธ์ parameter๊ฐ ๊ณ์ update๋์ง ์๋ ๋ฌธ์ ์ ์ด ์๋ค.
์ด๋ฌํ relu์ ๋ฌธ์ ์ ์ dying relu๋ผ๊ณ ํ๋ค.
์ด ๋ฌธ์ ์ ์ ํด๊ฒฐํ๊ณ ์ ๋์จ ๊ฒ์ด leaky relu์ด๋ค.
4. Leaky ReLU
$$ f(x) = \begin{cases}x & x \geq 0\\0.01x & x< 0\end{cases} $$
$$ f'(x) = \begin{cases}1 & x \geq 0\\0.01 & x< 0\end{cases} $$
- ์ ๋ ฅ์ด ์์์ด๋ , ์์์ด๋ gradient๊ฐ ์๋ฉธ๋์ง ์๋๋ค.
- dying relu ๋ฌธ์ ๊ฐ ์๋ค. (์ธ์ ๋ gradient๊ฐ ํ๋ฅธ๋ค)
- ๊ณ์ฐํ๊ธฐ ์ฝ๋ค (sigmoid, tanh๋ exp ์ฐ์ฐ์ ์ฌ์ฉํ๋ค)
- zero-centered์ ๊ฐ๊น๋ค (relu๋ sigmoid ๋๋น)
+) non-linear activation function์ด ํ์ํ ์ด์
- linear activation function์ ์ฌ์ฉํ๋ฉด deepํ๊ฒ ์ธต์ ์๋ ๊ฒ์ ์๋ฏธ๊ฐ ์ฌ๋ผ์ง๋ค.
- ์ฌ๋ฌ๊ฐ์ ์ ํํจ์๋ฅผ ์ ์ฉํ๋ ๊ฒ์ ํ๋์ ์ ํํจ์ ์ ์ฉํ๋ ๊ฒ๊ณผ ๋์ผํ๋ค.
'๐ > Coursera_DL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
WEEK3 : weight initialization (๊ฐ์ค์น ์ด๊ธฐํ) (0) | 2020.12.19 |
---|---|
WEEK3 : normalizing input (์ ๋ ฅ ์ ๊ทํ) (0) | 2020.12.19 |
WEEK3 : regularization (์ ๊ทํ) (0) | 2020.12.19 |
WEEK3 : train test split (with bias) (1) | 2020.12.19 |
WEEK1 : introduction to Neural Network (0) | 2020.10.20 |