如何在tensorflow中填充1维向量?Getting InvalidArgumentError:填充必须是具有tf.



我正在尝试使用tf.pad。这是我尝试将张量填充到长度20,值为10。

tf.pad(tf.constant([1, 2, 3, 45]), paddings=20, constant_values=10)

我收到这个错误消息

InvalidArgumentError: paddings must be a matrix with 2 columns: [2,1] [Op:PadV2]

我正在看文件

https://www.tensorflow.org/api_docs/python/tf/pad

paddings是一个形状为[n,2]的整数张量,其中n是张量的秩。对于输入的每个维度D,paddings[D,0]表示在该维度的张量内容之前要添加多少值,paddings[D,1]表示在该维的张量内容之后要添加多少个值

但我无法弄清楚如何塑造焊盘值

您必须通过形状矩阵(1,2(指定向量开头的填充和结尾的填充:

tf.pad(tf.constant([1, 2, 3, 45]), [[ 0 , 20]], constant_values=10)

如果你有三维张量(秩=3,例如:(225225,3((,则填充矩阵的形状必须是(3,2(;3〃;是秩;2〃;以指定每个维度的开始和结束处的填充。

例如,填充矩阵=[[0,2],[5,5],[2,0]],意味着我们希望在第一个维度的开始处填充0(=无填充(,在结束处填充2。在第二个维度的开头处填充5,在结束时填充5。

最新更新