λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
IT-Engineering/A.I.

μ΄ˆμ΄ˆλ³΄λ„ μ΄ν•΄ν•˜λŠ” λ”₯λŸ¬λ‹ 4탄 : ν™œμ„±ν™” ν•¨μˆ˜(activation function)

by 🧞‍♂️ 2020. 5. 16.
λ°˜μ‘ν˜•

2020/03/31 - [IT-Engineering/A.I.] - μ΄ˆμ΄ˆλ³΄λ„ μ΄ν•΄ν•˜λŠ” λ”₯λŸ¬λ‹ 1탄 : 인곡지λŠ₯, λ¨Έμ‹ λŸ¬λ‹, λ”₯λŸ¬λ‹

2020/03/31 - [IT-Engineering/A.I.] - μ΄ˆμ΄ˆλ³΄λ„ μ΄ν•΄ν•˜λŠ” λ”₯λŸ¬λ‹ 2탄 : νΌμ…‰νŠΈλ‘ (Perceptron)

2020/04/03 - [IT-Engineering/A.I.] - μ΄ˆμ΄ˆλ³΄λ„ μ΄ν•΄ν•˜λŠ” λ”₯λŸ¬λ‹ 3탄 : 신경망, ν™œμ„±ν™” ν•¨μˆ˜

 

μ•žμ˜ λ”₯λŸ¬λ‹ 3탄에 이어 초초보 λ”₯λŸ¬λ‹ 4탄이닀.

검색해보면 λ”₯λŸ¬λ‹μ— λŒ€ν•œ μ›Œλ‚™ 쒋은 글듀이 λ§Žμ•„μ„œ,

λ³΄λŠ” μ‚¬λžŒλ“€μ„ μœ„ν•΄μ„œλ‚˜ 슀슀둜λ₯Ό μœ„ν•΄μ„œλ‚˜ κ°„λ‹¨ν•œ λ‚΄μš©λ§Œ μ •λ¦¬ν•˜λŠ” μ°¨μ›μ—μ„œ κΈ°λ‘ν•˜λŠ” μ»¨μ…‰μœΌλ‘œ ν•˜λ € ν•œλ‹€.

 

3νƒ„μ—μ„œ νΌμ…‰νŠΈλ‘ κ³Ό μ‹ κ²½λ§μ˜ μ •μ˜μ— κ΄€ν•΄ λ‹€μ†Œ μ• λ§€ν•˜κ²Œ ν‘œν˜„ν•œ 뢀뢄이 μžˆλŠ”λ°,

μ•„λ¬΄λž˜λ„ μ‚¬μš©ν•˜λŠ” μ‚¬λžŒλ§ˆλ‹€ μ•½κ°„μ˜ μ •μ˜μ°¨κ°€ μžˆμ–΄μ„œμΈλ“―ν•˜λ‹€.

μ•žμ—μ„œ ν™œμ„±ν™”ν•¨μˆ˜λ₯Ό κ³„λ‹¨ν•¨μˆ˜μ—μ„œ λ‹€λ₯Έ ν•¨μˆ˜λ‘œ λ³€κ²½ν•˜λŠ” 것이 신경망과 λ‹€μΈ΅νΌμ…‰νŠΈλ‘ μ˜ 차이라고 ν–ˆλŠ”λ°,

λ¬΄λ¦¬ν•˜μ§€ μ•ŠλŠ”μ„ μ—μ„œ λ‹€μΈ΅νΌμ…‰νŠΈλ‘ κ³Ό 신경망은 같은 의미둜 νŒλ‹¨ν•΄λ„ 될 λ“―ν•˜λ©°,

μ΄λ²ˆμ—λŠ” μ‹ κ²½λ§μ˜ 핡심이 λ˜λŠ” ν™œμ„±ν™”ν•¨μˆ˜(acvitation function)에 λŒ€ν•΄μ„œ μ’€ 더 μ•Œμ•„λ³΄μž.

 

3νƒ„μ—μ„œλŠ” ν™œμ„±ν™”ν•¨μˆ˜λ‘œ κ³„λ‹¨ν•¨μˆ˜λ₯Ό μ•Œμ•„λ³΄μ•˜κ³ , μ‹œκ·Έλͺ¨μ΄λ“œ ReLUν•¨μˆ˜λŠ” μ΄λ¦„λ§Œ μ†Œκ°œν–ˆλ‹€.

μš°μ„  ν™œμ„±ν™”ν•¨μˆ˜λΌλŠ” 것은 μž…λ ₯ μ‹ ν˜Έμ˜ 총합을 좜λ ₯ μ‹ ν˜Έλ‘œ λ³€ν™˜ν•΄μ£ΌλŠ” ν•¨μˆ˜λ₯Ό λ§ν•œλ‹€.

그리고 μ‹ κ²½λ§μ—μ„œ 이 ν™œμ„±ν™” ν•¨μˆ˜κ°€ μ€‘μš”ν•œ μ΄μœ λŠ”

ν™œμ„±ν™” ν•¨μˆ˜μ˜ λΉ„μ„ ν˜•μ„±(non-linear)이 μ‹ κ²½λ§μ˜ μŒ“λŠ” μΈ΅(layer)λ“€μ˜ μ‘΄μž¬μ΄μœ κ°€ λœλ‹€.

ν™œμ„±ν™” ν•¨μˆ˜μ—†μ΄ μ€‘μ²©λœ 측듀은 κ²°κ΅­ κ°€μ€‘μΉ˜(weight)λ“€μ˜ κ³±κ³Ό 편ν–₯(bias)λ“€μ˜ ν•©μ˜ μ‘°ν•©μœΌλ‘œλ§Œ μ΄λ£¨μ–΄μ§€λŠ”λ°,

예λ₯Όλ“€μ–΄ ν™œμ„±ν™” ν•¨μˆ˜ h(x) = cxλ₯Ό μ‚¬μš©ν•œλ‹€κ³  κ°€μ •ν•˜κ³  λ‘λ²ˆ μ€‘μ²©ν•œλ‹€κ³  ν–ˆμ„ λ•Œ, y(x)=h(h(x))와 같은 식이 λ˜λŠ”λ°,

κ²°κ΅­ y(x) = c*c*x처럼 λ ν…Œλ‹ˆ λ‹€μ‹œ λ‚˜νƒ€λ‚΄λ©΄ y(x) = Dx와 같은 μ‹μ΄λ‹ˆ κ²°κ΅­ ν˜•νƒœμ˜ λ³€ν™”κ°€ μ—†μœΌλ‹ˆ,

μ—¬λŸ¬μΈ΅μ„ μ€‘μ²©ν•˜λŠ” 이점을 살릴 수 κ°€ μ—†λ‹€.

 

이런 이유둜 자주 μ‚¬μš©λ˜λŠ” ν•¨μˆ˜κ°€ λ‘κ°œ μžˆμœΌλ‹ˆ

μ‹œκ·Έλͺ¨μ΄λ“œ(sigmoid)ν•¨μˆ˜μ™€

렐루(ReLU)ν•¨μˆ˜μ΄λ‹€.

 

μ‹œκ·Έλͺ¨μ΄λ“œ ν•¨μˆ˜μ˜ μˆ˜μ‹μ€ λ‹€μŒκ³Ό κ°™λ‹€.

$h(x)=\frac{1}{1+\exp(-x)}$

μƒκΉ€μƒˆλŠ” λ‹€μŒκ³Ό κ°™λ‹€.

sigmoidν•¨μˆ˜μ˜ λͺ¨μŠ΅

잘 관찰해보면, κ³„λ‹¨ν•¨μˆ˜μ™€ μœ μ‚¬ν•œ κ²½ν–₯을 보인닀.

κ³„λ‹¨ν•¨μˆ˜μ˜ λͺ¨μŠ΅

input이 λ†’μ•„μ§ˆμˆ˜λ‘ 1에 κ°€κΉŒμ›Œμ§€κ³ , μž‘μ•„μ§ˆμˆ˜λ‘ 0에 κ°€κΉŒμ›Œμ§€λ‹ˆ 말이닀.

 

ReLU(Rectified Linear Unit)ν•¨μˆ˜λŠ” μ‰½κ²Œ λ‚˜νƒ€λ‚΄λ©΄ ν”„λ‘œκ·Έλž˜λ°ν•  λ•Œ λ“±μž₯ν•˜λŠ” maxν•¨μˆ˜λ₯Ό μ΄μš©ν•œ max(x,0)κ³Ό κ°™λ‹€.

0보닀 큰 값은 κ·ΈλŒ€λ‘œ 좜λ ₯ν•΄μ£Όκ³ , κ·Έ μ΄ν•˜μ˜ 값은 μ—†λŠ”μ…ˆμΉœλ‹€λŠ” 것이닀.

ReLUν•¨μˆ˜μ˜ λͺ¨μŠ΅

μˆ˜μ‹μœΌλ‘œλŠ” μ•„λž˜μ™€ 같이 μ“Έ 수 μžˆλ‹€.

$h(x)=\left\{\begin{matrix}
x(x>0)
\\ 
0(x\leq0)
\end{matrix}\right.$

μ‹ κ²½λ§μ˜ μž…λ ₯μ—μ„œ (-)값은 λŒ€κ°œ μœ μ˜λ―Έν•œ νš¨κ³Όκ°€ μ μœΌλ―€λ‘œ λ¬΄μ‹œν•˜κ² λ‹€λŠ” 뜻이 λ‚΄ν¬λœλ‹€.

 

μ΄λŸ¬ν•œ 각각의 ν•¨μˆ˜ νš¨κ³Όμ™€ λΉ„μ„ ν˜•μ„±μ΄ λ”λΆˆμ–΄μ Έμ„œ μ€λ‹‰μΈ΅μ˜ κΉŠμ΄κ°€ λ”ν•΄μ§ˆμˆ˜λ‘ νš¨κ³Όκ°€ 증폭될 수 μžˆλ‹€.

이 μ‚¬μ†Œν•œ λΉ„μ„ ν˜•μ„±μ΄ λ³΅μž‘ν•œ 은닉측이 μ‹€μ œ ν˜„μƒμ„ λͺ¨μ‚¬ν•  수 μžˆμ„ μ •λ„μ˜ λͺ¨λΈλ§μ„ κ°€λŠ₯μΌ€ν•˜λŠ” 것이닀.

 

이 μ •λ„κΉŒμ§€ μ •λ¦¬ν•˜κ³  이번 정리도 끝.

 

λ°˜μ‘ν˜•

λŒ“κΈ€