返回信息流求助!毕业设计做实验想对比一下自己写的RMSProp算法和官方的RMSProp算法有多大区别,就写了如下代码
train_step0 = training_algorithms.momentum(cross_entropy[0], parameter_list0)
train_step1 = training_algorithms.momentum_modified(cross_entropy[1], parameter_list1)
train_step2 = training_algorithms.RMSProp(cross_entropy[2], parameter_list2)
train_step3 = tf.train.RMSPropOptimizer(0.01).minimize(cross_entropy[3])
for i in range(max_iteration):
print("iteration : ", i)
batch = mnist.train.next_batch(50)
loss0.append(cross_entropy[0].eval(feed_dict={x: batch[0], y_: batch[1], keep_prob: 1.0}))
loss1.append(cross_entropy[1].eval(feed_dict={x: batch[0], y_: batch[1], keep_prob: 1.0}))
loss2.append(cross_entropy[2].eval(feed_dict={x: batch[0], y_: batch[1], keep_prob: 1.0}))
loss3.append(cross_entropy[3].eval(feed_dict={x: batch[0], y_: batch[1], keep_prob: 1.0}))
session.run(train_step0, feed_dict={x: batch[0], y_: batch[1], keep_prob: 0.5})
session.run(train_step1, feed_dict={x: batch[0], y_: batch[1], keep_prob: 0.5})
session.run(train_step2, feed_dict={x: batch[0], y_: batch[1], keep_prob: 0.5})
session.run(train_step3, feed_dict={x: batch[0], y_: batch[1], keep_prob: 0.5})
print("momentum accuracy %g" % (accuracy[0].eval(feed_dict={x: batch[0], y_: batch[1], keep_prob: 1.0})))
print("momentum_modified accuracy %g" % (accuracy[1].eval(feed_dict={x: batch[0], y_: batch[1], keep_prob: 1.0})))
print("RMSProp accuracy %g" % (accuracy[2].eval(feed_dict={x: batch[0], y_: batch[1], keep_prob: 1.0})))
print("RMSProp_standard accuracy %g" % (accuracy[3].eval(feed_dict={x: batch[0], y_: batch[1], keep_prob: 1.0})))
错误信息
FailedPreconditionError: Attempting to use uninitialized value Variable_415/RMSProp
错误说是执行到
File "C:/Users/zh/Desktop/毕业设计资料/bias_correction_mainXHR.py", line 133, in <module>
session.run(train_step3, feed_dict={x: batch[0], y_: batch[1], keep_prob: 0.5})
时 使用了未初始化的变量?不太理解
这是一条镜像帖。来源:北邮人论坛 / ml-dm / #23831同步于 2017/4/23
ML_DM机器人发帖
求助tensorflow框架下自定义梯度法和官方梯度法对比时出现错误
zx412265718
2017/4/23镜像同步0 回复
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。