pytorch常用激活函数笔记

  1. relu函数:

公式: 深层网络内部激活函数常用这个

python 复制代码
import matplotlib.pyplot as plt

def relu_fun(x):
    if x>=0:
        return x
    else:
        return 0

x = np.random.randn(10)
y = np.arange(10)

plt.plot(y,x)

for i ,t in enumerate(x):
    x[i] = relu_fun(t)
plt.plot(y,x)

2.sigmod函数,深层网络不咋用这个激活函数,因为容易梯度消失,把输入变为范围 0,1之间和tanh曲线挺像,但是tanh函数范围为-1,1之间。

python 复制代码
import numpy as np

def sigmoid(x):
    s = 1 / (1 + np.exp(-x))
    return s
x = np.arange(-100,100).astype(np.float32)/10.0
y = np.arange(-100,100).astype(np.float32)/10.0
plt.plot(y,x)
for i ,t in enumerate(x):
    x[i] = sigmoid(t)
plt.plot(y,x)

3.tanh函数,把输入变为范围 -1,1之间。

python 复制代码
x = np.arange(-100,100).astype(np.float32)/10.0
y = np.tanh(x)
plt.plot(x,y)

4.leak relu函数,leakrelu函数和relu函数的主要区别是,leakrelu 函数保留了小于0的部分的一些影响,只是把这部分性影响减少了。

python 复制代码
fun = nn.LeakyReLU()
x = np.arange(-10000,1000)/100.0
x = torch.from_numpy(x)
x = x.view(-1,1)
t=fun(x)
t=t.numpy()
x= x.numpy()
plt.plot(x,t)
plt.grid(alpha=0.4,linestyle=':')

5.elu函数,α超参数一般取1

python 复制代码
fun = nn.ELU()
x = np.arange(-500,200)/100.0
x = torch.from_numpy(x)
x = x.view(-1,1)
t = fun(x)
x = x.numpy()
t = t.numpy()
plt.plot(x,t)
plt.grid(alpha=0.4,linestyle=':')
相关推荐
外参财观14 分钟前
流量变现的边界:携程金融按下暂停键后的冷思考
大数据·人工智能·金融
人工智能AI技术28 分钟前
能用C#开发AI吗?
人工智能·c#
whitelbwwww1 小时前
车牌识别--obb识别车框
人工智能
果粒蹬i1 小时前
AI系统故障诊断:模型崩溃、算力瓶颈与数据漂移的识别与解决策略
人工智能
CCPC不拿奖不改名1 小时前
两种完整的 Git 分支协作流程
大数据·人工智能·git·python·elasticsearch·搜索引擎·自然语言处理
Coding茶水间1 小时前
基于深度学习的交通标志检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
开发语言·人工智能·深度学习·yolo·目标检测·机器学习
亿信华辰软件1 小时前
构建智慧数据中台,赋能饮料集团全链路数字化转型新引擎
大数据·人工智能·云计算
大模型实验室Lab4AI1 小时前
西北工业大学 StereoMV2D 突破 3D 物体检测深度难题,精度与效率兼得
人工智能·计算机视觉·目标跟踪
旷野说2 小时前
打造 36Gbps 超高速本地机器学习开发环境
人工智能·机器学习
陈天伟教授2 小时前
人工智能应用-机器视觉:绘画大师 04.基于风格迁移的绘画大师
人工智能·神经网络·数码相机·生成对抗网络·dnn