3.5 运用派生输入方向的方法
这是一篇有关《统计学习基础》,原书名The Elements of Statistical Learning的学习笔记,该书学习难度较高,有很棒的学者将其翻译成中文并放在自己的个人网站上,翻译质量非常高,本博客中有关翻译的内容都是出自该学者的网页,个人解读部分才是自己经过查阅资料和其他学者的学习笔记,结合个人理解总结成的原创内容。
翻译原文
!!! note “weiya 注:翻译”
Derived Input Directions 翻译为“派生输入方向”.
在很多情形下我们有很多输入,这些输入的相关性经常是非常强的.这一小节中的方法产生较少的原输入变量 Xj 的线性组合 Zm,m=1,2,…,M,然后 Zm 用来代替 Xj 来作为回归的输入.这些方法区别于怎样构造线性组合.
主成分回归
在这种方法下,使用的线性组合 Zm 是在前面 3.4.1 节中定义的主成分.
主成分回归构造派生的输入列 zm=Xvm,然后在 z1,z2,…,zM,M≤p 上回归 y.因为 zm 是正交的,则这个回归只是单变量回归的和
y^(M)pcr=yˉ1+m=1∑Mθ^mzm(3.61)
其中,θ^m=⟨zm,y⟩/⟨zm,zm⟩.(该表示法详见ESL3.2)因为每个 zm 是原输入变量 xj 的线性组合,我们可以将解 (3.61) 表达成关于 xj 的系数(练习 3.13):
β^pcr(M)=m=1∑Mθ^mvm(3.62)
岭回归下,主成分依赖输入 xj 的放缩尺度,所以一般地我们首先对它们进行标准化.注意到如果 M=p,我们就会回到通常的最小二乘估计,因为列 Z=UD 张成了 X 的列空间.对于 M<p 我们得到一个降维的回归问题.我们看到主成分回归与岭回归非常相似:都是通过输入矩阵的主成分来操作的.岭回归对主成分系数进行了收缩,收缩更多地依赖对应特征值的大小;主成分回归丢掉 p−M 个最小的特征值分量.图 3.17 说明了这一点

图 3.17 岭回归运用 (3.47) 中的收缩因子 dj2/(dj2+λ) 来收缩主成分回归的系数.主成分回归截断了它们. 图中显示了图 3.7 对应的收缩和截断模式作为主成分指标的函数.
在图 3.7 中我们看到交叉验证表明有 7 项;最终模型在表 3.3 中有最低的测试误差.
偏最小二乘
这个技巧也构造了一系列用于回归的输入变量的线性组合,但是与主成分回归不同的是它采用 y(除了 X)来构造.和主成分回归相同的是,偏最小二乘 (PLS) 也不是尺度不变 (scale invariant) 的,所以我们假设每个 xj 标准化使得均值为 0 、方差为 1.一开始,PLS 对每个 j 计算 φ^1j=⟨xj,y⟩.从这里我们构造新的派生输入变量 z1=∑jφ^1jxj,这是第一偏最小二乘方向.因此在每个 zm 的构造中,输入变量通过判断其在 y 上的单变量影响强度来加权.
!!! note “weiya 注:原书脚注”
因为 xj 已经标准化,第一方向 φ^1j 是单变量回归的系数(乘以某不相关的常数);但对接下来的方向不是这样.
输出变量 y 在 z1 上回归便得到系数 θ^1,然后我们对 x1,x2,…,xp 进行关于 z1 的正交化.我们继续这个过程,直到得到 M≤p 个方向.在这种方式下,偏最小二乘得到一系列派生的、正交化的输入或者方向 z1,z2,…,zM.和主成分回归一样,如果我们构造所有 M=p 个方向,我们会得到一个等价于普通最小二乘估计的解;如果使用 M<p 个方向会得到一个低维的回归.这个过程将在算法 3.3 中详细描述.
!!! note “weiya 注:”
在 a 上回归 b(或者称作 b 在 a 上回归)指的是
b 在 a 上的无截距的简单单变量回归,回归系数为
γ^=⟨a,a⟩⟨a,b⟩
同时这一过程也称作 b 关于 a 正交化

算法 3.3 偏最小二乘
- 对xj标准化使得均值为0、方差为1.令y^(0)=yˉ1, 并且xj(0)=xj,j=1,…,p.
- 对于m=1,2,…,p
-
zm=∑j=1pφ^mjxj(m−1), 其中φ^mj=⟨xj(m−1),y⟩
- θ^m=⟨zm,y⟩/⟨zm,zm⟩
- y^(m)=y^(m−1)+θ^mzm
- 对每个xj(m−1)关于zm正交化:xj(m)=xj(m−1)−⟨zm,zm⟩⟨zm,xj⟩zm,j=1,2,…,p.
- 输出拟合向量序列{y(m)^}1p.因为{zℓ}1m关于原输入变量xj为线性的,所以是y^(m)=Xβ^pls(m).这些线性系数可以通过PLS转换的序列重新得到.
在前列腺癌的例子中,交叉验证在图 3.7 中选择 M=2 个 PLS 方向.这得到了表 3.3 最右边的列的模型.
偏最小二乘求解的是什么优化问题呢?因为它使用响应变量 y 去构造它的方向,所以它解的路径是关于 y 的非线性函数.可以证明(练习 3.15)偏最小二乘寻找有高方差以及和响应变量有高相关性的方向,而与之相对的主成分分析回归只重视高方差(Stone and Brooks, 19901; Frank and Friedman, 19932).特别地,第 m 个主成分方向 vm 是下面问题的解:
αmaxstVar(Xα)∥α∥=1,αTSvℓ=0,ℓ=1,…,m−1(3.63)
其中,S 为 xj 的样本协方差矩阵.αTSvℓ=0 保证了 zm=Xα 与之前所有的线性组合 zℓ=vℓ 都不相关.第 m 个 PLS 方向 φ^m 是下面的解:
αmaxstCorr2(y,Xα)Var(Xα)∥α∥=1,αTSφ^ℓ=0,ℓ=1,…,m−1(3.64)
进一步的分析揭示了,方差项趋向于占主导地位,而且因此偏最小二乘表现得很像岭回归和主成分回归.我们将在下一节讨论这些.
如果输入矩阵 X 是正交的,则偏最小二乘会经过 m=1 步找到最小二乘估计.后续的步骤不起作用,因为 m>1时,φ^mj=0(练习 3.14).
也可以证明 m=1,2,…,p 时的 PLS 系数序列表示计算最小二乘解时的共轭梯度(练习 3.18).
regression tools (with discussion), Technometrics 35(2): 109–148.
个人解读
对于偏最小二乘的算法部分描述如下
算法 3.3 偏最小二乘
- 对xj标准化使得均值为0、方差为1.令y^(0)=yˉ1, 并且xj(0)=xj,j=1,…,p.
- 对于m=1,2,…,p
-
zm=∑j=1pφ^mjxj(m−1), 其中φ^mj=⟨xj(m−1),y⟩
- θ^m=⟨zm,y⟩/⟨zm,zm⟩
- y^(m)=y^(m−1)+θ^mzm
- 对每个xj(m−1)关于zm正交化:xj(m)=xj(m−1)−⟨zm,zm⟩⟨zm,xj⟩zm,j=1,2,…,p.
- 输出拟合向量序列{y(m)^}1p.因为{zℓ}1m关于原输入变量xj为线性的,所以是y^(m)=Xβ^pls(m).这些线性系数可以通过PLS转换的序列重新得到.
对于第二步的第一部分,其实这里的xj和y之所以是向量是因为有N个样本,而系数就可以理解为两个向量的点乘,点乘感性理解可以代表相似度。那如何计算当前m步下的zm呢?当m是1的时候,所有的x都是标准化的,所以把每个单变量在y上面的影响强度作为权重,先加权求和得出第一个方向z1。
对于第二步的第二部分,就是将y在该方向上进行回归,得到系数θ^m。
对于第二步的第三部分,就是把当前方向上的分量加进之前的预测向量中去,进一步接近y^。
对于第二步的第四部分相当于对于每个xj,减去其在zm投影的部分(在zm上回归xj得到系数再乘zm),留下的残差向量就是和zm正交的部分,该步骤相关概念的理解可参考ESL3.2的图3.4。感性理解就是,zm这个方向已经计算结束分离出来了,需要将其在其他x上面的分量全都清离出去,也就是对每个xj(m−1)关于zm正交化。
-
Stone, M. and Brooks, R. J. (1990). Continuum regression: cross-validated sequentially constructed prediction embracing ordinary least squares, partial least squares and principal components regression (Corr: V54 p906-907), Journal of the Royal Statistical Society, Series B 52: 237–269. ↩︎
-
Frank, I. and Friedman, J. (1993). A statistical view of some chemometrics ↩︎