앞의 글을 읽으시면 이해에 도움이 됩니다.
2022.10.18 - [Computer Science/머신러닝] - [머신러닝 - 이론] Logistic Regression (로지스틱 회귀)
퍼셉트론은 계단 함수를 사용하지만, 이는 활성화 함수의 일부일 뿐이다.
실제로 제대로 된 신경망을 구현하기 위해서는 다양한 활성화 함수를 이용해야만 한다.
대표적인 활성화 함수로는 시그모이드 함수가 있다.
식은 아래와 같다.
\(h(x) = \frac{1}{1 + e^{-x}}\)
자연 상수를 가지고 있는 이 식은 0~1 사이의 값을 나타낸다.
쉽게 말해서 확률을 나타내기에 매우 용이하다.
아무튼 위의 식을 코드로 구현해보면,
import numpy as np
import matplotlib.pyplot as plt
def sigmoid(x):
return 1 / (1 + np.exp(-x))
x = np.array([-1.0, 1.0, 2.0])
y = sigmoid(x)
print(y)
x = np.arange(-5.0, 5.0, 0.1)
y = sigmoid(x)
plt.plot(x, y)
plt.ylim(-0.1, 1.1)
plt.show()
[0.26894142 0.73105858 0.88079708]
위에는 간단하게 -1.0, 1.0, 2.0의 값을 확인해본 것이고, 아래는 -5.0부터 5.0까지 0.1간격으로 함수의 모양을 파악해봤다.
감사합니다.
지적 환영합니다.