机器学习之线性模型——《机器学习》周志华著

最小二乘的原则是什么?写出多元线性回归的参数估计(写出推导过程)。

1.最小二乘法的原则就是均方误差最小。
2.线性模型可写为
\quad \quad \quad \quad 在这里插入图片描述
ω \omega 是属性,b为偏置项, f ( x ) f(x) 是模型预测的值,令y为真正的值(数据的标签),线性回归试图学得
\quad \quad 在这里插入图片描述
可利用最小二乘法来对 ω \omega 和b进行估计。把 ω \omega 和b表示为 ω ^ = ( ω ; b ) \hat \omega=(\omega;b)
\quad \quad \quad 在这里插入图片描述
\quad \quad \quad \quad 在这里插入图片描述

\quad \quad \quad \quad 在这里插入图片描述
ω ^ \hat \omega 求导得到
\quad \quad \quad \quad 在这里插入图片描述
令上式为零可得 ω ^ \hat \omega 的最优解。
X T X X^TX 为满秩矩阵或正定矩阵时,
\quad \quad \quad \quad 在这里插入图片描述

“对数几率”回归和“线性”回归的区别和联系。

线性回归是寻找
\quad \quad 在这里插入图片描述
但得到的 f ( x ) f(x) 是一个实值。
对数几率回归是为了做二分类任务,而进行的输入空间到输出空间的非线性映射,或者说,对数几率回归实质上使用Sigmoid函数对线性回归的结果进行了一次非线形的转换。如果要做二分类任务,其输出标记 y { 0 , 1 } y \in \{0,1\} ,而线性回归模型产生的预测值 z = ω T + b z=\omega^T+b 是实值,于是,需将实值 z z 转换为0/1值,最理想的是单位阶跃函数,但是由于其不连续,所以需要找一个在一定程度上近似单位阶跃函数的替代函数,并希望这个函数单调可微,而对数几率函数就是这样一种函数。

是否可以用最小二乘法估计对数几率回归的参数?

可以,与线性回归的参数估计相似,对数几率回归也是确定参数 ω \omega 和b,但是y的表达式对要估计的参数 ω \omega 和b是非凸的,不能用梯度算法求解,但可以使用不基于梯度的算法求解,比如状态转移算法(STA)

如何用极大似然估计来构建一个关于对数几率回归参数的高阶可导凸函数?

由于对数几率回归y的表达式对要估计的参数 ω \omega 和b是非凸的,那么能否找到一个目标函数使其对待估计参数是凸的呢?
\quad \quad \quad \quad 在这里插入图片描述
\quad \quad \quad \quad 在这里插入图片描述

将y视为类后验概率估计p(y=1|x),则
\quad \quad \quad \quad 在这里插入图片描述
显然有
\quad \quad \quad \quad 在这里插入图片描述
使用极大似然估计,对数似然函数为
\quad \quad \quad \quad 在这里插入图片描述
即令每个样本属于其真实标记的概率越大越好。令 β = ( ω ; b ) \beta=(\omega;b) x ^ = ( x , 1 ) \hat x=(x,1) ,则 ω T x ^ + b \omega^T \hat x+b 可简写为 β T x ^ \beta^T \hat x 。再令 p 1 ( x ^ ; β ) = p ( y = 1 x ^ ; β ) p_1(\hat x;\beta)=p(y=1|\hat x;\beta) p 0 ( x ^ ; β ) = p ( y = 0 x ^ ; β ) = 1 p 1 ( x ^ ; β ) p_0(\hat x;\beta)=p(y=0|\hat x;\beta)=1-p_1(\hat x;\beta) ,则上式的似然项可重写为
\quad \quad \quad \quad 在这里插入图片描述
于是,对数似然函数的最大化,可以表示为下式的最小化
\quad \quad \quad \quad 在这里插入图片描述
上式为关于 β \beta 的可导连续凸函数,关于其为凸函数的证明请参考 链接: 机器学习(周志华) 参考答案 第三章 线性模型

线性判别分析可以用来做什么?简述线性判别分析的思想,并说出一种实现其思想的方法

1.线性判别分析可以用来做分类。
2.线性判别分析(LDA)的思想:给定训练样例集,设法将样例投影到一条直线上,使得同类样例的投影点尽可能接近、异类样例的投影点尽可能远离;在对新样本进行分类时,将其投影到同样的这条直线上,再根据投影点的位置来判断新样本的类别。这像很多的聚类方法一样,先进行一定的变换,然后让不同类的中心足够的远,让同一类样本的内部足够的近。所以最终的问题就是确定变换的方式,也就是如何确定这条投影的直线。
3.可以用不同类的均值在某直线上的投影表示每一类的中心点,用不同类在某直线上投影的协方差表示每一类的分散程度,然后使不同类的中心点之间的距离尽可能远,同一类的分散程度尽可能小。
\quad \quad \quad \quad 在这里插入图片描述

简述OvO、OvR 、ECOC策略是怎样将多分类任务拆为若干个二分类任务的?各有何优缺点?

1.“一对一”拆分策略被称为OvO(One vs. One),OvO将这N个类别两两配配对,从而产生N(N-1)/2个二分类任务。在测试阶段,新样本同时提交给所有的分类器,于是将得到N(N-1)/2个分类结果,最终结果可通过投票产生:即把被预测得最多的类别作为最终分类结果。
2.“一对其余”拆分策略被称为OvR(One vs. Rest),OvR则是每次将一个类的样例作为正例、所有其他类的样例作为反例来训练N个分类器。在预测时若仅有一个分类器预测为正类,则对应的类别标记作为分类结果。
在这里插入图片描述
3.纠错输出码(ECOC)是多对多(MvM)拆分的一种,实际上,OvO和OvR都是MvM的特例。ECOC的类别划分通过编码矩阵指定。编码举证有多种形式,常见的主要有二元码和三元码。前者将每个类别分别指定为正类和反类,后者在正、反类之外,还可指定“停用类”。
4.OvR只需要训练N个分类器,而OvO需训练N(N-1)/2个分类器,所以OvO的存储开销和测试时间通常比OvR更大。但是,OvR每个分类器均使用全部的训练样例,而OvO每个分类器仅用到两个类的样例,因此,OvO的训练时间开销通常比OvR更小。预测性能取决于具体情况,大多数时候两者差不多。MvM的效果会比OvO和OvR更好,但是MvM的正反类的构造更加的麻烦,必须有特殊的设计。
在这里插入图片描述

什么是类别不平衡,会带来什么麻烦?怎么缓解类别不平衡?

1.类别不平衡就是指分类任务中不同类别的训练样例数目差别很大的情况。例如1000个样例中998个反例,但正例只有两个,那么模型只需要永远将新样本预测为反例,就能达到99.8%的正确度。
不失一般性,假定正类样例较少,反类样例较多。
2.缓解类别不平衡的方法有以下几种。
欠采样:即去除一些反例使得正反例数目接近,然后再进行学习。注意:欠采样算法若随机丢弃反例,可能丢失一些重要的信息。
过采样:即增加一些正例使得正反例数目接近,然后再进行学习。注意:过采样法不能简单的初始正例样本进行重复采样,否则会导致严重的过拟合。
欠采样法的时间开销通常远小于过采样,因为前者丢弃了很多的反例,使得分类器训练集远小于初始训练集,而过采样法增加了很多正例,其训练集大于初始训练集。
阈值移动方法:直接基于原始训练集进行学习,但在用训练好的分类器进行预测时,将再缩放策略嵌入其决策过程中。

猜你喜欢

转载自blog.csdn.net/weixin_41566127/article/details/90676832