caicloud / tensorflow-tutorial

Example TensorFlow codes and Caicloud TensorFlow as a Service dev environment.
2.93k stars 2.08k forks source link

关于第五章mnist_train.py文件中的滑动平均值的问题。 #50

Closed MenSanYan closed 7 years ago

MenSanYan commented 7 years ago

第23行,“global_step = tf.Variable(0, trainable=False)”,定义了变量global_step。 第26行,“variable_averages = tf.train.ExponentialMovingAverage(MOVING_AVERAGE_DECAY, global_step)”,定义了滑动平均对象。 按理说,以后每次训练global_step都要加1。 但此后,并没我并未发现“global_step每次训练都加1的代码”。这是怎么回事呢?

MenSanYan commented 7 years ago

我明白了,第36行的 train_step = tf.train.GradientDescentOptimizer(learning_rate).minimize(loss, global_step=global_step) 不仅每次对loss计算并应用梯度,而且每次global_step还会加1。