Loss function及其求解

\[\hat{\boldsymbol{\beta}}^{ridge} =\operatorname{arg\,max}\limits_\boldsymbol{\beta} \| \mathbf{y}-X\boldsymbol{\beta}\|_2^2 + \lambda \| \boldsymbol{\beta} \|_2^2\]

\(\mathbf{X}\)一行一个数据点。需要说明的是,由于ridge regression不是缩放不变的,因此有必要对输入做中心化,即\(x_{ij} \gets x_{ij} - \bar{\mathbf{x}}_j\),由此对截距的处理是估计\(\beta_0 = \bar{y} = \frac{1}{N}\sum_1^N y_i\),这样在开头那个公式中就不考虑截距了。

minimize loss function得到

\[\hat{\boldsymbol{\beta}}^{ridge} = (X^T X + \lambda I)^{-1} X^T\mathbf{y}\]

Ridge Regression和PCA的关系

下面的SVD解释是这一节的亮点:

\[X = UDV^T\]

对于least square,有

\[\begin{align*} X\hat{\boldsymbol{\beta}}^{ls} &= X(X^TX)^{-1}X^T\mathbf{y} \\ &=UU^T\mathbf{y} \end{align*}\]

对于ridge regression,有

\[\begin{align*} X\hat{\boldsymbol{\beta}}^{ridge} &= X(X^T X + \lambda I)^{-1} X^T\mathbf{y} \\ &=\sum\limits_{j=1}^p \mathbf{u}_j \frac{d_j^2}{d_j^2+\lambda}\mathbf{u}_j^T\mathbf{y} \end{align*}\]

其中\(d_j\)是\(X\)的奇异值,可以看到,由于\(\lambda > 0\),ridge regression相比least square,对小的奇异值给予大的惩罚,那小的奇异值意味着什么呢?

我们知道,样本协方差矩阵为\(S = X^TX/N\)(数据已做了中心化处理),把\(X\)的SVD带入,得

\[X^T X = V D^2 V^T\]

这是\(S\)的特征值分解(为什么呢?从定义出发就可以了。另外什么矩阵可以特征值分解也是我喜欢问的问题,答案是normal矩阵)。我们知道,根据PCA,\(\mathbf{z}_j = X\mathbf{v}_j = \mathbf{u}_j d_j\)(第二个等号是因为SVD分解)就是数据的主元(principal components),于是我们发现

\[\operatorname{Var}(\mathbf{z}_j) = d_j^2 / N\]

所以\(d_j\)小就是主元的variance小,ridge regression就是在这些投影方向上给予大的惩罚。进一步说,就相当于做了一次smooth的PCA。