【问题标题】:test accuracy fluctuate even train and test are always same [closed]即使训练和测试总是相同的,测试精度也会波动[关闭]
【发布时间】:2020-07-25 10:02:31
【问题描述】:

尽管我的训练集、验证集和测试集始终相同,但测试准确度会波动。我能想到的唯一原因是权重初始化。我正在使用 PyTorch,我猜他们使用了高级初始化技术(kaiming 初始化)。

即使训练、验证和测试数据相同,准确性波动的原因可能是什么?

【问题讨论】:

    标签: machine-learning deep-learning nlp pytorch conv-neural-network


    【解决方案1】:

    除了权重初始化之外,层间dropout还涉及随机性,这会导致再次运行时产生不同的结果。

    这些随机数通常基于种子值,修复它有助于重现结果。您可以查看here 了解如何修复种子值。

    【讨论】:

    • 我想优化超参数。你认为修复所有 RNG 的种子(通过使用 torch.manual_seed(0) )然后搜索超参数的值是个好主意吗?
    • 是的,我建议这样做是为了获得一致的结果。一般来说,你的结果应该不会受到初始化等随机事件的太大影响。
    猜你喜欢
    • 1970-01-01
    • 2020-05-23
    • 1970-01-01
    • 2020-07-08
    • 1970-01-01
    • 2020-06-04
    • 1970-01-01
    • 2021-09-14
    • 2018-12-30
    相关资源
    最近更新 更多