딥러닝 1 - 퍼셉트론(Perceptron)

1. 퍼셉트론
먼저 인공신경망 (Artificial Neural Network)은
동물의 신경망을 모방하여 만든 학습 알고리즘 입니다.
그리고 퍼셉트론 (Perceptron)은
인공신경망의 한 종류이며 가장 간단한 형태로 신경망을 수학적으로 모델링 한 것입니다.

x1, x2 - 들어오는 신호, 값
w1, w2 - 가중치(웨이트)
θ - 임계값
위 식으로 간단하게 퍼셉트론을 표현 할 수 있으며
웨이트(가중치) 크면(작으면) 들어오는 값을 크게(작게) 만듭니다.
이후 신호와 웨이트의 두 값이 설정한 임계값이 넘으면 값을 전달합니다. (y=1)
2. 논리 게이트
위 퍼셉트론으로 논리게이트를 설계 할 수 있습니다.
2-1. AND 게이트
AND 게이트 진리표 | ||
x1 | x2 | y |
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
y = 1(이진법), True
y = 0(이진법), False
진리표를 간단히 해석한다면 x1과 x2의 값이 1일 때만 1을 출력하는 게이트 입니다.
위 진리표를 바탕으로
w1 = 0.5, w2 = 0.5, θ = 0.7
가 된다면 AND게이트를 구현 할 수 있습니다.

$$ EX2) \ \ [x_{1}=1, \ x_{2}=0] \longrightarrow [1 \times 0.5 + 0 \times 0.5 = 0.5<0.7( \theta )] \longrightarrow [y=0 ] $$
위 식을 좌표로 쉽게 표현하기 위해 식을 정리합니다.
이후 좌표로 표현하여 y의 값의 영역을 그릴 수 있습니다.

2-2. OR 게이트
OR 게이트 진리표 | ||
x1 | x2 | y |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
y = 1(이진법), True
y = 0(이진법), False
x1과 x2의 값이 0일 때만 0을 출력하는 게이트 입니다.
위 진리표를 바탕으로
w1 = 0.5, w2 = 0.5, θ = 0.2
가 된다면 OR 게이트를 구현 할 수 있습니다.
$$ EX1) \ \ [x_{1}=1, \ x_{2}=1] \longrightarrow [1 \times 0.5 + 1 \times 0.5 = 1>0.2( \theta )] \longrightarrow [y=1 ] $$
$$ EX2) \ \ [x_{1}=0, \ x_{2}=0] \longrightarrow [0 \times 0.5 + 0 \times 0.5 = 0<0.2( \theta )] \longrightarrow [y=0 ] $$
위 식을 좌표로 쉽게 표현하기 위해 식을 정리합니다.
$$ 0.5x_{1} + 0.5x_{2} >0.2 $$
$$ = \frac{x_{1}}{0.4}+\frac{x_{2}}{0.4} >1 $$
이후 좌표로 표현하여 y의 값의 영역을 그릴 수 있습니다.

2-3. XOR 게이트
XOR 게이트 진리표 | ||
x1 | x2 | y |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
y = 1(이진법), True
y = 0(이진법), False
x1과 x2의 값이 다를 때만 1을 출력하는 게이트 입니다.
XOR 게이트는 타 논리 게이트와 다르게 단층 퍼셉트론으로 구현할 수 없어
단층 퍼셉트론의 한계를 보여주는 예입니다.
