pls算法理解资料

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一个sum先把矩阵的列相加(n个样本点的拟合值的 和) 第二个sum是把矩阵的行相加
for j=1:num
t1=t(:,1:i);f1=f0;
she_t=t1( j,:);she_f=f1( j,:); %把舍去的第j 个样本点保存起来
t1( j,:)=[];f1( j,:)=[]; %删除第j 个观测值
我们把增加一个样本点所构成的误差我们称之为扰动误差,而扰动误差决定回归方程的稳健能
力即 PRESShj 的值,扰动误差越大,稳健能力越差,就会增加 PRESShj 的值。
一般有:
PRESSh SSh & SSh1 SSh
其中 SSh1 是用全部样本点 多元回归出的具有 h 1 个成分的回归方程的拟合误差,我们比较 PRESSh 和 SSh1 ,PRESSh 是增加了 1 个成分 th 但是导致回归方程的稳健能力改变,而在一定程度 上回归方程的稳健能力即 h 个成分回归方程的扰动误差小于 h 1个成分回归方程的拟合误差,则认
的单位特征向量(列
向量)。
matrix=e0'*f0*f0'*e0; [vec,val]=eig(matrix) %求特征向量和特征值 82page val=diag(val) ;%提出对角线元素 [val,ind]=sort(val,‘descend’) ; w(:,i)=vec(:,ind(1)); %提出最大特征值对应的特征向量
在 PLS 建模中 m 取多少合适,这可以考察增加 1 个新成分后,能否对 PLS 模型的预测能力有明显
的改善来取舍
n 个样本点分成 2 步使用:
①排除某个样本点 i 的样本点集合( n 1个样本点),用这 n 1个样本点使用 h 个成分采用 PLS 得到Y 关于 X 的一个回归方程。
②把刚才排除的样本点 i 代入刚才得到的 Y 关于 X 的回归方程,得到 y j ( j 1, 2, , q) 在样本 点在 i 上的预测值 yˆhj(i) 。
beta1=[t1,ones(num-1,1)]\f1; %求回归分析的系数
beta1(end,:)=[]; %删除回归分析的常数项
cancha=she_f-she_t*beta1; %求残差向量
press_i( j)=sum(cancha.^2);
求第j个样本点的预测误差平方和
end
四、求解原始数据的回归方程的系数
PLS
Pls算法
• 一、数据的导入与处理 • 二、*提取主成分 • 三、*交叉性检验(确定主成分的个数) • 四、求解原始数据的回归方程的系数
一、数据的读取与处理
• 读取
Matlab中读取Excel文档中的数据通过xlsread函数
• 分析
判断自变量(因变量)是否存在多重共线性,判断因变量与自变量是否存在相关关系 rr=corrcoef(pz) %求相关系数矩阵
三、*交叉性检验(确定主成分的个数)
由于 PLS 过程中后续的成分已经不可以为解释 Y 而提供更有意义信息时,采取更多的后续成分只会
破会回归模型的统计趋势,引导错误回归结论,所以 PLS 并不需要构造出这些全部的成分进行回归
建模,而可以采用 PCA 方法(Principal Component Analysis),可以截取 m 个成分( m 秩( X ) ), 我们仅仅使用这 m 个成分就能得到一个性能较好的回归模型。
的拟合值 yˆhj(i) ,则可以得到 y j 的误差平方和 SShj ,有:
n
SShj = ( yij yˆhj(i) )2 i 1
并且 Y 的误差平方和 SShj ,有:
q
SSh = SShj j 1
SS(h1) 是用所有 n 个样本点拟合出的含 h 1个主成分的回归方程的拟合误差平方和。
二、*提取主成分
记 t1 是 X 的第 1 个成分有 t1 = Xw1 ,其中 w1 是 X 的第 1 个轴(单位列向量即 w1 =1 )。 u1 是Y 的第 1 个成分有 u1 = Yv1 ,其中 v1 是 X 的第 1 个轴(单位列向量即 v1 =1)。
变异信息最大:Var(t1) max,Var(u1) max 相关程度最大: r(t1, u1) max 综合可得协方差最大: Cov(t1,u1) r(t1,u1) Var(t1)Var(u1) max
max
Xw1,Yv1
( Xw1)T Yv1
wT 1
X
TYv1
s.t
wT 1
w1
vT 1
v1
w1 2 1 v1 2 1
根据拉格朗日算法有:
f
wT 1
X
TYv1
(wT 1
w1
1)
(vT 1
v1
1)
对 f 分别求关于 w1, v1, , 的偏导且置 0(求),有:
f
w1
X TYv1
2 w1
X
T 1
Y1Y1T
X1
最大特征值
2
的特征向量(列向量),
v2
是对应于矩阵
Y1T
X1
X
T 1
Y1
最大
特征值的特征向量(列向量),于是回归方程:
X1 t2 p2T X 2
Y1
t2r2T
Y2
其中,回归系数向量:
p2
X
T 1
t2
t2 2
r2
Y1T t2 t2 2
如此利用剩下的残差信息矩阵不断迭代计算,我们假设 X 的秩为 m (即可以有A个成分):
X
TY
(1
1
YT
Xw1 )
1w1
X
TYY T
Xw1
2
1
w1
同理可得:
YT XX TYv1 12v1
w1 是矩阵
X TYY T
X
的特征向量,对应的特征值为
2
1

1
为目标函数值且为最大。则
w1

X TYY T
X
的最大特征值 2 1
的单位特征向量(列向量)。同理,v1
是YT
XX
TY
最大特征值 2 1
为 回 归 方 程 的 稳 健 能 力 得 到 提 高 即 新 的 PLS 得 到 的 回 归 方 程 的 预 测 精 度 明 显 改 善 , 故
PRESSh SSh1 越小越好。由于在 SIMCA-P 软件中认为: PRESSh 0.952 SSh1
即当 PRESSh 0.952 SSh1 时,增加新的成分 th 有效
对于每一个 i(1 1, 2, , n) ,重复以上①②步,则可以得到 y j 的预测误差平方和 PRESShj ,有:
n
PRESShj = ( yij yˆhj(i) )2 i 1
并且 Y 的预测误差平方和 PRESShj ,有:
q
PRESSh = PRESShj j 1
另一方面,我们再采取所有样本点集合,多元回归出提取 h 个成分的回归方程,记第 i 个样本点
0
f
v1
YT
Xw1
2v1
0
f
(
wT 1
w1
1)
0
f
(vT 1
v1
1)
0
由上式可推出:
2
2
wT 1
X
TYv1
( Xw1 )T
Yv1=
Xw1,Yv1
记 1
2
2
wT 1
X
TYv1
,则 1
是优化问题的目标函数且使是1
达到最大必须有有:
YXTTXYwv11
1w1 =1v1
(1)
将上面组合式结合得:
② k 1, 2, , q ,有: Qh2 0.0975 。
%以下计算ss(i)的值 beta=[t(:,1:i),ones(num,1)]\f0; beta(end,:)=[]; %删除回归分析的常数项27page cancha=f0-t(:,1:i)*beta ; % 见156page
ss(i)=sum(sum(cancha.^2)); %求误差平方和
我们将上面的 PRESSh SSh1 检验标准进行改进得到交叉有效性的定义,得到对每一个因变量 y j 有:
Qh2j
1
PRESShj SS(h1) j
则对于Y ,有:
q
Qh2
1
PRESShj
j 1
q
SS(h1) j
1 PRESSh SSh1
j 1
交叉性检验标准:
① Qh2 1 0.952 0.0975 时,增加成分 th 是有效的,回归模型得到显著改善。
X t1 p1T t2 p2T tm pmT X m
Y
t1r1T
t2r2T
tmrmT +Ym
for i=1:n %以下计算w,w*和t 的得分向量, matrix=e0'*f0*f0'*e0; [vec,val]=eig(matrix) %求特征向量和特征值 82page val=diag(val) ;%提出对角线元素 [val,ind]=sort(val,'descend') ;% w(:,i)=vec(:,ind(1)); %提出最大特征值对应的特征向量 w_star(:,i)=chg*w(:,i) %计算w*的取值 ??? t(:,i)=e0*w(:,i) %计算成分ti 的得分 alpha=e0'*t(:,i)/(t(:,i)'*t(:,i)) %计算alpha_i 王书 154页的P值 chg=chg*(eye(n)-w(:,i)*alpha') %计算w*到w的变换矩阵 e=e0-t(:,i)*alpha' ;%计算残差矩阵 e0=e; 、 、 、 、
得到了W1,就可以求得主成分t1
t1 = Xw1 u1 = Yv1
t(:,i)=e0*w(:,i) %计算成分ti 的得分
然后分别进行 X 、Y 对 t1 的回归(这里Y 对 t1 的回归):
X Y
t1 p1T u1q1Tห้องสมุดไป่ตู้
X1 Y1*
Y t1r1T Y1
X1 、Y1 则为 X 、Y 的残差信息矩阵。
• 处理
***数据的标准化处理 Z标准化(偏差法标准化) 运用最多的数据标准化方法是基于统计理论的偏差标准化,也叫标准差标
准化,经过处理的数据符合标准正态分布,即均值为0,标准差为1,具体公式模型如下:
z=(x-μ)/σ
μ为平均数,σ为标准差。公式为
data=zscore(pz) %数据标准化
data的数值代表着原始分数和母体平均值之间的距离,是以标准差为单位计算。 在原始分数低于平均值时Z则为负数,反之则为正数
回归系数向量:
p1
X T t1 t1 2
q1
Y T u1 u1 2
r1
YT t1
t1
2
用残差信息矩阵 X1 、 Y1 取代 X 、 Y ,求第2个成分 t2 、 u2 和第2个轴 w2 、 v2 ,即:
tu22
X1w2 Y1v2
2
t2 ,u2
w2T
X
T 1
Y1v2
w2
是对应于矩阵
相关文档
最新文档