Допустим, у меня есть MxN-образный tf.Variable
, в котором хранится некоторое состояние моего пользовательского слоя:
import tensorflow as tf
m, n = 3, 4 # just for example
v = tf.Variable(tf.zeros([m, n]), trainable=False)
# v = <tf.Variable 'Variable:0' shape=(3, 4) dtype=float32, numpy=
# array([[0., 0., 0., 0.],
# [0., 0., 0., 0.],
# [0., 0., 0., 0.]], dtype=float32)>
Я знаю, что могу обновить значения этой переменной с помощью v.assign(...)
, но как я могу обновить только подраздел этой переменной? Например, я хотел бы вставить данный вектор в данный столбец.
x = tf.ones([m,1])
c = tf.Variable(2)
# update v by inserting x at column c
... так, чтобы следующие значения были новыми значениями v
:
# v = <tf.Variable 'Variable:0' shape=(3, 4) dtype=float32, numpy=
# array([[0., 0., 1., 0.],
# [0., 0., 1., 0.],
# [0., 0., 1., 0.]], dtype=float32)>