统计学习方法概论
统计学习方法概论
a.有监督、无监督的比较,分类和回归的比较
监督学习的任务是学习一个模型,使模型能够对任意给定的输入,对其相应的输出作出一个好的预测(注意这里的输入、输出是指某个系统的输入与输出,与学习的输入与输出不同)监督学习是极其重要的统计学习分支,也是统计学习中内容最丰富、应用最广泛的部分。
无监督学习没有输出标签
训练数据通常是一个向量和一个预期输出组成,如果函数的输出是一个连续的数值,则称为回归分析。如果函数的输出是一个分类标签,则称为分类问题
b.什么是过拟合以及解决办法、交叉验证
过拟合是指学习时选择的模型所包含的参数过多,以致于出现这一模型对已知数据预测得很好,但对未知数据预测很差的现象。
防止过拟合可以选择正则化和交叉验证。正则化是在损失函数上加上一项正则化项。
正则化项为参数向量的L2范数:
正则化项也可以是参数向量w的L1范数:
正则化符合奥卡姆剃刀原理。奥卡姆剃刀原理应用于模型选择时认为:在所有可能选择的模型中,能够很好地解释已知数据并且十分简单才是最好的模型。
交叉验证
如果给定的样本数据充足,进行模型选择的一种简单方法是随机地将数据集切分成三部分,分别为训练集,验证集和测试集。训练集用来训练模型,验证集用于模型的选择,而测试集用于最终对学习方法的评估。在学习到的不同复杂度的模型中,选择对验证集有最小预测误差的模型。但是,在许多实际应用中数据是不充足的。为了选择好的模型,可以采用交叉验证方法。交叉验证的基本想法是重复地使用数据;把给定的数据进行切分,将切分的数据集组合为训练集与测试集,在此基础上反复地进行训练、测试以及模型选择。
1简单检查验证:首先随机地将已知数据分为两部分,一部分作为训练集,另一部分作为测试集;然后用训练集在各种条件下(不同的参数下)训练模型,从而得到不同的模型;在测试集上评价各个模型的测试误差,选出测试误差最小的模型。
2S折交叉验证:
应用最多的是S折交叉验证,方法如下:首先随机地将已给数据且分为S个互不相交的大小相同的子集;然后利用S-1个子集的数据训练模型,利用余下的子集测试模型;将这一过程对可能的S种选择重复进行;最后选出S次平均测试误差最小的模型。
3留一交叉验证:
S折交叉验证的特殊情形是S=N,称为留一交叉验证,往往在数据缺乏的情况下使用。这里N是给定数据集的容量。
代码可使用http://scikit-learn.org/stable/modules/cross_validation.html
c.模型评估指标(精确率、召回率、F值、ROC、AUC)
分类是监督学习的一个核心问题。
TP----将正类预测为正类数;
FN----将正类预测为负类数;
FP----将负类预测为正类数;
TN----将负类预测为负类数。
ROC 以fp rate为横轴,tp rate为纵轴。(auc为roc的面积,area under curve)
PRC 以recall为横轴,precision为纵轴。
recall = tp rate
在正负样本分布得极不均匀的情况下,PRC比roc更能有效地反应分类器的好坏
若样本极不均衡,则随recall的增加,FP会远大于TP的值,precision会变化很大
相对来讲,ROC曲线会稳定很多,在正负样本量都足够的情况下,ROC曲线足够反映模型的判断能力。