岭回归、Lasso回归与稀疏性

Ridge Regression其实就是带了L2正则化的线性回归。Lasso Regression其实就是带了L1正则项的线性回归。

线性回归

给定数据集$D=(\boldsymbol x_1, y_1), (\boldsymbol x_2, y_2) \cdots (\boldsymbol x_m, y_m)$,其中 $\boldsymbol x_i=[x_i^{(1)}, x_i^{(2)} \cdots x_i^{(d)}]^T$ 表示一条样本数据有 $d$ 个属性,我们的目标是寻找 $d$ 维列向量 $\boldsymbol w$ 和常数 $b$,使得模型

所得的预测值与真实值 $y_i$ 尽可能接近。

我们统一用矩阵和向量表示,把常数 $b$ 放入权值向量 $\boldsymbol w$ 得到一个 $d+1$ 维的权值向量 $\boldsymbol{\hat w}=(\boldsymbol w; b)$,同时在每个样本实例中添加第 $d+1$ 个属性,置为 $1$,$\boldsymbol{\hat {x_i}}=(\boldsymbol x_i;1)$。将样本所有属性排列为矩阵可以得到:

令 $\boldsymbol y=(y_1, y_2\cdots y_m)^T$ ,我们最小化

令 $h(\boldsymbol{\hat w})=(\boldsymbol y-\boldsymbol X\boldsymbol{\hat {w}})^T(\boldsymbol y-\boldsymbol X\boldsymbol{\hat {w}})$,求它的最小值只需其对 $\boldsymbol{\hat w}$ 求导,导数值为 $0$ 时 $\boldsymbol{\hat w}$ 的取值即为所求。

最后我们令式(5)为0,此时的 $\boldsymbol{\hat {w}}$ 即为所求 $\boldsymbol w^*$

然而,如果$d>m$,即特征大于样本的话,矩阵$\boldsymbol X^T\boldsymbol X$将会不是满秩的,而这个解也没法算出来。或者更确切地说,将会有无穷多个解。也就是说,我们的数据不足以确定一个解,如果我们从所有可行解里随机选一个的话,很可能并不是真正好的解,总而言之,我们 overfitting 了

解决 overfitting 的常用方法是 regularization。

Ridge Regression

ridge regression就是在原始线性回归基础上,使用$L_{2}$范数正则化,具体为

解得:

直观地来看,添加这个 regularizer 会使得模型的解偏向于 norm 较小的 $w$ 。从凸优化的角度来说, 等价于如下问题:

其中 $C$ 是和 $\lambda$ 一一对应的是个常数。也就是说,我们通过限制 $w$ 的 norm 的大小实现了对模型空间的限制,从而在一定程度上(取决于$\lambda$ 的大小)避免了 overfitting 。不过 ridge regression 并不具有产生稀疏解的能力,得到的系数 $w$ 仍然需要数据中的所有特征才能计算预测结果,从计算量上来说并没有得到改观。

可以看到岭回归得到的估计只多了一个正则项$\lambda I$.这一项的存在使得$(X^T X+\lambda I)^{-1}$在数值计算上表现更加稳定。尤其是当多重共线性(Multicollinearity)情况发生,$X^T X$接近奇异时,岭回归还是能得到稳定的结果。另外,在岭回归中还可以通过观察岭迹来剔除多重共线性的变量。

岭回归中的“岭”是什么?

岭回归使用了单位矩阵乘以常量$\lambda$,我们观察其中的单位矩阵$I$,可以看到值I贯穿整个对角线,其余元素全是0,形象地,在0构成的平面上有一条1组成的“岭”,这就是岭回归中的“岭”的由来。

不过,特别是在像生物或者医学等通常需要和人交互的领域,稀疏的解除了计算量上的好处之外,更重要的是更具有“可解释性”。比如说,一个病如果依赖于 5 个变量的话,将会更易于医生理解、描述和总结规律,但是如果依赖于 5000 个变量的话,基本上就超出人肉可处理的范围了。

在这里引入稀疏性的方法是用 $L_1$ regularization 代替 $L_2$ regularization。

Lasso Regression

在原始的线性回归上加一个$L_1$正则化,就变成了Lasso回归,具体是:

LASSO 仍然是一个 convex optimization 问题,不过不再具有解析解。它的优良性质是能产生稀疏性,导致 $w$ 中许多项变成零。

为什么它能产生稀疏性呢?下面我们就先来看一个直观上的理解。

首先,和 ridge regression 类似,上面形式的 LASSO 问题也等价于如下形式:

也就是说,我们将模型空间限制在 $w$ 的一个$l_1 -ball$ 中。为了便于可视化,我们考虑2维的情况,在 $(w^1, w^2)$ 平面上可以画出目标函数的等高线,而约束条件则成为平面上半径为 $C$ 的一个 norm ball 。等高线与 norm ball 首次相交的地方就是最优解。如图所示:

可以看到,$l_1-ball$ 与 $l2-ball$ 的不同就在于它与等高线相交的地方大部分时候实在坐标轴上,而相交点就有 $w^1 = 0$ ,而更高维的时候除了坐标轴以外,还有很多边的轮廓也是既有很大的概率成为第一次相交的地方,又会产生稀疏性。

相比之下,$l_2-ball$ 就没有这样的性质,因为没有角,所以第一次相交的地方出现在具有稀疏性的位置的概率就变得非常小了。这就从直观上来解释了为什么 $l_1$ regularization 能产生稀疏性,而 $l_2$ regularization 不行的原因了。

更进一步了解稀疏性来源可移步参考文献1。

参考文献

[1]. Sparsity and Some Basics of L1 Regularization

持续技术分享,您的支持将鼓励我继续创作!