SiLu激活函数
创作时间:
作者:
@小白创作中心
SiLu激活函数
引用
CSDN
1.
https://blog.csdn.net/weixin_43702920/article/details/145467867
SiLU(Sigmoid Linear Unit)激活函数是近年来在深度学习中广泛应用的一种激活函数。它具有平滑、非单调等特性,能够有效缓解梯度消失问题。本文将通过Python代码展示如何使用PyTorch和Matplotlib库来绘制SiLU函数及其导数的曲线,并对图像进行简要说明。
SiLU 导数的图像
以下是 SiLU 函数及其导数的图像绘制代码(使用 PyTorch 和 Matplotlib):
import torch
import torch.nn as nn
import matplotlib.pyplot as plt
import numpy as np
# 定义 SiLU 激活函数
class SiLU(nn.Module):
def forward(self, x):
return x * torch.sigmoid(x)
# 定义 SiLU 的导数
def silu_derivative(x):
sigmoid_x = torch.sigmoid(x)
return sigmoid_x + x * sigmoid_x * (1 - sigmoid_x)
# 示例输入数据
x = torch.linspace(-10, 10, 400)
silu = SiLU()
y = silu(x)
y_derivative = silu_derivative(x)
# 绘制 SiLU 函数及其导数的曲线
plt.figure(figsize=(12, 6))
plt.subplot(1, 2, 1)
plt.plot(x.numpy(), y.detach().numpy(), label='SiLU', color='blue')
plt.title('SiLU Activation Function')
plt.xlabel('Input')
plt.ylabel('Output')
plt.legend()
plt.grid(True)
plt.subplot(1, 2, 2)
plt.plot(x.numpy(), y_derivative.detach().numpy(), label='SiLU Derivative', color='red')
plt.title('SiLU Derivative')
plt.xlabel('Input')
plt.ylabel('Derivative')
plt.legend()
plt.grid(True)
plt.show()
图像说明
- SiLU 函数图像:SiLU 函数在输入为正时接近线性,而在输入为负时逐渐趋于 0,具有平滑的过渡[28]。
- SiLU 导数图像:导数图像在输入为 0 附近达到最大值,随着输入的增加逐渐减小,这表明 SiLU 函数在输入为负时的梯度较大,有助于减轻梯度消失问题[31]。
通过上述代码,你可以直观地看到 SiLU 函数及其导数的形状和特性。
热门推荐
如何解决热插拔时的电压过冲
IPv6连接不上怎么办?
快速设计一个扩束/缩束器
如何使用 Schedule 编写定时任务脚本
GDP增速怎么算?现价与不变价的差异解析
审判长院长庭长哪个大:法院领导职务等级与职责解析
手机背景虚化怎么拍
家庭必备!微波炉版蛋糕做法(简单易行的烘焙新手攻略)
云南美食特产小吃(云南最有名的8种小吃)
小区物业是否可以更换?更换条件是什么?
兼职员工的工资怎么发放?要交社保吗?有关的账务处理怎么做?
寒山寺:千年古刹与文化瑰宝
绝区零伊芙琳角色养成攻略 绝区零伊芙琳前瞻介绍
秸秆焚烧的法律责任与处罚规定全解析
红壳鸡蛋与白壳鸡蛋:营养价值真的有差异吗?
“120帧”的《双子杀手》,李安的“孤独漂流”
司马懿和曹爽斗争的真相,历史书不会告诉你
墨子与亚里士多德对物理研究认识的差异及其影响
废旧动力电池回收利用工艺设备智能化引领行业升级
生产费用全解析:自然产与剖腹产在台湾的费用对比
消防水源选择与利用指南
路亚钓法介绍,路亚钓鱼的技巧
紫微斗数命宫火星详解:性格、运势与影响
中保研最新SUV碰撞测试:34款车型获G级评价,你的爱车表现如何?
零基础如何学习前端开发
百白破疫苗是预防什么病?有哪些注意事项?
肠道功能紊乱吃什么中药调理效果好
力扣热门100题之矩阵四题解法总结
国企使用劳务派遣有哪些优势?
劳务派遣员工与正式员工的薪资结构有何差异?