错误率:分类错误的样本数占样本总数的比例。E = a / m
精度:1 - a / m
误差:学习器的实际预测输出与样本真实输出之间的差异。
训练误差、经验误差:学习器在训练集上的误差。
泛化误差:学习器在新样本上的误差。
过拟合:已经把训练样本自身的一些特点当作了所有潜在样本都会具有的一般性质,这会导致泛化性能下降。是机器学习面临的关键障碍。
欠拟合:对训练样本的一般性质尚未学好。
过拟合产生的原因?
1. 训练集的数量级和模型的复杂度不匹配。训练集的数量级要小于模型的复杂度;
2. 训练集和测试集特征分布不一致;
3. 样本里的噪音数据干扰过大,大到模型过分记住了噪音特征,反而忽略了真实的输入输出间的关系;
4. 权值学习迭代次数足够多,拟合了训练数据中的噪声和训练样例中没有代表性的特征。
评估模型优劣的方法?
1.留出法
留出法直接将数据集D划为两个互斥的集合,其中一个集合作为训练集S,另一个作为测试集T,即D=S∪T,S∩T=Φ,在S上训练出模型后,用T来评估测试误差,作为泛化误差的估计。
2.交叉验证法
先将数据集D划分为k个大小相似的互斥子集,即D=D1∪D2∪D3…∪Dn,每个子集Di都尽可能保持数据分布的一致性。即从D中通过分层取样得到,然后用k-1个子集作为训练集,余下的作为测试集。从而可以进行k次训练和测试,最终返回k个测试结果的均值,故交叉验证法的评估结果的稳定性和保真性极大程度依赖于k的取值。
3.自助法
k折方法,训练集比D小,会引起一些因为训练样本规模不同而导致的估计误差
“自助法”直接采用自助采样为基础。在数据集D中重复有放回的采样m次,采样得到D’。样本始终不会被采集到的概率是
即采用自助,初始数据集D中约有36.8%的样本未出现在采样数据集D‘中,于是把D’作为训练集,D\D’用作测试集,我们仍有数据总量的1/3的、没在训练集中出现的样本用于测试,这种测试结果也叫 “包外估计”
缺点:自助法产生的数据集改变了初始数据集的分布,这会引起估计偏差,在数据量足够时,留出法和交叉验证法更常用
4.调参与最终模型
调参:对算法的参数进行设定
很多参数都是属于实数域的,所以无法尝试所有参数,通常选择范围步长,例[ 0 , 0.2 ] [0,0.2][0,0.2]范围内以0.05为步长,实际选择要评估的候选参数有5个
在模型选择完成后,学习算法和参数配置已选定,此时应该用数据集D重新训练模型,这个模型在训练过程中使用了所有m个样本,这才是我们最终提交给用户的模型
训练数据划分为训练集和验证集基于验证集上的性能来进行模型参数选择和调参