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 函数及其导数的形状和特性。
热门推荐
NAS设备是否支持远程访问?如何配置
长毛猫毛发打结严重怎么办?铲屎官必知攻略
什么是电焰灶?电焰灶的优缺点
INTP-逻辑家型人格的原生家庭是什么样的?
“不学诗,无以言”
“不学诗,无以言”:谈诗歌对于古人生活的意义
手部接触辣椒后的正确处理方法
创伤后应激障碍(PTSD)动物模型构建与评估
2岁宝宝作息时间表
华西医院锦江院区全面试运行!最全就诊攻略来了
清汤米粉的做法(家常清汤米粉的制作方法)
屋大维:罗马帝国的奠基者与人民的爱戴之源
十大黑茶著名品种排行 中国十大顶级黑茶盘点
高层次人才(A、B、C、D类)是如何划分的?
家用WiFi的IP地址固定吗?换WiFi就是换IP地址吗
港股上市条件及与A股的主要区别
鸭子能活多久?全面解析鸭子的寿命
鸭子能活多久?全面解析鸭子的寿命
温柔的陷阱:如何识别和抵御生活中的“服从性测试”
温柔的陷阱:如何识别和抵御生活中的“服从性测试”
迈向海洋新未来:南部领跑,东部快增,北部转型
冰心童年的诗歌
提拉米苏:舌尖上的咖啡诗篇与浪漫密码
提拉米苏的制作方法教程
暗区突围开服的爆率解析及提升攻略
暗区突围攻略地图详情 资源丰富的地图选择推荐
歌颂关羽的6副对联,对仗工整手法巧妙,堪称大师级手笔
机械手表解析之无卡度摆轮
足球抢断战术技巧的教学(提升抢断能力,成为防守之王)
银川蹚出教育高质量发展新路子