mindspore.mint.nn.ConstantPad1d

查看源文件
class mindspore.mint.nn.ConstantPad1d(padding, value)[源代码]

根据参数 padding 以及 value 对输入 input 最后1维进行填充。

更多参考详见 mindspore.mint.nn.functional.pad()

参数:
  • padding (Union[int, tuple, list]) - 指定填充的大小。

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

输入:
  • input (Tensor) - 输入Tensor,shape为 \((N, *)\),其中 \(*\) 表示任意维度。

输出:

Tensor,填充后的Tensor。

异常:
  • TypeError - padding 不是一个integer或包含2个int的tuple或者list。

  • TypeError - input 不是Tensor。

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

  • ValueError - padding 含有负数。

  • ValueError - padding 是tuple或list,且长度和Tensor的维度不匹配。

支持平台:

Ascend

样例:

>>> import numpy as np
>>> import mindspore as ms
>>> x = np.ones(shape=(1, 2, 3, 4)).astype(np.float32)
>>> x = ms.Tensor(x)
>>> # padding is tuple
>>> padding = (0, 1)
>>> value = 0.5
>>> pad1d = ms.mint.nn.ConstantPad1d(padding, value)
>>> out = pad1d(x)
>>> print(out)
[[[[1.  1.  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]
   [1.  1.  1.  1.  0.5]]]]
>>> print(out.shape)
(1, 2, 3, 5)
>>> # padding is int
>>> padding = 1
>>> value = 0.5
>>> pad1d = ms.mint.nn.ConstantPad1d(padding, value)
>>> out = pad1d(x)
>>> print(out)
[[[[0.5 1.  1.  1.  1.  0.5]
   [0.5 1.  1.  1.  1.  0.5]
   [0.5 1.  1.  1.  1.  0.5]]
  [[0.5 1.  1.  1.  1.  0.5]
   [0.5 1.  1.  1.  1.  0.5]
   [0.5 1.  1.  1.  1.  0.5]]]]
>>> print(out.shape)
(1, 2, 3, 6)