神经网络激活函数绘制pythohn代码

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()

这里写图片描述
这里写图片描述
这里写图片描述

猜你喜欢

转载自blog.csdn.net/qq_35559420/article/details/81227893