精华内容
下载资源
问答
  • 偏最小二乘回归 MATLAB程序代 码 偏最小二乘回归 MATLAB 程序代码 单因变量 function y=pls(pz) [row,col]=size(pz; aver=mean(pz; stdcov=std(pz; % 求均值和标准差 rr=corrcoef(pz; % 求相关系数矩阵 %data=zscore...
  • 偏最小二乘

    2020-05-24 20:51:39
    偏最小二乘 在B站看到一个UP讲偏最小二乘讲的很好,看完将笔记写在这里。视频地址:https://www.bilibili.com/video/BV1oE411K7fT?p=1 数据:Xn∗pX_{n*p}Xn∗p​ , yn∗1y_{n*1}yn∗1​ Xi(i=1,2,⋯p)X_i (i = 1,2...

    偏最小二乘

    在B站看到一个UP讲偏最小二乘讲的很好,看完将笔记写在这里。视频地址:https://www.bilibili.com/video/BV1oE411K7fT?p=1

    数据:XnpX_{n*p} , yn1y_{n*1}

    1. Xi(i=1,2,p)X_i (i = 1,2, \cdots p)与 y做回归,将得到的p个回归采用加权的形式加起来,记为t1t_1t1=i=1pXiTyXit_1 = \sum_{i = 1}^{p} X_i^{T} yX_i
    2. t1t_1做自变量,y做因变量进行回归,得到yy的残差r=yy^r = y - \hat{y}
    3. t1t_1做自变量,Xi(i=1,2,p)X_i(i = 1,2, \cdots p)做因变量进行回归, 得到XiX_i的残差rXi=XiXi^(i=1,2,p)r_{X_i} = X_i - \hat{X_i} (i = 1,2, \cdots p)
    4. rrrXir_{X_i}分别作为yyXX重复进行1,2,3步骤得到t2t_2
    5. 继续重复以上步骤得到tmt_mmm小于pp,当m=pm = p时即为普通最小二乘
    6. tj(j=1,2,m)t_j(j = 1,2, \cdots m)yy做回归,即偏最小二乘

    先简单写一下算法过程,后续再补充…

    展开全文
  • 偏最小二乘专家混合(Mix-PLS)是一种适合在多种操作模式下学习的方法。 在工业应用中,这种场景非常普遍。 然后,Mix-PLS 将偏最小二乘回归 (PLS)(化学计量学文献中众所周知的方法,也是工业中软传感器最常用的...
  • plsr偏最小二乘

    2018-05-04 18:02:52
    偏最小二乘
  • 偏最小二乘matlab代码

    2018-01-07 20:51:29
    偏最小二乘的源代码。偏最小二乘的源代码。偏最小二乘的源代码。
  • 混合范数偏最小二乘

    2021-03-03 13:00:02
    混合范数偏最小二乘
  • 偏最小二乘回归算法

    2018-08-20 22:39:56
    该资源是偏最小二乘回归算法,可以对数据进行偏最小二乘回归
  • 偏最小二乘回归

    2018-11-22 20:13:49
    偏最小二乘回归R代码
  • 介绍数学建模中偏最小二乘的应用,介绍偏最小二乘原理及项目案例代码。
  • 偏最小二乘回归(PLSR)和主成分回归(PCR)

    万次阅读 多人点赞 2019-06-14 14:32:01
    此示例显示如何在matlab中应用偏最小二乘回归(PLSR)和主成分回归(PCR),并讨论这两种方法的有效性。当存在大量预测变量时,PLSR和PCR都是对响应变量建模的方法,并且这些预测变量高度相关或甚至共线。两种方法都...

    原文链接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模型

    展开全文
  • 找了很久的偏最小二乘回归算法,包括《偏最小二乘回归的线性与非线性方法(王惠问 吴载斌 孟洁)》的PDF,《偏最小二乘回归方法及其应用》的pdf,《算法大全第30章--偏最小二乘回归》PDF ,一个比较好的博客《偏最小...
  • 神经网络偏最小二乘

    2016-06-03 09:54:46
    神经网络偏最小二乘
  • 讲得比较清晰的一个偏最小二乘,附带了MATLAB偏最小二乘函数的使用
  • 偏最小二乘(pls)回归分析 matlab

    万次阅读 多人点赞 2018-09-08 19:41:24
    偏最小二乘用于查找两个矩阵(X和Y)的基本关系,即一个在这两个空间对协方差结构建模的隐变量方法。偏最小二乘模型将试图找到X空间的多维方向来解释Y空间方差最大的多维方向。偏最小二乘回归特别适合当预测矩阵比...

    偏最小二乘用于查找两个矩阵(X和Y)的基本关系,即一个在这两个空间对协方差结构建模的隐变量方法。偏最小二乘模型将试图找到X空间的多维方向来解释Y空间方差最大的多维方向。偏最小二乘回归特别适合当预测矩阵比观测的有更多变量,以及X的值中有多重共线性的时候。通过投影预测变量和观测变量到一个新空间来寻找一个线性回归模型。

    一、数学原理

    为了实现偏最小二乘回归的基本思想,要求t1和u1的协方差最大,即求解下面的优化问题

    利用拉格朗日乘数法求出w1和c1满足

     

    偏最小二乘回归的成分、残差矩阵有许多优良的性质 ,其中之一是成分之间是相互正交的,这在一定程度上消除了多重线性相关性。偏最小二乘回归算法的实质是按照协方差极大化准则,在分解自变量变量数据矩阵 X 的同时,也在分解因变量数据矩阵 Y,并且建立相互对应的解释隐变量与反应隐变量之间的回归关系方程,充分体现了偏最小二乘回归的基本思想。

    二、建模原理

    假定P个自变量{x1,...,xp}和个因变量{y1,…,yq},构成自变量与因变量的数据表X={x1,...,xp}和Y={y1,…,yq}.在X与F中提取出成分t1和u1,在提取t1和u1成分时,满足t1和u1应尽可能大地携带他们各自数据表中的变异信息,以及t1和u1与的相关程度能够达到最大.第一个成分t1和u1被提取后,分别实施X对t1以及Y对u1的回归.若回归方程此时已经达到满意的精度,则成分确定;否则将利用X被t1以及F被u1解释后的残余信息进行第二轮的成分t2和u2提取,继续实施X和Y对t2和u2的回归,对上述过程进行迭代,直到精度满足要求为止.若最终对X共提取了m个成分t1,…,tm,再通过实施F对t1…,tm的回归,最后都可转化为Y对原变量x1,…,xp的回归方程,完成了偏最小二乘的回归建模.

    三、建模过程

    step1:数据标准化

    step2:求相关系数矩阵

    step3:分别提出自变量组与因变量组的成分,在这里我的标准是当前k个成分解释自变量的比率达到90%时,取前k个成分

    step4:求k个成分对时标准化指标变量与成分变量之间的回归方程

    step5:求因变量与自变量组之间的回归方程,即将step3中的成分带到step4中所得的回归方程,得到标准化指标变量之间的回归方程,再将标准化的回归变量还原成原始变量。

    四、Matlab 偏最小二乘回归命令plsregress

    调用方式:

        [XL,YL] = plsregress(X,Y,ncomp)

        [XL,YL,XS] = plsregress(X,Y,ncomp)

        [XL,YL,XS,YS] = plsregress(X,Y,ncomp)

        [XL,YL,XS,YS,BETA] = PLSREGRESS(X,Y,ncomp,...)

        [XL,YL,XS,YS,BETA,PCTVAR] = plsregress(X,Y,ncomp)

        [XL,YL,XS,YS,BETA,PCTVAR,MSE] = plsregress(X,Y,ncomp)

        [XL,YL,XS,YS,BETA,PCTVAR,MSE] = plsregress(...,param1,val1,param2,val2,...)

        [XL,YL,XS,YS,BETA,PCTVAR,MSE,stats] = PLSREGRESS(X,Y,ncomp,...)

    参数解释:

    用ncomp个因子或潜在变量计算Y在X上的回归,返回预测和响应载荷。

    X是n*p预测变量,行对应观测项,列对应变量。

    Y是n*m响应矩阵。

    Xloadings是p*ncomp因子载荷,每行包含定义原始预测变量的线性组合系数

    Xscores返回预测变量得分,即PLS因子是X中变量的线性组合,Xscores是一个n*ncomp正交矩阵,行对应观察值,列对应因子。

    因子载荷矩阵是各个原始变量的因子表达式的系数,表达提取的公因子对原始变量的影响程度。

    因子得分矩阵表示各项指标变量与提取的公因子之间的关系,在某一公因子上得分高,表明该指标与该公因子之间关系越密切。

    简单说,通过因子载荷矩阵可以得到原始指标变量的线性组合,

    如X1=a11*F1+a12*F2+a13*F3,其中X1为指标变量X1,a11、a12、a13分别为与变量X1在同一行的因子载荷,F1、F2、F3分别为提取的公因子;

    通过因子得分矩阵可以得到公因子的线性组合,如F1=a11*X1+a21*X2+a31*X3,字母代表的意义同上。、

    beta为回归模型的系数

    PCTVAR是一个两行的矩阵,第一行为自变量提取成分的贡献率,第二行为因变量提取成分的贡献率

    MSE是一个两行的矩阵,第一行的第j个元素表示自变量与它的前j-1个提出成份之间回归方程的剩余标准差;第二行的第j个元素对应着因变量与它的前j-1个提出成份之间回归方程的剩余标准差;

    stats返回4个值stats.W是一个pls权重的ρ*ncomp的矩阵,使XS=X0*W,每一列对应特征向量ρi

    stats.T2是XS每一点的T^2统计值

    stats.Xresiduals为预测值残差,X0-XS*XL'

    stats.Yresiduals为响应残差,Y0-XS*YL'

    五、案例分析

    下表前七列数据为自变量观测数据,后四列为因变量的观测数据

    clc,clear,format long g
    ab0=load('you.txt');
    mu=mean(ab0);sig=std(ab0);%求均值和标准差
    ab=zscore(ab0);%数据标准化
    a=ab(:,1:7);b=ab(:,8:end);
    ncomp=2;
    [xl,yl,xs,ys,beta,pctvar,mse,stats]=plsregress(a,b,ncomp);
    contr=cumsum(pctvar,2);
    n=size(a,2);m=size(b,2);%n是自变量个数,m是因变量个数
    beta2(1,:)=mu(n+1:end)+mu(1:n)./sig(1:n)*beta(2:end,:).*sig(n+1:end);%原始数据回归方程的常数项
    beta2(2:n+1,:)=(1./sig(1:n))'*sig(n+1:end).*beta(2:end,:)%计算原始变量x1,...,xn的系数,每一列是一个回归方程
    format

    得到下图

    其中第一行为常数项,后七行为自变量系数

    在matlab中,我们可以直接利用zscore(x)这个函数来将数据标准化。
    其核心思想是:
    z=(x-mean(x))./std(x)

    参考资料:

    [1].百度百科.偏最小二乘回归法

    [2].数学建模算法与应用第二版

    [3]. 刘柏森,刘艳.基于偏最小二乘回归的城镇居民消费水平影响因素研究[J].现代营销(下旬刊),2018(05):227-228.

    [4]. 李文强,段振云,赵文辉.基于偏最小二乘模型的无人机航材需求预测方法[J].系统工程理论与实践,2018,38(05):1354-1360.

    [5]. 孙凤林. 偏最小二乘回归法非线性建模及其递推算法的研究[D].华南理工大学,2010.

    [6].plsregress参数解释参照https://blog.csdn.net/qq_35720052/article/details/73998667

    展开全文
  • 针对基于煤质指标预测焦炭热性质建模过程中易出现的多重共线性问题,提出应用偏最小二乘回归对焦炭 热性质进行预测的建模思路。考虑到煤质指标与焦炭热性质之间复杂的非线性关系,采用拟线性化处理的方法,将煤质指标的...
  • 用于过程监控的多速率偏最小二乘
  • 融入深度学习的偏最小二乘优化方法
  • 偏最小二乘回归(PLSR)统计建模方法本质上是对数据平均趋势的估算,无法避免“依据错误的数据得到错误的模型”的根本问题.为此,提出用数据包络分析(DEA)优化偏最小二乘回归的建模方法,用DEA方法对数据进行评价...
  • 偏最小二乘方法原理及其应用——王惠文偏最小二乘方法原理及其应用——王惠文
  • matlab工具箱,包含偏最小二乘模型和线性判别模型,请使用者按照压缩文件里的说明对原作进行引用。
  • 融入受限玻尔兹曼机的偏最小二乘优化方法
  • 偏最小二乘回归 MATLA01序代 码 偏最小二乘回归MATLAB程序代码 单因变量 fun cti on y=pls(pz) [row,col]=size(pz; aver=mea n( pz; stdcov=std(pz; %求均值和标准差 rr=corrcoef(pz; %求相关系数矩阵 %data=zscore...
  • 基于DCT和偏最小二乘的红外人脸识别
  • 基于偏最小二乘回归分析,提出了一种新的人脸表示与重构方法。与主成分分析相比,通过偏最小二乘所抽取的低维人脸表示特征具有更好的分类性能。在ORL人脸数据库上的实验结果表明,基于偏最小二乘方法对于测试图像...
  • 针对中医药数据进行量效关系分析时,往往量效关系呈现为非线性的特征,而偏最小二乘在建立量效关系模型时是线性关系模型。提出一种融合深度学习与偏最小二乘的分析预测方法,该方法利用深度学习的多层网络对特征空间...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,017
精华内容 406
关键字:

偏最小二乘