Tanh、Relu、Sigmoid函数
import math
import matplotlib.pyplot as plt
import numpy as np
import matplotlib as mpl
def tanh(x):
return (np.exp(x) - np.exp(-x)) / (np.exp(x) + np.exp(-x))
def sigmoid(x):
return 1.0 / (1.0 + np.exp(-x))
def relu(x):
return np.where(x<0,0,x)
fig = plt.figure(figsize=(6, 4))
ax = fig.add_subplot(111)
x = np.linspace(-10, 10)
y1 = tanh(x)
y2 = relu(x)
y3 = sigmoid(x)
ax.spines['top'].set_color('none')
ax.spines['right'].set_color('none')
ax.xaxis.set_ticks_position('bottom')
ax.spines['bottom'].set_position(('data', 0))
ax.set_xticks([-10, -5, 0, 5, 10])
ax.yaxis.set_ticks_position('left')
ax.spines['left'].set_position(('data', 0))
ax.set_yticks([-1, -0.5, 0.5, 1])
plt.figure(1)
plt.scatter(x, y1, label="Tanh", color="red")
plt.plot(x, y1, label="Tanh", color="blue")
plt.legend()
plt.savefig('../boke_fig/tanh.png')
plt.figure(2)
plt.scatter(x, y2, label="Relu", color="red")
plt.plot(x, y2, label="Relu", color="blue")
plt.savefig('../boke_fig/relu.png')
plt.legend()
plt.figure(3)
plt.scatter(x, y3, label="Sigmoid", color="red")
plt.plot(x, y3, label="Sigmoid", color="blue")
plt.legend()
plt.show()