그 땐 AI했지/그 땐 DeepLearning했지
[TAVE/밑딥] ch02 퍼셉트론 | 03 퍼셉트론 구현하기
루이란
2022. 5. 26. 21:12
728x90
참고자료: 밑바닥부터 시작하는 딥러닝

1. 간단한 구현부터
def AND(x1, x2):
w1, w2, theta = 0.5, 0.5, 0.7
tmp = x1 * w1 + x2 * w2
if tmp <= theta:
return 0
elif tmp > theta:
return 1
👉🏻앞선 논리회로를 파이썬으로 구현하면 다음과 같다.
2. 가중치와 편향 도입
이전에 구현한 코드를 수정해보자!

👉🏻여기서 b는 편향이다.
import numpy as np
x = np.array([0, 1])
w = np.array([0.5, 0.5])
b = -0.7
print(np.sum(w * x) + b)
#-0.19999999999999996
3. 가중치와 편향 구현하기
import numpy as np
def AND(x1, x2):
x = np.array([x1, x2])
w = np.array([0.5, 0.5])
b = -0.7
tmp = np.sum(w * x) + b
if tmp <= 0:
return 0
else:
return 1
👉🏻가중치와 편향을 도입한 AND 게이트이다.
def NAND(x1, x2):
x = np.array([x1, x2])
w = np.array([-0.5, -0.5]) #AND와는 가중치 (w와 b)만 다르다!
b = 0.7
tmp = np.sum(w * x) + b
if tmp <= 0:
return 0
else:
return 1
def OR(x1, x2):
x = np.array([x1, x2])
w = np.array([0.5, 0.5])
b = -0.2 #AND와는 b만 다르다!
tmp = np.sum(w * x) + b
if tmp <= 0:
return 0
else:
return 1
👉🏻NAND와 OR 게이트이다. 모두 같은 구조의 퍼셉트론이다.
728x90