机器学习笔记——模型评估和选择
高估自己了,心情有缺,思想混乱,晚上失眠,难以集中注意力,见谅见谅,尽力而学。
一、误差与拟合
误差:学习器的预测输出与样本的真实输出之间的误差。
训练误差(经验误差):学习器在训练集上的误差。
泛化误差:学习器在新样本上的误差。
显然,我们需要一个泛化误差小的学习器。但是我们不知道新样本是什么样子,所以只能去追求训练误差最小化。
为了能够在新样本上表现良好,我们必须尽可能在训练样本上寻找适用于所有潜在样本的“普遍规律”,在寻找的过程中可能会出现两种不好的情况——“欠拟合”和“过拟合”。
欠拟合:对于训练样本的一般性质尚未学好。
(最常见原因:学习能力低下)——相对容易克服
过拟合:学的太好,把训练样本自身特点当做所有样本的一般性质。
(最常见原因:学习能力太过强大,将训练集中不太一般的特性都学到了)——不可避免,只能缓解
二、评估方法
泛化误差不可用,训练误差存在过拟合现象,那如何进行模型选择?——创建“测试集”,以测试误差作为泛化误差的近似。
对总数据集进行适当处理,产生训练集和测试集。
1.留出法
将数据集D划分为两个互斥的集合——训练集S、测试集T,D = S ∪ T , S ∩ T = ∅
注1:训练集和测试集的划分要尽可能保持数据分布的一致性,比如D中有500个正例、500个反例,则S中有350个正例、350个反例,T中有150个正例、150个反例。
注2:即使样本比例相似,依然存在多种划分方法,每次划分将导致不同的模型评估结果,一般要采用若干次随机划分、重复进行实验评估后取平均值作为留出法的训练结果。
注3:要注意S和T中样本个数,若S中样本数量偏多,T中较少,则评估结果可能不够稳定准确;若S中较少,T中较多,评估结果可能和D有较大的差别,降低了保真性。一般采用2/3~4/5的样本作为训练,剩余用于测试。
未完待续......