TensorFlow学习---tf.nn.dropout防止过拟合
来源:互联网 发布:黑桐谷歌老婆淘宝店 编辑:程序博客网 时间:2024/04/29 19:32
一、 Dropout原理简述:
tf.nn.dropout是TensorFlow里面为了防止或减轻过拟合而使用的函数,它一般用在全连接层。
Dropout就是在不同的训练过程中随机扔掉一部分神经元。也就是让某个神经元的激活值以一定的概率p,让其停止工作,这次训练过程中不更新权值,也不参加神经网络的计算。但是它的权重得保留下来(只是暂时不更新而已),因为下次样本输入时它可能又得工作了。示意图如下:
但在测试及验证中:每个神经元都要参加运算,但其输出要乘以概率p。
二、tf.nn.dropout函数说明
tf.nn.dropout(x, keep_prob, noise_shape=None, seed=None,name=None)
上面方法中常用的是前两个参数:
第一个参数x:指输入
第二个参数keep_prob: 设置神经元被选中的概率,在初始化时keep_prob是一个占位符, keep_prob = tf.placeholder(tf.float32) 。tensorflow在run时设置keep_prob具体的值,例如keep_prob: 0.5
第五个参数name:指定该操作的名字。
三、使用举例:
1、dropout必须设置概率keep_prob,并且keep_prob也是一个占位符,跟输入是一样的
[python] view plain copy
1. keep_prob = tf.placeholder(tf.float32)
2、train的时候才是dropout起作用的时候,train和test的时候不应该让dropout起作用
[python] view plain copy
1. sess.run(train_step, feed_dict={xs: X_train, ys: y_train, keep_prob: 0.5})
[python] view plain copy
1. train_result = sess.run(merged, feed_dict={xs: X_train, ys: y_train, keep_prob: 1})
2. test_result = sess.run(merged, feed_dict={xs: X_test, ys: y_test, keep_prob: 1})
- TensorFlow学习---tf.nn.dropout防止过拟合
- 【转载】TensorFlow学习---tf.nn.dropout防止过拟合
- Tensorflow学习笔记(用哪学哪)tf.nn.dropout
- TensorFlow中的Dropout防止过拟合overfiting
- 【Tensorflow】tf.nn.dropout函数
- dropout防止过拟合
- 浅谈 Dropout防止过拟合
- tensorflow-激活函数及tf.nn.dropout
- Tensorflow(r1.4)API--tf.nn.dropout
- 深度学习Deep Learning: dropout策略防止过拟合
- 深度学习lstm防止过拟合之dropout
- Dropout Learning - 防止深度神经网络过拟合
- 浅谈dropout--防止过拟合的方法
- tensorflow之dropout解决过拟合问题
- tf.nn.dropout
- Tensorflow学习---tf.nn.embedding_lookup
- TensorFlow学习---tf.nn.softmax_cross_entropy_with_logits的用法
- tensorflow学习:tf.nn.softmax_cross_entropy_with_logits()
- 二分查找
- Python 放大图片和画方格算法
- Python流程控制
- TP上传图片代码,tp3.2在linux显示File not found
- Android应用的界面编程
- TensorFlow学习---tf.nn.dropout防止过拟合
- cornerstone文件冲突解决方案
- map/multimap/unordered_map/unordered_multimap; set/multiset/unordered_set/unordered_multiset
- 场编码MBAFF相关
- 一些常见的注释整理
- 51Nod 1057 N的阶乘
- Linux升级Glibc时系统奔溃怎么办?
- Koltin简明学习,操作符重载(Operator overloading)
- java常用类,常用包,常用接口,运行时错误