【问题标题】:Difference result in machine learning机器学习中的差异结果
【发布时间】:2020-08-25 14:01:06
【问题描述】:

我使用机器学习进行图像处理,根据他们的 X 光胸部图像对 covid-19 患者进行分类。使用 google colab 和 ResNet101 模型,我想知道在多次运行时(使用相同的参数、数据集和算法),准确率和损失的值可能会有所不同。比如使用4-folds的ResNet101时,image_size=(128, 128),batch_size=32,num_epochs=80,learning_rate=0.00001,layers.Dense=256,google colab第一次给出accuracy和loss的值分别为 91.07% 和 0.292。但第二次是 90.36% 和 0.346。那么结果是否有可能不同?如果是这样,我怎样才能最小化它?如果没有,我该如何解决这个问题?

【问题讨论】:

  • 没有什么可修复的;结果中的这种统计波动是正常的和预期的,它们是由于所用算法的固有随机性造成的。
  • 谢谢。但我只是想知道算法的随机性会产生很大的差异。刚跑完第三次,结果比预想的还要低(准确率只有88.57%)

标签: machine-learning resnet loss


【解决方案1】:

这是由于随机初始化的模型权重、训练循环期间的数据采样顺序和数据扩充以及其他类型的随机性。为了重现结果,“修复”此问题的一种方法是设置所有随机种子(python、tf、cuda、...)。

【讨论】:

    猜你喜欢
    • 2017-02-01
    • 2020-10-15
    • 1970-01-01
    • 2020-02-03
    • 1970-01-01
    • 2019-06-16
    • 2021-11-26
    • 1970-01-01
    • 2022-12-10
    相关资源
    最近更新 更多