tf.pad()的用法

本文通过四个实例详细解析了TensorFlow中tf.pad函数的使用方法,包括正确的输入格式、错误示例以及如何根据输入张量的维度正确设置填充参数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

https://blog.youkuaiyun.com/sinat_39372048/article/details/80976722

  • 例一
In [26]: import tensorflow as tf

In [27]:

In [27]: a=[[1,1],[2,2]]

In [28]: padding=[[1,1]]

In [29]: print(sess.run(tf.pad(input,padding)))
InvalidArgumentError: Shape must be rank 1 but is rank 2 for 'Pad_1' (op: 'Pad') with input shapes: [2,2], [1,2].

  • 例二

In [33]: a=[[1,1],[2,2]]

In [34]: padding=[[1,1],[1,2]]

In [35]: sess=tf.Session()

In [36]: print(sess.run(tf.pad(a,padding)))
[[0 0 0 0 0]
 [0 1 1 0 0]
 [0 2 2 0 0]
 [0 0 0 0 0]]

In [37]: padding=[[1,2],[1,2]]

In [38]: print(sess.run(tf.pad(a,padding)))
[[0 0 0 0 0]
 [0 1 1 0 0]
 [0 2 2 0 0]
 [0 0 0 0 0]
 [0 0 0 0 0]]
  • 例三

In [43]: a=[[[1,1],[2,2]],[[3,3],[4,4]]]

In [44]: padding=[[1,2],[1,2]]

In [45]: print(sess.run(tf.pad(a,padding)))

ValueError: Shape must be rank 2 but is rank 3 for 'Pad_5' (op: 'Pad') with input shapes: [2,2,2], [2,2].
  • 例四
In [43]: a=[[[1,1],[2,2]],[[3,3],[4,4]]]
In [46]: padding=[[1,1],[1,2],[2,1]]

In [47]: print(sess.run(tf.pad(a,padding)))
[ [[0 0 0 0 0]
  [0 0 1 1 0]
  [0 0 2 2 0]
  [0 0 0 0 0]
  [0 0 0 0 0]]

 [[0 0 0 0 0]
  [0 0 3 3 0]
  [0 0 4 4 0]
  [0 0 0 0 0]
  [0 0 0 0 0]]

 [[0 0 0 0 0]
  [0 0 0 0 0]
  [0 0 0 0 0]
  [0 0 0 0 0]
  [0 0 0 0 0]]]

总结:

1.padding 行数和 rank of input 一致
"[[[[[]]]]]"从左到右依次为第一、二、三维度(从左到右维度递增)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值