此错误出现在深度学习的模型拟合阶段,可能是 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作为除数所致。


此时已找到错误所在,结束错误排查流程。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐