퍼셉트론의 원리
퍼셉트론은 다층 퍼셉트론과 현재 인공지능을 구현하는 데 핵심 역할을 담당하는 딥러닝의 구성요소이기 때문에 퍼셉트론을 제대로 이해하는 것이 필요하다.
퍼셉트론의 구조와 연산
퍼셉트론은 input layer(파랑)와 output layer(빨강)로 구성된다. input에는 <n+1>개의 노드(node)가 있다. 여기서 n란 특징 벡터의 차원인데, 예를 들어 필기 숫자에서 화소를 특징으로 사용하는 경우, n는 64이다. (특징 벡터는 n x 1 벡터라는 사실을 잊지 말자!)
input layer(파랑)의 i번째 노드는 가중치 wi 를 갖는 에지(edge)로 연결된다. i번째 에지는 특징 xi와 가중치 wi를 곱해서 output 노드로 전달한다.
첫번째 파랑(0번째 노드)인 x0은 항상 1인데, 이것을 바이어스 노드(bias node)라 부른다. 따라서 계산할 때 x0*w0=w0이 된다는 것을 잊지 말자.
마지막 계단식으로 보이는 식은 활성 함수를 나타낸다.
그 직전에 출력 노드는 n+1개의 곱셈 결과를 모두 더한 s를 계산한다. 그리고 나서 s를 활성함수에 적용한 결과를 출력(out)으로 내보낸다.
만약 out이 0으로 나오는 경우는 어떻게 될까?
o=0이면 결정 경제, 즉 두 영역을 분할하는 경계이다. 퍼셉트론을 수학적으로 해석하면, 특징 공간을 두 공간으로 분할하는 이진 분류기(binary classifier)이다. 퍼셉트론의 결정 경계는 선형에 국한된다.
퍼셉트론은 활성 함수로 계단 함수를 사용한다.
계단 함수는 s가 0보다 크면 1, 그렇지 않으면 -1을 출력한다. 따라서 퍼셉트론은 특징 벡터를 식에 따라서 1 또는 -1로 변환하는 장치로 볼 수 있다.
퍼셉트론 계산하기
퍼셉트론을 계산하기 위해서는 선형대수학이 반드시 선행되어야 한다.
-
어떤 제품이 크기와 색상을 나타내는 2개의 특징으로 표현된다고 가정하자. 특징 벡터 x=(크기,색상)=(x1,x2) 로 나타낼 수 있다. 특징은 0 또는 1을 가진다고 가정한다.
-
제품 4개를 수집한 결과 불량 3개, 정상 1개로 판정했다고 가정하자.
-
불량은 1, 정상은 -1로 표기한다.
x1=(0,0) x2=(0,1) x3=(1,0) x4=(1,1) y1=-1 y2=1 y3=1 y4=1 정상 불량 불량 불량 -
퍼셉트론의 가중치는 w0 =. -0.5, w1 =1, w2 =1 이다.
-
이때 input layer 에 들어가는 x2 벡터 = 1(x0=1), 0, 1 이 되는 것이다.
-
따라서 weight 와 x 벡터를 내적하면 계산을 쉽게 할 수 있다!! 와아아앙
import numpy as np
x2=np.array([1,0,1])
w=np.array([-0.5,1.0,1.0])
s=sum(x2*w)
- 위는 방금 설명한 것의 파이썬 코드이다.
Author And Source
이 문제에 관하여(퍼셉트론의 원리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@happyhillll/퍼셉트론의-원리저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)