《机器学习》周志华读书笔记(三)线性模型(上)

本文深入探讨线性模型在机器学习中的应用,包括线性回归、多元线性回归、对数几率回归等内容,解析模型参数估计方法,如最小二乘法和极大似然法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

3.1基本形式

设由d个属性描述的示例x=\left (x_{1}; x_{2};...;x_{d} \right ),其中 x_{i} 是 x 在第 i 个属性上的取值

线性模型(linear model)试图学得一个通过属性的线性组合来进行预测的函数。其简单,易于建模,且有很好的解释性。

f(x)=\omega _{1}x_{1}+\omega _{2}x_{2}+...+\omega _{d}x_{d}+b

一般向量形式表示为

f(x)=\omega ^{T}x+b,其中 \omega=(\omega _{1};\omega _{2};...;\omega _{d})\omega 和 b 学得后,模型即确立。

强大的非线性模型可以在线性模型的基础上通过引入层次结构或高维映射而得。

 

3.2线性回归

先从简单的情况进行分析,即每个样本只有一个属性,一元线性回归。

给定数据集:D=\left \{ (x_{1},y_{1}), (x_{2},y_{2}),..., (x_{m},y_{m}) \right \},其中 y_{i} 为 x_{i} 的真实标记。

线性回归则试图学得一个线性模型尽可能准确地将预测 f(x_{i}) 去 逼近 y_{i} ,即:

f(x_{i})=\omega x_{i}+b,使得 f(x_{i})\simeq y_{i}

显然,既然是逼近,那么误差肯定是存在的。一个良好的线性回归模型的关键就是如何将 f(x_{i}) 与 y_{i} 之间的误差最小化!而该模型是由 \omega 和 b 确定的,那么问题回到 \omega 和 b 的确定:

回归任务中最常用的性能度量是均方误差,也称平方损失,因此上述 \omega 和 b 可以通过均方误差的最小化来计算得出,均方误差:

E(\omega ,b)=\sum_{i=1}^{m}\left ( y_{i}-\omega x_{i} -b \right )^{2}

基于均方误差最小化来进行模型求解的方法称为“最小二乘法”,而在线性回归任务中,最小二乘法就是希望学得一条直线,使得所有样本到该直线上的欧氏距离之和最小。

求解出 \omega 和 b 使得均方误差最小化的过程也称为线性回归模型的最小二乘“参数估计”(parameter estimation),换句话讲就是对均方误差线性方程求最小值,解出 \omega 和 b 。通过对 \omega 和 b 分别求偏导,并令偏导为0,即可解出 \omega 和 b ,从而确定对应的模型结果。

\omega =\frac{\sum_{i=1}^{m}\left ( y_{i} \left ( x_{i} -\bar{x}\right )\right )}{\sum_{i=1}^{m}x_{i}^{2}-\frac{1}{m}\left ( \sum_{i=1}^{m}x_{i} \right )}    ,    b=\frac{1}{m}\sum_{i=1}^{m}\left ( y_{i}-\omega x_{i} \right )    ,    其中  \bar{x}=\frac{1}{m}\sum_{i=1}^{m}x_{i}为 x 的均值

更一般的,样本由d维属性描述的情况,则为“多元线性回归”(multivariate linear regression)

f(x_{i})=\omega^{T} x_{i}+b,使得 f(x_{i})\simeq y_{i}

类似地,也是一样通过最小二乘法对 \omega 和 b 进行估计,为了方便讨论,我们尽量将模型中的各类数据以向量及矩阵形式表示:我们将 \omega 和 b 纳入向量形式 \hat{\omega }=(\omega ;b)其中 \hat{\omega } 是一个d+1维的向量并且将数据集D表示为一个m行,d+1列的矩阵X,其中每行代表一个样本。

X=\begin{pmatrix} x_{11} &x_{12} &\cdots &x_{1d} &1 \\ x_{21} &x_{22} &\cdots &x_{2d} &1 \\ \vdots &\vdots &\ddots &\vdots &\vdots \\ x_{m1} &x_{m1} &\cdots &x_{md} &1 \end{pmatrix}=\begin{pmatrix} x_{1}^{T} &1 \\ x_{2}^{T} &1 \\ \vdots & \vdots\\ x_{m}^{T} &1 \end{pmatrix}

同时也将\left ( y_{1}; y_{2};...; y_{m}\right )以向量y=\left ( y_{1}; y_{2};...; y_{m}\right )表示。

估其均方误差函数可定义为:E_{\hat{\omega }}=(y-X\hat{\omega })^{T}(y-X\hat{\omega }),其中E_{\hat{\omega }}为预测实值。将该公式展开,与上述一元线性回归求解过程的均方误差方程区别就是多元线性回归中每个样本的均方误差方程不再是仅有一个属性描述,而是d个。

对均方误差函数关于 \hat{\omega } 求导,并另导数为0,解出 \hat{\omega } ,这其中相对于一元的较为复杂,因为涉及矩阵求导,矩阵逆计算等。

矩阵解问题又涉及多解,单一解问题,后者即为结果,前者的话还需根据学习算法的归纳偏好决定。

我们即可让线性模型的预测值f(x)逼近真实标记y,当然也可以让线性模型的预测值f(x)通过联系函数g(·)来逼近不同情况下的目标

 

假设我们认为样本对应的输出标记是在指数尺度上变化的,那么我们可以令 lny=\omega^{T} x+b

即g(·)=ln(·),这是样本对应的输出标记在指数尺度上变化的特例,一般化来定义:y=g^{-1}(\omega^{T} x+b),其中g(·)为单调可微函数,这也就是“广义线性模型”(generalized linear model)

广义线性模型的参数估计通常通过加权最小二乘法或极大拟然法进行。

 

3.3对数几率回归

上述讨论了线性模型以及线性模型进行回归学习,但是如果要利用线性模型进行分类怎么办?

答案:分析分类任务的真实标记y与线性回归模型的预测值之间的联系,求出单调可微函数,建立广义线性模型进行求解。

考虑二分类问题,输出标记 y∈{0,1},则需要将线性回归模型产生的预测实值转换为0/1,因为g(·)必须为单调可微函数,单位阶跃函数不连续,故不可取的,因此另外考虑对数几率函数(logistic function)y=\frac{1}{1+e^{-z}}

将线性模型的预测实值带入z可得:y=\frac{1}{1+e^{-(\omega^{T}x+b)}}  , 进而可以变换为:ln \frac{y}{1-y}=\omega^{T}x+b

如果将y视为样本x作为正例的可能性,则1-y就是其作为反例的可能性。\frac{y}{1-y}是两者的比值,称为“几率”(odds),反映了x作为正例的相对可能性。由此可以看出,实际上我们是在用线性模型的预测实值去逼近真实标记的对数几率,估该模型又称为“对数几率回归”(log odds)

通过对数几率回归可以进行分类学习,该模型的确定同样是 \omega 和 b 的确定。

假设y为正例的可能性,1-y为反例的可能性,则可令 y=p(y=1|x),令 1-y=p(y=0|x)

我们可得:ln \frac{p\left ( y=1|x \right )}{p\left ( y=0|x \right )}=\omega ^{T}x+b

进而我们可推出:p(y=1|x) = \frac{e^{\omega ^{T}x+b}}{1+e^{\omega ^{T}x+b}}    ,    p(y=0|x) = \frac{1}{1+e^{\omega ^{T}x+b}}

在线性回归分析中,我们是通过均方误差最小化来求解出 \omega 和 b 的,

在对数几率回归这个分类学习中,为了能够让训练集中样本属于其真实标记的概率越大越好,我们可以应用极大似然法(maximum likelihood method),估计出 \omega 和 b ,从而达到这个目的。

对数几率回归模型最大化“对数似然”(log-likelihood)e(\omega,b ) = \sum_{i=1}^{m}lnp(y_{i}|x_{i} ;\omega ;b)

进一步基于梯度下降法(gradient descent method)牛顿法(Newton method)可求得最优解。

 

本篇文章未完,下一篇文章为《《机器学习》周志华读书笔记(三)线性模型(下)》,将从线性判别分析开始讲起

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值