다수의 신호를 입력으로 받아 하나의 신호를 출력하는 인공 신경망 모형

→ 입력이 모두 1일 때만 1 출력
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
np.array를 쓰면 입력신호 개수에 상관없이 np.sum(w*x)로 해결된다.
→ NOT AND로 두 입력이 모두 1일 때만 0 출력
import numpy as np
def NAND(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