24秋机器学习笔记-lec3

Last updated on September 27, 2024 8:29 PM

Softmax Regression

该模型用于处理多分类问题(multiclass classification)。

记号约定:

  • y{1,2,3,,K}y\in\{1,2,3, \cdots ,K\},代表在做 KK 分类,只是 index 而已,绝对大小并不重要,所以不可以使用 squared loss 来做
  • 有 K 个 classifier,fk(x)=wkTx+bkf_k(x) = w_k^Tx + b_kk[K]k\in [K]

每个 classifier 输出的是对相应类别的一个打分,如何归约到概率上?

Softmax:

P(y=kx)=exp(wkTx+bk)j[K]exp(wjTx+bj)P(y=k|x) = \frac{\exp(w_k^Tx + b_k )}{\sum_{j\in [K]}\exp(w_j^Tx + b_j)}

性质:

  1. It is a probability distribution, since k[K]P(y=kx)=1\displaystyle \sum_{k \in [K]} P(y=k|x) = 1,且 P(y=kx)0P(y=k|x)\ge 0(指数函数的性质)
  2. wkTx+bkwjTx+bj,jkw_k^Tx + b_k \gg w_j^Tx + b_j,\forall j\ne k,则 P(y=kx)1P(y=k|x) \approx 1,且 P(y=jx)0P(y=j|x) \approx 0
    指数函数的放大效应

考虑使用 MLE 来优化,写出 log-likelihood:

i[n]logexp(wyiTxi+byi)j[K]exp(wjTxi+bj)\sum_{i \in [n]} \log \frac{\exp(w_{y_i}^Tx_i + b_{y_i})}{\sum_{j \in [K]}\exp(w_j^T x_i + b_j)}

实际上,不一定要 kk 个线性分类器,其实可以用一整个神经网络,然后最后使用 softmax。

Logistic Regression 和 Softmax Regression 的区别与联系:

K=2K=2 的时候,假设 11 为正类,22 为负类,则

P(y=1x)=exp(w1Tx+>b1)exp(w1Tx+b1)+exp(w2Tx+b2)=11+exp((w2w1)Tx+(b2b1))let b=b1b2,w=w1w2,=11+exp(wTx+b)=σ(wTx+b)\begin{aligned} P(y=1|x) &= \displaystyle \frac{\exp(w_1^Tx + > b_1)}{\exp(w_1^Tx + b_1) + \exp(w_2^Tx + b_2)} \\ &= \frac{1}{1 + \exp((w_2-w_1)^Tx + (b_2-b_1))}\\ &\text{let }b = b_1-b_2,w= w_1-w_2,\\ &= \frac{1}{1+\exp(w^Tx+b)} = \sigma(w^Tx+b) \end{aligned}

等价于逻辑回归。

用最大似然估计解释线性回归

回归到了回归问题(逻辑回归和 softmax 回归都不是回归而是分类问题)。

注意到一开始推导线性回归的时候用的是 ERM,而非 MLE,现在考虑利用 MLE 来推导线性回归。

Gaussian Distribution

一维高斯分布:xN(μ,σ2)x \sim \mathcal{N}(\mu, \sigma^2),其中 μ\mu 为 mean(均值),σ2\sigma^2 为 variance(方差)

概率密度函数(PDF)为(需要记忆):

P(x)=12πσ2exp((xμ)22σ2)P(x) = \frac{1}{\sqrt{2\pi\sigma^2}}\exp\left( - \frac{(x-\mu)^2}{2 \sigma^2} \right)

是一个钟形曲线。优秀性质:[μ2σ,μ+2σ][\mu-2\sigma,\mu+2\sigma] 内,概率占 95%95\%

More on PRML 2.3。

中心极限定理。

正式推导

由中心极限定理,假设 y=wTx+b+εy = w^Tx + b + \varepsilon,其中 ε\varepsilon 为噪声项,εN(0,σ2)\varepsilon \sim \mathcal{N}(0, \sigma^2)

则在如上假设中,yy 的条件分布(概率密度函数)为 P(yx;w,b,σ2)=N(wTx+b,σ2)P(y|x;w,b,\sigma^2) = \mathcal{N}(w^Tx + b, \sigma^2)w,bw,b 为参数,σ\sigma 为超参数,用分号隔开)

最大化 log-likelihood:

i[n]log12πσ2exp((yi(wTxi+b))22σ2)=i[n][12log(2πσ2)12σ2(yi(wTxi+b))2]\begin{aligned} &\sum_{i \in [n]} \log \frac{1}{\sqrt{2\pi \sigma^2}}\exp\left( - \frac{(y_i - (w^Tx_i + b))^{2}}{2\sigma^{2}} \right) \\ =&\sum_{i \in [n]}\left[ -\frac{1}{2}\log (2\pi \sigma^{2}) - \frac{1}{2\sigma^{2}}\left( y_i - (w^T x_i + b) \right)^{2} \right] \\ \end{aligned}

只和 σ\sigma 有关的项都可以提出来,这就等价于优化

minw,b(yiwTxib)2\min_{w,b} (y_i - w^Tx_i - b)^2

Maximum A Posteriori (MAP) 最大后验框架推导岭回归

之前,我们将 w,bw,b 当成未知的固定参数。不过在贝叶斯学派的视角中,一切都是随机变量(不确定),the world is uncertain and even the parameters w,bw,b are random variables

之前的想法中,y=wTx+b+εy = w^Tx + b+ \varepsilon,只有 ε\varepsilon 是不确定的,但在贝叶斯学派中,w,bw,b 也是不确定的,会假设其有一个先验分布。

依旧令 W^=[wb]\hat{W} = \begin{bmatrix} w \\ b \\\end{bmatrix},假设其先验分布(prior dist.)为 W^N(0,σw2I)\hat{W}\sim \mathcal{N}(0, \sigma_w^2 I),其中 σw2IR(d+1)×(d+1)\sigma_w^2 I \in \mathbb{R}^{(d+1)\times (d+1)} 为协方差矩阵,假设其为对角阵(W^\hat{W} 的每一维独立)。

依旧假设 y=W^Tx^+ε,εN(0,σ2)y = \hat{W}^T \hat{x} + \varepsilon, \varepsilon \sim \mathcal{N}(0,\sigma^2),则

P(yx,W^)=N(W^Tx^,σ2)\begin{aligned} P(y|x,\hat{W}) = \mathcal{N}(\hat{W}^T\hat{x}, \sigma^2) \\ \end{aligned}

现在我们有一堆观测数据,希望求得一个 W^\hat{W} 的后验分布。

P(W^x,y)=P(yx,W^)P(W^x)P(yx)Bayes formulanote that P(W^x)=P(W^)and that P(yx) is unrelevant to W^, let it be Z=1Z(12πσ2)nexp(12σ2i[n](yiW^Txi^)2)(12πσw2)d+1exp(12σw2W^TW^)\begin{aligned} P(\hat{W} | x,y) &= \frac{P(y|x,\hat{W}) \cdot P(\hat{W}|x)}{P(y|x)} \qquad \text{Bayes formula}\\ & \text{note that }P(\hat{W}|x) = P(\hat{W})\\ & \text{and that }P(y|x)\text{ is unrelevant to } \hat{W}\text{, let it be }Z\\ &= \frac{1}{Z} \left( \frac{1}{\sqrt{2\pi \sigma^{2}}} \right)^n \exp\left( - \frac{1}{2 \sigma^{2}} \sum_{i \in [n]} (y_i - \hat{W}^T \hat{x_i})^{2} \right) \cdot \left( \frac{1}{\sqrt{2 \pi \sigma_w^2}} \right) ^{d+1} \cdot \exp\left( -\frac{1}{2 \sigma_w^2} \hat{W}^T \hat{W} \right) \end{aligned}

选择一个 mode,即其最大的时候 W^\hat{W} 取什么。所以忽略掉常数项,

maxW^(12σ2i[n](yiW^Txi^)212σw2W^2)    minw^(i[n](yiW^Txi^)2+λW^2)\begin{aligned} &\max_{\hat{W}} \left(-\frac{1}{2\sigma^{2}}\sum_{i \in [n]} (y_i - \hat{W}^T \hat{x_i})^2 - \frac{1}{2 \sigma_w^2} || \hat{W} ||^{2}\right) \\ &\iff\\ &\min_{\hat{w}} \left( \sum_{i \in [n]}(y_i - \hat{W}^T \hat{x_i})^{2} + \lambda ||\hat{W}||^2 \right) \end{aligned}

一开始对 W^\hat{W} 的先验假设和 L2-Norm 起到的是同样的作用,L2-Norm 项可以看作是 W^\hat{W} 偏移先验的惩罚。

Bias-Variance Decomposition

考虑在某训练集 DD 上训练后,在测试集上的误差是怎么来的。

记号约定;DD 为训练集 P(D)\sim P(D)xx 为样本,yy 为标签。

f(x;D)f(x;D) 为训练后,对 xx 的 prediction。

Then the error of xx (averaged over P(D)P(D)):

ED[(f(x;D)y)2]=ED[(f(x;D)fˉ(x)+fˉ(x)y)2]\mathbb{E}_D[(f(x;D) - y)^2] = \mathbb{E}_D\left[ \left( f(x;D) - \bar{f}(x) + \bar{f}(x) - y \right) ^{2} \right]

其中,fˉ(x)\bar f(x) 是指 ED[f(x;D)]\mathbb{E}_D[f(x;D)],即在 P(D)P(D) 上 sample 训练集 DD

ED[(f(x;D)y)2]=ED[(f(x;D)fˉ(x))2]+ED[(fˉ(x)y)2]+2ED[(f(x;D)fˉ(x))(fˉ(x)y)]\mathbb{E}_D[(f(x;D) - y)^{2}] = \mathbb{E}_D[(f(x;D) - \bar f(x))^{2}] + \mathbb{E}_D[(\bar f(x) - y)^2] + 2\mathbb{E}_D[(f(x;D) - \bar f(x))(\bar f(x) - y)]

注意到第二项与 DD 无关,其即为 (fˉ(x)y)2(\bar f(x) - y)^2

最后一项也等价于 2(fˉ(x)y)2ED[f(x;D)fˉ(x)]2(\bar f(x) - y)^2 \mathbb{E}_D[f(x;D) - \bar f(x)]。进一步观察到其实际上就是 00。(前半截就是 fˉ(x)\bar f(x) 的定义)

最终形式为

ED[(f(x;D)fˉ(x))2]+(fˉ(x)y)2\mathbb{E}_D[(f(x;D) - \bar f(x))^{2}] + (\bar f(x) - y)^2

考虑其意义。第一项为方差,第二项为偏差

  • variance:由于过拟合某个特定的 DD 产生的误差。
    解决方案:增加 DD 的大小。
  • bias:由于模型能力不足以拟合数据产生的误差(见了很多 DD 但还是偏离实际值)。
    比如说尝试用线性模型拟合一个二次函数型分布的数据,且每次 sample DD 的时候都只能 sample 两个点。
    解决方案:提升模型容量(capability 或者说 expressivity,粗略估计:参数数量,记作 #parameters)

这二者通常有一个 trade-off:简单模型->underfit->高 bias,而复杂模型->overfit->高 variance。当然,同时增大 DD 并增大模型,也可以二者得兼之,还可以加上一些其他的技巧如正则化等。

对 Bias-Variance Decom. 的小质疑

定义 f^(x):=f(x,D)\hat{f}(x):= f(x,|D|\to \infty),那么 fˉ\bar f 是否等价于 f^\hat{f}

考虑极端情况:fˉ\bar f 是在重复的小 DP(D)D \sim P(D) 上取平均;f^\hat{f} 在一个无限大的训练集上训练。这两种模型是截然不同的。

考虑 D=2|D| = 2(x,y){(1,1),(0,0),(1,1)}(x,y)\in \{(-1,1),(0,0),(1,1)\},且 P(D)P(D) 各有 13\frac{1}{3} 的概率在集合中取两个元素。

fˉ(x)=13(x+x+1)=13\bar f(x)=\frac{1}{3}(-x + x + 1) = \frac{1}{3},而 f^(x)=argminh2h2+(1h)2=23\hat{f}(x) = \arg\min_h 2h^2 + (1-h)^2 = \frac{2}{3},后者明显好于前者。

所以,f^\hat{f}fˉ\bar{f} 是不太一样的。而 Bias-Variance Decom. 并没有考虑 f^\hat{f} 的情况。在这个例子里,f^\hat{f}fˉ\bar{f},在某些其他情况下如随机森林,fˉ\bar{f} 会更优。

支持向量机(SVM)

等式约束下的优化问题

minxf(x)\min_x f(x),s. t. h(x)=0h(x)=0,其中 f,gf,g 都可微。

  1. x\forall x 在平面 h(x)=0h(x) = 0 上,有 h(x)\nabla h(x) 与平面正交。
    如果有切向分量,说明我们沿着切向走可以使得 h(x)>0h(x)>0,与 h(x)=0h(x)=0 矛盾。
  2. 对于一个局部最小值 xx^*,梯度 f(x)\nabla f(x^*) 也与平面垂直。
    若有切向分量,则沿着其反方向走,可以保证 h(x)=0h(x)=0 的约束不变,且 ff 可以继续降低。

一般而言,xx^* 为局部最小值的必要条件为:λ\exists \lambda 使得 f(x)+λh(x)=0\nabla f(x^*) + \lambda \nabla h(x^*) = 0,即这两个梯度共线;以及 h(x)=0h(x^*) = 0

不考虑 corner cases(事实上在实际中也少见):我们需要 xx^* 为 regular point。

引入拉格朗日方程

L(x,λ)=f(x)+λh(x)L(x,\lambda) = f(x) + \lambda h(x)

其中 λ\lambda 为拉格朗日乘子。

如果有多个约束,则

L(x,[λ1,,λn])=f(x)+i[n]λihi(x)L(x,[\lambda_1, \cdots ,\lambda_n]) = f(x) + \sum_{i \in [n]} \lambda_i h_i(x)

此时,xx^* 为局部最小值的必要条件可以写为:λ\exists \lambda 使得

{xL(x,λ)=0λL(x,λ)=0\begin{cases} \nabla_x L(x^*, \lambda) = 0 \\ \nabla_{\lambda} L(x^*, \lambda) = 0 \end{cases}

第一个式子等价于 f(x)+λh(x)=0\nabla f(x^*) + \lambda \nabla h(x^*) = 0,第二个等价于 h(x)=0h(x^*) = 0

无限制优化的时候,我们其实只需要 f(x)=0\nabla f(x^*) = 0,加上了约束之后,我们就利用拉格朗日乘子把约束放进方程里面。

同时,需要留意的是,如上为必要条件而非充分条件。

  • 从拉格朗日条件解出来的解可能不是局部最小解
  • 但是,所有的局部最小解肯定在我们解出来的 candidate set 里面。
  • 对于凸函数,局部最小解即为全局最小解。

带不等式约束的优化问题

问题描述:minxf(x)\min_x f(x) s. t. g(x)0g(x)\le 0

  1. 同样地,对于任意在 g(x)=0g(x)=0 平面上的 xx,也一定有 $\nabla g(x) $ 垂直于平面。
  2. 对于一个局部最优解 xx^*
    • 若其在平面上,则 f(x)-\nabla f(x^*) 的方向必须与 g(x)\nabla g(x^*) 相同。

24秋机器学习笔记-lec3
https://blog.imyangty.com/note-ml2024fall/lec3/
Author
YangTY
Posted on
September 25, 2024
Licensed under