我们如何测量机器学习模型的偏差?我们能否仅通过计算训练数据和测试数据上的性能估计差异来确定它?例如,如果一个SVM模型在训练数据上的预测为0.53,而在测试数据上为0.60;我们能否说偏差只是7个点?
我读过一篇文章,提到“模型验证技术的偏差通常以模型验证技术得出的性能估计与模型在未见数据上的表现之间的差异来衡量。” 关于此的图表在此
谢谢
回答:
关于评论中最后一个问题,我想你在提到偏差和方差的其他用法。
在统计学领域,偏差指的是预测或估计器中的偏移(系统误差)。
在神经网络领域,偏差误差指的是你的训练误差
与最佳可能误差
之间的差异。
在训练神经网络时,你会向模型展示若干学习的例子(训练集)和不用于学习但用于测量性能的例子(验证集或也称为开发集)。训练误差
与验证/开发误差
之间的差异被称为方差
,它能让你了解模型对未见数据的泛化能力如何。
由于你可能会训练多个模型直到对结果满意,你会基于其验证/开发误差
选择最佳模型。这可能涉及某种形式的过拟合到超参数,因为你只保留了在验证/开发误差
上表现最佳的模型。
为了确保你没有这样做(过拟合超参数),你可以使用第三个称为测试集的未见示例集,且不用于学习。如果验证/开发误差
与测试误差
非常相似,那么(一般来说)你可以得出结论,你的模型在超参数上没有过拟合,并且应该能像在开发集上一样表现良好。
再次,我强烈推荐你观看这个视频以获取更多细节。
希望这对你有帮助!