Lecture 3:线性模型
Chinese-language Computer Science 408 note: Lecture 3:线性模型. Original source available where applicable.
On this page
This note is currently available in Chinese. The original wording, formulas and diagrams are preserved to avoid an unverified technical translation.
描述:本节从最小二乘线性回归出发,推导多元线性模型,进一步整理广义线性模型、对数几率回归、线性判别分析、多分类拆解和类别不平衡处理。
3.1 为什么需要线性模型
- 人类对线性关系的理解和分析较直观,线性模型也具有计算简单、可解释性较强等优点。
- 线性模型试图通过属性的线性组合进行预测:
$$ f(\boldsymbol{x}) =\boldsymbol{w}^{\mathrm T}\boldsymbol{x}+b. $$
- 在线性回归中,模型用直线、平面或超平面拟合连续目标。
- 在线性分类中,模型可用超平面把不同类别分开。
- 线性模型只能直接表达线性关系,但可以通过特征变换、核方法或联系函数扩展其表达能力。
3.2 离散属性的数值化
线性模型擅长处理数值属性,离散属性需先编码。
3.2.1 有序属性
- 若离散取值具有明确顺序,可映射为有序数值。
- 例如“低、中、高”可映射为 $0,1,2$,但数值间距是否等距仍需结合任务判断。
3.2.2 无序属性
- 若取值之间没有自然顺序,不能粗暴编码成 $0,1,2$,否则会引入虚假的大小关系。
- 对含 $k$ 个取值的无序属性,可转成 $k$ 维 0-1 向量,即独热编码。
- 源资料将离散属性处理概括为:有序则连续化,无序则转为 $k$ 维向量。
3.3 一元线性回归
3.3.1 模型与目标函数
给定数据
$$ D={(x_i,y_i)}_{i=1}^{m}, $$
寻找
$$ f(x_i)=wx_i+b $$
使预测值尽量接近真实值。采用平方损失时,最小二乘目标为
$$ (w^,b^) =\mathop{\arg\min}{w,b} \sum{i=1}^{m} \left(f(x_i)-y_i\right)^2 $$
即
$$ (w^,b^) =\mathop{\arg\min}{w,b} \sum{i=1}^{m} \left(y_i-wx_i-b\right)^2. $$
记
$$ E_{(w,b)} =\sum_{i=1}^{m}(y_i-wx_i-b)^2. $$
3.3.2 求偏导
分别对 $w$ 和 $b$ 求偏导:
$$ \frac{\partial E_{(w,b)}}{\partial w} =2\left( w\sum_{i=1}^{m}x_i^2 -\sum_{i=1}^{m}(y_i-b)x_i \right), $$
$$ \frac{\partial E_{(w,b)}}{\partial b} =2\left( mb-\sum_{i=1}^{m}(y_i-wx_i) \right). $$
令两式为 $0$ 可得闭式解:
$$ w =\frac{\sum_{i=1}^{m}y_i(x_i-\bar x)} {\sum_{i=1}^{m}x_i^2-\frac{1}{m} \left(\sum_{i=1}^{m}x_i\right)^2}, $$
$$ b =\frac{1}{m}\sum_{i=1}^{m}(y_i-wx_i) =\bar y-w\bar x. $$
其中
$$ \bar x=\frac{1}{m}\sum_{i=1}^{m}x_i, \qquad \bar y=\frac{1}{m}\sum_{i=1}^{m}y_i. $$
等价地,
$$ w =\frac{\sum_{i=1}^{m}(x_i-\bar x)(y_i-\bar y)} {\sum_{i=1}^{m}(x_i-\bar x)^2}. $$
- 令导数为 $0$ 是为了寻找驻点。平方误差关于 $w,b$ 是凸二次函数;在非退化条件下,该驻点就是全局最小点。
- 线性回归目标没有有限最大值,因此求得的有限驻点对应最小值而非最大值。
3.4 多元线性回归
3.4.1 向量形式
多元表示每个输入含多个属性:
$$ \boldsymbol{x}i =(x{i1},x_{i2},\ldots,x_{id})^\mathrm T, \qquad y_i\in\mathbb R. $$
模型为
$$ f(\boldsymbol{x}_i) =\boldsymbol{w}^{\mathrm T}\boldsymbol{x}_i+b. $$
把偏置吸收到参数中:
$$ \tilde{\boldsymbol{w}}
\begin{pmatrix} \boldsymbol{w}\ b \end{pmatrix}, \qquad \hat{\boldsymbol{x}}_i
\begin{pmatrix} \boldsymbol{x}_i\ 1 \end{pmatrix}. $$
构造设计矩阵与目标向量:
$$ \boldsymbol{X}
\begin{pmatrix} \boldsymbol{x}_1^\mathrm T & 1\ \boldsymbol{x}_2^\mathrm T & 1\ \vdots & \vdots\ \boldsymbol{x}_m^\mathrm T & 1 \end{pmatrix}, \qquad \boldsymbol{y} =(y_1,y_2,\ldots,y_m)^\mathrm T. $$
3.4.2 最小二乘解
目标函数为
$$ \tilde{\boldsymbol{w}}^* =\mathop{\arg\min}_{\tilde{\boldsymbol{w}}} (\boldsymbol{y}-\boldsymbol{X}\tilde{\boldsymbol{w}})^\mathrm T (\boldsymbol{y}-\boldsymbol{X}\tilde{\boldsymbol{w}}). $$
记
$$ E_{\tilde{\boldsymbol{w}}} =(\boldsymbol{y}-\boldsymbol{X}\tilde{\boldsymbol{w}})^\mathrm T (\boldsymbol{y}-\boldsymbol{X}\tilde{\boldsymbol{w}}), $$
则
$$ \frac{\partial E_{\tilde{\boldsymbol{w}}}} {\partial\tilde{\boldsymbol{w}}} =2\boldsymbol{X}^{\mathrm T} (\boldsymbol{X}\tilde{\boldsymbol{w}}-\boldsymbol{y}). $$
令梯度为 $0$,得到正规方程
$$ \boldsymbol{X}^{\mathrm T}\boldsymbol{X} \tilde{\boldsymbol{w}} =\boldsymbol{X}^{\mathrm T}\boldsymbol{y}. $$
- 若 $\boldsymbol{X}^{\mathrm T}\boldsymbol{X}$ 满秩且正定,则
$$ \tilde{\boldsymbol{w}}^*
(\boldsymbol{X}^{\mathrm T}\boldsymbol{X})^{-1} \boldsymbol{X}^{\mathrm T}\boldsymbol{y}. $$
- 若 $\boldsymbol{X}^{\mathrm T}\boldsymbol{X}$ 不满秩,正规方程可能存在多个解,需要伪逆、正则化或其他约束选出合适解。
- 实际数值计算通常不直接显式求逆,可使用 QR 分解、奇异值分解或稳定的线性方程求解方法。
3.5 正则化在线性回归中的作用
- 当特征高度相关、样本数不足或设计矩阵不满秩时,普通最小二乘解可能不唯一或对噪声极敏感。
- 加入正则化可限制参数,改善可解性和泛化性能。
- 典型的 $L_2$ 正则化形式为
$$ \min_{\tilde{\boldsymbol{w}}} |\boldsymbol{y}-\boldsymbol{X}\tilde{\boldsymbol{w}}|_2^2 +\lambda|\boldsymbol{w}|_2^2. $$
- 此处通常不惩罚偏置 $b$。$\lambda$ 越大,参数收缩越强,但过大也会导致欠拟合。
3.6 广义线性模型
- 普通线性回归令预测值直接逼近 $y$:
$$ y\approx\boldsymbol{w}^{\mathrm T}\boldsymbol{x}+b. $$
- 广义线性模型通常假设响应变量的条件分布属于指数族,并用联系函数 $g$ 把条件均值或相应分布参数与线性预测量联系起来。令
$$ \mu(\boldsymbol{x}) =\mathbb E[Y\mid X=\boldsymbol{x}], \qquad g!\left(\mu(\boldsymbol{x})\right) =\boldsymbol{w}^{\mathrm T}\boldsymbol{x}+b. $$
因此
$$ \mu(\boldsymbol{x}) =g^{-1} \left(\boldsymbol{w}^{\mathrm T}\boldsymbol{x}+b\right). $$
例如采用对数链接
$$ g(\mu)=\ln\mu, $$
则条件均值满足
$$ \ln\mu(\boldsymbol{x}) =\boldsymbol{w}^{\mathrm T}\boldsymbol{x}+b, \qquad \mu(\boldsymbol{x})=\exp \left(\boldsymbol{w}^{\mathrm T}\boldsymbol{x}+b\right), $$
这就是源资料图示所表达的对数线性关系。观测值 $y$ 仍是随机变量的一次实现,不能把它无噪声地恒等于该条件均值。
3.7 对数几率回归
3.7.1 从阶跃函数到对数几率函数
- 二分类期望输出是离散的 $0$ 或 $1$,而线性模型输出实数
$$ z=\boldsymbol{w}^{\mathrm T}\boldsymbol{x}+b. $$
- 理想单位阶跃函数能把实数变成类别,但它在阈值处不连续、不可微,不利于优化。
- 对数几率函数使用平滑、单调、任意阶可导的 Sigmoid 函数替代阶跃函数:
$$ y =\frac{1}{1+e^{-z}} =\frac{1} {1+e^{-(\boldsymbol{w}^{\mathrm T}\boldsymbol{x}+b)}}. $$
- 将上式变形:
$$ \ln\frac{y}{1-y} =\boldsymbol{w}^{\mathrm T}\boldsymbol{x}+b. $$
左侧称为对数几率(log odds,亦称 logit),表示样本为正例的相对可能性。
3.7.2 性质
- 虽然名称含“回归”,对数几率回归实际是分类学习方法。
- 它直接对分类可能性建模,可输出类别的近似概率。
- 无需事先假定特征服从某个特定概率分布。
- 目标函数具有良好的可导、凸优化性质,可使用梯度下降、牛顿法等数值优化算法。
- 若真实分类边界不是线性的,未经特征变换的对率回归效果可能受限。
3.7.3 极大似然求解
把 $y$ 看作后验概率估计 $p(y=1\mid\boldsymbol{x})$,则
$$ \ln \frac{p(y=1\mid\boldsymbol{x})} {p(y=0\mid\boldsymbol{x})} =\boldsymbol{w}^{\mathrm T}\boldsymbol{x}+b. $$
令
$$ \boldsymbol{\beta}
\begin{pmatrix} \boldsymbol{w}\ b \end{pmatrix}, \qquad \hat{\boldsymbol{x}}
\begin{pmatrix} \boldsymbol{x}\ 1 \end{pmatrix}, $$
则
$$ p_1(\hat{\boldsymbol{x}};\boldsymbol{\beta}) =p(y=1\mid\hat{\boldsymbol{x}};\boldsymbol{\beta}) =\frac{e^{\boldsymbol{\beta}^{\mathrm T}\hat{\boldsymbol{x}}}} {1+e^{\boldsymbol{\beta}^{\mathrm T}\hat{\boldsymbol{x}}}}, $$
$$ p_0(\hat{\boldsymbol{x}};\boldsymbol{\beta}) =p(y=0\mid\hat{\boldsymbol{x}};\boldsymbol{\beta}) =\frac{1} {1+e^{\boldsymbol{\beta}^{\mathrm T}\hat{\boldsymbol{x}}}}. $$
单个样本的似然可写为
$$ p(y_i\mid\hat{\boldsymbol{x}}_i;\boldsymbol{\beta})
y_i p_1(\hat{\boldsymbol{x}}_i;\boldsymbol{\beta}) +(1-y_i)p_0(\hat{\boldsymbol{x}}_i;\boldsymbol{\beta}). $$
最大化对数似然
$$ \ell(\boldsymbol{\beta}) =\sum_{i=1}^{m} \ln p(y_i\mid\hat{\boldsymbol{x}}_i;\boldsymbol{\beta}) $$
等价于最小化负对数似然
$$ \sum_{i=1}^{m} \left[ -y_i\boldsymbol{\beta}^{\mathrm T}\hat{\boldsymbol{x}}_i +\ln \left(1+e^{\boldsymbol{\beta}^{\mathrm T}\hat{\boldsymbol{x}}_i}\right) \right]. $$
3.8 线性判别分析
3.8.1 核心思想
- 线性判别分析(Linear Discriminant Analysis,LDA)是一种经典线性学习方法。
- 它把样本投影到一条直线上,使同类样本投影尽可能接近、异类样本投影尽可能远离。
- 对新样本使用同一投影方向,再根据投影位置判断类别。
3.8.2 二分类目标
给定两类样本集合 $X_0,X_1$,均值向量为 $\boldsymbol{\mu}_0,\boldsymbol{\mu}_1$。
类内散度矩阵为
$$ \boldsymbol{S}_w =\boldsymbol{\Sigma}_0+\boldsymbol{\Sigma}_1 $$
其中
$$ \boldsymbol{\Sigma}0 =\sum{\boldsymbol{x}\in X_0} (\boldsymbol{x}-\boldsymbol{\mu}_0) (\boldsymbol{x}-\boldsymbol{\mu}_0)^\mathrm T, $$
$$ \boldsymbol{\Sigma}1 =\sum{\boldsymbol{x}\in X_1} (\boldsymbol{x}-\boldsymbol{\mu}_1) (\boldsymbol{x}-\boldsymbol{\mu}_1)^\mathrm T. $$
类间散度矩阵为
$$ \boldsymbol{S}_b
(\boldsymbol{\mu}_0-\boldsymbol{\mu}_1) (\boldsymbol{\mu}_0-\boldsymbol{\mu}_1)^\mathrm T. $$
在投影方向 $\boldsymbol{w}$ 上,两类中心距离平方为
$$ \left| \boldsymbol{w}^{\mathrm T}\boldsymbol{\mu}_0 -\boldsymbol{w}^{\mathrm T}\boldsymbol{\mu}_1 \right|_2^2, $$
类内散度为
$$ \boldsymbol{w}^{\mathrm T} \boldsymbol{S}_w \boldsymbol{w}. $$
因此最大化广义瑞利商
$$ J(\boldsymbol{w})
\frac{\boldsymbol{w}^{\mathrm T} \boldsymbol{S}_b \boldsymbol{w}} {\boldsymbol{w}^{\mathrm T} \boldsymbol{S}_w \boldsymbol{w}}. $$
令
$$ \boldsymbol{w}^{\mathrm T} \boldsymbol{S}_w \boldsymbol{w}=1, $$
可转为带约束优化,并得到广义特征值问题
$$ \boldsymbol{S}_b\boldsymbol{w} =\lambda \boldsymbol{S}_w\boldsymbol{w}. $$
由于 $\boldsymbol{S}_b$ 的结构,可取
$$ \boldsymbol{w} =\boldsymbol{S}_w^{-1} (\boldsymbol{\mu}_0-\boldsymbol{\mu}_1). $$
- $\boldsymbol{w}$ 的非零缩放不改变投影方向。
- 若 $\boldsymbol{S}_w$ 奇异,实践中可采用正则化或奇异值分解求伪逆。
3.9 LDA 的多分类推广
假设有 $N$ 个类别,全集均值为 $\boldsymbol{\mu}$,第 $i$ 类样本数为 $m_i$,均值为 $\boldsymbol{\mu}_i$。
全局散度矩阵:
$$ \boldsymbol{S}_t =\boldsymbol{S}_b+\boldsymbol{S}w =\sum{i=1}^{m} (\boldsymbol{x}_i-\boldsymbol{\mu}) (\boldsymbol{x}_i-\boldsymbol{\mu})^\mathrm T. $$
类内散度矩阵:
$$ \boldsymbol{S}w =\sum{i=1}^{N}\boldsymbol{S}_{w_i}, $$
$$ \boldsymbol{S}{w_i} =\sum{\boldsymbol{x}\in X_i} (\boldsymbol{x}-\boldsymbol{\mu}_i) (\boldsymbol{x}-\boldsymbol{\mu}_i)^\mathrm T. $$
类间散度矩阵:
$$ \boldsymbol{S}_b =\boldsymbol{S}_t-\boldsymbol{S}w =\sum{i=1}^{N} m_i(\boldsymbol{\mu}_i-\boldsymbol{\mu}) (\boldsymbol{\mu}_i-\boldsymbol{\mu})^\mathrm T. $$
一种标准的多分类 LDA 目标是
$$ \max_{\boldsymbol{W}} \operatorname{tr} \left[ \left(\boldsymbol{W}^{\mathrm T}\boldsymbol{S}_w\boldsymbol{W}\right)^{-1} \boldsymbol{W}^{\mathrm T}\boldsymbol{S}_b\boldsymbol{W} \right]. $$
等价地,可在约束
$$ \boldsymbol{W}^{\mathrm T}\boldsymbol{S}_w\boldsymbol{W} =\boldsymbol{I} $$
下最大化 $\operatorname{tr}(\boldsymbol{W}^{\mathrm T}\boldsymbol{S}_b\boldsymbol{W})$。各投影方向分别满足广义特征值方程
$$ \boldsymbol{S}_b\boldsymbol{w}_j =\lambda_j \boldsymbol{S}_w\boldsymbol{w}_j. $$
- $\boldsymbol{W}$ 可由最大的 $d'$ 个非零广义特征值对应的特征向量组成;$\boldsymbol{S}_w$ 奇异时需用广义逆、降维或正则化等处理。
- 降维后的维数满足 $d'\leq N-1$。
- 分子迹与分母迹之比属于 trace-ratio 目标,一般不能不加约束地直接等同于给整个 $\boldsymbol W$ 一个公共 $\lambda$ 的上述特征值问题;多分类 LDA 的不同目标应分别说明。
3.10 多分类任务的拆解
不能直接处理多分类的二分类学习器,可通过拆解法构造多分类器。
3.10.1 一对一
- OvO(One-vs-One)为每两个类别训练一个二分类器。
- $N$ 个类别需要
$$ \frac{N(N-1)}{2} $$
个分类器。
- 预测时由各二分类器投票或聚合得分。
3.10.2 一对其余
- OvR(One-vs-Rest)每次把一个类别当正类,其余类别合并为反类。
- $N$ 个类别需要 $N$ 个分类器。
- 预测时通常选取得分最高的类别。
| 方法 | 分类器数量 | 单个训练任务 | 主要特点 |
|---|---|---|---|
| OvO | $N(N-1)/2$ | 两类之间 | 分类器多,但每个任务较小 |
| OvR | $N$ | 一类对其余类 | 分类器少,但类别可能不平衡 |
3.11 类别不平衡
- 类别不平衡表示不同类别的样本比例相差很大,少数类往往更重要。
- 只有当少数类被忽略会造成重要损失时,才需要专门处理;不能只看到数量不等就机械重采样。
3.11.1 阈值移动
若模型输出正类后验概率估计 $y$,普通规则为
$$ \frac{y}{1-y}>1 $$
时预测为正类。
若训练集中正类和反类样本数分别为 $m^+$、$m^-$,可按源资料图示把阈值改为
$$ \frac{y}{1-y}> \frac{m^+}{m^-}. $$
等价地对几率进行再缩放:
$$ \frac{y'}{1-y'}
\frac{y}{1-y} \times \frac{m^-}{m^+}. $$
然后仍以
$$ \frac{y'}{1-y'}>1 $$
作为正类判定条件。
- 该方法依赖对真实类别比例的估计,而真实先验比例往往难以精确获得。
3.11.2 重采样
- 过采样增加少数类样本,典型方法包括 SMOTE。
- 欠采样减少多数类样本,源资料举例为 EasyEnsemble。
- 过采样可能放大噪声,欠采样可能丢失有用信息,应在验证集上比较。
- 除重采样外,还可使用代价敏感学习和阈值移动。
3.12 易错点
- 无序类别不能直接按 $0,1,2$ 编码,否则会人为制造顺序和距离。
- 最小二乘解来自平方误差的凸优化;不能只说“导数为零所以一定最小”,还要结合目标函数性质。
- 直接计算 $(\boldsymbol{X}^{\mathrm T}\boldsymbol{X})^{-1}$ 可能数值不稳定,公式推导与工程求解方法要区分。
- 广义线性模型中的联系函数 $g$ 连接的是目标分布参数与线性预测量;$g^{-1}$ 才把线性预测量变回目标尺度。
- 对数几率回归是分类算法,不是连续值回归;其输出可解释为正类概率估计。
- Sigmoid 输出的是概率形式,但分类边界在原始特征空间仍是线性的,除非先做非线性特征变换。
- LDA 与对率回归都可得到线性分类边界,但目标不同:LDA 最大化类间分离并压缩类内散度,对率回归最大化条件似然。
- 二分类 LDA 的投影方向可任意非零缩放;真正重要的是方向而不是向量长度。
- OvO 需要 $N(N-1)/2$ 个分类器,OvR 只需 $N$ 个,但 OvR 的单个任务更容易出现类别不平衡。
- 阈值移动公式中 $m^+$、$m^-$ 的位置不能颠倒:原始几率乘 $m^-/m^+$ 后再与 $1$ 比较。
相关知识
- 科目导航:复试常考科目导航
- 阅读顺序:上一篇:模型评估和选择 · 下一篇:决策树
- 关联专题:逻辑回归与向量化
3.13 本节复盘
- 线性模型以 $\boldsymbol{w}^{\mathrm T}\boldsymbol{x}+b$ 表示属性的线性组合,可用于回归或构造线性分类边界。
- 有序离散属性可数值化,无序属性应使用向量编码,避免制造虚假顺序。
- 一元线性回归通过最小化平方误差求 $w,b$;多元情形得到正规方程 $\boldsymbol{X}^{\mathrm T}\boldsymbol{X}\tilde{\boldsymbol{w}}=\boldsymbol{X}^{\mathrm T}\boldsymbol{y}$。
- 设计矩阵不满秩时可能有多解,可使用伪逆或正则化。
- 广义线性模型通过联系函数把线性预测量与目标联系起来;对数几率回归用 Sigmoid 输出正类概率并通过极大似然求解。
- LDA 选择使类内投影紧凑、类间投影分离的方向,二分类解与 $\boldsymbol{S}_w^{-1}(\boldsymbol{\mu}_0-\boldsymbol{\mu}_1)$ 同方向。
- 多分类 LDA 的降维维数不超过类别数减 $1$;一般多分类还可使用 OvO 或 OvR 拆解。
- 类别不平衡可通过过采样、欠采样、阈值移动和代价敏感方法处理,具体选择取决于少数类的重要性和数据分布。