오늘은 퍼셉트론, FCN, CNN에 대해 간단하게 알아보자!
인공 신경망(Aritificial Neural Network, ANN)의 구성 요소(unit)로서 다수의 값을 입력받아 하나의 값으로 출력하는 알고리즘
perception과 neuron의 합성어, 인공 뉴런이라고도 함
수식으로 나타내면 다음과 같음
✅ 각각의 입력값에는 각각의 가중치가 존재함!
이때 가중치의 값이 크면 클수록 해당 입력 값이 중요하다는 것을 의미한다.
✅ 학습되는 것은 가중치값임!
퍼셉트론의 수식을 다음과 같이 정리할 수 있다.
여기서 아웃풋 o를 0으로 두고 정리하면
0=f(x0w0 +x1w1 +b)
이고
여기서 function은 activation function이므로
없다고 가정하면
0=x0w0 +x1w1 +b 이 된다.
여기서 가중치 w0, w1과 편향 b 는 모두 상수 값이고
정리하면
y = ax + b 꼴이다.
즉,단층 퍼셉트론은 n차원 평면공간에서 n-1차원의 hyper plane을 긋는 일은 한다고 볼 수 있다.
✅ 단층 퍼셉트론은 직선 하나로 두 영역을 나눌 수 있는 문제에 대해서만 구현이 가능하다.
그런데, XOR 게이트를 봐보자.
XOR 게이트는 입력값 두 개가 서로 다른 값을 갖고 있을때에만 출력값이 1이 되고, 입력값 두 개가 서로 같은 값을 가지면 출력값이 0이 되는 게이트이다.
이를 시각화 해보면 다음과 같다.
흰 원과 검은 원을 나눌 수 있는 직선은 존재하지 않는다.
즉,
✅ 단층 퍼셉트론으로는 XOR 게이트를 구현할 수 없음
위의 XOR 게이트를 구현할 수 있는 방법이 다층퍼셉트론이다.
다음과 같은 구조를 가진다.