gpt4 book ai didi

tensorflow - 如何将计算值保留在 Tensorflow 图中(在 GPU 上)?

转载 作者:行者123 更新时间:2023-12-05 00:20:32 24 4
gpt4 key购买 nike

我们如何确保计算出的值不会被复制回 CPU/python 内存,但仍可用于下一步的计算?

下面的代码显然不这样做:

import tensorflow as tf

a = tf.Variable(tf.constant(1.),name="a")
b = tf.Variable(tf.constant(2.),name="b")
result = a + b
stored = result

with tf.Session() as s:
val = s.run([result,stored],{a:1.,b:2.})
print(val) # 3
val=s.run([result],{a:4.,b:5.})
print(val) # 9
print(stored.eval()) # 3 NOPE:

错误:尝试使用未初始化的值 _recv_b_0

最佳答案

答案是将值存储在 tf.Variable 中通过使用 the assign operation 存储到它:

工作代码:

import tensorflow as tf
with tf.Session() as s:
a = tf.Variable(tf.constant(1.),name="a")
b = tf.Variable(tf.constant(2.),name="b")
result = a + b
stored = tf.Variable(tf.constant(0.),name="stored_sum")
assign_op=stored.assign(result)
val,_ = s.run([result,assign_op],{a:1.,b:2.})
print(val) # 3
val=s.run(result,{a:4.,b:5.})
print(val[0]) # 9
print(stored.eval()) # ok, still 3

关于tensorflow - 如何将计算值保留在 Tensorflow 图中(在 GPU 上)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34268779/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com