根据验证或测试准确性选择合适的学习率?

数据挖掘 机器学习 神经网络 深度学习
2022-03-14 23:02:13

我模拟了一个具有不同学习率的神经网络,范围从 0.00001 到 0.1,并记录每个测试和验证的准确性。我得到的结果如下。每个学习率有 50 个 epoch,我记下最后一个 epoch 的验证准确度,而在整个过程中计算训练准确度。

学习率:0.00001

测试精度:0.5850

最后时期的验证准确度:0.5950


学习率:0.0001

测试精度:0.6550

最终时期的验证准确度:0.6400


学习率:0.001

测试精度:0.6350

最后时期的验证准确度:0.6900


学习率:0.01

测试精度:0.6650

最后时期的验证准确度:0.6700


学习率:0.1

测试精度:0.2500

最后时期的验证准确度:0.2100

测试和验证的准确性如何影响哪个学习率更好?更高的验证准确度会决定模型最合适的学习率吗?

因此,0.001 是最合适的学习参数是否正确,因为它在最后一个 epoch 具有最高的验证准确度?

1个回答

您不能根据测试准确性选择参数,因为一旦您这样做,它就会成为验证准确性,因为它会影响最终模型。因此,您总是根据验证准确性进行选择。

因此,最好的结果来自学习率 0.001,最高验证准确度为 0.6900。我们忽略了Testing accuracy如果我们选择基于Testing accuracy,它就变成了一个验证准确度。

通常,在 50 时期较松的学习率可能会在 200 时期成为赢家。换句话说,较慢的收敛可能导致更高的准确度。因此,这个问题也值得考虑。