24小时热门版块排行榜    

查看: 473  |  回复: 1

luxinjiang

新虫 (初入文坛)

[求助] 求助LS-SVM线性核建模问题

我用http://www.esat.kuleuven.be/sista/lssvmlab/网站的标准软件建立了线性核的模型(输入为8个,输出为一个,简单的自回归模型),但使用书上的线性核的公式再写了一遍,结果却不一样,我也查了标准软件的公式,跟我写的好像没什么区别,不知道是哪里出了问题?请各位帮忙看下我的线性核LS-SVM到底错在哪里,谢谢。

以下是我的程序:

clear all;

  gam=10000000; %Regularization paramete 0.9
  sig2=0;
  
% 产生数据
y(1)=0;
u=1.5*randn(1000)-3;

for k=1:1000
    y(k+1)=0.1*y(k)-20*u(k)+0.1*u(k)^2;  %单输出
end

% 8个输入,用于LS-SVM建模
for k=1:997
U(k,=[u(k+3) u(k+2) u(k+1) u(k) y(k+3) y(k+2) y(k+1) y(k)];
end

% 线性LS-SVM训练
[alpha,b] = trainlssvm({U,y(5:1001)','f',gam,sig2,'lin_kernel'});%'lin_kernel'
plotlssvm({U,y(5:1001)','f',gam, sig2, 'lin_kernel'}, {alpha,b});

yT(1)=0;
yT(2)=0;
yT(3)=0;
yT(4)=0;
uT(1)=0;
uT(2)=0;
uT(3)=0;
uT(4)=0;

% 一组数据测试
for k=4:100
    uT(k)=0.75*sin(2*pi*k/50)+0.75*sin(2*pi*k/25);  %真实的输入
    yT(k+1)=0.1*yT(k)-20*uT(k)+0.1*uT(k)^2;          %真实的输出
    UT(k,=[uT(k) uT(k-1) uT(k-2) uT(k-3) yT(k) yT(k-1) yT(k-2) yT(k-3)]; %构建LS-SVM输入
end


Y=simlssvm({U,y(5:1001)','f',gam, sig2, 'lin_kernel'},{alpha,b},UT); %LS-SVM模型输出

% for i=1:997
%     e(i)=yT(i+4)-Y(i);
% end
plot(1:100,yT(2:101),'r',1:100,Y) % 对比真实值与LS-SVM的预测值,拟合很好

pause

%********************************************************************************************************
% 以下的程序为校核线性LS-SVM的工作原理

yy(1)=0;
yy(2)=0;
yy(3)=0;
yy(4)=0;
uu(1)=0;
uu(2)=0;
uu(3)=0;


for k=4:100
    uu(k)=0.75*sin(2*pi*k/50)+0.75*sin(2*pi*k/25); % 与上面的uT一致
   
    yT(k+1)=0.1*yT(k)-20*uu(k)+0.1*uu(k)^2;  % 与上面的yT一致
     
    % 以下为按照LS-SVM计算公式预测模型的输出
    % 方法1;
    a0=uu(k)*alpha'*U(:,1);
    a1=uu(k-1)*alpha'*U(:,2);
    a2=uu(k-2)*alpha'*U(:,3);
    a3=uu(k-3)*alpha'*U(:,4);
   
    a4=yT(k)*alpha'*U(:,5);
    a5=yT(k-1)*alpha'*U(:,6);
    a6=yT(k-2)*alpha'*U(:,7);
    a7=yT(k-3)*alpha'*U(:,8);
   
    yy(k+1)=a0+a1+a2+a3+a4+a5+a6+a7+b;
      
     % 方法2,其实与方法1一样
    yy(k+1)=alpha'*U*[uu(k) uu(k-1) uu(k-2) uu(k-3) yT(k) yT(k-1) yT(k-2) yT(k-3)]'+b;
         
end
  
% 方法3,还是与上两个是一致的
yc=(U*UT')'*alpha+ones(size(UT,1),1)*b;

plot(1:97,yT(5:101),'r',1:97,yc(4:100)) % 对比真实值与按照LS-SVM计算公式预测模型的输出,但效果很差,错在那个地方???
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

luxinjiang

新虫 (初入文坛)

已处理
2楼2014-06-16 16:53:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 luxinjiang 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +31 医学老男孩 2026-08-13 68/3400 2026-08-15 23:19 by 医学老男孩
[基金申请] 时间戳又变了8-15 +12 archvillain 2026-08-15 23/1150 2026-08-15 20:47 by foyo404
[基金申请] filecode +8 cratir 2026-08-14 12/600 2026-08-15 18:08 by zyfgau
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +7 启萌科技 2026-08-12 22/1100 2026-08-14 23:45 by Noways
[基金申请] 应该是93bebmhtak前后十一个字符比较关键 +23 Lanmanbaby 2026-08-09 37/1850 2026-08-14 13:40 by Equinoxhua
[硕博家园] 请教兼职经验 +3 是阿文鸭 2026-08-09 3/150 2026-08-14 12:07 by HER12025
[文学芳草园] 阿姨 +4 汪汪锅 2026-08-09 4/200 2026-08-13 19:43 by arzu_hma
[基金申请] 静等基金结果 +8 gjjjzhong 2026-08-10 21/1050 2026-08-13 17:56 by 且听虎啸
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] Filecode 又变了,巨变 +3 WH3796 2026-08-12 4/200 2026-08-13 14:13 by 小木虫6752397
[基金申请] 结合人工智能,周易传统文化,filecode打分制来了,3分以上希望很大。 +3 Tide man 2026-08-12 4/200 2026-08-13 08:35 by ZJTJZ
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +11 Tide man 2026-08-11 11/550 2026-08-13 07:35 by 撸猫猫
[基金申请] 帮忙看看fileCode +7 wwncly 2026-08-10 13/650 2026-08-11 19:36 by 冰心玉壶晴
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
信息提示
请填处理意见