|
以前编的一个程序,今天拿出来给大家看看,请大家指教。不过挺不喜欢这种求程序的做法,应该自己去想想才对,其实挺简单的,
%支持向量回归机在处理HHT端点效应中的应用(只给出SVR向右预测部分)
%分以下几个步骤进行:
%1、将原信号向两端延拓;2、将延拓后的信号EMD分解
%3、将分解后的各IMF分量舍去两端超出原信号长度部分
%4、再将3中的各IMF延拓,并求其Hilbert谱,结果中再舍去延拓出的那部分就OK了
clear;
clc;
N=1024; %采样点数
fs=5120; %采样频率
dt=1/fs; %采样时间间隔
t=(0:N-1)*dt; %产生时间序列
s=(1+sin(2*pi*10*t)).*sin(2*pi*80*t)+sin(2*pi*150*t);%产生信号
num=100;%设置要延拓的点数
l=100; %设置训练样本数
fprintf('向右延拓中……\n');
for i=1:l
X(i,1:N-l)=s(i:N-l+i-1);
Y(i,1)=s(N-l+i);
end
[nsv beta bias] = svr(X,Y,'linear',Inf,'einsensitive',0);
for j=0:num-1
m=0;
XX=s(l+1+j:N+j);
for i=1:l
m=m+beta(i)*(X(i,1:N-l)*XX');
end
s(N+j+1)=m+bias;
end
extend_right=s(N+1:N+num);
extend=[s,extend_right];
[ 本帖最后由 wangkun 于 2008-4-14 21:43 编辑 ] |
|