如何在张量流中添加右零值

How to add a value of right zeros in tensorflow

我想要的是在张量的末尾添加一定数量的零,例如3。这是一个示例(使用发明的 tf 函数):

tn = tf.constant([1, 2])
# out: <tf.Tensor: shape(2,), dtype=int32, numpy=array([1, 2])>

tn = tf.add_zeros(tn, 3, 'right')
# out: <tf.Tensor: shape(5,), dtype=int32, numpy=array([1, 2, 0, 0, 0])>

有什么办法可以做到吗?

您可以尝试使用 tf.concat:

import tensorflow as tf

tn = tf.constant([1, 2])
# out: <tf.Tensor: shape(2,), dtype=int32, numpy=array([1, 2])>

tn = tf.concat([tn, tf.zeros((3), dtype=tf.int32)], axis=0)
print(tn)
tf.Tensor([1 2 0 0 0], shape=(5,), dtype=int32)

tf.pad

t = tf.constant([1, 2])
paddings = tf.constant([[0, 3]])
tf.pad(t, paddings, "CONSTANT") 
<tf.Tensor: shape=(5,), dtype=int32, numpy=array([1, 2, 0, 0, 0], dtype=int32)>