# 报错：alueError: For 'Reshape', the shape of 'input\_x' is \[65209\], the value of 'input\_shape' value is \[16302, 4\].

**1. 报错描述**

1.1 系统环境

```
Hardware Environment(Ascend/GPU/CPU): Ascend Software Environment: -- MindSpore version (source or binary): 1.6.0 -- Python version (e.g., Python 3.7.5): 3.7.6 -- OS platform and distribution (e.g., Linux Ubuntu 16.04): Ubuntu 4.15.0-74-generic -- GCC/Compiler version (if compiled from source):
```

1.2 基本信息

1.2.1 脚本

脚本如下：

```
loc_data = mindspore.Tensor(np.random.randint(100, size=(1, 32760, 4)),mindspore.float32)
pos_idx = mindspore.Tensor(np.random.randint(2,size=(1, 32760, 4)),mindspore.int32)
pos_idx = ops.cast(pos_idx, mindspore.bool_)
loc_p = (ops.MaskedSelect()(loc_data, pos_idx))
loc_p = loc_p.view((-1,4))
print('result:',loc_p.shape)
```

1.2.2 报错

这里报错信息如下：

```
Traceback (most recent call last):
 File 'demo.py', line 06, in &lt;module&gt;
loc_p = loc_p.view((-1,4)) 
…
ValueError: For 'Reshape', the shape of 'input_x' is [65209], the value of 'input_shape' value is [16302, 4]. The product of the shape of 'input_x' should be equal to product of 'input_shape', but product of the shape of 'input_x' is 65209, product of 'input_shape' is 65208.
```

原因分析

​我们来看报错信息，在ValueError中，写到The product of the shape of 'input\_x' should be equal to product of 'input\_shape'，but product of the shape of 'input\_x' is 65209, product of 'input\_shape' is 65208，说的是产生的input\_x的shape应该等于input\_shape，但两者的值并不相等，这是由于MaskedSelect是一个动态shape算子，它每次输出的shape是根据input数据的不同而变化的，导致执行loc\_p.view\(\(-1,4\)\)进行reshape操作的时候，大部分时候都不满足reshape成\(-1,4\)的条件，所以报错。

​遇到此类问题时，建议调整算法解决。

**2. 解决方法**

基于上面已知的原因，可以进行丢弃小部分数据做出如下修改：

![](figures/10-69.png)

此时执行成功，输出如下：

```
result:(16421, 4)
```

**3. 总结**

定位报错问题的步骤：

1、到报错的用户代码行：\*loc\_p = loc\_p.view\(\(-1,4\)\)\*；

2、 根据日志报错信息中的关键字，缩小分析问题的范围： The product of the shape of 'input\_x' should be equal to product of 'input\_shape'；

3、 结合官网对API的相关介绍，查看传入到API时的参数是否符合要求；

4、 需要重点关注变量定义、初始化的正确性；

5、 具体的解决办法得根据具体的场景进行操作。

**4. 参考文档**

4.1  [MaskedSelect算子API接口](https://www.mindspore.cn/docs/api/zh-CN/r1.5/api_python/ops/mindspore.ops.MaskedSelect.html?highlight=maskedselect#mindspore.ops.MaskedSelect)

