线性模型——机器学习思考总结(1)

​ 本篇文章为作者阅读西瓜书和《统计学习方法》中所思所想,我想要抽离出我看到的有价值的,可学习的地方做一个总结。因个人能力有限,所以请各位读者多多赐教。每一个分点为我认为有价值的点。

内容来源:本节内容以周志华《机器学习》的第三章为基础,融合少量网上搜集到的资料。

1. 优点是可解释性?

​ 书中提到:“由于$w$直观表达了各属性在预测中的重要性,因此线性模型有很好的可解释性”。我对可解释性的理解是弄够弄清工作的原因。在线性模型中,如$f(x)=w_1x_1+w_2x_2+C$这样的一个模型,$w_1$是$x_1$的参数,同时$w_1$的大小就是$x_1$重要程度的量度,这就是可解释性?

2. 对离散属性的处理?

​ 离散属性要看数据是否有序关系:身高分为高中矮三类,此即有序,那么可以给其转化为{1,0.5,0};而水果蔬菜种类多样,如果有一类属性是西瓜、南瓜、冬瓜,那么就不能按上面方式处理数据,因为这三种瓜种类是对称的,谁也不比谁高贵,所致要设定k维向量,例如将三种瓜称为{(0,0,1),(0,1,0),(1,0,0)}。

3. 拟合还是回归?

​ 我进行了一定的思考,还是认为这两者实际上属于不同的分类方法,这两者有很多的交集,但并不完全相等。

4. 最小二乘法?

​ “均方误差有非常好的几何性质,它对应了常用的欧几里得距离或简称‘欧氏距离’。基于均方误差最小化来进行模型求解的方法称为最小二乘法。”

​ 我们想求解模型,即找到一个函数表达。为了量化模型的好坏,我们用均方误差来度量,我们不断对均方误差优化得到问题的解,这种方法即最小二乘法。

5. 凸函数与闭式解?

​ 注意到,我们这里的模型是线性模型,所以均方误差得到的为二次函数。二次函数是凸函数,凸函数可以用解析的方法求闭式解。

6. 矩阵的求导?

​ 这里$w, y$为向量,$X$为矩阵,我们想要求$\frac{\partial E_n} {\partial w}$,涉及到矩阵的求导,计算如下:

7. 引入正则化?

​ 正则化通常作为解决过拟合的手段。但是在这里,可以得到解析解的情形,有时候过程中矩阵不可求逆,引入正则化就可以求了。

8. 正态分布,线性回归,最小二乘的关系?

​ 常有一种说法“最小二乘估计需要假设误差正态性”,这种说法是错误的,简单说就是因为推导过程中没有用到这个条件,具体推导可以参考其它资料。

​ 但是,可以肯定在正态分布的前提下,最小二乘法的参数估计是最好的,无偏的。(这里参考其它资料)

9. 广义线性模型?

​ 线性模型对应的是最简单的情况,为了解决更多的问题,可以提出广义线性模型。可以理解为通过一定的变换,让模型更具有适应性,广义线性模型的形式是:

​ 对于广义线性模型,参数估计通常采用加权最小二乘法或极大似然法进行。

10. 对数几率回归?分类?

​ 对数几率回归,实际上是回归的原理做分类的事情,只不过回归之后套上一个变换让数据对比更大更显著而已。阶跃函数自然是最合适的,但是不连续,在分析性质上不够好,所以用Sigmoid函数。正巧的是,它在0-1范围很像概率,所以我们就可以把它当作概率做很多事情,也就是“它是直接对分类可能性进行建模,无需事先假设数据分布”。

11. 对数几率分布如何确定参数?

​ 因为我们有概率,所以直接极大似然法就可以了。极大似然法是确定参数的方法,它假定变量的概率分布,这里就是

​ 或者可以简单点写为:

​ 在已知$\{(x_i,y_i)\}_{i=1}^m$的输入的情况,把每一个输入分别带入上式,可以求出每个样本正确的概率,再将所有概率相乘即得似然函数,对其优化即可。

12. LDA的思路?

​ LDA全称线性判别分析,“分析”这个词很容易联想到主成分分析,是的,这也是一个降维的方法。它和主成分分析不同点在于主成分分析降维是为了保留尽可能多信息,但不能用到类别信息;这个是为了分类,且用到了类别信息。它的方法论就是想让不同类别的点投影后尽可能原理,同类别点接近。不同类别点原理对应均值投影后的距离平方最大,也就是

最大(右下角的2我猜是2范数的意思),这个式子可以通过矩阵形式化简为

这样的形式;而对于同类别点接近,可以定义一个量为散列值

展开可以写为

中间转化成了一个协方差矩阵。

​ 那么,我们所要做的就是不同类别点距离最大,同类别点距离最小,一种方案可以是这样的

其中的${S_w} = {\Sigma _0} + {\Sigma _{\rm{1 } } } $, 让$J$最大就行了,也就是$S_b, S_w$的广义瑞利商。

13. 拉格朗日乘子法的直观理解?

​ 用代数的空间的思想最简单啦!拉格朗日乘子法可以实现有约束条件的极值问题到无约束条件极值问题的转换。那么,首先给出有约束条件的机制问题的一般定义:

​ 拉格朗日乘子法可以表述为:如果条件极值点$x’ $存在,那么再该点处,目标函数的改进方向$\nabla f(x’)$必然落在$K$个约束函数再该点处法向量$\nabla {g_1}(x’),\nabla {g_2}(x’),…,\nabla {g_K}(x’)$张成的线性子空间内。

​ 如何理解?要求的这个极值点首先在一个约束条件构成的曲面上,局部线性近似后,用在该处的切平面代替,所以$x’$运动方向肯定与$\nabla {g_k}(x’)$垂直,$k$个切平面皆是如此。同样,$x’$在$f(x)$的曲面族上运动,运动方向也与$\nabla f(x’)$垂直啦。$x’$的运动方向的两种表述相等,就可以得到$\nabla f(x’) = \sum\limits_{k = 1}^K { {\lambda _k}\nabla {g_k}(x’)} $,也就是第二段的文字表述啦。

14. 常用的矩阵微分运算

​ 矩阵的操作:

​ 重要但需要较复杂推导的结论:

​ 矩阵的$trace$运算:

15. 广义瑞利商优化问题的求解?

​ 问题定义:

​ 由拉格朗日乘子法,上式可以变换为

​ 所以$w = {S_w}^{ - 1}({\mu _0} - {\mu _1})$,求数值解经过奇异值分解可以进一步化简。

16. 奇异值分解?

​ 奇异值分解,其目的简单说就是为了提取出更主要的信息,可以减少计算量等等。其操作原理,就是利用矩阵分解。对于形状为正方形的矩阵,通过特征值特征向量的分解我们可是实现矩阵的对角化分解。但是对于形状为矩形的更一般的矩阵,我们就要考虑奇异值分解。奇异值分解通过原矩阵乘以转置得到对称矩阵,再进行对角化操作。然后利用特征向量之间关系求出奇异值,进而得到奇异值分解。

17. LDA与贝叶斯决策理论关系?

值得一提的是,LDA可从贝叶斯决策理论的角度来阐释,并可证明,当两类数据同先验、满足高斯分布且协方差相等时,LDA可达到最优分类。

​ 学过西瓜书第七章再回答。

18. 多分类LDA?

​ 原理是一致的,主要注意三个矩阵

​ 三个矩阵有两个变量,知道两个就可以了。这里注意括号中的$\mu ,{\mu _i}$。这个式子我是通过与物理学中坐标系类比的。$S_t$是相对于惯性系的运动,$S_w$是相对于非惯性系的运动,$S_b$是非惯性系相对于惯性系的运动。

​ 其余计算跟二分类很类似,只不过多了个维度。

19. 多分类学习?

​ 多分类学习我们通常将它转化为若干个二分类问题进行解决,一般情况下是$MvM$,特例有$OvO,OvR$。常用的$MvM$技术是纠错输出码(ECOC)。基本原理就是增加位数,增大信息量,使得一个信息的错误的影响减少到最小。

20. 类别不平衡问题

​ 主要有三种解决方式,下采样、上采样和阈值移动。下采样就是减少多的例子,上采样就是增加少的样例,阈值移动就是利用样例出现的观测几率来代表真实几率,而不是固定的1:1.选择方法的时候要考虑增加减少样例的时间开销,过拟合的风险,信息的丢失等等。阈值移动的方案涉及到代价敏感学习的概念。代价敏感学习中研究得最多的是基于类别的误分类代价。