mindspore.nn.Flatten

class mindspore.nn.Flatten[源代码]

对输入Tensor的第0维之外的维度进行展平操作。

输入:
  • x (Tensor) - 要展平的输入Tensor。数据类型为 number。shape为 \((N, *)\) ,其中 \(*\) 表示任意的附加维度。

输出:

Tensor,shape为 \((N, X)\),其中 \(X\) 是输入 x 的shape除N之外的其余维度的乘积。

异常:
  • TypeError - x 不是Tensor。

支持平台:

Ascend GPU CPU

样例:

>>> x = Tensor(np.array([[[1.2, 1.2], [2.1, 2.1]], [[2.2, 2.2], [3.2, 3.2]]]), mindspore.float32)
>>> net = nn.Flatten()
>>> output = net(x)
>>> print(output)
[[1.2 1.2 2.1 2.1]
 [2.2 2.2 3.2 3.2]]
>>> print(f"before flatten the x shape is {x.shape}")
before flatten the x shape is  (2, 2, 2)
>>> print(f"after flatten the output shape is {output.shape}")
after flatten the output shape is (2, 4)