【tensorflow】Input to reshape is a tensor with xxx values, but the requested shape requires a multipl

今天写了一个简单的3DCNN,结果在跑的时候出现一个问题,

tensorflow.python.framework.errors.InvalidArgumentError: Input to reshape is a tensor with xxx values, but the requested shape requires a multiple of xxx values

好气!!

错误定位到了加载数据那里。

这里写图片描述

这里写图片描述

感觉上应该数输入数据的shape处理出了点问题,但我检查了好几遍,都没发现哪里写错了。

也查了很多博客,也验证了我的猜想,就是shape出了问题。

这个地方指出,

【tensorflow】Input to reshape is a tensor with xxx values, but the requested shape requires a multipl_第1张图片

然后我又仔细推导了一遍我的卷积、池化操作,看shape的改变是否对应,终于发现了问题,我的池化操作,本来步长应该是[1,1,2,2,1]的,结果我步长都写作了1,结果自然导致我的数据shape无法对应,修改后错误解决。

关键是我检查好几遍才发现这个步长写错,是因为我把池化操作封装在一个函数中,每次调用函数我默认我是写的步长是对的,就没有仔细检查,真是罪过啊!!

所以说,出现这种类似的问题,一般都是你数据shape搞错了,认真手推一波,一定能发现哪里写错的。

以此为戒,记录自己的粗心大意。

你可能感兴趣的:(tensorflow,深度学习)