CNN基础知识 || 激活函数 Mish、Relu、Softplus的公式和画法

Mish激活函数: f ( x ) = x ⋅ tanh ⁡ ( s o f t p l u s ( x ) ) = x ⋅ tanh ⁡ ( ln ⁡ ( 1 + e x ) ) f(x)=x\cdot \tanh(softplus(x))=x\cdot \tanh(\ln(1+e^x)) f(x)=xtanh(softplus(x))=xtanh(ln(1+ex))
relu激活函数: f ( x ) = m a x { 0 , x } f(x)=max\{0,x\} f(x)=max{0,x}
Softplus函数: f ( x ) = ln ⁡ ( 1 + e x ) f(x)=\ln(1+e^x) f(x)=ln(1+ex)

画图为:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三个激活函数的曲线如下图:
在这里插入图片描述
python 的实现代如下:


import numpy as np
import matplotlib.pyplot as plt

plt.annotate("", xy=(4.1, 0), xycoords='data', xytext=(-4.1, 0), textcoords='data',
            arrowprops=dict(arrowstyle="->", connectionstyle="arc3"))  # 画x轴
plt.annotate("", xy=(0, 4.1), xycoords='data', xytext=(0, -1.1), textcoords='data',
            arrowprops=dict(arrowstyle="->", connectionstyle="arc3"))  # 画y轴
plt.text(3.9, 0.1, 'x')  # 标x
plt.text(0.1, 3.9, 'y')  # 标y
plt.xlim(-4.1, 4.1)  # 箭头
plt.ylim(-1.1, 4.1)  #箭头


X = np.linspace(-4, 4, 1024)

Y1 = np.log(1 + np.exp(X))
Y2 = X * np.tanh(np.log(1 + np.exp(X)))
Y3 = np.maximum(X, 0)

# plt.title('$f(x)=softplus$')
# plt.title('$f(x)=relu$')
# plt.title('$f(x)=Mish$')

plt.plot(X, Y1, c = 'g')
plt.plot(X, Y2, c = 'b')
plt.plot(X, Y3, c = 'r')

plt.show()
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值