maxframe.tensor.atleast_3d#

maxframe.tensor.atleast_3d(*tensors)[源代码]#

将输入视为至少具有三个维度的张量。

参数:
  • tensors1 (array_like) -- 一个或多个类张量序列。非张量输入将被转换为张量。已经具有三个或更多维度的张量将被保留。

  • tensors2 (array_like) -- 一个或多个类张量序列。非张量输入将被转换为张量。已经具有三个或更多维度的张量将被保留。

  • ... (array_like) -- 一个或多个类张量序列。非张量输入将被转换为张量。已经具有三个或更多维度的张量将被保留。

返回:

res1, res2, ... —— 一个张量,或张量列表,每个张量满足 a.ndim >= 3。尽可能避免复制,返回具有三个或更多维度的视图。例如,形状为 (N,) 的一维张量将变成形状为 (1, N, 1) 的视图,形状为 (M, N) 的二维张量将变成形状为 (M, N, 1) 的视图。

返回类型:

Tensor

示例

>>> import maxframe.tensor as mt
>>> mt.atleast_3d(3.0).execute()
array([[[ 3.]]])
>>> x = mt.arange(3.0)
>>> mt.atleast_3d(x).shape
(1, 3, 1)
>>> x = mt.arange(12.0).reshape(4,3)
>>> mt.atleast_3d(x).shape
(4, 3, 1)
>>> for arr in mt.atleast_3d([1, 2], [[1, 2]], [[[1, 2]]]).execute():
...     print(arr, arr.shape)
...
[[[1]
  [2]]] (1, 2, 1)
[[[1]
  [2]]] (1, 2, 1)
[[[1 2]]] (1, 1, 2)