机器学习——线性模型学习

时间:2022-12-31 11:51:01

线性回归

主要目标确定
机器学习——线性模型学习
如何确定w和b呢?关键在于如何衡量f(x)与y的差别
机器学习——线性模型学习
此种衡量误差的方法称为均方误差也称为欧式距离
求解w和b使上述方程最小化的过程称为线性回归模型的最小二乘”参数估计“

多元线性回归

针对多个属性的数据集D,此时试图学得
机器学习——线性模型学习
我们把w和b吸收入向量形式机器学习——线性模型学习
再将数据集表示为一个 m ∗ ( d + 1 ) m*(d+1) m(d+1)的矩阵X
机器学习——线性模型学习
令上式为零可得 w w w最优解的闭式解
机器学习——线性模型学习

X T X X^TX XTX为满秩矩阵或正定矩阵时,令式 ( 3.10 ) (3.10) (3.10)为零,得
机器学习——线性模型学习
则最终学习到的线性回归模型为
机器学习——线性模型学习
然而,现实任务中 X T X X^TX XTX 往往不是满秩矩阵 。例如在许多任务中我们会遇到大量的变量,其数目甚至超过样例数,导致 X X X的列数多于行 数。 X T X X^TX XTX显然不满秩.此时可解出多个解,它们都能使均方误差小化。选择哪个解作为输出将由学习算法的归纳偏好决定, 常见的做法是引入正则化 (regularization) 项。

对数线性回归

目的令模型预测值逼近y的衍生物。例如我们认为示例所对应的输出标记是在指数尺度上变化,则可将输出标记的对数作为线性模型逼近的目标。
l n y = w T x + b ln y=w^Tx+b lny=wTx+b
这里的对数函数起到了将线性回归型的预测值与真实标记联系起来的作用。
机器学习——线性模型学习

更一般地,考虑单调可微函数 g ( . ) g(.) g(.),令
y = g − 1 ( w T x + b ) y=g^{-1}(w^Tx+b) y=g1(wTx+b)
这样得到的模型称为广义线性模型,其中函数 g ( . ) g(.) g(.)称为联系函数

对数几率回归

目的时应用于分类任务。
答案蕴含在 y = g − 1 ( w T x + b ) y=g^{-1}(w^Tx+b) y=g1(wTx+b)中,只需要找到一个单调可微函数将分类任务的真实标记y与预测值联系起来。
二分类任务:
单位阶跃函数
机器学习——线性模型学习
但从图可看出,单位阶跃函数不连续,因此不能直接用作式(3.15)
g − ( . ) g^-(.) g(.). 于是我们希望找到能在一定程度上近似单位阶跃函数的**“替
代函数”** ,并希望它单调可微。对数几率函数正是这样一个常用的替代函数:
y = 1 1 + e − z y=\cfrac{1}{1+e^{-z}} y=1+ez1 Sigmoid函数

代入 y = g − 1 ( w T x + b ) y=g^{-1}(w^Tx+b) y=g1(wTx+b)此式

y = 1 1 + e − ( w T x + b ) y=\cfrac{1}{1+e^{-(w^Tx+b)}} y=1+e(wTx+b)1

l n y 1 − y = w T x + b ln\cfrac{y}{1-y}=w^Tx+b ln1yy=wTx+b ( 3.19 ) (3.19) (3.19)

若将y视为样本 x x x作为正例的可能性,则 1 − y 1-y 1y是其反例可能性。两者比值称为几率。

( 3.19 ) (3.19) (3.19)进行改写
l n p ( y = 1 ∣ x ) p ( y = 0 ∣ x ) = w T x + b ln\cfrac{p(y=1\mid{x})}{p(y=0\mid{x})}=w^Tx+b lnp(y=0x)p(y=1x)=wTx+b
显然有:
p ( y = 1 ∣ x ) = e w T x + b 1 + e w T x + b p(y=1\mid{x})=\cfrac{e^{w^Tx+b}}{1+e^{w^Tx+b}} p(y=1x)=1+ewTx+bewTx+b

p ( y = 0 ∣ x ) = 1 1 + e w T x + b p(y=0\mid{x})=\cfrac{1}{1+e^{w^Tx+b}} p(y=0x)=1+ewTx+b1

于是可通过极大似然法来估计 w w w b b b

l ( w , b ) = ∑ i = 1 m l n p ( y i ∣ x i ; w , b ) l(w,b)=\sum_{i = 1} ^mlnp(y_i\mid{x_i};w,b) l(w,b)=i=1mlnp(yixi;w,b)

这个式子的意思是以参数 w b wb wb确定的概率估计越接近于其真实标记越好。
PS:后面的公式太多懒得打了,这些公式大家最好自己推导一遍。对于学习理解有帮助
机器学习——线性模型学习

优点:特别需注意到,虽然它的名字是"回归",但实际却是一种分类学习方法。
这种方法有很多优点,例如它是直接对分类可能性进行建模,无需事先假设数据分布,这样就避免了假设分布不准确所带来的问题
它不是仅预测出"类别",而是可得到近似概率预测,这对许多需利用概率辅助决策的任务很有用;
此外,对率函数是任意阶可导的凸函数,有很好的数学性质,现有的许多数值优化算法都可直接用于求取最优解

线性判别分析(LDA)

LDA 的思想非常朴素: 给定训练样例集,设法将样例投影到一条直线上,使得同样例的投影点尽可能接近、异类样例的投影点尽可能远离;在对新样本进行分类时,将其投影到同样的这条直线上,再根据投影点的位置来确定样本的类别。
机器学习——线性模型学习
前提定义: X i X_i Xi:类示例集合
μ i \mu_i μi:均值向量
∑ i \sum_{i} i:协方差矩阵
观察图像,两类样本的中心在直线上的投影分别为
w T μ 0 w^T\mu_0 wTμ0 w T μ 1 w^T\mu_1 wTμ1
若将所有样本点都投影到直线上,则两类样本的协方差为
w T ∑ 0 μ 0 w^T\sum_{0} \mu_0 wT0μ0 w T ∑ 1 μ 1 w^T\sum_{1}\mu_1 wT1μ1
目的希望同类样例的投影点尽可能接近,即同类样本的协方差尽可能小
希望异类样本的投影点尽可能远离,即类中心之间的距离( ∥ w T μ 0 − w T μ 1 ∥ 2 2 \Vert w^T\mu_0- w^T\mu_1\Vert_2^2 wTμ0wTμ122)尽可能大
机器学习——线性模型学习
对于3.33式的计算,参照协方差矩阵
机器学习——线性模型学习

好,得出阶段性目标
最大化
J = w T S b w w T S w w J=\cfrac{w^TS_bw}{w^TS_ww} J=wTSwwwTSbw
依据这个式子,如何确定 w w w
机器学习——线性模型学习
机器学习——线性模型学习
机器学习——线性模型学习

多分类任务中的LDA

机器学习——线性模型学习
多分类LDA将样本投影到 d ′ d' d维空间, d ′ d' d通常远小于数据原有的属性 d d d。于是,可通过投影减小样本点维数,且投影过程中使用了类别信息。LDA是一种经典的监督降维技术

多分类学习

多分类学习的基本思路是”拆解法“。将多分类任务拆为若干个二分类任务求解。
机器学习——线性模型学习

OvR、OvO

机器学习——线性模型学习
区别:容易看出,OvR 只需训练 N N N个分类器 OvO 需训练 N ( N − 1 ) / 2 N(N - 1)/2 N(N1)/2 个分类器。因此,OvO的存储开销和测试时间开销通常比 OvR 更大。但在训练时,OvR 的每个分类器均使用全部训练样例,而 OvO 的每个分类器仅用到两个类的样例,因此,在类别很多时, OvO 的训练时间开销通常比 OvR 更小 至于预测性能则取决于具体的数据分布,在多数情形下两者差不多。

MvM

MvM 是每次将若干个类作为正类,若干个其他类作为反类。显然, OvO、OvR 是MvM 的特例。MvM 的正、反类构造必须有特殊的设计,不能随意选取。这里我们介绍 种最常用的 MvM 技术"纠错输出码" (ECOC)。

机器学习——线性模型学习