ValueError: Input contains NaN, infinity or a value too large for dtype(‘float32‘).
如题
·
此错误出现在深度学习的模型拟合阶段,可能是 X 和 Y 出问题。问题包括 XY 含有空值,或含有无穷值,或者含有超过 float32 能表达的数值(有7位以上的小数)。
错误排查--首先排查空值
对于Y:
# 查看 Y 的数值是否含有空值
print(df['pIC50'].isnull().any().sum())
输出为 “0”, 说明不含空值。
对于X:
# 得到 X_train 参数的最大值
X_train.argmax()
输出为“43189200”
# X_train.shape 为 (327, 30, 30, 62, 1)
# 查找最大参数值对应 X_train 的索引序数
X_train.argmax()//30//30//62//1
输出为“774”,因此 X_train 的索引 774 对应最大参数值。
# 聚焦 X_train 的索引774
X_train[774][0][0]
可见确实含有空值。
这是在矩阵数值的计算过程中,0作为除数所致。
此时已找到错误所在,结束错误排查流程。
更多推荐
已为社区贡献1条内容
所有评论(0)