PPO 莫烦 ReLU激活函数的缺点

莫烦在PPO中创建神经网络的代码

// morvanzhou 
def _build_anet(self, name, trainable):
   with tf.variable_scope(name):
   l1 = tf.layers.dense(self.tfs, 100, tf.nn.relu, trainable=trainable)

ReLU激活函数的缺点

训练的时候很”脆弱”,很容易就”die”了,训练过程该函数不适应较大梯度输入,因为在参数更新以后,ReLU的神经元不会再有激活的功能,导致梯度永远都是零。
例如,一个非常大的梯度流过一个 ReLU 神经元,更新过参数之后,这个神经元再也不会对任何数据有激活现象了,那么这个神经元的梯度就永远都会是 0.
如果 learning rate 很大,那么很有可能网络中的 40% 的神经元都”dead”了。

https://www.cnblogs.com/Time-LCJ/p/9235711.html

可能出现的问题

卷积神经网络输出一直不变
action固定一个值,或边界值

可能出现的解决方法

  1. 换一个激活函数就好了,别用relu,可以试一试Leaky ReLU,RRelu,tanh等
  2. tf.layers.batch_normalization()

参考
[1]: https://www.zhihu.com/question/52467106
[2]:https://morvanzhou.github.io/tutorials/machine-learning/

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值