机器学习 - 第3章 - 线性模型
可解释性好。
存在序关系的属性可以转化为连续值,而不存在序关系的属性,若有 \(k\) 个属性值,则通常转化为 \(k\) 维向量。
例如:
属性“身高”的取值“高”、“矮”可以转化为 \(\{1.0,0.0\}\) ,而属性“瓜类”的取值“西瓜”、“南瓜”、“黄瓜”可以转化为 \((0,0,1),(0,1,0),(1,0,0)\) 。
线性回归试图使得 \(f(x_i)=wx_i+b\) 的值接近 \(y_i\) 的值。
关键在于如何衡量 \(f(x)\) 和 \(y\) 之间的差别。
均方误差是回归任务中最常用的性能度量,可以试图使得均方误差最小化。
均方误差拥有非常好的几何意义,对应了常用的欧几里得距离。
基于均方误差最小化来进行模型求解的方法称为“最小二乘法”。
求解 \(w\) 和 \(b\) 使得 \(E_(w,b)=\sum_{i=1}^{m}(y_i-wx_i-b)^2\) 最小化的过程,称为线性回归模型的最小二乘参数估计。
将\(E_(w,b)\) 对 \(w\) 和 \(b\) 求偏导,得到
//TODO
然后让上式为0就得到了 \(w\) 和 \(b\) 最优解的闭式解。
矩阵求导的教程:https://www.jianshu.com/p/6b64b7ee6ec2
变量的数目超过样例数,导致 \(\textbf{X}^T\textbf{X}\) 不是满秩矩阵,可以解出多种解都可以使得均方误差最小化,这时候结果由学习算法的归纳偏好决定,或者进入正则化项。
Sigmoid函数
对数几率函数
使用对数几率函数的叫做对数几率回归,虽然名字是“回归”,但是实际上是一种分类学习方法。
优点:直接对分类可能性进行建模,无需事先假设数据分布。
高阶可导连续凸函数,根据凸优化理论,经典的数值优化算法如梯度下降法、牛顿法等都可以求得最优解。
线性判别分析
LDA
3.6 类别不平衡问题
前面的分类学习方法有一个共同的基本假设,就是不同类别的训练样例数目相当。若有998个反例,2个正例,则一个永远返回预测为反例的学习器就能达到99.8%的精度,但是这样的学习器往往没有价值,因为它不能预测任何正例。
通常假设训练集是真实样本总体的无偏采样,于是只要分类器的预测几率高于观测几率就应判定为正例。
欠采样
去除一些反例使得正反数目接近。
过采样
增加一些正例使得正反数目接近。
阈值移动
?
过采样法不能简单地对初始正例样本进行重复采样,否则会导致严重的过拟合。
过采样法的代表性算法SMOTE是通过在训练集里的正例进行插值来产生额外的正例。
欠采样法不能随机丢弃反例,否则可能会丢失一些重要信息。代表性算法EasyEnsemble是利用集成学习机制,将反例划分为若干个集合供不同的学习器使用。
再缩放是代价敏感学习的基础,设 \(cost^+\) 是将正例误分为反例的代价, \(cost^-\) 是将反例误分为正例的代价,用 \(\frac{cost^+}{cost^-}\) 代替掉 \(\frac{m^+}{m^-}\) 即可。