- activation function
- sigmoid
- tanh
- relu
- reaky relu
1. simgoid

ฯ(x)=11+exp(โx)
ฯโฒ(x)=ฯ(x)(1โฯ(x))
- [0, 1] ์ฌ์ด์ ๊ฐ์ผ๋ก ๊ฒฐ๊ณผ๋ฅผ ๋ง๋ค์ด์ค๋ค.
- ์ธ๊ฐ ๋๋์ ๋ด๋ฐ๊ณผ ์ ์ฌํ๊ธฐ ๋๋ฌธ์ ์ค๋ซ๋์ ์ฌ์ฉ๋์ด ์๋ค.
- ๐ฅ ๋ฌธ์ ์
- vanishing gradient ๋ฌธ์ ๋ฐ์
- zero-centered๊ฐ ์๋๋ค (ํ์ฑํจ์์ ๊ฒฐ๊ณผ๊ฐ์ ์ค์ฌ์ด 0.5์ด๋ค) -> zig-zag update๊ฐ ๋ฐ์ ๐ข
- exp()๋ ์ฐ์ฐ๋น์ฉ์ด ๋น๊ต์ ํฌ๋ค
* ์ฌ๊ธฐ์ ์ not zero-centered๊ฐ ๋ฌธ์ ๊ฐ ๋๋๊ฐ?
xi=ฯ(zi)
f=โwixi+b
dfdwi=xi
dLdwi=dLdfdfdwi=dLdfxi
x_i๊ฐ ๋ชจ๋ sigmoid๋ฅผ ํต๊ณผํ ๊ฒฐ๊ณผ๋ฌผ๋ก, ์์(+)์ด๊ธฐ ๋๋ฌธ์
dL/dw_1, dL/dw_2, ..., dL/dw_n ๋ชจ๋ ๋์ผํ ๋ถํธ๊ฐ์ด ๋์จ๋ค.
๋ฐ๋ผ์ zig-zag ์์ parameter update๊ฐ ๋ฐ์ํ๊ธฐ ๋๋ฌธ์ ์๋ ด ์๋๊ฐ ๋๋ ค์ง๋ ๋ฌธ์ ์ ์ด ์๋ค.
+) not zero-centered์ ๋ํ ์ถ๊ฐ ๋งํฌ
2. tanh

tanh(x)=exโeโxex+eโx
dtanh(x)x=1โ(tanh(x))2
- [-1, 1] ์ฌ์ด์ ๊ฐ์ผ๋ก ๊ฒฐ๊ณผ๋ฅผ ๋ง๋ค์ด์ค๋ค.
- zero-centered์ด๋ค (sigmoid์ ๋ฌธ์ ์ ํด๊ฒฐ โจ) -> zig-zag update๊ฐ ๋ฐ์ํ์ง ์๋๋ค.
- ๋ฌธ์ ์
- ์ฌ์ ํ vanishing gradient ๋ฌธ์ ๊ฐ ์ฌ๊ฐํ๋ค.
+)

3. ReLU

relu(x)={xxโฅ00x<0
reluโฒ(x)={1xโฅ00x<0
- ์ ๋ ฅ์ด ์์์ธ ๊ฒฝ์ฐ 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)
โLโw1=โLโh1โh1โa1โa1โw1
โLโw2=โLโh1โh1โa1โa1โw2
โLโb=โLโh1โh1โa1โa1โb
์ด ๋, b๊ฐ ๋งค์ฐ ์์ ์ซ์๋ผ์ h1 = max(a1, 0) = 0์ด ๋์๋ค๊ณ ํ๋ค๋ฉด, โh1โa1=0
์ด๊ธฐ ๋๋ฌธ์ w1, w2, b ํ๋ผ๋ฏธํฐ๊ฐ ๋ณํ์ง ์๋๋ค. (=์์ ์ ๋ ฅ์ ๋ํด gradient 0์ด๊ธฐ ๋๋ฌธ์ parameter update X)
์ด๋ ๊ฒ ๋๋ฉด ๊ณ์ฐ๋๋ a1๊ฐ์ด ๋์ผํ๊ธฐ ๋๋ฌธ์ parameter๊ฐ ๊ณ์ update๋์ง ์๋ ๋ฌธ์ ์ ์ด ์๋ค.
์ด๋ฌํ relu์ ๋ฌธ์ ์ ์ dying relu๋ผ๊ณ ํ๋ค.
์ด ๋ฌธ์ ์ ์ ํด๊ฒฐํ๊ณ ์ ๋์จ ๊ฒ์ด leaky relu์ด๋ค.
Deep Learning Best Practices: Activation Functions & Weight Initialization MethodsโโโPart 1
Best Activation functions & Weight Initialization Methods for better accuracy
medium.com
4. Leaky ReLU

f(x)={xxโฅ00.01xx<0
fโฒ(x)={1xโฅ00.01x<0
- ์ ๋ ฅ์ด ์์์ด๋ , ์์์ด๋ 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 |