expand
根据 shape
指定的形状扩展 x
,扩展后,x
的形状和 shape
指定的形状一致。
x
的维数和 shape
的元素数应小于等于 6,并且 shape
中的元素数应该大于等于 x
的维数。扩展的维度的维度值应该为 1。
- 示例图解说明:
-
Original Tensor 显示了一个形状为 [3] 的一维张量 [1, 2, 3]。通过 paddle.expand 方法(参数
shape = [2, 3]
)被广播扩展为一个形状为 [2, 3] 的二维张量。
备注
别名支持: 别名支持: 参数名 input
可替代 x
和 size
可替代 shape
。 shape
支持可变参数类型。 使用实例:
paddle.expand(tensor_x, shape=[3, 4], name=None)
tensor_x.expand([3, 4]) -> paddle.expand(tensor_x, [3, 4])
tensor_x.expand(3, 4) -> paddle.expand(tensor_x, 3, 4)
tensor_x.expand(size=[3, 4]) -> paddle.expand(tensor_x, size=[3, 4])
参数
x (Tensor) - 输入的 Tensor,数据类型为:bool、float16、float32、float64、int32、int64、uint8 或 uint16。 别名:
input
shape (tuple|list|Tensor) - 给定输入
x
扩展后的形状,若shape
为 list 或者 tuple,则其中的元素值应该为整数或者是形状为 1-D 或 0-D 的 Tensor,若shape
类型为 Tensor,则其应该为 1-D Tensor。值为-1 表示保持相应维度的形状不变。支持可变参数类型。 别名:size
name (str,可选) - 具体用法请参见 api_guide_Name,一般无需设置,默认值为 None。
返回
N-D Tensor
,数据类型与 x
相同。
代码示例
>>> import paddle
>>> data = paddle.to_tensor([1, 2, 3], dtype='int32')
>>> out = paddle.expand(data, shape=[2, 3])
>>> print(out)
Tensor(shape=[2, 3], dtype=int32, place=Place(cpu), stop_gradient=True,
[[1, 2, 3],
[1, 2, 3]])