tensorflow教程之tf.nn.dropout()方法解析,让你对神经网络不在头晕目眩

我们要知道tf.nn.dropout()是一个防止模型过于拟合的方法,该方法顾名思义就是丢弃一部分数据,来达到防止过于拟合的目的!

我们看一个例子,这个是全连接层的操作

import tensorflow as tf

a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3])
b = tf.constant([7.5, 8.4, 9.4, 10.41, 11.1, -12.0], shape=[3,2])
c=tf.constant([1.4,2.4,3.7,4.9],shape=[2,2])
d=tf.matmul(a,b)+c
m=tf.nn.relu(d)
g=tf.nn.dropout(m,keep_prob=0.8)
with tf.Session() as sess:
    print("全连接层以后输出的结果:",sess.run(d))
    print("激活函数以后的结果",sess.run(m))
    print("防止过于拟合的结果:",sess.run(g))

激励函数就是将负值全部填充为0,避免运算量大!

防止过于拟合函数又名丢弃函数,

keep_prob=0.8 就是保留激励层数据的0.8,这个值越大丢弃的数据越少,这个值越小丢弃的值越多,keep_prob是保留数据的概率!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值