파이썬 구현 14

[머신러닝 - Python] 3층 신경망 구현 (3 Layer Neural Network Implementation)

import numpy as np def sigmoid(x): return 1 / (1 + np.exp(-x)) def identity_function(x): # 항등 함수, 이 또환 활성화 함수임 return x def init_network(): network = dict() network['W1'] = np.array([[0.1, 0.3, 0.5], [0.2, 0.4, 0.6]]) network['b1'] = np.array([0.1, 0.2, 0.3]) network['W2'] = np.array([[0.1, 0.4], [0.2, 0.5], [0.3, 0.6]]) network['b2'] = np.array([0.1, 0.2]) network['W3'] = np.array([[0.1, 0.3], ..

[머신러닝 - Python] 활성화 함수 - 렐루 함수 구현 (Activation Function - ReLU Function Implementation)

최근에 많이 사용하고 있는 활성화 함수의 비선형 함수로는 ReLU 함수가 있습니다. ReLU 함수는 0보다 작은 값에 대해서는 0을 출력하고, 0이 넘으면 그 값을 출력하는 함수입니다. 즉 식은 아래와 같습니다. \(h(x) = \left\{\begin{matrix} x & x > 0 \\ 0 & x \leq 0 \\ \end{matrix}\right.\) 간단하죠? 이를 코드로 구현해보겠습니다. import numpy as np import matplotlib.pyplot as plt def ReLU(x): return np.maximum(0, x) x = np.array([-1.0, 1.0, 2.0]) print(ReLU(x)) x = np.arange(-5.0, 5.0, 0.1) y = ReLU(x..

[머신러닝 - Python] 활성화 함수 - 시그모이드 함수 구현 (Activation Function - Sigmoid Function Implemetation)

앞의 글을 읽으시면 이해에 도움이 됩니다. 2022.10.18 - [Computer Science/머신러닝] - [머신러닝 - 이론] Logistic Regression (로지스틱 회귀) [머신러닝 - 이론] Logistic Regression (로지스틱 회귀) 앞의 글을 읽으시면 이해에 도움이 됩니다. 2022.05.07 - [Computer Science/머신러닝] - [머신러닝 - Python] 활성화 함수 - 시그모이드 함수 구현 (Activation Function - Sigmoid Function Implemetation) [머신러닝 - Python] hi-guten-tag.tistory.com 퍼셉트론은 계단 함수를 사용하지만, 이는 활성화 함수의 일부일 뿐이다. 실제로 제대로 된 신경망을 ..

[머신러닝 - Python] 퍼셉트론 - XOR 게이트 구현 (Perceptron - XOR Gate Implementation)

XOR 게이트는 단순한 1층 퍼셉트론으로는 구현할 수 없습니다. 반면 AND, NAND, OR 게이트는 직선으로만 구분할 수 있습니다. 반면 XOR 게이트는 직선으로 표현할 수 없습니다. 이해가 되시나요? 따라서 XOR은 '비선형'으로만 표현할 수 있습니다. 방법은 간단합니다. AND, OR, NAND를 조합하면 됩니다. 따라서 XOR = AND(OR, NAND)과 같습니다. 간단하죠? 코드는 아래와 같습니다. def XOR(x1, x2): s1 = NAND(x1, x2) s2 = OR(x1, x2) y = AND(s1, s2) return y for i in [0, 1]: for j in [0, 1]: print(f'{i, j}', end=' ') print() print('XOR : ', end = ..