偏最小二乘回归(PLSR)算法原理

1、问题的提出

  在跨媒体检索领域中,CCA(Canonical correlation analysis,典型关联分析)是应用最为广泛的算法之一。CCA可以把两种媒体的原始特征空间映射映射到相关的两个特征子空间中,从而实现两个属于不同媒体的样本之间的相似性的度量,这也是CCA实现跨媒体检索的理论基础。
  但是CCA也有其局限性,其中之一就是对特征的处理比较粗糙,不妨假设来自两种媒体的一组训练样本对的原始特征矩阵为X和Y,则CCA只是以映射后特征相关性最大为原则把 X Y分别映射为 X1 Y1 ,而在 X Y)映射到 X1 Y1 )的过程中很可能会丢失原始特征矩阵 X Y)中的一些信息。此外,CCA只是寻找投影后的 X1 Y1 的关系,而不能通过该关系还原出 X Y
  为了解决上面提到的CCA算法的一些缺点,可以使用PLSR(Partial Least Squares Regression,最小二乘回归)算法。PLSR是一种多因变量Y对多自变量X的回归建模方法,该算法在建立回归的过程中,既考虑了尽量提取Y和X中的主成分(PCA—Principal Component Analysis,主成分分析的思想),又考虑了使分别从X和Y提取出的主成分之间的相关性最大化(CCA的思想)。简单的说,PLSR是PCA、CCA和多元线性回归这三种基本算法组合的产物。下面将进一步探讨PLSR的算法原理。

2、算法实现

  设原始特征数据 X0 为Nxm维矩阵, Y0 为Nxn维矩阵,即共有N个样本对, X0 中样本特征为m维, Y0 中样本特征为n维。而X和Y是原始数据经过标准化(减均值、除以标准差等)之后生成的数据。设X和Y的第一个主成分轴向量分别为 w1 (m x 1维)和 c1 (n x 1维)(两者均为单位向量,且两者不是由PCA求出的主轴,目前都只是变量,具体的值要到后面求解),则由 w1 c1 可以表示出X和Y的第一对主成分 t1 u1 ,其中 t1=Xw1,u1=Yc1
  根据上面的假设,CCA的求解思想是使 t1 u1 之间的相关性最大化,即 Corr(t1,u1)max ;而PCA的求解思想是分别使 t1 u1 各自的方差最大,即 Var(t1)max,Var(u1)max 。综合上面两种思想,即PLSR的求解思想,即 Cov(t1,u1)=Var(t1)Var(u1)Corr(t1,u1)max 。数学上可以形式化如下:
  
   Maximize<Xw1,Yc1> , Subject to : ||w1||=1,||c1||=1

  可以通过引入拉格朗日乘子的方法求出 w1,c1 ,求解细节参考博客“偏最小二乘法回归”[1],最后可解得, w1 是对称矩阵 XTYYTX 的最大特征值对应的特征向量, c1 YTXXTY 的最大特征值对应的特征向量。在求出了 w1,c1 后,可以求得 X,Y 的第一对相关的主成分 t1,u1 如下:

   t1=Xw1,u1=Yc1

  根据主成分回归思想可以把 X,Y 分别对它们的主成分 t1,u1 进行回归建模如下:

   X=t1pT1+E
   Y=u1qT1+G
  
  这里的 p1,q1 不同于 w1,c1 ,但它们之间有一定的关系,而 E,G 为残差矩阵。因为直接用上面两个式子还是无法建立 X,Y 之间的关系,所以在此利用 t1,u1 之间具有相关性这一情况把 Y 改为对X的主成分 t1 进行回归建模如下:
  
   Y=t1rT1+F
  
  对于上面三个回归方程,可以用最小二乘法计算出 p1,q1,r1 如下:
  
   p1=XTt1||t1||2
  
   q1=YTu1||u1||2
  
   r1=YTt1||t1||2
  
  从上面求出的结果可以推导出 w1,p1 之间的关系为:
  
   wT1p1=wT1XTt1||t1||2=tT1t1||t1||2=1
  
  其中 w1 X 投影出t1的方向向量,而 p1 在回归思想(使残差E尽可能小)下根据最小二乘法求出的,两者之间一般不是相同的关系。之后将 X 中主成分t1不能解释的残差部分 E 作为新的X Y 中主成分t1不能解释的残差部分 F 作为新的Y,按照前面的方法进行回归,循环往复,直到残差 F 达到精度要求,或者主成分数量已经达到上限(初始X的秩),算法结束。设最后共有k个主成分,则一系列向量可表示为 w1,w2,...,wk;c1,c2,...,ck;t1,t2,...,tk;u1,u2,...,uk;r1,r2,...rk ,其中下标不同的 ti,tj 是相互正交的, wi,wj 也是正交的,但 pi,pj 一般不是正交的(这也是与PCA的表达式中不同的地方)。最终可将原始 X,Y 表示为:
  
   X=t1pT1+t2pT2+...+tkpTk+E
   Y=t1rT1+t2rT2+...+tkrTk+F
  
  利用 wTitj=1(i=j),wTitj=0(ij) 的关系可以把上面的公式写成矩阵的形式如下:
  
   X=TPT+E
   Y=TRT+F=XWRT+F=XA+F ,即 XY 的回归方程,其中 A=WRT
  
  在算法过程中把计算得出的 W,R 的值收集好就可以利用PLSR进行预测,即对于新输入的一条数据 x ,首先利用W计算各个主成分,即 t1=xTw1,t2=xTw2,...,tk=xTwk ,然后代入 y=t1rT1+t2rT2+...+tkrTk 即可求出向量 y 的预测值,或直接代入yT=xTA进行求解。
 以上便是PLSR算法实现的主要步骤。

参考文献:

[1]偏最小二乘法回归(Partial Least Squares Regression)
[2]《Overview and Recent Advances in Partial Least Squares》

  • 31
    点赞
  • 187
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
复数最小二乘回归算法(Partial Least Squares Regression,PLSR)是一种用于建立输入变量和输出变量之间线性关系的回归分析方法。与普通的最小二乘回归相比,PLSR可用于处理多变量共线性(multicollinearity)问题,即当输入变量之间存在高度相关性时。 PLSR原理是将输入变量和输出变量分别投影到一个低维的空间中,使得在该空间中的投影值最大程度地保留原始数据的信息。具体来说,PLSR通过寻找一组正交的投影向量,将输入变量和输出变量分别投影到该向量空间中,从而得到一组新的变量。这些新变量代表原始变量的线性组合,被称为潜在变量(latent variables)。潜在变量的数量通常小于原始变量的数量,因此,通过PLSR可以实现对数据的降维处理。 PLSR的关键是选择合适的投影向量。PLSR采用交替最小二乘法(alternating least squares,ALS)来计算投影向量。该方法先选择一个初始的投影向量,然后对输入变量和输出变量进行投影,得到新的潜在变量。接着,将新的潜在变量作为输入变量,再次进行投影,得到更新后的投影向量。该过程迭代执行,直到收敛或达到预设的迭代次数。 PLSR适用于多元统计分析、数据挖掘、化学分析、生物医学工程等领域。它可以用于建立输入变量和输出变量之间的线性关系模型,同时对数据进行降维处理,提高模型的解释性和预测性能。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值