模型评估

普通验证 Link to heading

就是将数据集分为训练集和测试集,训练集用于训练模型,测试集用于验证模型的准确性。

一般情况下,将数据集分为训练集和测试集的比例为7:38:2

(K折)交叉验证 Link to heading

k折交叉验证将数据集分为k个数据块,每次取一个数据块作为测试集,其余的作为训练集,重复k次,最后取k次的平均值。

常用的交叉验证有四折交叉验证,十折交叉验证,留一交叉验证等。

四折交叉验证 Link to heading

四折交叉验证

通过四折交叉验证的流程,可以推出k折交叉验证的流程。

交叉验证流程

留一交叉验证 Link to heading

在k折交叉验证中,当k=n时,称为留一交叉验证。
也就是在极端情况下,将每一个样本都作为一个数据块,每次取一个样本作为测试集,其余的作为训练集。

视频 Link to heading

模型验证曲线 Link to heading

学习曲线 Link to heading

学习曲线展示了模型在训练集和验证集上的性能(如损失或准确率)随训练样本数量或训练轮次(epoch)的变化。

验证曲线 Link to heading

验证曲线展示了模型在验证集上的性能随某个超参数(如正则化系数、树的最大深度、学习率等)的变化。

学习曲线 vs 验证曲线 Link to heading

特性学习曲线验证曲线
横轴训练样本数量或训练轮次超参数的取值
纵轴损失或评估指标(如准确率)验证集上的性能指标(如准确率、损失)
主要用途判断欠拟合、过拟合,评估数据量影响选择最优超参数,分析超参数的影响
关注点训练集和验证集的性能对比验证集性能随超参数的变化

代码 Link to heading