Machine learning 即使列车和测试始终相同,测试精度也会波动

Machine learning 即使列车和测试始终相同,测试精度也会波动,machine-learning,deep-learning,nlp,pytorch,conv-neural-network,Machine Learning,Deep Learning,Nlp,Pytorch,Conv Neural Network,尽管我的训练、验证和测试集总是一样的,但测试精度会波动。我能想到的唯一原因是重量初始化。我使用的是PyTorch,我猜他们使用的是高级初始化技术(kaiming initialization) 即使培训、验证和测试数据相同,精度波动的原因可能是什么 除了重量初始化外,层之间的脱落也涉及随机性,这可能导致再次跑步时产生不同的结果 这些随机数通常基于种子值,固定它可以帮助重现结果。您可以查看如何修复种子值。我想优化超参数。您认为修复所有RNG的种子(使用torch.manual_seed(0))然后

尽管我的训练、验证和测试集总是一样的,但测试精度会波动。我能想到的唯一原因是重量初始化。我使用的是PyTorch,我猜他们使用的是高级初始化技术(kaiming initialization)


即使培训、验证和测试数据相同,精度波动的原因可能是什么

除了重量初始化外,层之间的脱落也涉及随机性,这可能导致再次跑步时产生不同的结果


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

我想优化超参数。您认为修复所有RNG的种子(使用torch.manual_seed(0))然后搜索超参数值是一个好主意吗?是的,为了获得一致的结果,我建议这样做。一般来说,您的结果不应该受到这些随机事件(如初始化)的太大影响。