问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

什么是主成分回归

发布网友 发布时间:2022-04-25 18:45

我来回答

2个回答

热心网友 时间:2023-10-28 05:13

原文:http://tecdat.cn/?p=2655

 

此示例显示如何在matlab中应用偏最小二乘回归(PLSR)和主成分回归(PCR),并讨论这两种方法的有效性。当存在大量预测变量时,PLSR和PCR都是对因变量建模的方法,并且这些预测变量高度相关或甚至共线性。两种方法都将新的预测变量(称为成分)构建为原始预测变量的线性组合,但它们以不同的方式构造这些成分。PCR创建成分来解释预测变量中观察到的变异性,而根本不考虑因变量。另一方面,PLSR确实将因变量考虑在内,因此通常会导致模型能够使用更少的成分来适应因变量。

加载数据

加载包括401个波长的60个汽油样品的光谱强度及其辛烷值的数据集。

使用两个拟合数据

使PLSR模型拟合10个PLS成分和一个因变量。

为了充分拟合数据,可能需要十个成分,但可以使用此拟合的诊断来选择具有更少成分的更简单模型。例如,选择成分数量的一种快速方法是将因变量中解释的方差百分比绘制为成分数量的函数。

在实践中,在选择成分数量时可能需要更加谨慎。例如,交叉验证是一种广泛使用的方法,稍后将在本示例中进行说明。目前,上图显示具有两个成分的PLSR解释了观察到的大部分方差y。计算双组分模型的拟合因变量。

接下来,拟合具有两个主要成分的PCR模型。第一步是X使用该pca函数执行主成分分析,并保留两个主成分。然后,PCR只是这两个成分的因变量的线性回归。当变量具有非常不同的可变性时,通常首先通过其标准偏差来规范每个变量。

从某种意义上说,上图中的比较并不合理 - 通过观察双组分PLSR模型预测因变量的程度来选择成分数(两个),并且没有说明为什么PCR模型应该*相同数量的成分。然而,使用相同数量的成分,PLSR做得更好。实际上,观察上图中拟合值的水平分布,使用两个分量的PCR几乎不比使用常数模型好。回归的r方值证实了这一点。

比较两种模型的预测能力的另一种方法是在两种情况下将因变量绘制成两个预测变量。

如果不能以交互方式旋转图形,有点难以看到,但上面的PLSR图显示了紧密分散在平面上的点。另一方面,下面的PCR图显示点几乎没有线性关系。

请注意,尽管两个PLS成分是观察到的更好的预测因子,但下图显示它们解释的方差比例比PCR中使用的前两个主成分少。

PCR曲线一致性较高的事实表明,为什么使用两种成分的PCR相对于PLSR在拟合时表现很差。PCR构建成分以便最好地解释X,因此,前两个成分忽略了数据拟合中观察到的重要信息y。

拟合更多成分

随着在PCR中添加更多成分,它必然会更好地拟合原始数据y,这仅仅是因为在某些时候,大多数重要的预测信息X将存在于主要成分中。例如,使用10个成分时,两种方法的残差远小于两个成分的残差。

交叉验证

在预测未来变量的观察结果时,选择成分数量以减少预期误差通常很有用。简单地使用大量成分将很好地拟合当前观察到的数据,但这是一种导致过度拟合的策略。过于拟合当前数据会导致模型不能很好地推广到其他数据,并对预期误差给出过度乐观的估计。

交叉验证是一种更加统计上合理的方法,用于选择PLSR或PCR中的成分数量。它通过不重复使用相同的数据来拟合模型和估计预测误差来避免过度拟合数据。因此,预测误差的估计不会乐观地向下偏差。

pls可以选择通过交叉验证来估计均方预测误差(MSEP),在这种情况下使用10倍CV。

plsreg(X,y,10,'CV',10);

对于PCR,crossval结合用于计算PCR的平方误差之和,可以再次使用10倍交叉验证来估计MSEP。

sum(crossval(@ pcrsse,X,y,'KFold',10),1)/ n;

PLSR的MSEP曲线表明两个或三个成分好。另一方面,PCR需要四个成分才能获得相同的预测精度。

事实上,PCR中的第二个成分会增加模型的预测误差,这表明该成分中包含的预测变量的组合与其没有很强的相关性y。再次,这是因为PCR构建成分来解释X,而不是y。

模型简约

因此,如果PCR需要四个成分来获得与具有三个成分的PLSR相同的预测精度,那么PLSR模型是否更加简约?这取决于您考虑的模型的哪个方面。

PLS权重是定义PLS分量的原始变量的线性组合,即,它们描述了PLSR中的每个分量依赖于原始变量的权重。

类似地,PCA载荷描述了PCR中每个成分依赖于原始变量的强度。

对于PLSR或PCR,可以通过检查每个成分最重要的变量来为每个成分提供有意义的解释。例如,利用这些光谱数据,可以根据汽油中存在的化合物解释强度峰值,然后观察特定成分的权重挑选出少量这些化合物。从这个角度来看,更少的成分更易于解释,并且由于PLSR通常需要更少的成分来充分预测因变量,因此会导致更简约的模型。

另一方面,PLSR和PCR都导致每个原始预测变量的一个回归系数加上截距。从这个意义上讲,两者都不是更简约,因为无论使用多少成分,两种模型都依赖于所有预测变量。更具体地,对于这些数据,两个模型都需要401个光谱强度值以进行预测。

然而,最终目标可能是将原始变量集减少到仍然能够准确预测因变量的较小子集。例如,可以使用PLS权重或PCA载荷来仅选择对每个成分贡献最大的那些变量。如前所示,来自PCR模型拟合的一些成分可主要用于描述预测变量的变化,并且可包括与因变量不强相关的变量的权重。因此,PCR会导致保留预测不必要的变量。

对于本例中使用的数据,PLSR和PCR所需的成分数量之间的差异不是很大,PLS权重和PCA载荷选择了相同的变量。其他数据可能并非如此。

 

有问题欢迎下方留言!

参考文献

1.matlab使用经验模式分解emd 对信号进行去噪

2.Matlab使用Hampel滤波去除异常值

3.matlab偏最小二乘回归(PLSR)和主成分回归(PCR)

4.matlab预测ARMA-GARCH 条件均值和方差模型

5.matlab中使用VMD(变分模态分解) 

6.matlab使用贝叶斯优化的深度学习

7.matlab贝叶斯隐马尔可夫hmm模型

8.matlab中的隐马尔可夫模型(HMM)实现

9.matlab实现MCMC的马尔可夫切换ARMA – GARCH模型

热心网友 时间:2023-10-28 05:13

主成分分析是解决解释变量之间共线性问题的分析方法,对主成分进行回归分析就是主成分回归。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
我爱我校征文800字 建行聚财宝少一万时5小时内补上会怎样 咪哩乡文化教育 咪哩乡基础设施 咪哩村云南省玉溪市元江县咪哩乡咪哩村 咪哩乡历史文化 元江咪哩中心小学怎么样? 原神 原神胡桃进阶材料是什么? 原神 原神呢胡桃材料有哪些? 原神 原神胡桃的突破材料是什么? 家庭教育方式有几种类型 生物里PCA是什么 幼儿的教育方式有哪几种 教育的方法 教育方法有哪些 家庭教育方式有哪几种 儿童教育的方法有哪些? 教育孩子的12个经典小方法,你知道几个? 梦见自家老房子倒塌,先人一起搬东西是什么意思? 梦见家里老房子消失了 梦见自己老房子要倒塌了是什么意思? 请问XP下有什么好点的内存清理软件? 有什么很好的清理内存的软件。 除了360还有什么好的内存清理软件 请问大佬有memreduct(内存清理软件) v3.3.5 绿色版软件百度云资源吗 木头泡水里多久会腐烂? 木头泡水里多久会腐烂? 什么木制茶具最能耐高温开水长期冲泡 *和*有什么区别,哪些人叫*,哪些人叫*,还是这两个称谓本是一样的? 我在河里挖出来一根木头可能在水是泡了很久,很硬很重还有香味不知道是什么木? 基因扩增技术包括哪些 设计pca引物 主要需要注意哪几点 现在有哪几种PCR的方法啊? PCR怎么可能不用DNA连接酶? 用同一种引物,同一种酶,对葡萄的DNA和cDNA进行pcr扩增,设置的pcr程序 怎样通过pcr的方法检测重组质粒转化农杆菌阳性 ELISA和PCR的原理和用途 matlab中偏最小二乘法 PLS、PLSCV、PCR、PCRCV 是什么意思的 .m文件? PCR技术和 基因工程的优缺点分别是什么 PCR技术和LCR技术的区别 PCR和实时荧光定量PCR这两种有什么区别? 悦me网关如何将看的节目投射在电视机上播放? 手机怎么连接悦me机顶盒,,就是手机能投屏到电视上吗,有哪位知道的告诉我一下呗谢谢 求教中国电信创维E900s悦Me机顶盒怎么才能有投屏功能?家里电视不带投屏功能,想通过盒子投屏 悦me盒子,连接不了电视,电视无画面显示! 怎么在悦me网关上观看电视节目? 悦me互动tv怎么配对 悦me智能机顶盒安装步骤 电信悦me盒子的安装方法? 天翼高清机顶盒悦me遥控器如何学习电视