本章节是对我学习完机器学习(周志华)第三章 所做出来的总结
第三章 线性模型
3.1 基本形式
线性模型形式简单、易于建模,但却蕴含着机器学习中一些重要的基本思想。许多功能更为强大的非线性模型可在线性模型的基础上通过引入层级结构或高维映射可得。
线性模型有很好的可解释性。
3.2 线性回归
“线性回归”试图学得一个线性模型以尽可能准确的预测实值输出标记。
均方误差是回归任务中最常用的性能度量。均方误差有非常好的几何意义,它对应了常用的欧几里得距离或简称“欧氏距离”。基于均方误差最小化来进行模型求解的方法称为“最小二乘法”。在线性回归中,最小二乘法就是试图找到一条直线,使所有样本到直线上的欧氏距离之和最小。
PS.最小二乘法用途很广,不仅限于线性回归。
线性回归可参考:https://baike.baidu.com/item/%E7%BA%BF%E6%80%A7%E5%9B%9E%E5%BD%92/8190345?fr=aladdin
3.3 对数几率回归
用回归模型的预测结果去逼近真实标记的对数几率,因此,其对应的模型称为“对数几率回归”,简称“对率回归”。这是一种分类学习方法。
优点:
1.直接对分类可能性进行建模,无需事先假设数据分布,避免了假设分布不准确所带来的问题。
2.不仅预测出“类别”,而是可得到近似概率预测,这对许多需利用概率辅助决策的任务很有用。
对率回归求解的目标函数是任意阶可导的凸函数,有很好的数学性质,现有的许多数值优化算法都可直接用于求取最优解。
对数几率回归推导可参考:https://blog.csdn.net/hongbin_xu/article/details/78270526
3.4 线性判别分析
线性判别分析(简称“LDA”)是一种经典的线性学习方法。
LDA的思想:给定训练样例集,设法将样例投影到一条直线上,使得同类样例的投影点尽可能接近、异类样例的投影点尽可能远离;在对新鲜样本进行分类时,将其投影到同样的这条直线上,再根据投影点的位置来确定新样本的类别。
3.5 多分类学习
多分类学习的基本思路是“拆解法”,即将多分类任务拆为若干个二分类任务求解。具体来说,先对问题进行拆分,然后为拆出的每个二分类任务训练一个分类器;在测试时,对这些分类器的预测结果进行集成一伙的最终的多分类结果。
最经典的拆分策略有三种:“一对一”(简称“OvO”)、“一对其余”(简称“OvR”)和“多对多”(简称“MvM”)。
OvO将N个类别两两配对,从而产生N(N-1)/2个二分类任务,最终结果可通过投票产生:即把被预测得最多的类别作为最终分类结果。
OvR则是每次将一个类的样例作为正例、所有其他类的样例作为反例来训练N个分类器。在测试时若仅有一个分类器预测为正例,则对应的类别标记作为最终分类结果。若有多个分类器预测为正类,则通常考虑各分类器的预测置信度,选择置信度最大的类别标记作为分类结果。
OvO与OvR示意图区别:OvR只需训练N个分类器,而OvO需训练N(N-1)/2个分类器,因此,OvO的存储开销和测试时间通常比OvR更大。但在训练时OvR的每个分类器均使用全部样例,而OvO的每个分类器仅使用到两个类的样例,因此在类别很多时,OvO的训练时间开销通常比OvR更小。至于预测性能,则取决于具体的数据分布,在多数情况下两者差不多。
MvM是每次将若干个类作为正类,若干个其他类作为反类。显然,OvO与OvR是MvM的特例。
纠错输出码(简称“ECOC”)是将编码的思想引入类别拆分,并尽可能在解码过程中具有容错性。
ECOC工作过程分为两步:
编码:对N个类别做M次划分,每次划分将一部分类别划为正类,一部分划为反类,从而形成一个二分类训练集;这样一共产生M个训练集,可训练出M个分类器。
解码:M个分类器分别对测试样本进行预测,这些预测标记组成一个编码。将这个预测编码与每个类别各自的编码进行比较,返回其中距离最小的类别作为最终预测结果。
类别划分通过“编码矩阵”指定。编码矩阵有多种形式。常见的有二元码和三元码。前者将每个类别分别指定为正类和反类,后者在正、反类之外,还可指定“停用类”。
为什么称为“纠错输出码"?
因为在测试阶段,ECOC编码对分类器的错误有一定的容忍和修正能力。
对同一个学习任务,ECOC编码越长,纠错能力越强,但,编码越长,意味着所需的训练的分类器越多,计算、存储开销都会增大;另一方面,对有限类别数,可能的组合数目是有限的,码长超过一定范围后就失去了意义。
对同等长度的编码,理论上来说,任意两个类别之间的编码距离越远,则纠错能力越强。
通常不需要获得理论最优编码,因为非理论最优编码在实践中往往已能产生足够好的分类器。
并不是编码的理论性质越好,分类性能越好,因为机器学习问题涉及很多因素。
3.6 类别不平衡问题
类别不平衡就是指分类任务中不同类别的训练样例数目差别很大的情况。
类别不平衡学习的一个基本策略——“再缩放”。
“再缩放”在现有技术上有三类做法:第一类是直接对训练集里的反类样例进行“欠采样”,即去除一些反例使得正、反例数目接近,然后再进行学习。
第二类是对训练集里的正类样例进行“过采样”,即增加一些正例使得正、反例数目接近,然后再进行学习。
第三类是直接基于原始训练集进行学习。
欠采样法的时间开销通常远小于过采样法,因为前者丢弃了很多反例,使得分类器训练集远小于初始训练集,而过采样法增加了很多正例,其训练集大于初始训练集。
注意:过采样法不能简单地对初始正例样本进行重复采样,否则会招致严重的过拟合;欠采样法若随机丢弃反例,可能丢弃一些重要信息。
“再缩放”也是“代价敏感学习”的基础。
网友评论