训练的时候想要获取训练的步数,最后发现每次获得的global_step的值都是1,最后发现自己代码写错了,把变量初始化写在循环之中了,导致每次都要初始化步数,导致每次的步数都是1
if __name__=='__main__':
#这里都是在定义 并没有初始化
train_op, cross_entropy, accuracy, global_step, summary_op, init_op, y ,x,y_,lr= get_net()
#从里面获得数据
with tf.Session() as sess:
##########################################################
####sess.run([init_op, tf.local_variables_initializer()]) 初始化要放在最前面,自己放在了循环里面 不断初始化 导致step不变
##########################################################
sess.run([init_op, tf.local_variables_initializer()]) # , tf.local_variables_initializer()])
################### dataset的方法
i =0
while True:
try:
# sess.run(tf.initialize_all_variables()) 自己原来的初始化放在这里
#为什么global_step不对
_, loss_value,step,input,label,lear= sess.run([train_op, cross_entropy,global_step,x,y_,lr])
print(loss_value,step,input.shape,label.shape,lear)
except tf.errors.OutOfRangeError:
break