如何在张量流中分配张量的元素

时间:2019-09-23 16:42:51

标签: tensorflow variable-assignment

我想了解以下代码的错误消息

M = K.eye(2)
K.assign(M[0,1],1.0)

我收到的消息是“试图将'input'转换为张量,但失败。错误:不支持任何值。

1 个答案:

答案 0 :(得分:1)

您可以在tensorflow中分配变量的元素。这是一个例子。 (在安装的tensorflow版本中,我没有找到K.assign进行此操作)

import tensorflow as tf
import keras.backend as K

M = tf.Variable(K.eye(2), tf.float32)
assign_op = tf.assign(M[0,1], 1.0)

with tf.Session() as sess:
  sess.run(tf.global_variables_initializer())
  print(sess.run(M))
  sess.run(assign_op)
  print(sess.run(M))

#[[1. 0.]
# [0. 1.]]

#[[1. 1.]
# [0. 1.]]