在tensorflow中,如何将一个张量的行重置为零?

时间:2016-07-29 06:07:58

标签: neural-network tensorflow recurrent-neural-network

我正在研究Tensorflow中的递归神经网络。 我有一个张量H,它存储一批输入的隐藏状态。

假设H的大小为a*b。如何将列表中给出的H行重置为zeros

e.g。如果列表为[1, 2],我只想重置Hzeros的行,而其他行保持不变。

1 个答案:

答案 0 :(得分:0)

您确定要使用张量流量张量来执行此操作吗?我不确定你的具体用例是什么,但我想不出你需要这样做的理由。您应该能够将您需要的内容传递给tf.placeholder。

无论如何,要回答你的问题,你可以将你想要重置的张量乘以一个恒定的张量,除了你需要重置的地方之外每个地方加1。

例如:

reset_constant = tf.constant([[1,1,1],
                              [1,1,1],
                              [0,0,0], #reset this row
                              [1,1,1]], dtype="float")
tensor_with_reset_row = tf.mul(tensor_to_reset, reset_constant)