Vanlee123 2019-08-07 15:44 采纳率: 0%
浏览 322

用mnist测试集测精确度时程序出错!!!

图片说明
图片说明
神经网络在训练时,喂入的数据是mnist.train数据集,可以成功训练网络。但是,在用mnist.test数据集测试神经网络精确度时报错,如图所示。查了一下数据的类型,测试集和训练集的数据类型是一样的,为什么训练集可以喂入神经网络,测试集就不行呢?另外,也发现训练的神经网络对手写的数字识别基本不准。

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-11 00:08
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    根据您提供的信息,我注意到以下几点:

    1. 在测试阶段,使用了mnist.test数据集进行测试,而不是mnist.train数据集。这可能导致测试结果与训练过程中的表现不同。

    2. mnist.test数据集可能包含一些未见过的样本,这些样本在训练过程中没有被学习到。因此,尽管它看起来似乎已经准备好用于测试,但在实际测试中可能会遇到问题。

    3. 另外,虽然您提到训练的神经网络对手写数字识别基本不准确,但这种错误可能是由于多种因素引起的,包括但不限于模型结构、参数选择不当、过拟合或欠拟合等问题。

    为了解决这些问题,您可以尝试以下方法:

    1. 检查输入数据是否正确加载。确保所有样本都是有效的,并且它们具有正确的形状和类型。

    2. 分析模型输出,看看是否有任何异常行为或模式。例如,如果模型对某些特定类型的样本表现出异常敏感,那么这些样本可能不适合用于测试。

    3. 调整模型的超参数,例如批次大小、学习率等。通过调整这些参数,您可以在保持性能的同时减少过拟合的风险。

    4. 使用交叉验证或其他技术来评估模型在不同数据集上的性能。这样可以帮助您找到最佳的模型配置。

    5. 如果您的问题是由于过拟合导致的,请考虑增加更多的数据或者使用更复杂的模型架构。

    6. 最后,如果您有额外的测试数据,您可以将其作为测试数据的一部分。这样做可以提供更好的基准线,帮助您更好地理解模型的表现。

    希望以上建议能帮助您解决问题!

    评论

报告相同问题?