1. 基本形式
线性模型试图学得一个通过属性的线性组合来进行预测的函数,即
一般用向量形式写成:
非线性模型:在线性模型的基础上通过引入层级结构或高维映射而得。
2. 线性回归
线性回归试图学得
确定w和b的方法:关键在于如何衡量f(x)与y之间的差别,可通过均方误差来进行处理,通过使均方误差最小化来求得对应的w和b,即
多元线性回归:下面更一般的情形是针对数据集D而言,样本由d个属性描述,则任务变成如下所示:
同样,可以利用最小二乘法来对w和b进行估计,可将w和b吸收入向量,相应的,把数据集D表示为一个mx(d+1)大小的矩阵X,其中每行对应于一个示例,该行前d个元素对应于示例的d个属性值,最后一个元素恒置为,即
最终求得多元回归模型为:
由于往往不是满秩矩阵,因而通常的做法是引入正则化项。
3. 对数几率回归
利用线性模型进行分类任务时,只需要找一个单调可微函数将分类任务的真实标记y与线性回归模型的预测值联系起来。考虑二分类任务,其输出标记y∈{0,1},而线性回归模型产生的预测值是实值,因而需要将实值z转化为0/1值,最理想的是“单位阶跃函数”:
即若预测值z大于零就判为正例,小于零则判为反例,预测值为临界值零则可以任意判别。但由于单位阶跃函数并不连续,因此用对数几率函数来代替:
对数几率函数是一种“Sigmoid函数”。单位阶跃函数与对数几率函数如下图所示:
对数几率函数将z值转化为一个接近0或者1的y值,并且其输出值在z=0附近变化很陡。
4. 线性判别分析
线性判别分析(LDA)是一种经典的线性学习方法,其思想为:给定训练样例集,设法将样例投影到一条直线上,使得同类样例的投影点尽可能接近、异类样例的投影点尽可能远离,在对新样本进行分类时,将其投影到同样的这条直线上,再根据投影点的位置来确定新样本的类别。其示意图如下图所示:
优化目标函数:
类内散度矩阵:
类间散度矩阵:
因而,LDA欲最大化的目标J可写成如下形式:
5. 多分类学习
将二分类学习推广到多分类学习,先对问题进行拆分,然后为拆出的每个二分类任务训练一个分类器,在测试时,对这些分类器的预测结果进行集成以获得最终的多分类结果。
经典的拆分策略有:一对一(OvO),一对其余(OvR),多对多(MvM)
OvR是每次将一个类的样例作为正例、所有其他类的样例作为反例来训练N个分类器。
MvM是每次将若干个类作为正类,若干个其他类作为反类。