qq_37639537 2019-03-10 20:00 采纳率: 0%
浏览 4068

请问 tensorflow 在训练网络过程中,如何在使用验证集进行验证时,不 让权值发生变化?

我按照书本上MNIST识别的过程把代码撸了一遍,按照他给的代码,每进行一千次迭代,使用验证集进行一次验证。但是我感觉这样的话那一次的验证应该也会改变网络的权。我查网上的资料验证集应该不参与训练才对,请问如何在训练过程中,验证时不改变网络的权值?。万分感谢!!!

with tf.Session() as sess:
    tf.global_variables_initializer().run()
    validate_feed = {x: mnist.validation.images, y_: mnist.validation.labels}
    test_feed = {x: mnist.test.images, y_: mnist.test.labels}
    for i in range(max_steps): #总迭代次数
        if i % 1000 == 0:      #每1000次迭代使用验证集进行验证
            validate_accuracy = sess.run(accuracy, feed_dict=validate_feed)
            print(validate_accuracy)
        xs, ys = mnist.train.next_batch(batch_size=100)
        sess.run(train_op, feed_dict={x: xs, y_: ys})

    test_accuracy = sess.run(accuracy, feed_dict=test_feed)
    print(test_accuracy)

代码如上,是不是每进行一次验证的时候,他的权值都会发生改变?怎么让它不发生变化呢

  • 写回答

3条回答 默认 最新

  • Macropodus 博客专家认证 2019-03-12 17:55
    关注

    我觉得可以设置一个is_training参数,走到self.logits那里就直接return,要再走train跟新了。具体可以参考文本分类github项目
    https://github.com/brightmart/text_classification

    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题