西瓜书-Task02-线性模型

1. 基本形式

线性模型试图学得一个通过属性的线性组合来进行预测的函数,即

 一般用向量形式写成: 

非线性模型:在线性模型的基础上通过引入层级结构或高维映射而得。

 

2. 线性回归

线性回归试图学得

 确定w和b的方法:关键在于如何衡量f(x)与y之间的差别,可通过均方误差来进行处理,通过使均方误差最小化来求得对应的w和b,即

西瓜书-Task02-线性模型_第1张图片

 多元线性回归:下面更一般的情形是针对数据集D而言,样本由d个属性描述,则任务变成如下所示:

 同样,可以利用最小二乘法来对w和b进行估计,可将w和b吸收入向量,相应的,把数据集D表示为一个mx(d+1)大小的矩阵X,其中每行对应于一个示例,该行前d个元素对应于示例的d个属性值,最后一个元素恒置为,即

西瓜书-Task02-线性模型_第2张图片

 最终求得多元回归模型为:

西瓜书-Task02-线性模型_第3张图片

由于西瓜书-Task02-线性模型_第4张图片往往不是满秩矩阵,因而通常的做法是引入正则化项。

3. 对数几率回归

利用线性模型进行分类任务时,只需要找一个单调可微函数将分类任务的真实标记y与线性回归模型的预测值联系起来。考虑二分类任务,其输出标记y∈{0,1},而线性回归模型产生的预测值是实值,因而需要将实值z转化为0/1值,最理想的是“单位阶跃函数”:

西瓜书-Task02-线性模型_第5张图片

即若预测值z大于零就判为正例,小于零则判为反例,预测值为临界值零则可以任意判别。但由于单位阶跃函数并不连续,因此用对数几率函数来代替:

西瓜书-Task02-线性模型_第6张图片

 对数几率函数是一种“Sigmoid函数”。单位阶跃函数与对数几率函数如下图所示:

西瓜书-Task02-线性模型_第7张图片

 对数几率函数将z值转化为一个接近0或者1的y值,并且其输出值在z=0附近变化很陡。

4. 线性判别分析

 线性判别分析(LDA)是一种经典的线性学习方法,其思想为:给定训练样例集,设法将样例投影到一条直线上,使得同类样例的投影点尽可能接近、异类样例的投影点尽可能远离,在对新样本进行分类时,将其投影到同样的这条直线上,再根据投影点的位置来确定新样本的类别。其示意图如下图所示:

西瓜书-Task02-线性模型_第8张图片

 优化目标函数:

西瓜书-Task02-线性模型_第9张图片

类内散度矩阵:

西瓜书-Task02-线性模型_第10张图片

 类间散度矩阵:

西瓜书-Task02-线性模型_第11张图片

 因而,LDA欲最大化的目标J可写成如下形式:

西瓜书-Task02-线性模型_第12张图片

5. 多分类学习

将二分类学习推广到多分类学习,先对问题进行拆分,然后为拆出的每个二分类任务训练一个分类器,在测试时,对这些分类器的预测结果进行集成以获得最终的多分类结果。

经典的拆分策略有:一对一(OvO),一对其余(OvR),多对多(MvM)

西瓜书-Task02-线性模型_第13张图片

OvR是每次将一个类的样例作为正例、所有其他类的样例作为反例来训练N个分类器。

MvM是每次将若干个类作为正类,若干个其他类作为反类。

你可能感兴趣的:(机器学习)