mindspore/docs/api/api_python/nn/mindspore.nn.Roll.rst

26 lines
1.3 KiB
ReStructuredText
Raw Normal View History

mindspore.nn.Roll
=================
.. py:class:: mindspore.nn.Roll(shift, axis)
沿轴移动Tensor的元素。
元素沿着 `axis` 维度按照 `shift` 偏移(朝着较大的索引)正向移动。 `shift` 为负值则使元素向相反方向移动。移动最后位置的元素将绕到第一个位置,反之亦然。可以指定沿多个轴的多个偏移。
参数:
- **shift** (Union[list(int), tuple(int), int]) - 指定元素移动方式,如果为整数,则元素沿指定维度正向移动(朝向较大的索引)的位置数。负偏移将向相反的方向滚动元素。
- **axis** (Union[list(int), tuple(int), int]) - 指定需移动维度的轴。
输入:
- **input_x** (Tensor) - 输入Tensor。
输出:
Tensorshape和数据类型与输入的 `input_x` 相同。
异常:
- **TypeError** - `shift` 不是int、tuple或list。
- **TypeError** - `axis` 不是int、tuple或list。
- **TypeError** - `shift` 的元素不是int。
- **TypeError** - `axis` 的元素不是int。
- **ValueError** - `axis` 超出[-len(input_x.shape), len(input_x.shape))范围。
- **ValueError** - `shift` 的shape长度不等于 `axis` 的shape长度。