tf.nn.dropout 中参数 keep_prob :每一个元素被保存下的概率。
tf.layer.dropout 中参数 rate :每一个元素丢弃的概率。
在tf.nn.dropout中:
def dropout(x, keep_prob, noise_shape=None, seed=None, name=None)
x:上一层传下载的tensor。(一般用于全连接层后面)
keep_prob:每一个神经元被丢弃的概率,比如0.5。(在这里并不是真正被丢掉,而是在这一轮的训练中不更新这个神经元的权值,权值在这一轮训练被保留,下一轮训练可能又会被更新。)
seed:不重要,不做解释。
name:指定dropout操作的名字。
注意:
1、dropout必须设置概率keep_prob,keep_prob应初始化为占位符placeholder。如:
keep_prob = tf.placeholder(tf.float32)
2、train的时候才是dropout起作用的时候,test的时候不应该让dropout起作用。