作者chris70211 (克里斯)
看板MATLAB
标题[讨论] adapt与filter的用法
时间Thu Dec 6 23:22:37 2012
刚刚试着用MATLAB设计一个滤波器
首先用一个filetr做简单滤波後再将数值导入adapt做预测
程式如下:
pd1=(train2kg30)';
for g=1:250
t(g)=traindkg(g)/10000;
pd(g)=pd1(g)/10000;
end
traind12kg=(train2kg30)';
for i=1:250
pd2(i)=(traind12kg(i)/10000)';
end
x =pd; % Input
d1 = filter(1,[1,-.3],x); % Desired signal (AR signal)
mu = 0.0032; % Step size
h = adaptfilt.sd(3000,mu); % 2 tap sign-data adaptive filter
[y1,e1] = filter(h,x,d1); % Estimate of d1 and error
d2 = filter(1,[1,-.3],x); % New desired signal
[y2,e2] = filter(h,pd2,d2); % Filter coefficients and states are reset
net=newlin([-1 3],1,[0 1],0.00012);
net.adaptparam.passes=2000 ;
[net,yp,ep,pf1]=adapt(net,y1,t);
[net,yp2,pf]=adapt(net,y2,pf1);
执行结束之後可以看到训练的效果很不错
但是不知道为什麽 将同样的输入资料丢入训练好的模组之後
adapt训练过後的模组似乎没有发挥到 测试的曲线跟滤波的一样
不知道大家有没有这方面的经验可以提供参考一下 感谢>"<
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.38.111.44