Python 如何更新2d tf.变量的单个列?

Python 如何更新2d tf.变量的单个列?,python,tensorflow,tensorflow2.0,Python,Tensorflow,Tensorflow2.0,假设我有一个MxN形状的tf.Variable,它存储我的自定义层的一些状态: 将tensorflow导入为tf m、 n=3,4#举个例子 v=tf.变量(tf.零([m,n]),可训练=False) #v= 我知道我可以使用v.assign(…)更新此变量的值,但是如何只更新此变量的一个子部分?例如,我想在给定的列中插入一个给定的向量 x=tf.one([m,1]) c=tf.变量(2) #通过在c列插入x来更新v …以便以下为v的新值: #v= 使用TF 2.2 m, n = 3, 4

假设我有一个MxN形状的
tf.Variable
,它存储我的自定义层的一些状态:

将tensorflow导入为tf
m、 n=3,4#举个例子
v=tf.变量(tf.零([m,n]),可训练=False)
#v=
我知道我可以使用
v.assign(…)
更新此变量的值,但是如何只更新此变量的一个子部分?例如,我想在给定的列中插入一个给定的向量

x=tf.one([m,1])
c=tf.变量(2)
#通过在c列插入x来更新v
…以便以下为
v
的新值:

#v=
使用TF 2.2

m, n = 3, 4  # just for example
v = tf.Variable(tf.zeros([m, n]), trainable=False)
x = tf.ones(m)
c = 2

change_v = v[:,c].assign(x)