搜索
查看: 3693|回复: 1

偏最小二乘法(Partial Least square, PLS)

[复制链接]

365

主题

512

帖子

1713

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1713
发表于 2017-10-20 23:59:17 | 显示全部楼层 |阅读模式
与常见的多元线性回归相比,偏最小二乘法(Partial Least square, PLS)是一种新型的多元统计分析方法,为什么说是新型呢?因为偏最小二乘法可以同时实现回归建模(多元线性回归分析)、数据结构简化(主成分分析)、两组变量之间的相关性分析(典型相关分析)等三大功能。偏最小二乘法可以较好的解决许多用传统多元回归方法无法解决的问题,可以说是多元统计分析中的一个飞跃。

我们先回顾一下三大功能典型的特征:
  1. 多元线性回归分析:可以拟合一个连续型变量与若干自变量(可为连续型变量和分类变量)的线性组合关系
  2. 主成分分析:将原有变量(主要是连续型变量)重新组合成一组新的互相无关的几个综合变量(主要是连续型变量),同时根据实际需要从中可以取出几个较少的综合变量尽可能多地反映原有变量的信息
  3. 典型相关分析:研究两组变量x1, x2, ..., xp和y1, y2, ..., yp之间的相关关系,采用类似于主成分分析的方法,在两组变量中,分别选取若干有代表性的变量组成有代表性的综合指标(称为典型变量),通过研究这两组综合指标之间的相关关系,来代替原来两组变量间的相关关系

偏最小二乘法综合上述3者的功能, 所以功能更强大,具有更大灵活性。利用主成分分析的特点将多元线性回归拓展到可以克服多重共线性的问题,利用典型相关分析的特点将多元线性回归拓展到可以探讨因变量组合与自变量组合之间的相关关系。正是由于偏最小二乘法可以研究多变量间复杂关系的问题,他也是含隐变量的结构方程模型目前最经常使用的估计方法之一。

  R语言实例  

下面简单从一个实例看看偏最小二乘法如何探讨橄榄油的感官(颜色、光泽、透明度等)和理化特性(酸性、过氧化物浓度等)两者的相关关系。数据比较简单,包括6个定量变量的感官数据作为因变量,5个定量变量的理化数据作为自变量。

#导入数据,并进行数据的标准化
library(pls)
data(oliveoil)
Y=scale(oliveoil$sensory)
X=scale(oliveoil$chemical)

#进行偏最小二乘回归
pls1=plsr(Y~X,validation="LOO",jackknife=TRUE)
summary(pls1)



以其中一个因变量为例,上图展示的是不同主成分个数对应的预测误差平方和,第二行adjCV为校正后的交叉验证的结果。提示主成分个数为3的时候,误差最小。



上图展示的是各个主成分对各个变量的累计贡献率,可能由于数据的问题,这里的各个主成分对各个因变量的累积贡献率都不大。假设这里与上述的结果对应,这里主成分个数为3的时候,累积贡献率基本达到80%。因此确定回归的成分个数为3个。

#建立最终模型,提取回归系数
pls2=plsr(Y~X,ncomp=3,validation="LOO",jackknife=TRUE)
coef(pls2)



以因变量brown为例,可以得到回归方程为:
brown= - 0.28*Acidity + 0.41*Peroxide + 0.37*K232 + K270*0.28 - 0.24*DK

#模型的拟合效果分析
validationplot(pls2)



上图展示的对于不同的因变量,不同主成分个数对应的均方预测误差根(RMSEP),对于我们的例子,理想的状态是,对于大部分的因变量都在主成分个数为3时RMSEP取得最小。

predplot(pls2)



上面各图中纵坐标是各因变量的预测值,横纵表示各自变量的测量值,若散点集中分布在主对角线上说明预测效果较好。

#回归参数的显著性检验
jack.test(pls2)



以因变量为brown为例,Peroxide和K232两个理化指标的P值<0.05,说明橄榄油的感官brown特性受Peroxide和K232等两个理化特性影响,且具有统计学意义。

写在最后  

偏最小二乘法约在上世纪90年代引入中国,在生物医学上的应用相对较少。而他作为传统多元线性回归的拓展,可以解决以往许多以往不能解决的问题,在自变量个数大于样本量的情况下也能建立有效的模型,相信在生物医学,乃至其他相关领域定会得到更加广泛的应用。



上一篇:NIH院长坦言基因筛查发现致病突变,毫无意义
下一篇:转录组作业(三)了解fastq格式
回复

使用道具 举报

365

主题

512

帖子

1713

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1713
 楼主| 发表于 2017-10-21 23:31:17 | 显示全部楼层
代码直接运行即可出图,建议用rmarkdown的形式展现
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|生信技能树 ( 粤ICP备15016384号  

GMT+8, 2019-10-21 09:16 , Processed in 0.026514 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.