使用mindspore.numpy.broadcast_to 算子报错:ValueError: cannot broadcast with (3, 4)
收藏回复举报
使用mindspore.numpy.broadcast_to 算子报错:ValueError: cannot broadcast with (3, 4)
发表于2023-04-20 10:18:51
0 查看

1 系统环境

硬件环境(Ascend/GPU/CPU): 不限

MindSpore版本: 2.0.0-alpha

执行模式(PyNative/ Graph): 不限

Python版本: 3.7.5

操作系统平台: 不限

2 报错信息

2.1 问题描述

官方demo 能跑通

import mindspore.numpy as np

x = np.array([1, 2, 3])
output = np.broadcast_to(x, (3, 3))
print(output)

shape改成(3,4)后报错

import mindspore.numpy as np

x = np.array([1, 2, 3])
output = np.broadcast_to(x, (3, 4))
print(output)

2.2 报错信息

>>> ms.numpy.broadcast_to(A,(3,4))

Traceback (most recent call last):

  File "<stdin>", line 1, in <module>

  File "/home/ma-user/miniconda3/envs/py38ms1.9/lib/python3.8/site-packages/mindspore/numpy/array_ops.py", line 1290, in broadcast_to

    return _raise_value_error('cannot broadcast with ', shape)

  File "/home/ma-user/miniconda3/envs/py38ms1.9/lib/python3.8/site-packages/mindspore/ops/primitive.py", line 716, in __call__

    return fn(*args)

  File "/home/ma-user/miniconda3/envs/py38ms1.9/lib/python3.8/site-packages/mindspore/numpy/utils_const.py", line 227, in _raise_value_error

    raise ValueError(info + f"{param}")

ValueError: cannot broadcast with (3, 4)

2.3 脚本代码(代码格式,可上传附件)

import mindspore.numpy as np

x = np.array([1, 2, 3])
output = np.broadcast_to(x, (3, 4))
print(output)

3 根因分析

******此处由用户补充详细的定位过程******

考虑广播机制原理。

4 解决方案

******此处由用户填写******

包含文字方案和最终脚本代码

支持上传附件

我要发帖子