1. 퍼셉트론
간단한 인공 신경망 구조.
TCU(Threshold Logic Unit) 인공 뉴런을 기반으로 제작되었으며 하나의 TCU층으로 이루어져있다.
간단한 선형 이진 문제에 사용할 수 있다.
입력의 가중치합을 TLU가 받으면 가중치합을 계산한다.
$$z= \sum_{i= 1}^{n}w_{i}x_{i}$$
그리고 계단함수를 적용시켜 결과를 출력한다.
$$ H(z)= step(z)$$
여기서 계단함수를 "활성화 함수"라 한다.
여기서 사용되는 활성화함수로 heaviside계단함수가 가장 널리 사용된다.
heaviside계단 함수는 다음과 같다.
$$heaviside(z)= \left\{\begin{matrix}
0(z<0)
\\
1(z\geq 0)
\end{matrix}\right.$$
하지만 heaviside 함수는 0과 1의 값만을 가지며 0에서 미분 불가하기 때문에 그래디언트를 계산할 수 없다는 단점이 있다.
즉, 활성화 함수는 항상 heaviside 함수만을 사용하는 것이 아니며 상황에 따라 다른 활성화 함수를 사용함다.
대표적인 활성화 함수로는 ReLU, tanh등이 있으며 이를 사용시 아래와 같이 표기한다.
$$ \phi (XW+ b)h_{W,b}=\phi (XW+ b) (\phi: 활성화 함수) $$
활성화 함수는 다음 포스트 참조
2. 퍼셉트론 학습
퍼셉트론은 출력을 feed back받아 원래 출력과 비교해 오차를 감소시키는 방향으로 가중치를 수정한다.
$$ w_{next}= w+\eta (y_{i}- \hat{y_{i}})x_{i} $$
3. 퍼셉트론의 문제점
퍼셉트론은 단순한 임계값을 기준으로 결과물을 만든다.
그러다 보니 퍼셉트론을 이용해선 풀 수 없는 문제(eg) XOR)가 존재한다.
이러한 문제를 해결하기 위해 다층 퍼셉트론을 이용하게 된다.
4. 다층 퍼셉트론(MLP)
입력층과 출력층 사이에 하나 이상의 은닉층(hidden layer)이 있는 NN(Nural Network).
입력층과 가까운 층을 하위층, 출력층과 가까운 층을 상위층이라 부른다.
모든 층은 다음 층과 완전히 연결되어있다.
은닉층을 여러개 쌓아올린 인공 신경망을 심층신경망(DNN)이라 한다.
심층 신경망은 입력-출력으로 구성된 네트워크에서 풀 수 없는 문제(eg) XOR)을 풀 수 있다.
#################################
잘못된 내용 발견시 덧글 부탁드립니다.
#################################
<출처 및 참고자료>
[1] 오렐리앙 제롱. Hands-On Machine Learning with Scikit-Learn, Keras&Tensorflow 2판. 한빛미디어
'딥러닝' 카테고리의 다른 글
파이토치에서 텐서보드 사용하기 (0) | 2021.06.15 |
---|---|
[논문리딩] YOWO(You Only Watch Once) (0) | 2021.01.25 |
[번외] CPU와 GPU의 학습 속도 (0) | 2020.10.13 |
순전파/역전파 (0) | 2020.09.24 |
활성화 함수 (0) | 2020.09.20 |