多层感知机激活函数-《动手学深度学习pytorch》

本文深入解析了ReLU、Sigmoid和tanh等激活函数的工作原理及适用场景。ReLU因其简单且能有效解决梯度消失问题,被广泛应用于多层感知机的隐藏层;Sigmoid函数适合用作分类器;而tanh则能将值映射到-1到1之间。文章还对比了这些函数的计算复杂度,推荐在深层网络中首选ReLU。

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

1激活函数

ReLU函数

ReLU(rectified linear unit)函数提供了一个很简单的非线性变换。给定元素𝑥x,该函数定义为

ReLU函数只保留正数元素,并将负数元素清零

Sigmoid函数

元素值在0和1之间

   

tanh函数

tanh(双曲正切)函数可以将元素的值变换到-1和1之间

      

2激活函数选择

ReLu:通用,大多数情况,只能在隐藏层中使用。先选用ReLu函数如果效果不理想可以尝试其他激活函数

sigmoid函数:用于分类器

由于梯度消失问题(导数为0),有时要避免使用sigmoid和tanh函数。

在神经网络层数较多的时候,最好使用ReLu函数,ReLu函数比较简单计算量少,而sigmoid和tanh函数计算量大很多。

#多层感知机
net = nn.Sequential(
        d2l.FlattenLayer(),
        nn.Linear(num_inputs, num_hiddens),
        nn.ReLU(),
        nn.Linear(num_hiddens, num_outputs), 
        )

其他激活函数参考:https://blog.youkuaiyun.com/wlx19970505/article/details/104009254

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值