XOR 게이트 (배타적 논리합, 논리회로, 파이썬으로 구현해보기)
XOR 게이트 def XOR(x1, x2) : s1 = NAND(x1, x2) s2 = OR(x1, x2) y = AND(s1, s2) return y XOR 게이트는 배타적 논리합 이라는 논리 회로; x1, x2 중 한 쪽이 1일 때만 1을 출력 배타적; 자기 외에는 거부 - 따라서 하나만 자기일 때 1 출력 퍼셉트론(단층)으로는 비선형 영역을 나타내야 하는 XOR 게이트 표현 불가 따라서 층을 쌓은 '다층 퍼셉트론'을 통해 구현 = 단층 퍼셉트론으로는 비선형 영역을 분리할 수 없다. AND, NAND, OR 게이트를 조합하여 구현하기 XOR(0, 0)# 0을 출력 XOR(1, 0)# 1을 출력 XOR(0, 1)# 1을 출력 XOR(1, 1)# 0을 출력 단층 퍼셉트론으로는 표현하지 못한 것을 층을 하..
2022. 5. 29.
AND, OR, NAND 게이트 구현 (논리 회로 구현하기)
AND 논리 회로 def AND(x1, x2) : w1, w2, theta = 0.5, 0.5, 0.7 tmp = x1*w1 + x2*w2 if tmp theta : return 1 - x1과 x2를 인수로 받는 함수 AND - 매개변수 x1, x2, theta 는 함수 안에서 초기화하고, 가중치를 곱한 입력의 총합이 임계값을 넘으면 1을 반환, 그 외에는 0을 반환 AND(0, 0)# 0을 출력 AND(1, 0)# 0을 출력 AND(0, 1)# 0을 출력 AND(1, 1)# 1을 출력 ** 편향을 이용한 방식으로 구현해보기 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
2022. 5. 29.