线性神经网络用于噪声对消

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

线性神经网络用于噪声对消

ADALINE自适应线性神经元的输入量为随机噪声nl;正弦波信号与随机噪声之和ADALINE神经元的目标向量;输出信号为网络调整过程中的误差信号。

源程序:

clear all; %消除所有内存变量

time=0.01:0.01:10; %时间变量

noise=(rand(1,1000)-0.5)*4; %随机噪声

input=sin(time); %信号

p=noise; %将信号作为ADALINE的输入向量

t=input+noise; %将噪声+信号作为目标向量

%创建线性神经网络

net=newlin([-1 1],1,0,0.0005);

%线性神经网络的自适应调整(训练)

net.adaptParam.passes=70;

[net,y,output]=adapt(net,p,t); %输出信号output为网络调整过程中的误差

%绘制信号、迭加随机噪声的信号、输出信号的波形

hold on

subplot(3,1,1);

plot(time,input,'b');

xlabel('t','position',[10.5,-1]);

ylabel('信号波形sin(t)','fontsize',8)

subplot(3,1,2);

plot(time,t,'m');

xlabel('t','position',[10.5,-5]);

ylabel('随机噪声波形sin(t)+noise(t)','fontsize',8)

subplot(3,1,3);

plot(time,output,'y');

xlabel('t','position',[10.5,-2]);

ylabel('输出信号波形y(t)','fontsize',8)

hold off

仿真结果:

从图中可以看出,输出信号处理含有一定的直流分量外,其波形与输入信号基本一致,消除了迭加的随机噪声。

线性神经网络噪声对消的实际应用:

采用这种系统来完成对胎儿心率的检测,可以得到十分满意的结果。由于测量胎儿的心率一定会受到母体心率的干扰,而且母体心率很强,但是与胎儿心率是相互独立的,所以可以将母体心率作为噪声源n1,输入ADALINE中,混有噪声的胎儿心率信号作为目标相应,通过对消后,系统就可以得到清晰的胎儿心率。

这种系统还可以应用于电话中的回音对消。在电话通话的过程中,如果没有回音对消措施,那么,我们自身的声音会与来自对方的声音一起传到听筒中,而且自身的声音更强,影响通话质量。可将自身的声音作为噪声源n1输入ADALINE 中,混有对方声音的信号作为目标响应,通过对消后,系统就可以得到清晰的来自对方的声音信号。

相关文档
最新文档