偏最小二乘回归(partial least squares regression, 也称PLS)是一个 与主成分分析回归(principal components regression)有关系的统计方法。不是找到自变量和因变量之间的最大方差的超平面,而是找到一个能将预测变量和可观测变量投影到新空间的线性回归模型 (wikipedia, 2020)

先从Penalised Loss说起

Penalised Loss = Original loss + Penalty
Original loss = MSE
Panelty = λ\lambda * //β\beta//
lamda变大–>panelty变大–> penalised loss变大–>Original loss变小–>容易overfit

经典的penalize loss图

浅谈sPLS和sgPLS
这图的目的是求出使Penalty loss最小的beta
左边的是lasso penalty= //β1//+//β2////\beta_1// + //\beta_2// 所以中间图像为方形
右边的是ridge penalty= //β1//2+//β2//2//\beta_1//^2+ //\beta_2//^2 所以中间图像为圆形
中间实心区域为指定λ\lambda时的penalty,面积越大,penalty越小。
红色圈为MSE,中间的点为MSE最小时β1\beta_1β2\beta_2的值,同一个圈上MSE值相同。
calibration即为调参,指在该λ\lambda下的optMSE_{opt}(MSE)
由此,最优penalize loss时β\beta的取值即为红色圈与蓝色区域相交的部分。因为这是constrianed penalize,所以不能超过蓝色区域。
此图为二维,用于确定只有两个β\beta时的penalize loss。如果有多个β\beta,图可以为高维。

PLS和linear regression对比

两者penality loss公式相同,但是y^=fxˉ)\hat{y}=f(\bar{x})的function不同,output不同。
linear regression:
xˉ=[123]\bar x = \begin{bmatrix}1&2&3 \end{bmatrix}
β=[012]\beta =\begin{bmatrix} 0\\1\\2 \end{bmatrix}
y^=[123][012]=2+6=8\hat{y} = \begin{bmatrix}1&2&3 \end{bmatrix} *\begin{bmatrix} 0\\1\\2 \end{bmatrix} = 2+6 = 8

而PLS的output是一个matrix
xˉ=[258412326]33\bar x = \begin{bmatrix} 2&5&8\\4&1&2\\3&-2&6\end{bmatrix} _{3*3}
yˉ=[510(2)962]32\bar y = \begin{bmatrix} 5&10\\(-2)&9\\6&2 \end{bmatrix} _{3*2}
PLS: find a coefficient matrix for xˉ\bar x to get best predict yˉ\bar y
X * β\beta = Y
β=[(2)34301]32\beta = \begin{bmatrix} (-2)&3\\4&3\\0&1 \end{bmatrix} _{3*2}

sPLS和sgPLS对比

penalize loss= original loss = λ(0.32+0.32+0.42)\lambda * (0.3^2 + 0.3^2+0.4^2)

λ\lambda calibration

λ\lambda变大,选的人多
λ\lambda变小,选的人少
比如lasso 是λ\lambda值在0.01-0.99都试一遍,对于每个λ\lambda都算coefficient
omics data就直接算include多少个x
在R中,只关注新增一个人时loss的值
λ\lambda变大,penalty变大,选的人变少,容易overfit。λ\lambda决定要多大penalty

假设有两组人
组1: A B C
组2: D E F
sgPLS = OrignialLinear+λ//β//Orignial Linear + \lambda//\beta//
sPLS = OrignialLinear+λ1//β//+λ2////Orignial Linear + \lambda1//\beta// + \lambda2//组数//
浅谈sPLS和sgPLS
这张是calibrate后的splsda的图。如图,最小的misclassification最优选取数应为19。

浅谈sPLS和sgPLS
这张是calibrate后的sgPLSDA的图。如图,最小misclassification应为选两个组,sparsity parameter是0.9的时候。

在实际操作中,即使sgPLS选出的最优组合是同一组的AB,但如果你知道最优应来自两个组,也可以选择来自不同的结果AE

参考阅读:

  1. Ridge and Lasso Regression: L1 and L2 Regularization。 https://towardsdatascience.com/ridge-and-lasso-regression-a-complete-guide-with-python-scikit-learn-e20e34bcbf0b
  2. Regularization: Ridge, Lasso and Elastic Net. https://www.datacamp.com/community/tutorials/tutorial-ridge-lasso-elastic-net

相关文章:

  • 2021-07-19
  • 2021-06-01
  • 2021-12-01
  • 2021-09-03
  • 2021-07-08
  • 2021-09-05
  • 2021-10-28
  • 2022-01-27
猜你喜欢
  • 2021-12-29
  • 2021-06-20
  • 2021-04-13
  • 2021-07-17
  • 2021-09-17
  • 2021-06-03
  • 2021-09-18
相关资源
相似解决方案