使用matplitilb python绘画神经网络的激活函数图像

博客提及sigmoid、tanh、softplus和relu函数。将sigmoid和tanh函数图形绘制在一起,形状相似,可通过观察函数式进行推导。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.sigmoid

import numpy as np
from matplotlib import pyplot as plt

# sigmoid
x = np.linspace(-7, 7, 50)
y = 1 /(1 + np.exp(-x))
plt.figure(1)
plt.xlabel("x")
plt.ylabel("y")
plt.ylim(-0.1, 1.1)
plt.title(r"$f(x) = 1 /(1 + e^{-x})$")
plt.plot(x,y)
plt.grid()
plt.show()

2.tanh

# tanh
x = np.linspace(-7, 7, 50)
y = (1 - np.exp(-2 * x)) /(1 + np.exp(-2 * x))
plt.figure(1)
plt.xlabel("x")
plt.ylabel("y")
plt.ylim(-1.1, 1.1)
plt.title(r"$f(x) = (1 - e^{-2x}) /(1 + e^{-2x})$")
plt.plot(x,y)
plt.grid()
plt.show()

  如果把sigmoid和tanh函数图形画在一起你会发现它们形状很相似,然后再观察他们的函数式,就会发现,其实:

 tanh = 2sigmoid(2x)-1

  不妨动手推导一下

3.softplus和relu

# relu和softplus画在一张图上
x = np.linspace(-5, 5, 50)
y1 = [max([0, xpoint]) for xpoint in x]
y2 = np.log(1 + np.exp(x))
plt.figure(1)
plt.xlabel("x")
plt.ylabel("y")
plt.title(r"$f(x) = relu(x)$")
plt.plot(x,y1)
plt.plot(x,y2)
plt.grid()
plt.show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值