1.需要变化的学习率的原因:经历一段时间的学习之后,我们距离目标值越来越近,此时如果学习率太大,则会造成训练在最优值附近来回波动,这时候我们就需要减少学习率
2.实现:学习率是在Optimizer中使用,我们每次迭代通过tf.assign修改学习率
3.note: tf.assign(ref, value, validate_shape=None, use_locking=None, name=None)
将value赋值给ref,其中:ref 必须是tf.Variable创建的tensor,如果ref=tf.constant()会报错!
以下是详细的实现代码:
#3-3 MNIst数据集使用drop-out提升准确率,消除部分过拟合
import tensorflow
as tf;
import numpy
as np;
from tensorflow.examples.tutorials.mnist
import input_data
#原始数据
mnist
=input_data.read_data_sets(
"MNIST_data",
one_hot
=
True)
x
=tf.placeholder(tf.float32,
shape
=[
None,
784])
y
&#