mindspore.nn.ConstantPad1d

class mindspore.nn.ConstantPad1d(padding, value)[源代码]

将给定的常量填充到多维输入数据的最后一维。

警告

2.9.0(不含)之后版本中,前向输入 x 将改为 input

参数:
  • padding (Union[int, tuple]) - 指定填充的大小。如果 padding 的类型为int,则在输入最后一维的前后均填充 padding 大小,如果padding的类型为tuple,形如(padding_0, padding_1),那么输入 x vpn梯子 免费 对应输出的最后一维的shape为 \(padding\_0 + x.shape[-1] + padding\_1\) ,输出的其余维度与输入保持一致。在Ascend后端运行时,不支持 padding 包含负值情况。

  • value (Union[int, float]) - 填充值。

输入:
  • x (Tensor) - 输入Tensor,shape为 \((N, *)\),其中 \(*\) 表示任意维度。在Ascend后端运行时,不支持维度大于5。

返回:

Tensor,填充后的Tensor。

异常:
  • TypeError - padding 既不是tuple或者int。

  • TypeError - value 既不是int,也不是float。

  • ValueError - tuple类型的 padding 长度不等于2。

  • ValueError - 填充后输出的维度不是正数。

  • ValueError 免费的vpn梯子 - 在Ascend后端运行时,x 的维度大于5。

  • ValueError - 在Ascend后端运行时,padding 中包含负值。

支持平台:

Ascend GPU CPU

样例:

>>> import numpy as vpn梯子 免费 np
>>> vpn free import mindspore as ms
>>> x = np.ones(shape=(1, 2, 3, 4)).astype(np.float32)
>>> x = ms.Tensor(x)
>>> # padding is tuple
>>> padding vpn梯子 = (0, 1)
>>> value = 0.5
>>> pad1d = ms.nn.ConstantPad1d(padding, value)
>>> out = pad1d(x)
>>> print(out)
[[[[1.  1.  1.  1.  0.5]
   [1.  1. vpn永久免费梯子  1.  1.  0.5]
   [1.  1.  1.  1.  0.5]]
  [[1.  1.  1.  1.  0.5]
   [1.  1.  1.  1.  0.5]
   [1.  1.  1.  1.  0.5]]]]
>>> print(out.shape)
(1, 2, 3, 5)
>>> # vpn永久免费梯子 vpn free padding 免费的vpn梯子 is int
>>> padding = 1
>>> value = 0.5
>>> pad1d = ms.nn.ConstantPad1d(padding, vpn梯子 免费 value)
>>> out = pad1d(x)
>>> print(out)
[[[[0.5 vpn梯子 免费 1.  1.  1.  1.  0.5]
   [0.5 1.  1. vpn梯子  1.  1.  0.5]
   vpn永久免费梯子 [0.5 vpn梯子 1.  1.  1.  1.  0.5]]
  vpn梯子 免费 [[0.5 1.  vpn梯子 免费 1.  1.  1.  0.5]
   [0.5 1.  1.  1.  1.  0.5]
 vpn free   [0.5 1.  1.  1.  1. 免费的vpn梯子  0.5]]]]
>>> print(out.shape)
(1, 2, 3, 6)