oneflow.nn.ReflectionPad1d¶
-
class
oneflow.nn.
ReflectionPad1d
(padding)¶ This operator pads the input tensor using the reflection of the input boundary.
The interface is consistent with PyTorch. The documentation is referenced from: https://pytorch.org/docs/1.10/generated/torch.nn.ReflectionPad1d.html.
- Parameters
padding (Union[int,tuple]) – The size or bundary of padding, if is int uses the same padding in all dimension; if 4-dims tuple, uses \((\text{padding}_{\text{left}}, \text{padding}_{\text{right}}, \text{padding}_{\text{top}}, \text{padding}_{\text{bottom}} )\)
- Returns
Returns a new tensor which is result of the reflection padding of the input tensor.
- Return type
- Shape:
Input: \((C, W_{in})\) or \((N, C, W_{in})\).
Output: \((C, W_{out})\) or \((N, C, W_{out})\), where
\(W_{out} = W_{in} + \text{padding_left} + \text{padding_right}\)
For example:
>>> import oneflow as flow >>> import numpy as np >>> input = flow.tensor(np.arange(18).reshape((2, 3, 3)).astype(np.float32)) >>> m = flow.nn.ReflectionPad1d((2, 2)) >>> out = m(input) >>> out tensor([[[ 2., 1., 0., 1., 2., 1., 0.], [ 5., 4., 3., 4., 5., 4., 3.], [ 8., 7., 6., 7., 8., 7., 6.]], [[11., 10., 9., 10., 11., 10., 9.], [14., 13., 12., 13., 14., 13., 12.], [17., 16., 15., 16., 17., 16., 15.]]], dtype=oneflow.float32)