激活函数

1.激活函数的要求

评价激活函数是否有用的主要因素:
(1)该函数应是单调的。这样输出便会随着输入的增长而增长,从而利用梯度下降法寻找局部极值点成为可能。
(2)该函数是可微分的。以保证该函数定义域内的任意一点上的导数均存在,从而使得梯度下降法能够正常使用来自这类激活函数的输出。

-*-任何满足这些条件的函数都可以用作激活函数。

2.常用激活函数

(1)tf.nn.relu
线性修正单元,也叫斜坡函数。
特点:ReLU是分段线性的,当输入为非负时,输出将与输入相同;当输入为负时,输出均为0.
优点:不受“梯度消失”的影响,且取值范围在[0,正无穷]。
缺点:当使用较大学习速率时,易受到饱和的神经元的影响。

(2)tf.sigmod
特点:sigmod函数的返回值范围在[0.0, 1.0]中。
当输入值较大时,tf.sigmod将返回一个接近于1.0的值,而当输入值较小时,返回值将接近于0.0。
优点:当样本真实输出位于[0.0, 1.0]
缺点:当输入接近饱和或变化剧烈时,对输出范围的这种缩减会带来不利影响。

(3)tf.tanh
双曲正切函数
特点:双曲正切函数(tanh)与tf.sigmod非常接近,且具有后者类似的优缺点,主要区别在于tanh的值域为[-1.0, 1.0]

(4)tf.nn.dropout
特点:依据某个可配置的概率将输出设为0.0。

3.tensorflow中的激活函数

激活操作提供用于神经网络的不同类型的非线性。这些包括平滑的非线性(sigmoid,tanh,elu,selu, softplus,和softsign),连续的,但不是到处可微函数(relu,relu6,crelu和relu_x),和随机正规化(dropout)。

所有激活操作都按分量应用,并产生与输入张量相同形状的张量。

Neural Network

Activation Functions
<1> tf.nn.relu(features, name=None)
在这里插入图片描述
<2> tf.nn.relu6(features, name=None)

<3> tf.nn.softplus(features, name=None)

<4> tf.nn.dropout(x, keep_prob, noise_shape=None, seed=None, name=None)

<5> tf.nn.bias_add(value, bias, name=None)

<6> tf.sigmoid(x, name=None)
在这里插入图片描述

<7> tf.tanh(x, name=None)
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值