先了解如何判断模型的优劣。
1.误差
1.从模型的过拟合和欠拟合判断。
2.从结果的偏差和方差上判断。
过拟合:在训练集上表现很好,在测试集上表现不好
欠拟合:二者上表现都不好
偏差:整体结果的准确度
方差:所有结果的分散程度
过拟合、欠拟合:
附一张形象描述偏差和方差的图:
以上提到的几种都属于泛化误差的判断范畴,而泛化误差涵盖了几乎所有会影响模型的因素甚至包括了模型的复杂程度。
改进优化模型,需要评估模型处于泛化误差最低点左侧或是右侧,从而便于确定改进方向。
2.评估
在机器学习中,我们通常把样本分为训练集和测试集,训练集用于训练模型,测试集用于评估模型。在样本划分和模型验证的过程中,存在着不同的抽样方法和验证方法。例如Holdout检验、交叉检验、自助法等。
Holdout 检验是最简单也是最直接的验证方法,它将原始的样本集合随机划分成训练集和验证集两部分。比方说,对于一个预测模型,我们把样本按照70%~30% 的比例分成两部分,70% 的样本用于模型训练;30% 的样本用于模型验证,包括绘制ROC曲线、计算精确率和召回率等指标来评估模型性能。
k-fold交叉验证(交叉检验的一种):首先将全部样本划分成k个大小相等的样本子集;依次遍历这k个子集,每次把当前子集作为验证集,其余所有子集作为训练集,进行模型的训练和评估;最后把k次评估指标的平均值作为最终的评估指标。
Holdout的验证集固定,因而具有随机性;交叉验证的验证集比Holdout检验的验证集更加随机,所以结果往往也更加精确。
自助法是基于自助采样法的检验方法。对于总数为n的样本集合,进行n次有放回的随机抽样,得到大小为n的训练集。n次采样过程中,有的样本会被重复采样,有的样本没有被抽出过,将这些没有被抽出的样本作为验集,进行模型验证,这就是自助法的验证过程。
运用完全随机的训练集来达到最大程度取消结果随机性的效果。
附上天池原文链接