⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nuenet_i.m

📁 神经元网络抵消算法。算法收敛快
💻 M
字号:
sample_n=60000;
[n1,n2,n3,n4,n5]=dataread5('D:\chen\科研\matlab算法汇总\2006年MATLAB语音增强算法\5ch8k20cm02.dat',sample_n);%噪声;
x=n1/max(abs(n1));xx=n2/max(abs(n1));
Eout=zeros(1,sample_n);
y=zeros(1,sample_n);
N=32;
%---------------
W1=zeros(1,N);G=1*ones(1,sample_n);
W=zeros(1,N);u1=0.05;u2=0.1;Alph=0.8;%u1=0.08;u2=0.08;Alph=0.8; %0<Alph<2
angle_D=0;   
fangca=0;
for i=N+1:sample_n
    if i<15000
    Z(i)=fun(W(1:N)*x(i:-1:i-N+1)'+angle_D);
    else
    Z(i)=W(1:N)*x(i:-1:i-N+1)';
    G(i-1)=1;
    end
    y(i)=xx(i)-G(i-1)*Z(i);
    fangca=fangca+abs(y(i));
    if i<15000
        G(i)=G(i-1)+u1*y(i)*Z(i);
    else
        G(i)=G(i-1);%+u1*y(i)*Z(i);
    end
    deta_D=Alph*G(i)*(1-Z(i)^2)*y(i);
    angle_D=angle_D+u2*deta_D;
    if i<15000
     W(1,1:N)=W(1,1:N)+u2*deta_D*x(i:-1:i-N+1);       
    end
end

W1=zeros(1,N);G=1*ones(1,sample_n);
for i=N+1:sample_n
    Z(i)=fun(W(1:N)*y(i:-1:i-N+1)'+angle_D);
    yy(i)=xx(i)-G(i-1)*Z(i);
    out(i)=G(i-1)*Z(i);
    G(i)=G(i-1)+u1*yy(i)*Z(i);
    deta_D=Alph*G(i)*(1-Z(i)^2)*yy(i);
    angle_D=angle_D+u2*deta_D;
    W(1,1:N)=W(1,1:N)+u2*deta_D*y(i:-1:i-N+1);
end


plot(xx(N+1:sample_n))
hold on
plot(out(N+1:sample_n)*4,'y');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -