我正在尝试为 tensorflow 中的变量切片赋值,但显示以下错误:“ValueError:切片赋值仅支持变量”。为什么即使我正在尝试对变量进行切片赋值,也会显示此错误。我的代码是这样的:
var1 = var1[startx:endx,starty:endy].assign(tf.ones([endx-startx,endy-starty],dtype=tf.int32))
其中 var1 是 tensorflow 变量。
请您参考如下方法:
另一个答案是正确的;对 tf 变量执行任何操作不会(总是)返回 tf 变量。因此,如果您要链接赋值,请使用显式控制依赖项:
v = tf.Variable(...)
with tf.control_dependencies([v[...].assign(...)]):
return v[...].assign(...)
