(最后一章了,加油!)
目录
18.1 当 p p p远大于 N N N
- P650 如果 ∣ β i ^ / s e j ^ ∣ ≥ 2 |\hat {\beta_i}/\hat {se_j}|\ge 2 ∣βi^/sej^∣≥2,称为回归系数显著regression coefficient significant, s e ^ j \hat {se}_j se^j是估计标准差. 注意 z 0.975 = 1.96 ≈ 2 z_{0.975}=1.96\approx 2 z0.975=1.96≈2,这里标准差的估计感觉可以用式3.10算,另一种方法是利用bootstrap之类的手段)
- P650 模拟了高维回归问题
- P651 当 p p p很大,即时有许多非零系数,也并不希望找到它们,而是需要收缩它们. 最优岭回归中,系数值都表现得很不显著( λ \lambda λ越大,噪声方差越大,估计标准差越大,约不显著;从贝叶斯的角度来解释则是参数先验方差越小,越接近0,但不知道能不能推出显著性来)
- P651 p ≫ N p\gg N p≫N时,没有足够信息来有效估计高维协方差矩阵
18.2 对角线性判别分析Diagonal Linear Discriminant Analysis和最近收缩重心Nearest Shrunken Centroids
- P652 对于
p
≫
N
p\gg N
p≫N,在LDA中,高斯分布协方差太难建模,假设高斯分布的协方差是对角的,而且每个类的协方差都相同. 由P110式4.12得到
其中 x ∗ = ( x 1 ∗ , … , x p ∗ ) T x^*=(x^*_1,\dots,x^*_p)^T x∗=(x1∗,…,xp∗)T是测试观测向量, s j s_j sj为第 j j j个特征的类内标准误差合并, x ˉ k j = ∑ i ∈ C k x i j / N k \bar x_{kj}=\sum_{i\in C_k} x_{ij}/N_k xˉkj=∑i∈Ckxij/Nk, C k C_k Ck是第 k k k类的索引集合,称 x ~ k = ( x ˉ k 1 , … , x ˉ k p ) T \tilde x_k=(\bar x_{k1},\dots, \bar x_{kp})^T x~k=(xˉk1,…,xˉkp)T为第 k k k类重心centroid
分类准则为
该式标准化后等价于nn分类器,也是朴素贝叶斯的一个特殊情形,参考6.6.3节,假设每个类有相同方差的独立高斯分布 - P652 Bickel and Levian(2004)证明高维问题中,对角LDA表现经常比标准线性回归好。缺点是要使用所有的特征,因此对于解释不是很方便。
可以采用最近收缩重心nearest shrunken centroids, NSC作为对角LDA的正则化版本,其过程是把每个类的均值收缩到整体均值,过程如下
其中 m k 2 = 1 / N k − 1 / N m_k^2=1/N_k-1/N mk2=1/Nk−1/N,且 s 0 s_0 s0是一个小正数,一般取 s j s_j sj中值,为了防止分母为0导致 d k j d_{kj} dkj过大. 类内方差为常数 σ 2 \sigma^2 σ2,分子 x ˉ k j − x ˉ j \bar x_{kj}-\bar x_j xˉkj−xˉj的方差为 m k 2 σ 2 m_k^2\sigma^2 mk2σ2,(可以算,这个式子其实是精确对的。这里很容易理解错,注意如果两者独立,应该是 1 / N k + 1 / N 1/N_k+1/N 1/Nk+1/N)所以有了分母的标准化
采用软阈值soft thresholding收缩到0(这就是Lasso的收缩。也是5.9节小波系数的收缩方式)
另一种方式是硬阈值hard thresholding
这里倾向于软阈值,因为这是一个更光滑的处理,并且一般效果更好。反解18.4的转换得到
然后用 x ˉ k j ′ \bar x_{kj}' xˉkj′代替18.2中的原始 x k j x_{kj} xkj. 式18.5也可以认为是类别均值的lasso风格估计(习题18.2,但是我没推过去。而且我怀疑第6行的等式约束里少 N k N_k Nk)
这样就消除了大部分特征,让这些特征的每个类的均值一样 - P654 图18.3 用层次聚类排序(感觉这是层次聚类的神奇用法——特征或样本排序)
- P654 判别函数18.2可以构造类概率估计
可以用来评估分类,或者决定不对某个样本分类
18.3 二次正则Quadratic Regularization的线性分类器
- P654 在基因例子中,经过标准化后的特征,似乎提高了预测正确性,表明每个基因表达谱的形状是很重要的,而不是表达的绝对水平(尽管这里的绝对水平似乎已经是在同一个量纲下)
18.3.1 正则化判别分析Regularized Discriminant Analysis
- P656 参考P112的4.3.1节. 这里将
Σ
^
\hat \Sigma
Σ^收缩到对角
(4.3.1节是LDA和QDA的混合,感觉和式4.14类似,和式4.13的联系则不明显)
γ = 0 \gamma=0 γ=0退化成对角LDA,也即没有收缩版本的NSC(不过这里所有类用的是统一的协方差呀。对角LDA和NSC则不是)
18.9的收缩形式很像岭回归,将LDA看成类别响应变量的最优得分线性回归,即12.6节式12.58,这个等价性更加明确(这里缺乏理解) - P656 这里需要对大型矩阵 p × p p\times p p×p求逆,可以用18.3.5节的方法克服计算困难
18.3.2 二次正则的逻辑回归
- P657 这里使用对称版本的逻辑回归
正则化对数似然得到
(感觉这还是一个MAP估计)
正则化自动解决了参数冗余,使得 ∑ k = 1 K β ^ k j = 0 , j = 1 , … , p \sum_{k=1}^K\hat \beta_{kj}=0, j=1,\dots, p ∑k=1Kβ^kj=0,j=1,…,p,参考习题18.3,这里常数 β k 0 \beta_{k0} βk0没有正则化,但可以同时平移,所以把其中一个应该设为0
(这里如果没有正则化,则 β k \beta_k βk可以共同平移,有了正则化之后,求和为0,是使正则化最小的选择)
该问题是凸的,可以用牛顿法或其他数值方法 - P657 Rosset et al., 2004a证明,对于可分数据,当 λ → 0 \lambda \to 0 λ→0时,重标准化renormalized后的逻辑回归的估计收敛到最大间隔分类器maximal margin classifier(这里重标准化不知道什么意思,似乎加正则就叫重标准化。还是说数据经过了归一化。我感觉似乎是前者)
18.3.3 支持向量分类器
- P657 当
p
>
N
p>N
p>N时,一般情况下类别是线性可分的(d维特征空间的线性分类器,VC维是d+1),除非不同类有相同的特征向量(子空间异或)。当
p
≫
N
p\gg N
p≫N,吃惊的是,未正则化的SVM表现和最优正则化的一样好,过拟合似乎经常不是问题,可能的原因是误分损失函数的不敏感性,(可能是hinge loss有边界的,当
y
f
>
1
yf>1
yf>1时,hinge loss已经不会再减小了)
(另外,根据18.3.2最后一段说的,逻辑回归的估计在 λ → 0 \lambda \to 0 λ→0时收敛到最大间隔分类器,那岂不是说逻辑回归在没有正则化时也表现很好?) - P658 多分类推广,one versus one, 即OVO,,算所有的 ( K 2 ) \binom{K}{2} (2K)对分,测试时,获胜最多的类作为预测;one versus all,即OVA,每个类和其他类相比,置信度最高的作为预测;Vapnik(1998)、Weston and Watins(1999)提出了两类准则式12.7的多类推广;Tibshirani and Hastie (2007)提出间隔树margin tree分类器,把SVM用于二叉树,以分层形式组织(然后用做多分类?)
18.3.4 特征选择
- P658 Guyon et. al,2002提出递归特征消去recursive feature elimination),除掉较小的系数,然后重新拟合分类器。这是一种后向逐步的方式
- P659 RDA,LR,SVM都可以用核函数来拟合非线性判别边界。这种方法增加模型复杂度,当 p ≫ N p\gg N p≫N时模型已经够复杂了,有过拟合危险。不过径向基核函数有时效果好,径向基核函数抑制较远点间的内积,从而对离群点很鲁棒,这经常在高维中发生,或许可以解释积极影响的原因
18.3.5 当 p ≫ N p\gg N p≫N时的计算捷径
- P659 这一节中讨论的计算技巧可以应用到任何对参数二次正则化的线性模型拟合中
- P659 用SVD,给定
X
∈
R
N
×
p
\bm X\in \mathbb R^{N\times p}
X∈RN×p,令
其中 V ∈ R p × N , U ∈ R N × N \bm V \in \mathbb R^{p\times N}, \bm U\in \mathbb R^{N\times N} V∈Rp×N,U∈RN×N, D \bm D D满足 d 1 ⩾ ⋯ ⩾ d N ⩾ 0 d_1 \geqslant\dots\geqslant d_N \geqslant 0 d1⩾⋯⩾dN⩾0的对角矩阵, R ∈ R N × N \bm R \in \mathbb R^{N\times N} R∈RN×N,行为 r i T r_i^T riT
(这里定义的SVD不是常用的那个左右都是方阵、中间是长方形的版本,用那个版本也能推出来,最后推出关于 ( λ I N + R R T ) − 1 (\lambda I_N+RR^T)^{-1} (λIN+RRT)−1的式子就行)
考虑线性回归
Woodbury恒等式得到
上式可以看作 β ^ = V θ ^ \hat \beta=\bm V \hat \theta β^=Vθ^,其中 θ ^ \hat \theta θ^是 N N N个观测 ( r i , y i ) , i = 1 , … , N (r_i,y_i),i=1,\dots,N (ri,yi),i=1,…,N的岭回归,这个trick将花费从 O ( p 3 ) \mathcal O(p^3) O(p3)降低到 O ( p N 2 ) \mathcal O(pN^2) O(pN2)
(另外,直接用woodbury对18.14做得到 β ^ = X T ( λ I N + X X T ) − 1 y \hat\beta = \bm X^T(\lambda I_N+\bm X\bm X^T)^{-1}y β^=XT(λIN+XXT)−1y,也就是说 β ^ \hat\beta β^一定在 X \bm X X的行空间???,以前居然没注意到)
考虑任意使用 f ( X ) = β 0 + X T β f(X)=\beta_0+X^T\beta f(X)=β0+XTβ当作一个参数去建模条件分布 Y ∣ X Y|X Y∣X的监督问题,并且有二次惩罚,上述结果都是适用的。例如逻辑回归
有以下定理:记 f ∗ ( r i ) = θ 0 + r i T θ f^*(r_i)=\theta_0+r_i^T\theta f∗(ri)=θ0+riTθ,其中 r i r_i ri在式18.13中定义,考虑成对优化问题
则有 β ^ 0 = θ ^ 0 , β ^ = V θ ^ \hat \beta_0=\hat \theta_0,\hat\beta=\bm V\hat \theta β^0=θ^0,β^=Vθ^
(没有去进一步证,详情见Hastie and Tibshirani(2004). 这个式子好强啊,感觉适用范围很广。CVMLI的对偶线性回归和对偶逻辑回归估计是它的特例。)
几何上看,我们把特征旋转到除了前 N N N个坐标分量外其余分量都为0的坐标系中.这个旋转是允许的,因为二次惩罚在旋转下是不变的,并且线性模型等价(神奇啊。旋转矩阵可以用SVD找,其实就是 V \bm V V) - P660 这个结果可以应用到许多学习算法,比如正则化多类别逻辑回归,线性判别分析(习题18.6,没做),支持向量机,二次正则化的神经网络(神经网络满足18.16这个式子吗)
做交叉验证选参数 λ \lambda λ,也可以先做旋转变换构造 R \bm R R,然后把 R \bm R R当作数据使用,选参数 - P660 12.3.7节的核技巧中, K = X X T = U D 2 U T \bm K=\bm X\bm X^T=\bm U\bm D^2 \bm U^T K=XXT=UD2UT,所以 K \bm K K和 R \bm R R的信息一样。习题18.13显示如何用 K \bm K K和它的SVD分解拟合ridge逻辑回归(做了一点,但是仍然理解不透彻,而且感觉跟变魔术一样。。照这个题的话,线性回归、逻辑回归都可以带核函数!!,前提似乎是需要L2正则, 否则解空间病态?如果变换后特征维度有限,则直接变换解就行。如果无限,例如径向基,则对核矩阵 K \bm K K进行SVD分解处理!这也太强了吧。另外,不知道和CVMLI的对偶逻辑回归是不是有联系. 还有12.3.3节的逻辑回归不知道有什么内在联系?感觉还是不太一样)
18.4 L 1 L_1 L1正则的线性分类器
- P661 当 p > N p>N p>N时,虽则 λ \lambda λ趋近于0,lasso精确拟合了训练数据。通过凸对偶,可以证明 p > N p>N p>N时,对所有 λ \lambda λ,非零参数个数最多为 N N N(有个问题啊,表18.1中经过Lasso的方法剩余的参数好像比样本多),可以参考Rosset and Zhu, 2007。以lasso提供了特征选择
- P661 用Lasso回归做分类,对于多分类,可以用OVA、OVO等方法(注意P105讨论的三分类时中间类被mask的情况。另外这种拿回归做分类的真的能做吗?)
- P661 对于L1逻辑回归,可以设计类似LARS的路径算法,但是因为路径分段光滑(参考P126),所以精确算法更慢,并且当
p
p
p大时不适用。Friedman et al. 2010提出用于拟合
L
1
L_1
L1惩罚的逻辑回归和多项式回归的快速算法,采用式18.10的对称多项式做多酚类,目标函数为
通过3.8.6节的轮换坐标下降cyclical coordinate descent求解 - P662 对于一组强相关的变量,Lasso倾向于稀疏解,Ridge则倾向于全部收缩。弹性网络elastic net则进行妥协。下式给出多分类的弹性网络
当 p > N p>N p>N时,Elastic Net可以产生超过 N N N的特征数(似乎和Lasso的结论不矛盾,毕竟有L2的参与) - P664 当 p ≫ N p\gg N p≫N时,对于所有的正则化逻辑回归,系数的极限都是发散的(估计是说 λ → 0 \lambda \to 0 λ→0的情况),所以软件实现中,会显式或隐式设定最小 λ > 0 \lambda >0 λ>0
18.4.1 应用lasso到蛋白质质谱
- P664 函数型数据functional data
- P667 精妙的数据预处理。数据是16898个采样位置的谱图,采样太多,用Lasso直接拟合不太好,而且抓不住局部空间关系。所以先把所有波峰提取出来,然后层次聚类,水平切分谱系图dendrogram,产生728个簇作为特征。(这个有点类似5.2.3节音素识别那个例子,都是特征有空间局部性。是一种函数型数据)该预处理虽然没有提升结果,但是在这个蛋白质质谱的例子中提升了特征可解释性。另外注意预处理丢掉了波峰间的可能有用的判别信息
18.4.2 函数型数据Functinal Data的Fused Lasso
- P666 函数型特征
x
i
(
t
)
x_i(t)
xi(t),根据某个索引变量
t
t
t排序。可以用关于
t
t
t的基函数的系数来表示
x
i
(
t
)
x_i(t)
xi(t),例如样条、小波、傅里叶基。如5.3节讨论的(5.3节当时看的太匆忙,略过去了)。12.6节的惩罚判别分析PDA是用惩罚来显式控制系数向量的光滑度。上述方法都趋向于对系数进行光滑,而且是均匀光滑。Tibshirani et al., 2005提出fused lasso,是一种更自适应的策略
(感觉就是total variance。另外,12.6节的 Ω \Omega Ω感觉是高斯过程的精确度矩阵。不知道和这里第二项或其二范数是否存在某种联系)
这个准则关于 β β β严格凸,存在唯一解.第一项惩罚鼓励稀疏,第二项鼓励解光滑.进一步可以惩罚不等距的差异
当 X = I N ∈ R N × N \bm X=\bm I_N\in \mathbb R^{N\times N} X=IN∈RN×N时,得到一个fused lasso的特殊情形,用来近似 { y i } 1 N \{y_i\}^N_1 {yi}1N. Fused lasso signal approximator求解
(这和光滑样条很像啊,这里如果 λ 1 = 0 \lambda_1=0 λ1=0,第二项total variance看作是离散的一阶导的绝对值;而光滑样条则是约束了二阶导。所以感觉像是一个“离散版本的光滑样条”) - P668 Friedman et al. (2007)提出了对于一维和二维fused lasso的快速广义坐标下降算法
18.5 当特征不可用时的分类
- P668 现实中很多研究对象都很抽象,定义一个特征向量不很显然.但是只要我们能够得到 N × N N\times N N×N的邻近矩阵proximity matrix(相似性矩阵),就可以将相似性解释为内积,这样许多分类器都可以用。文档分类中的特征向量也是高维,可以只存内积矩阵(其实很多问题都是这样的,比如自然语言序列、单词-文本矩阵、用户-广告矩阵等)
18.5.1 例子:字符串核与蛋白质分类
- P668 字符串核:不定长的字符串相似度:考虑匹配的子串,Leslie et al., 2003提出
A
m
\mathcal A_m
Am是长度为
m
m
m的子序列集合,
ϕ
a
(
x
)
\phi_a(x)
ϕa(x)是
a
a
a出现在字符串
x
x
x的次数,定义内积
以此衡量两个字符串相似性。因为
∣
A
m
∣
=
2
0
m
|\mathcal A_m|=20^m
∣Am∣=20m(这里20是蛋白质中的字符数),可以用树结构计算
N
×
N
N\times N
N×N内积矩阵(这个树是前缀树Trie吗,待深入了解)(统计学习方法7.3.3节给出了一个更复杂的字符串核函数,能考虑到不连续的子串,以及子串长度衰减)
- P669 (这里把10折交叉验证与ROC曲线放在了一起使用。是直接同一阈值下,每一折的sensitivity核specificity取平均吗?还是怎么处理,缺乏细节。)
18.5.2 分类与其他使用内积核与成对距离的模型
- P670 除了SVM能核化,KNN也能,把距离转成内积
注意kNN在ROC曲线中,需要连续判别函数,可以用log-odd函数,从而只需要估计出每个类的后验概率,而每个类的密度函数又可以用非参方法估计。详见习题18.14(该题的那个非参密度估计没有推出来,有待深入思考)
最近重心分类器Nearest centroids中的距离也能推出来(把每一类当作一个协方差矩阵对角的高斯分布,或者其他和径向基直接关联的分布)(P673 没有收缩的NSC就是标准化后的最近重心分类器)
这也意味着K-means聚类可以只用核函数就能做到(E步计算,M步不显式计算簇中心;而是直接用18.28导出每个样本到类中心的距离)
带平方正则项的【多分类】逻辑回归也可以用内积核来实现;见 12.3.3 节和练习18.13.(这两种形式有什么内在联系?总感觉是不同的处理方式)练习12.10推导了使用内积核的线性判别分析.(没做) - P671 核PCA. 与14.5.4节差异不大
- P671 如果仅知道任意两个样本的距离矩阵,也是可以求出中心化的内积矩阵的,从而完成上述各项任务,也就是西瓜书10.2节的P227,228所写
其中 B = { − Δ i i ′ 2 / 2 } \bm B=\{-\Delta_{ii'}^2/2\} B={−Δii′2/2}. 可以得到 K ~ i i ′ = ⟨ x i − x ˉ , x i ′ − x ˉ ⟩ \tilde \bm K_{ii'}=\left\langle x_i -\bar x, x_{i'}-\bar x \right\rangle K~ii′=⟨xi−xˉ,xi′−xˉ⟩
(这波推导还是挺繁琐的,需要用 1 1 × N Δ i i ′ 2 , Δ i i ′ 2 1 N × 1 \bm 1_{1\times N}\Delta_{ii'}^2, \Delta_{ii'}^2\bm 1_{N\times 1} 11×NΔii′2,Δii′21N×1)
(总之感觉距离与中心化的内积两个可以互换) - P671 中心medoid也可以处理,例如用最近中心分类,或者k-medoid聚类. 像蛋白质这种抽象的数据点,medoids相较于均值有的优点是中心训练样本中的一个,可以呈现出来(高维特征中的K均值簇心不好表示)
- P672 内积核与距离不能做什么:
- 不能标准化变量(应该是说标准化方差)
- 不能直接评估单个变量的贡献.特别地,不能进行t检验,不能拟合NSC模型与任何带lasso惩罚的模型(但是18.3.1节正则化LDA是可以用的,对吧?)
- 不能将好变量从噪声变量中分离开,每个变量有相同权重.如果不相关变量占比很多,核方法不可能像特征选择那么好
18.5.3 例子:摘要分类
- P672 词袋法bag of words
- P672 评估了摘要分类问题中不使用raw feature带来的退化程度
- P673 这里Nearest medoids表现差,可能是因为样本量太小、维度太高,导致mediods方差远超过均值的量级(这也是make sense的,毕竟高维空间样本都离得很远,很稀疏。medoids估计的均值可能非常不准)
- P673 (书上说支持向量机估计特征的线性组合,所以可以处理未标准化的特征。但是不对啊,支持向量机不是与系数二范数有关。另一方面SVM只和核有关。应该会受到特征尺度影响)
18.6 高维回归:有监督的主成分Supervised Principal Components
- P674 生存分析survival study的例子. right censored是指活到了最终,censored的样本中也有可能是在调查结束前没有跟踪了,此时时间还没有到最后,看图18.11
Kaplan-Meier estimator,也称为product limit estimator
预后prognosis - P676 有监督主成分的概念:该例子中,想象有两种类型的细胞,有好细胞的病人会活得久一些。全监督方法赋予与生存越有关的特征——即基因更多权重.这些基因与细胞类型部分相关,但不是完全.如果能够发现潜在的细胞类型——它经常受到相当多的基因一起影响,或许在预测生存方面会取得更好的结果。
(有监督的主成分,有造特征的感觉。这是不是典型相关分析)
(另外这个问题和线性回归什么关系?线性回归的解好像是让相关系数最大,至少当 X , Y \bm X,\bm Y X,Y都中心化是这样的。但是这可能不是为一解)
细胞类型可以是离散的或连续的。如果是连续的,定义为特征的某些线性组合。为了展示,再进行离散化 - P676 和PCA的区别在于,不仅要找映射后达到高方差,还要找与响应变量有显著相关
对于生存分析问题, 广泛使用Cox的比例风险回归Cox’s proportional hazards regression model,步骤1是得分检验score test,(P125有提到一点,用于检验是否引入一项,Wald检验则用于是否剔除一项)步骤2b则是多变量Cox模型。具体细节对于理解这一基本方法不重要;它们可以在 Bair et al. 2006中找到
(例子中的 θ = 3.53 \theta=3.53 θ=3.53用了10折交叉验证,这个数是用cox-score - P677 log-rank test(比较两组样本的生存分布)、cox-score
- P678 在大部分情形下,只有第一或前几个主成分对预测有用
18.6.1 与隐变量建模的联系
-
P678 认为存在隐变量 U U U
ε , ϵ j \varepsilon,\epsilon_j ε,ϵj都假设0均值、与其他随机变量独立。 有许多额外特征 X k , k ∈ P X_k,k\in \mathcal P Xk,k∈P独立于 U U U. 这里的问题是识别 P , U \mathcal P,U P,U. 这是隐变量模型的特殊形式,也是单组分因子分析模型
(这种建模方式,其实暗含着把 X X X当作一个受 ϵ \epsilon ϵ影响的随机变量. 而且更自然地讨论 X j , Y X_j,Y Xj,Y的相关性)
监督主成分算法可以看成是拟合这个模型的方法:- 第1步筛查screening估计集合 P \mathcal P P.
- 给定 P \mathcal P P,用2a步中最大的主成分估计隐变量 U U U
- 最后,第2b中的回归拟合估计模型式18.32中的系数.
算法18.1中系数不为0,(当且)仅当 α 1 j ≠ 0 \alpha_{1j}\neq 0 α1j=0. 从而可以用步骤1筛选 j ∈ P j\in \mathcal P j∈P
步骤2a中假定 ϵ j \epsilon_j ϵj都有同方差的高斯分布,就可以进行筛选。这种情形下主成分是因子模型的极大似然估计,见Mardia et al., 1979. (注意步骤2a中有一步选 m m m个主成分)(因子分析和PCA有必然联系吗?总感觉这里是概率PCA才对)
步骤2b中的回归是显然的 -
P679 假设一共 p p p个特征,其中 p 1 p_1 p1个在相关集合relevant set P \mathcal P P,如果 p , p 1 p, p_1 p,p1都增长,但是 p 1 p_1 p1增长相对较小,可以证明,在合理条件下,第一主成分与隐因子是一致的. 通常情形下的主成分可能不是一致的,因为它可能被大量的噪声特征所污染.(这里的一致感觉不够具体,另外渐近一致如何考虑?)
-
P679 假设在第1步使用的阈值产生大量的特征用于计算主成分.则为了解释性和实际应用,会寻找降维后的子集特征来近似模型.18.6.3节的预处理Pre-conditioning是其中
18.6.2 与偏最小二乘Partial Least Squares的关系
- P680 (有监督主成分中,如果筛选上所有的特征直接作是不是会过拟合?尤其是在测试集上。所以才要筛选一部分特征)
- P680 一种修改后的偏最小二乘PLS与有监督主成分类似. 步骤1和步骤2a不变,接着对特征应用PLS,而不是主成分,讲该模型称为thresholded PLS
thresholded PLS可以看作监督主成分的噪声版本,因此并不期待实际中效果好(不理解这一句).
假设变量全部标准化,第一PLS有如下形式
可以看作对式13.33中 U U U的估计. 而监督主成分方向满足
其中 d d d式 X P \bm X_{\mathcal P} XP的第一奇异值
所以thresholded PLS使用 y \bm y y和每个特征内积作为权重,而监督主成分则导出自洽性的估计 u ^ \hat \bm u u^,而不仅仅是单个输出 y \bm y y,所以期待 u ^ \hat\bm u u^比 u \bm u u的噪声少. ( y , X y, X y,X都是 U U U的导出,所以其实他们的地位是一样的. 从推断 u ^ \hat\bm u u^的角度来看, y \bm y y并没有特殊性,所以 u ^ \hat \bm u u^更加稳定)
实际上,如果 P \mathcal P P有 p 1 p_1 p1个特征,且 N , p , p 1 N,p,p_1 N,p,p1都趋于无穷, p 1 / N → 0 p_1/N\to 0 p1/N→0,则根据Bair et al. 2006,
其中 u \bm u u是真实未观测的隐变量
- P681 监督主成分比thresholded PLS表现好。无论是在这一页造的例子中,还是其他模拟和真实的数据集(其实第3章P63常规的主成分回归就比偏最小二乘表现好。应该先想一想第3章出现这个现象的原因。这里有可能是一样的)
(在第3章P63中,PCR比Lasso、Ridge等表现都好,说明对特征做主成分分析是很有帮助的。可能是因为这样能降低过拟合)
(总的来说,有监督PCA最终还是用来做回归。对标的方法是Lasso等)
18.6.3 特征选择的预处理Pre-Conditioning
- P682 监督主成分不总是得到稀疏模型.即使算法中的步骤1得到相对较少的特征,但可能部分被忽略的特征与监督主成分之间有不可忽略的内积.另外,高相关的特征会趋向于一起选,则在已经选择的特征中会造成较大程度的冗余.
- P682 在图18.7的例子中,尽管前50个特征的线性模型最优,但是lasso被大量噪声特征所严重影响,而且当模型中有较少的20个左右特征时就开始过拟合了
- P683 Paul et al., 2008提出pre-conditioning. 同算法18.1,先得到特征子集和主成分
y
^
i
\hat y_i
y^i,用Lasso拟合所有特征
X
\bm X
X到
y
^
\hat \bm y
y^. 这个想法是首先对输出变量去噪denoising,则Lasso不会被大量噪声特征影响。从而得到误差和主成分方法一样低,同时又用更少特征. 应用到原始输出变量的一般Lasso比预处理Lasso更快地过拟合.
对于pre-conditioning lasso,经常用更主观的方式调整参数,比如简约性parsimony - P683 预处理Pre-conditioning可以被用在许多设定中,采用监督主成分以外的初始估计、Lasso以外的后处理
18.7 特征评估Feature Assessment和多重检验问题Multiple-Testing Problem
- P683 18.2-18.6节讨论了
p
≫
N
p\gg N
p≫N时的预测模型,本节讨论评估
p
p
p个特征中每个特征的显著性significance这一基本问题
特征评估问题将关注点从预测转移到传统的统计学话题——多重假设检验multiple hypothesis testing - P684 本节用 M M M表示特征个数,因为 p p p要被用来表示 p p p值
- P684 两样本
t
t
t检验.
其中 x ˉ i j = ∑ i ∈ C l x i j / N l \bar x_{ij}=\sum_{i\in C_l} x_{ij}/N_l xˉij=∑i∈Clxij/Nl,其中 C l C_l Cl是群组 l l l中 N l N_l Nl个样本的索引
这里12625个特征,画一个 t t t统计量的直方图出来. 注意,即使分组与任何基因都不相关,也会有很多大的值是随机出现的.如果基因独立(实际上它们当然不是),假阳性的基因个数会服从均值为 12625 × 0.05 = 631.3 12625\times 0.05=631.3 12625×0.05=631.3,标准差为24.5的二项分布;这里实际的1189超出这个范围(注意这里需要样本特征服从正态分布)
如何评估所有的检验结果,称为多重检验multiple testing问题.
除了用上述方法,还可以用排列分布permutation distribution,从而避免数据分布的假设,理论上计算所有样本的排列 K = ( 58 14 ) K=\binom{58}{14} K=(1458),并对每种排列计算 t t t统计量 t j k t_j^k tjk,于是基因 j j j的 p p p值为
(参考wiki: Permutation tests. 另外,这里能不能用秩和检验?)
通常排列数很大,可以随机采样,如 K = 1000 K=1000 K=1000
为了利用基因都是相似的,例如都是在同一尺度下测量,可以将所有基因混合一起算 p p p值
这提供了比18.40更细致的 p p p值,因为混合零分布是用了更多的值
从而对所有 j = 1 , 2 , … , M j=1,2,\dots, M j=1,2,…,M,假设检验为
因为要考虑并不至一个检验,所以并不清楚用什么作为检验好坏的总体度量. 总体错误率Family-wise error rate, FWER是至少存在一个第一类错误的概率,经常用它来衡量多重检验好坏。记事件 A j A_j Aj为原假设 H 0 j H_{0j} H0j被错误地拒绝, A = ∪ j = 1 M A j A=\cup _{j=1}^M A_j A=∪j=1MAj是至少有一个第一类错误,则FWER就是 P ( A ) P(A) P(A). 注意这有可能取决于检验之间的相关性,如果检验之间相互独立,第一类错误率为 α \alpha α,则FWER为 1 − ( 1 − α ) M 1-(1-\alpha)^M 1−(1−α)M. 如果检验之间有正依赖,即 P ( A j ∣ A k ) > P ( A j ) P(A_j|A_k)>P(A_j) P(Aj∣Ak)>P(Aj),则FWER会小于 1 − ( 1 − α ) M 1-(1-\alpha)^M 1−(1−α)M,测试之间的正依赖经常发生。(我的理解是,极端情况下,所有测试是完全相同的复制,此时正依赖非常强,FWER最低,为 1 − ( 1 − α ) 1 1-(1-\alpha)^1 1−(1−α)1) - P686 做多重检验的一个简单方式是Bonferroni方法,它控制总体错误率不超过
α
\alpha
α,方法是让
p
j
<
α
/
M
p_j<\alpha/M
pj<α/M时
H
0
j
H_{0j}
H0j才被拒绝(这里的
p
p
p是p-value. 对于显著性而言更严格).习题18.16证明此时
F
W
E
R
≤
α
FWER \leq \alpha
FWER≤α. 当
M
M
M小时很管用,但对于大
M
M
M则太严格,导致该例子中很少基因特征会显著。有许多对该方法的变形,通过调整单个p值使FWER至多为
α
α
α,其中一些方法避免对独立性的假设,比如Dudoit et al. 2002b
(这一节的motivation是说,如果有多个假设检验,几乎很容易存在第一类错误,所以思考如何降低第一类错误的存在)
18.7.1 错误发现率The False Discovery Rate, FDR
- P687 不控制FWER,而是关注假阳性的比例,如表18.5所示,FWER为
P
(
V
≥
1
)
P(V\ge 1)
P(V≥1)
(统计功效power of a test,指当 H 1 H_1 H1为真,正确拒绝 H 0 H_0 H0的概率,即 p o w e r = P ( reject H 0 ∣ H 1 is true ) power=P(\text{reject }H_0|H_1 \text{ is true}) power=P(reject H0∣H1 is true))
这里主要关注错误发现率False discovery rate, FDR(有点像是 1 − 精确度 1-\text{精确度} 1−精确度)
通过Benjamini-Hochberg(BH) Method来限定FDR
该方法基于 p p p值,可以从统计量的渐近近似得到,例如近似成高斯,或者通过排列分布得到
如果假设独立,不管零假设对的个数、也不管错的时候 p p p的分布,该过程有如下性质
(这个里面仔细想其实并不直观,还是有点复杂的。这里FDR选0.15很大,FDR和 α \alpha α还是不同。FDR可以认为是拒绝一个原假设的条件下原假设为真的概率, α \alpha α则不是,它的含义是原假设为真的条件下拒绝的概率为 α \alpha α。两个正好是对偶的条件概率。参考习题18.18. 当所有的假设都是真的时候,不管 α \alpha α是多少,只要拒绝就会犯错,就会得到 F D R = 1 FDR=1 FDR=1。可是这样的话怎么保证 F D R ⩽ α FDR \leqslant \alpha FDR⩽α呢,不理解。不知道是不是和假设独立性有关。)
(图18.19有个例子可以看下。)
BH过程为什么对应的 FDR 至多为 α \alpha α的证明相当复杂
- P689 一种更直接的方式是plug-in方法,固定一个
t
t
t统计量的截断点,在该例子中,大于等于该截断点的
∣
t
j
∣
|t_j|
∣tj∣的观测数为11,在总的排列数据中,大于等于该截断点的
t
j
k
t_j^k
tjk有1518个,对每个排列平均为
1518
/
1000
=
1.518
1518/1000=1.518
1518/1000=1.518,因此FDR的直接估计为
F
D
R
^
=
1.518
/
11
≈
14
\widehat{FDR}=1.518/11\approx 14%
FDR
=1.518/11≈14,约等于BH方法中使用的
α
=
0.15
\alpha=0.15
α=0.15,其中差异是由离散化造成。该方法概述为
plug-in估计等价于采用式18.40的 p p p值排列的BH过程.两者的对应不是巧合,习题18.17证明一般情形下它们等价(这里似乎只讨论在排列分布下的情况。而BH方法则更广泛)(习题18.17数值上能算,但是这里还是缺乏理解。plug-in到底是干啥的,感觉是用来估计FDR的)
该方法不需要引入 p p p值,直接计算检验统计量。近似估计下式
更一般地, F D R ^ \widehat {FDR} FDR 是FDR的一致估计,分子实际上估计了 ( M / M 0 ) E ( V ) (M/M_0)E(V) (M/M0)E(V),因为排列分布使用 M M M而非 M 0 M_0 M0个零假设. 因此如果有 M 0 M_0 M0的一个估计,FDR可以得到更好的估计 ( M ^ 0 / M ) ⋅ F D R ^ (\hat M_0/M)\cdot \widehat {FDR} (M^0/M)⋅FDR ,当 M 0 = M M_0=M M0=M是估计上偏。等价地, M 0 M_0 M0的估计可以通过式18.45改善BH方法
18.7.2 对称分割点Asymmetric Cutpoints和SAM过程
- P690 有时会出现大部分或者所有的差异表达在正方向上变化.对于这种情形,对两种情形分布导出截断点是有利的.而不是用同样的正负绝对值 ∣ t j ∣ |t_j| ∣tj∣
- P690 微阵列显著性分析significance analysis of microarrays, SAM提供了一种方式,如图18.20,数轴画出检验统计量
t
(
1
)
⩽
⋯
⩽
t
(
M
)
t_(1)\leqslant \dots \leqslant t_{(M)}
t(1)⩽⋯⩽t(M),横轴展示数据的排列中得到的有序统计量
t
~
(
j
)
=
(
1
/
K
)
∑
k
=
1
K
t
(
j
)
k
\tilde t_{(j)}=(1/K)\sum_{k=1}^K t^k_{(j)}
t~(j)=(1/K)∑k=1Kt(j)k,其中
t
(
1
)
k
⩽
⋯
⩽
t
(
M
)
k
t^k_{(1)}\leqslant \dots\leqslant t^k_{(M)}
t(1)k⩽⋯⩽t(M)k是排列
k
k
k的有序检验统计量。(这个排列
k
k
k还是上一节把一个特征打乱的排列分布的采样)(为什么这张图一定单调递增呢?可能横纵轴的特征并不是一一对应的关系)
具体过程如图
该方法中每个调整参数 Δ \Delta Δ定义上下截断点,对于截断点, F D R ^ \widehat {FDR} FDR 的plut-in估计和前面一样。(估计 R o b s R_{obs} Robs和 E ( V ) ^ \widehat {E(V)} E(V) 是应该算超出水平线 C h i C_{hi} Chi的数量)和一般计算一系列 Δ \Delta Δ及与之有关的 F D R ^ \widehat {FDR} FDR ,主观上从中选一组值
SAM的优势在于截断点的可能的不对称性。(应该是指 ∣ C h i ∣ ≠ ∣ C l o w |C_{hi}|\neq |C_{low} ∣Chi∣=∣Clow。书上的例子 C l o w = − ∞ C_{low}=-\infty Clow=−∞,从而不会选出 t t t特别小的情况) - P692 该方法和非对称的似然比检验likelihood-ratio有联系。
SAM在如下情况拒绝原假设
18.7.3 FDR的贝叶斯解释
- P692 FDR有个有趣的贝叶斯解释。定义正误发现率positive false discovery rate, pFDR
表示只关心在有发现显著的条件下估计误差率.这是FDR的修改版本,进而会得到一个很简洁的贝叶斯表示.注意到通常的FDR式18.43在 P ( R = 0 ) > 0 P(R=0)>0 P(R=0)>0的情况没有定义.
令 Γ \Gamma Γ为单个测试的拒绝域,上例中为 Γ = ( − ∞ , − 4.10 ) ∪ ( 4.10 , ∞ ) \Gamma=(-\infty,-4.10)\cup(4.10,\infty) Γ=(−∞,−4.10)∪(4.10,∞),假设独立同分布的统计量 t 1 , … , t M t_1, \dots, t_M t1,…,tM及拒绝域进行了 M M M个相同的简单实验. 定义随便变量 Z j Z_j Zj,0为假设正确,1为假设错误. 对于某分布 F 0 , F 1 F_0, F_1 F0,F1,每对 ( t j , Z j ) (t_j, Z_j) (tj,Zj)独立同分布,满足
令 P ( Z j ) = 0 = π 0 P(Z_j)=0=\pi_0 P(Zj)=0=π0,有边缘分布
则
FDR提供了整个拒绝域检验的准确性度量,例如 ∣ t j ∣ > 2 |t_j|>2 ∣tj∣>2。但 ∣ t j ∣ |t_j| ∣tj∣越大,越显著,因此导出希望导出FDR的局部版本。
因此把统计量 t j t_j tj的 q q q值 q q q-value定义为所有拒绝域中拒绝 t j t_j tj的最小的FDR,例如对于对称拒绝域, t j = 2 t_j=2 tj=2的 q q q值是拒绝域为 Γ = { ( − ∞ , − 2 ) ∪ ( 2 , ∞ ) } \Gamma=\{(-\infty, -2)\cup(2,\infty)\} Γ={(−∞,−2)∪(2,∞)}的FDR
局部FDR定义为
这是当 t j t_j tj取到 t 0 t_0 t0时, t 0 t_0 t0附近无穷小拒绝域的pFDR
习题
- P695 习题18.7,当 p > N p>N p>N时,线性回归有多解,若使解的范数最小,则得到唯一解 β ^ 0 = V D − 1 U T y \hat \beta_0=\bm V\bm D^{-1}\bm U^T\bm y β^0=VD−1UTy
- P695 习题18.8 data piling direction
后记
至此,ESLII读完了。
参考文献:
[1] Trevor Hastie, Robert Tibshirani, Jerome Friedman. The Elements of Statistical Learning, Second Edition
[2] ESL CN