英文原文:Partial Least Squares (PLS) Regression.
相关博客:偏最小二乘回归
在实际问题中,经常会有多维回归预测问题,最小二乘法求解 θ=(XTX)−1XTY : 对于样本数m比样本的维度n要少的情况时, XTX 为奇异矩阵,方程将有无穷多解,此时无法求解出实际的正确解。此时可以根据数据之间的相关性进行降维,主成分分析(PCA)是一种普遍利用的方法,不过在有标签并且要做回归的情况下,PLS更加适合此类问题。
首先定义数据 ,假设已经获得了归一化之后的数据以及对应的标签
X0=⎡⎣⎢⎢⎢x11x21...xn1x12x22...xn2............x1mx2m...xnm⎤⎦⎥⎥⎥,Y0=⎡⎣⎢⎢⎢⎢y11y21...yn1y12y22...yn2............y1py2p...ynp⎤⎦⎥⎥⎥⎥
其中,样本数量为n个,X为m维数据,Y为p维标签
偏最小二乘回归分析建模的具体步骤如下:
这里不用得分向量那种大部分文献常用的方法,来说一种比较简洁的计算方法,直接在数据矩阵当中提取主成分,
t1=x1w11+...+xmw1n=Xw1,X=(x1,...,xm)
u1=y1v11+...+ypv1p=Yv1,Y=(y1,...,yp)
t1 是m个n维的数据向量(列向量)的线性组合(每一个向量长度为样本数量), u1 是p个n维的标签列向量的线性组合,其中 w1 , v1 为单位向量,各自尽可能多地体现其组成成分的信息。
另 t1 和 u1 的相关程度达到最大
问题化为求单位向量 w1 , v1 ,,使 θ=wT1XTYv1 达到最大。
建立 Y=(y1,...,yp) 对 t1 的回归及 X=(x1,...,xm) 对 t1 的回归模型:
如果残差范数不满足要求的阈值,则用残差阵 X1 和 Y! 代替 X0 和 Y0 重复以上步骤。
w2=(w21,...,w2m),v2=(v21,...,v2p) 分别为第二对单位向量。
t2=Xw2,u2=Yv2 第二对成分的线性组合。
β2=tT2Y1∥t2∥2 , β2=tT2Y1∥t2∥2 分别为 X ,Y 的回归模型中第二对成分的参数向量,这时可以得到:
这里与PCA中表达式不一样的是这里成分向量之间没有正交的要求。
将
tk=Xwk=x1wk1+...+xmwkn,k=(1,2,...,r)
带入到
Y0=t1β1+t2β2+...+trβr
当中。即可得到p个标签的偏最小二乘回归方程。
Y0=Xw1β1+Xw2β2+...+Xwrβr+Yr=Xp1+Xp2+...+Xpr
pk=wkβk , k=(1,...r)