Note of The Element of Statistical Learning
28 Apr 2014 CommentsThis blog is always a work in progress
公式解析
注意:遵从书里的规则,下面非粗体的变量既用于表示 scalar,也用于表示 vector
(2.12) -> (2.13)
(2.26)
下面我用 $\varepsilon$ 表示针对一个样本,粗体的 $\boldsymbol{\varepsilon}$ 表示针对所有样本,所以是个 nx1 的向量。
(2.26) 下面的 $\hat{y}_0 = x_0^T \hat{\beta}$ 等价于 $\hat{y}_0 = x_0^T \beta + \sum_{i=1}^{N} l_i(x_0) \boldsymbol{\varepsilon}_i$ where $l_i(x_0)$ is the ith element of $\b{X}(\b{X}^T\b{X})^{-1}x_0$
后面那个 $\hat{y}_0$ 用 matrix 表示就是 $\hat{y}_0 = x_0^T \beta + (\b{X}(\b{X}^T\b{X})^{-1}x_0)^T \boldsymbol{\varepsilon}$
对 $Y = X^T \beta + \varepsilon$ 应用 least square 即 $(\b{X}\hat{\beta} - \b{X}\beta - \boldsymbol{\varepsilon})^T(\b{X}\hat{\beta} - \b{X}\beta - \boldsymbol{\varepsilon})$,展开求偏导,可得 $(\hat{\beta} - \beta) = (\b{X}^T \b{X})^{-1} \b{X}^T \boldsymbol{\varepsilon}$,注意到 $\b{X}^T\b{X}$ 是 symmetric matrix,所以 $(\b{X}^T\b{X})^{-1} = ((\b{X}^T\b{X})^{-1})^T$,则有 $(\hat{\beta} - \beta) = (\b{X}(\b{X}^T\b{X})^{-1})^T \boldsymbol{\varepsilon}$,等式两边同时于 $x_0$ 做内积,很容易就推出上面的式子。
(2.25) and (2.27)
公式 (2.25) 和 (2.27) 都是计算 MSE 的,不同的是,(2.25) 对应的模型是个 determinstic function $Y = f(X)$,而 (2.27) 对应的是 $Y = f(X) + \varepsilon, \; \varepsilon \sim N(0, \delta^2)$,所以是个 non-determinstic function。这也造成了 (2.25) 和 (2.27) 不同,对于 determinstic function,$MSE(x_0) = E_{\mathcal{T}}(y_0 - \hat{y}_0)^2$,而对于 non-determinstic function 就要外面再套一个 $E_{y_0 | x_0}$ 变成 $E_{y_0 | x_0}E_{\mathcal{T}}(y_0 - \hat{y}_0)^2$。 |
上面公式中 $E_{\mathcal{T}}(y_0 - \hat{y}_0)^2$ 变化的是 $\hat{y}_0$,对于不同的 $\mathcal{T}$,$\hat{y}_0$ 是不同的,对于给定的一个 $\mathcal{T}$,$\hat{y}_0$ 是确定的。
-
(2.25) 的推导的 trick 是
-
(2.27) 的 trick 要多一点,为了方便,我用 $E$ 代替 $E_{y_0 x_0}E_{\mathcal{T}}$ 因为 $f(x_0)$ 是 determinstic 的,所以
所以 $EPE(x_0) = E(y_0 - f(x_0))^2 + E(f(x_0) - \hat{y}_0))^2$,对后面一项再应用 (2.25) 推导的 trick,就得到了
根据上面一小节关于 (2.26) 中给出的 $\hat{y}_0$ 的公式可知 $E(\hat{y}_0) = x_0^T \beta$,所以 $Bias(\hat{y}_0) = 0$。
$Var(\hat{y}_0) = \delta^2 E(x_0^T(\b{X}^T \b{X})^{-1}x_0)$ 是这么推导的
令 $\b{v} = (\b{X}(\b{X}^T\b{X})^{-1}x_0)$
另外意外想到的一个公式是 $tr(\b{v}\b{v}^T) = \b{v}^T\b{v}$
(2.28)
在推导 (2.28) 前先明确下面的公式 (只要展开即可证明)
根据上面两个公式也可得到 $x^T A x = tr(A (xx^T))$
为了方便,下面的公式里就不用 $x_0$ 了,直接用 $x$
(3.4)
(3.4) 中给出了 Hessian matrix,目的是为了说明 RSS 是个 strictly convex function,因为对于 strictly convex function 其对应的 hessian matrix 是 pd 的。这样通过一阶导求出的结果就是 global mininum。
关于 $\b{X}^T\b{X}$ 的正定性很容易证明,$x^T\b{X}^T\b{X}x = (\b{X}x)^T (\b{X}x) \geq 0$,所以 $\b{X}^T\b{X}$ 一定是 psd 的,如果 $\b{X}$ 是 full column rank 的,那对于所有非 0 的 $x$,$\b{X}x$ 就不可能是 0 (因为 $\b{X}x = \sum_{i} \b{X}_i x_i$,其中 $\b{X}_i$ 表示第 $i$ 列),则 $\b{X}^T\b{X}$ 就是 pd 的。
(3.8)
首先先对 (3.6) 做个变形
基于这个的 $\hat{\beta}$ 表示,covariance matrix 可以表示为
注意 $Var(\hat{\beta})$ 是一个 matrix,而不是一个 scalar,所以是等于 $E((\hat{\beta} - \beta)(\hat{\beta} - \beta)^T)$,而不是 $E((\hat{\beta} - \beta)^T(\hat{\beta} - \beta))$
(3.8) 下面的 $\hat{\delta}^2$
这个公式中 $N - p - 1$ 是 degree of freedom,根据这篇文章的介绍,the degrees of freedom for an estimate is equal to the number of values minus the number of parameters estimated en route to the estimate in question,这里估计 $\hat{\delta}^2$ 时用到了 $\hat{y}_i$,而在估计 $\hat{y}_i$ 时用到了$\beta$,这是个大小为 $p + 1$ 的向量,所以 $\hat{\delta}^2$ 的 DOF 是 $N - p - 1$
(3.10)
为什么 $\hat{\beta}$ 是正态分布呢?原因是这样
-
首先根据 Mutually independent normal random variables are jointly normal,$y$ 是 multivariate normal random vector
-
由于 $\hat{\beta} = (\b{X}^T\b{X})^{-1} \b{X}^T y$,所以 $\hat{\beta}$ 可以看成是 $y$ 的一个 linear transformation (可以把 $(\b{X}^T\b{X})^{-1} \b{X}^T)$ 整体看成一个 matrix),根据这篇文章中给出的定理,$\hat{\beta}$ 服从 multivariate normal distribution,同时
(3.11)
关于为什么 $\frac{(N-p-1)\hat{\delta}^2}{\delta^2}$ 符合 $\mathcal{X}_{N-p-1}^2$ 分布可以参考 goodness of fit,regression analysis 的情况和 categorical data 的公式是不一样的。
(3.12)
下面论述的正确性有待验证,貌似是错的,参考 wiki
关于 t-distribution 和 normal distribution,这里简单说一下,如果给定 $X \sim N(\mu, \delta^2)$,我 sample N 次,得到 $X_1, …, X_n$,令 $\bar{X} = \frac{1}{n}\sum_i X_i$,如果 $\delta$ 已知,则 $\frac{X - \bar{X}}{\delta} \sim N(0, 1)$,因为 $E(X - \bar{X}) = E(X) - E(\bar{X}) = 0$,如果用 standard error 来作为 standard deviation 的 estimate 则 $\frac{X - \bar{X}}{s} \sim t_{N - 1}$,这里的 $N-1$ 为 $s$ 的 degree of freedom。
假设检验就是假设某个事实成立,然后根据我实际得到的一些实验值以及这些实验值 (或者做某种变换后的得到的值) 的分布,看取到这些值可能性大不大,如果大就假设就成立,否则假设不成立。比如这里我假设 $\beta_i$ 应该是 0,而我实际得到的值是 $\hat{\beta}_i$,那我就根据这个实际得到的值去验证 $\beta_i = 0$ 是否合理,为此我们基于这两个值构造了一个 z-score ($\frac{\hat{\beta}_i - \beta_i}{\hat{\delta}\sqrt{v_j}} = \frac{\hat{\beta}_i}{\hat{\delta}\sqrt{v_j}}$),并且知道这个 z-score 服从 t distribution,然后就看在这个 t distribution 下取这个 z-score 的可能性有多大来决定假设是否成立。同理,比如你假设一个 dice 是 fair 的,然后你扔了 N 次,统计一下每一面出现的频次,然后根据这些你实际得到的值和你期望的值构建一个 chi-square 值,然后根据 chi-square distribution,看取这个 chi-square 值的概率大不大决定你是否接受 dice 是 fair 的假设。
(3.13)
参考 http://en.wikipedia.org/wiki/F-test 和 http://en.wikipedia.org/wiki/F-distribution
(3.44)
(3.44) 下面的一段话中说加了 $\lambda \b{I}$ 使得这个问题变得 nonsingular,原因是这样的,对于任意矩阵 $M$ (假设它的所有 eigenvalue 都是实数,复数的我也不懂,正好在我们这里 $\b{A}^T\b{A}$ 是 symmetric matrix,因此它的 eigenvalue 必然是实数),假设 $\alpha$ 是它的 eigenvalue,则有 $\b{M}x = \alpha x$,则对于 $\b{M} + \lambda \b{I}$ 有
也就是说如果 $\alpha$ 是 $\b{M}$ 的 eigenvalue,则 $\alpha + \lambda$ 就是 $\b{M} + \lambda \b{I}$ 的 eigenvalue,这样就好办了,我总可以选出 $\lambda$ 使得我对于所有的 $\alpha_i$ 满足 $\alpha_i + \lambda \neq 0$,比如令 $\lambda > \max_i | \alpha_i | $,这样也就使得问题变得 nonsingular。 |
Gauss-Markov Therom
Gauss-Markov Therom 总体的意思是就是 least square estimator (LSE) of $\beta$ 是 best linear unbiased estimator (BLUE),这里需要明确一下怎么算 best estimator,什么是 linear estimator,什么是 unbiased estimator。假设 $\hat{\beta}$ 是 $\beta$ 的 estimator
-
linear estimator
如果 $\hat{\beta}$ 的每个分量都可以表示为 $c^T y, \; c \in \mathbb{R}^n$,$y$ 就是所有的 responce,也就是 $\hat{\beta}_i$ 是所有 responce 的 linear combination,则 $\hat{\beta}$ 就被称为 linear estimator。对于 LSE,$\hat{\beta} = (\b{X}^T\b{X})^{-1} \b{X}^T y$,显然 LSE 是 linear estimator
-
unbiased estimator
如果 $E(\hat{\beta}) = \beta$ 则 $\hat{\beta}$ 就是 unbiased estimator。对于 LSE
所以 LSE 是 unbiased estimator
-
best estimator
这里的 best 是这么评价的 (有点意思)。令 $\theta = a^T \beta$,$\hat{\theta} = a^T \hat{\beta}$ 为 $\theta$ 的 estimator,如果对于任意的 $a \in \mathbb{R}^n$,$\hat{\theta}$ 的 MSE $E((\hat{\theta} - \theta)^2)$ 都是最小的,则认为 $\hat{\beta}$ 是最好的 estimator。
也就是说 $\hat{\beta}$ 好不好,不是直接由 $\hat{\beta}$ 的 MSE 定的,$\hat{\beta}$ 的 MSE 等于 $E(\Vert \hat{\beta} - \beta \Vert^2)$,前后两个 MSE 有什么区别呢?前一个 MSE 展开你得到 $E((\sum_{i} a_{i}(\hat{\beta}_i - \beta_i))^2)$,后一个展开得到 $E((\sum_i (\hat{\beta}_i - \beta_i)^2))$,前一个是 square of sum,后一个是 sum of square。
假设 LSE estimator 是 $\hat{\beta}$,任意其他 linear unbiased estimator 是 $\tilde{\beta}$,$\tilde{\theta} = a^T \tilde{\beta}, \hat{\theta} = a^T \hat{\beta}$,因为它们都是 unbiased estimator,所以它们的 MSE 就是 variance
如果 $\hat{\beta}$ 是 best estimator,则 $Var(\tilde{\beta}) - Var(\hat{\beta})$ 必须是 PSD matrix,这个证明参考 Gauss–Markov theorem wiki。
根据 Gauss-Markov therom,LSE 得到的 $\beta$ 是最好的 linear unbiased estimator,这并等于是 best linear estimator,我们可以通过提升一点 bias 显著降低 variance,这样就可以降低 MSE,得到更好的 linear estimator。
(3.46)
$\b{U}^T y$ 表示 $\hat{y}$ 在以 $\b{U}$ 的列向量为 basis 的空间内的坐标,所以 $\hat{y} = \b{U}\b{U}^T y$。
这个可以这么理解的,考虑正常的 3d space 中的坐标,比如 $v = (3, 4, 5)^T$,它实际上是等于
其中 $I$ 为 basis,同理 $y$ 在 $\b{U}$ 中的坐标 $\b{U}^T y$,其 basis 为 $\b{U}$,所以 $\hat{y} = \b{U}\b{U}^T y$。
(3.49)
首先注意这个公式里的 $Var(\b{z}_1)$ 不是个 covariance matrix,这里的向量 $\b{z}_1$ 表示的是一个 random variable 的 n 个取值,而不是 n 个 random variable 分别的取值,搞清楚这个非常重要。情况是这样,$\b{X}$ 是原始空间中的样本,原始空间中每个样本有 p 个 feature,也就是 p 个 random variable,而 $\b{X}$ 的每一列分别表示这 p 个 feature 的 n 个取值,而 $\b{X}v_1$ 将 p 个 feature project 到一个新的空间中,变成一个 feature,$\b{z}_1$ 就是 n 个样本对这个 feature 的取值,所以说它是一个 random variable 的 n 个取值。
令 $\b{X}_i$ 表示 $\b{X}$ 的第 i 列,由于 $\b{X}$ 是 centered,所以 $\sum_{j=1}^{n} \b{X}_{ij} = 0$,由此
所以 $\b{X}v_1$ 的 sample variance 就是
(3.49) 下面的公式
$\b{z}_1 = \b{X} v_1 = \b{u}_1 d_1$ 的推导很简单,只要把 $\b{X}$ 对应的 SVD 分解代入即可。
注意点
-
(page 15) To get an idea of why, note that if the neighborhoods were nonoverlapping, there would be N/k neighborhoods and we would fit one parameter (a mean) in each neighborhood.
也就是说 KNN 在用的时候是这么用的,给你一个样本,然后去算离哪个 neighborhood 的 mean 比较近,那就将这个样本分到那个 neighborhood 中,所以如果定义 k 个 neighborhood,就需要 N/k 个参数
-
(page 66) 注意区分 principal component 和 principal component direction,principal component direction 是 $\b{X}^T \b{X}$ 的 eigenvector,假设为 $v$,$\b{X}v$ 才是 principal component,如 Figure 3.9 所示。
-
(page 72) figure 3.12 可以看到 q 从 0.1 到 4 的过程中,contour 的图形变化从窄到越来越方。
-
(page 72) 第 3 段里提到 “for $q \leq 1$, the prior is not uniform in direction, but concentrates more mass in the coordinate directions”
这句话这么理解,这里的 mass 就是 probability mass,根据 L1 norm 的 contour 想象一下 L1 norm 对应的 laplace prior (即 $c \exp(-\lambda \sum_{j = 1}^{p} \beta_j )$,$c$ 是个 normalization factor,注意这里有个负号,因为 gaussian likelihood 也有个负号,两个 distribution 的 log 相加做个 argmax 就变成了这里的 argmin) 的形状 (应该是个金字塔形),沿着某一方向的 probability mass 就是沿着那个方向对 probability density 做积分,而这实际上就是沿着那个方向对 probability density 做截面得到的截面面积,显然沿着坐标轴截得的的平面 (是个三角形) 的面积是最大的,也就是说 laplace prior 更倾向于坐标轴上的点。对于 L2 norm,显然无论你沿着那个方向做截面,其面积都是一样的,所以 L2 norm 并没有对那种 feature weight 组合有特别的偏好。 这是 L1 regularization 倾向于将某些 feature weight 置为 0 的一种解释,另一种是从优化的角度解释,如下图所示。
首先注意到,最优点一定是出现在两个 contour 相切的地方,如果不是,要么不满足 l1 约束,要么 least square 太大,一定要是相切的地方才是满足 l1 约束的最小的 least sqare error。另外,随着 l1 contour 的不断缩小,相切的点渐渐得移到了坐标轴上。
-
(page 102) 公式 (4.2) 下面有这么一句 “The decision boundary is the set of points for which the log-odds are zero”,其实这个可以直接从 $Pr(G=1 X=x) = Pr(G=2 X=x)$ 推出来,这个等式直接就推出 $\{x \beta_0 + \beta^T x = 0\}$。另外,注意到 前面提到 “monotone transformation”,对于 logistic regression 和 LDA,这个 monotone transformation 就是 log-odd,对于其他模型可能是什么 exp-odd (我瞎说的,不知道真的有没有 exp-odd),反正不管是什么,都是要得到 $Pr(G=1) = Pr(G=2)$。
-
(Page 109) 这页里有个预测 $\hat{\boldsymbol{\Sigma}}$ 的公式,其中 $\sum_{k=1}^{K}\sum_{g_i = k}$ 实际上就是 $\sum_{x}$,这几个预测模型参数的公式很好理解,$\hat{\pi_k}, \hat{\mu_k}$ 都是各自 category 中预测,而 $\hat{\boldsymbol{\Sigma}}$ 由于是所有 category 共享,所以就在整个数据上预测
- (Page 110 ~ 111) 110 结尾到 111 开头的部分给出了 LDA 和 QDA 的参数空间大小,对于 LDA 空间大小是 $(K-1)\times(p+1)$,我一开始以为这个不对,因为单一个 $\hat{\Sigma}$ 就是一个 $p^2$ 的空间,但实际上根本不需要存这个矩阵,参考 (4.10),这里我可以把最后两项直接算了变成一个常数,然后 $\Sigma^{-1}\mu_k$ 也算了变成一个向量,这个向量的维度是 p,所以如果每个 category 对应的参数都存下来的话就有 $K \times (p+1)$ 个参数,不过,它这里只存了每个 category 和第 K 个 category 的 difference 信息,所以只用 $(K-1)\times(p+1)$
知识点
Ridge Regression
Ridge regression 是 Tikhonov regularization 的一个特例,参考
- Tikhonov regularization wiki
- INVERSE PROBLEMS FOR REGULARIZATION MATRICES
- Making a singular matrix non-singular
- Regularization: Ridge Regression and the LASSO
Making a singular matrix non-singular 这篇文章的最后有这么几句话 “So here’s a more refined question: can you change a singular matrix into a useful non-singular matrix? Yes you can, sometimes, but the answer depends very much on the problem you’re trying to solve. This is generally known as regularization”,这个也许是 regularization 这个 term 的由来。
Questions
-
Page 83 的第一段里提到 “we estimate $\beta_0$ with $\bar{y} = …$”,为什么可以这么做?
-
Page 86 最后一段没太看懂
-
Page 104 “It’s quite straightforward to verify that …, as long as there’s an intercept in the model”
Statistics Basis
- What regression is all about is try to figure out why a particular variable varies (from here),这里的 variable 指的是 dependent variable,所以知道 dependent variable 的 variance 有多少被我们的 model cover 就很有意义,所以有了像 $R^2$ 这样的指标,$R^2$ 表示 the proportion of total variance that is taken up by the model (equal to SSR/SST), the lower the SSE is, the higher the $R^2$。
Good Sites
- Understanding the Bias-Variance Tradeoff
- Gauss–Markov theorem wiki
- Mean squared error wiki, mean square error for predictor and parameter