偏最小二乘法中的交叉有效性计算的matlab程序,怎么计算出来的预测误差平方和PRESS不太对,偏大;请大牛指教!
function re = GetPRESS(E0,F0,h)
[n,m] = size(E0);
F0n = size(F0);
if F0n ~= n | n <2 | m < 2
disp('errors!');
return;
end
press = 0;
for i = 1:n
E = [ E0(1:i-1,:); E0(i+1:n,:) ];
F = [ F0(1:i-1,:); F0(i+1:n,:) ];
for j = 1:h % h步
w = ( E'* F )/ norm( E'*F );
W(:, j ) = w;
W;
t = E * w;
T(:, j ) = t; % 主成分
p = E'* t / ( (norm( t))^2 );
P(:, j ) = p;
r = F'* t / ( (norm( t))^2 );
R( j ) = r; % 系数
E = E - t * p';
F = F - t * r';
end
% 求W* 的值
for k = 1: h
W_h_s = eye(m);
for j = 1:(k-1)
W_h_s = W_h_s * ( eye(m) - W(j) *( P(j) )');
end
W_h_s = W_h_s * W(:,k); % Wh* 的值
W_s(:,k) = W_h_s;
end
F0i_s = E0(i,:) * (W_s * R'); % 求F0i的拟合值
F0i = F0(i);
% Yi_Yh_i = ( F0i - F0i_s )^2
press = press + ( F0i - F0i_s )^2; % 两值相减再平方
end
re = press;
f.rar_matlab 偏最小二乘_交叉有效性_偏最小二乘_平方预测误差
版权申诉
16 浏览量
2022-09-19
13:48:27
上传
评论
收藏 980B RAR 举报
小波思基
- 粉丝: 70
- 资源: 1万+
最新资源
- 基于Android的学生信息管理2.rar
- 3e9ef566-ba13-47b0-a252-77aa9e4b040f8412130.apk
- 毕业设计基于SSM的房屋租赁系统源【源码+lw+部署+讲解】
- 基于Android男装出口管理系统的app.rar
- 工资表生成工资条Excel模版
- 位运算、状态压缩、枚举子集汇总.html
- C++毕业设计快递分拣机器人系统源码+论文文件+资料.zip
- 锐龙处理器 体质分析工具,体质越好越稳定,越容易超频 tool1007/Win V/F
- IOS Swift3 四种单例模式详解及实例《PPT文档》
- Swin-Unet网络预训练模型,swin-tiny-patch-window7-224.pth
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
评论0