美文网首页
[tf]sess.run机制

[tf]sess.run机制

作者: VanJordan | 来源:发表于2018-12-06 20:33 被阅读24次
    • 一个sess.run()环境中,一个大图里面的节点只会计算一次,哪怕有c->a->b这种依赖关系,运行sess.run([a,b])这种时候,a也只会被执行一次。其内部的机制是:先查看图中的依赖关系,得到本次sess.run()需要计算图中那些节点,然后进行一次计算,返回计算的a,b的值。
    • 如果是多次调用sess.run()那么就会计算多次。
      一个生动的例子:和addop有依赖关系的c,在一个sess.runaddop只被运行了一次,
    a = tf.constant(1)
    b = tf.Variable(1)
    addop= tf.assign(b,b+3)
    c = addop + a
    with tf.Session() as sess:
        tf.global_variables_initializer().run()
        cc,bb = sess.run([addop,c])
        print(cc,bb)
        bb = sess.run(addop)
        print(bb)
    >>4 5
    7
    

    相关文章

      网友评论

          本文标题:[tf]sess.run机制

          本文链接:https://www.haomeiwen.com/subject/oqdacqtx.html