文档反馈

问题文档片段

问题文档片段包含公式时,显示为空格。

提交类型
issue

有点复杂...

找人问问吧。

请选择提交类型

问题类型
规范和低错类

- 规范和低错类:

- 错别字或拼写错误,标点符号使用错误、公式错误或显示异常。

- 链接错误、空单元格、格式错误。

- 英文中包含中文字符。

- 界面和描述不一致,但不影响操作。

- 表述不通顺,但不影响理解。

- 版本号不匹配:如软件包名称、界面版本号。

易用性

- 易用性:

- 关键步骤错误或缺失,无法指导用户完成任务。

- 缺少主要功能描述、关键词解释、必要前提条件、注意事项等。

- 描述内容存在歧义指代不明、上下文矛盾。

- 逻辑不清晰,该分类、分项、分步骤的没有给出。

正确性

- 正确性:

- 技术原理、功能、支持平台、参数类型、异常报错等描述和软件实现不一致。

- 原理图、架构图等存在错误。

- 命令、命令参数等错误。

- 代码片段错误。

- 命令无法完成对应功能。

- 界面错误,无法指导操作。

- 代码样例运行报错、运行结果不符。

风险提示

- 风险提示:

- 对重要数据或系统存在风险的操作,缺少安全提示。

内容合规

- 内容合规:

- 违反法律法规,涉及政治、领土主权等敏感词。

- 内容侵权。

请选择问题类型

问题描述

点击输入详细问题描述,以帮助我们快速定位问题。

mindspore.ops.batch_to_space_nd

mindspore.ops.batch_to_space_nd(input_x, block_shape, crops)[源代码]

用块划分批次维度,并将这些块交错回空间维度。

此函数会将批次维度 N 划分为具有 block_shape 的块,即输出张量的 N 维度是划分后对应的块数。 输出张量的 HW 维度是原始的 HW 维度和 block_shape 的乘积从维度裁剪给定。 如此,若输入的shape为 (n,c,h,w) ,则输出的shape为 (n,c,h,w) 。 其中

n=n//(block_shape[0]block_shape[1])

c=c

h=hblock_shape[0]crops[0][0]crops[0][1]

w=wblock_shape[1]crops[1][0]crops[1][1]

参数:
  • input_x (Tensor) - 输入张量,必须大于或者等于四维(Ascend平台必须为4维)。批次维度需能被 block_shape 整除。支持数据类型float16和float32。

  • block_shape (Union[list(int), tuple(int), int]) - 分割批次维度的块的数量,取值需大于1。如果 block_shape 为list或者tuple,其长度 M 为空间维度的长度。如果 block_shape 为整数,那么所有空间维度分割的个数均为 block_shapeM 必须为2。

  • crops (Union[list(int), tuple(int)]) - 空间维度的裁剪大小,包含两个长度为2的list,分别对应空间维度H和W。取值需大于或等于0,同时要求 input_shape[i+2] * block_shape[i] > crops[i][0] + crops[i][1]

返回:

Tensor,经过划分排列之后的结果。

异常:
  • TypeError - 如果 block_shape 不是 list、tuple 或者 int。

  • TypeError - 如果 crops 不是 list 或者 tuple。

  • ValueError - 如果当 block_shape 为 list 或 tuple, block_shape 不是一维。

  • ValueError - 如果 block_shapecrops 长度不是2。

  • ValueError - 如果 block_shape 的元素不是大于一的整数。

  • ValueError - 如果 crops 的形状不是 (M, 2),其中 M 为 block_shape 的长度。

  • ValueError - 如果 crops 的元素不是非负的整数。

支持平台:

Ascend CPU

样例:

>>> block_shape = [2, 2]
>>> crops = [[0, 0], [0, 0]]
>>> input_x = Tensor(np.array([[[[1]]], [[[2]]], [[[3]]], [[[4]]]]), mindspore.float32)
>>> output = ops.batch_to_space_nd(input_x, block_shape, crops)
>>> print(output)
[[[[1.  2.]
   [3.  4.]]]]