1,阶跃函数
#神经网络激活函数Python编程
#1,阶跃函数的实现
import numpy as np
import matplotlib.pylab as plt
def step_function(x):
if x >0:
return 1
else:
return 0
a = step_function(5)
print(a)
#支持numpy数组的function
def function(x):
y = x > 0
return y.astype(np.int)
b = function(np.array([1.0, 2.0, -3.0]))
print(b)
#阶跃函数的图形
def figure(x):
return np.array(x>0, dtype=np.int)
x = np.arange(-5.0,5.0,0.1)
y = figure(x)
plt.plot(x,y)
plt.ylim(-0.1,1.1)
plt.show()
2,sigmoid函数
def sigmoid(x):
return 1/(1+np.exp(-x))
x = np.array([-1.0,1.0,2.0])
y = sigmoid(x)
print(y)
#绘制sigmoid函数图像
x = np.arange(-5.0,5.0,0.1)
y = sigmoid(x)
plt.plot(x,y)
plt.ylim(-0.1,1.1) #指定y轴的范围
plt.show()
3,ReLU函数
import numpy as np
import matplotlib.pylab as plt
def relu(x):
return np.maximum(0, x)
x = np.arange(-5.0, 5.0, 0.1)
y = relu(x)
plt.plot(x, y)
plt.ylim(-1.0, 5.5)
plt.show()