APP下载

神经网络在通信系统回音对消中的应用

2012-06-11余尤好

武汉工程大学学报 2012年9期
关键词:回音均方线性

余尤好

(莆田学院电子信息工程系,福建 莆田 351100)

0 前 言

通信系统声学回音包括直接回音和间接回音.直接回音是指由说话者发出的声音经过不同路径一次或多次反射后进入麦克风所产生的回音,常见情况是受话方将听到一前一后两个声音.间接回音是指声音由远端受话方的扬声器播出后进入对方麦克风传递回来,说话方将听到对方声音和自己延时的声音.为控制回音的影响,人们先后提出网络衰减法和回音抑制器技术,但是它们都存在较大缺陷和局限性.网络衰减法在发送端和接收端都装有衰减器,但是随着传输距离变长,话音电平衰减太大.回音抑制器在发送端说话时,打开发送路径,而在接收端关闭发送路径,它采用非线性回音控制方法,容易引起扬声器声音断断续续,回声消除效果不好,具体实现时比较困难.回音对消的核心技术就是采用自适应算法的滤波器,自适应神经网络具有自学习能力,采用均方误差最小的学习规则自动调整网络权值和阈值,收敛速度快、稳定性高、易于实现,非常适合用于各类信号的分析处理,尤其是信号处理中的非线性问题.神经网络在通信系统、自适应滤波、弱信号检测等方面得以广泛应用.

1 自适应线性神经网络

自适应线性神经元(Adaptive Linear Neuron,以下简称:ADALINE)是线性神经网络最早的典型代表,它采用最小均方误差(Least Mean Squares,以下简称:LMS)算法,由其训练的网络判决边界距离分类模式较远,网络抗干扰能力较强,可以实现高性能自适应滤波器的设计.

1.1 自适应线性神经网络模型

ADALINE是一个自适应可调的网络,广泛应用于信号处理中的自适应滤波、预测和模型识别.ADALINE模型如图1所示,它的传输函数为线性函数,线性神经网络的输出为:

a=purelin(Wp+b)=Wp+b

(1)

式(1)中:a为模拟量,代表神经网络的实际输出;purelin表示线性传输函数;W表示由权值w1,w2,…,wm构成的矩阵;b代表阈值向量;p是系统的输入向量.有些情况下自适应线性神经网络的输出不是取自线性神经元的输出,而是将目标响应t(即神经元输出的期望值)与模拟输出量a相减,得到误差信号e作为输出[1].

图1 自适应线性神经元模型Fig.1 Model of adaptive linear neuron

对于线性神经网络可以直接求网络的W和b而不需要训练,若网络不止一个零误差解,可以取误差最小一组的阈值和权值向量.如果网络零误差解不存在,那么可以取误差平方和最小那组的阈值和权值.由于线性系统有唯一误差最小值,所以根据给定的一组输入向量和目标向量,可以算出实际输出向量和目标向量的误差最小值.若无法直接求出W和b,ADALINE神经网络可以采用LMS算法来调整W和b,这种方法是沿误差最陡下降方向对上一步得到的权值向量进行修正[2].

对多组训练样本{p1,t1},{p2,t2},…,{pQ,tQ},LMS算法的目的是寻找最佳的W、b,使各神经元输出的均方误差最小.神经元输出的均方误差为:

(2)

式(2)中:mse为神经元的均方误差;Q为训练样本个数;a为神经元输出的实际值;t为神经元输出的期望值.

为了寻找最佳的W、b使每个神经元输出的均方误差最小,将mse分别对W和b求偏导数,令其等于0,联立方程组即可求得mse的极值点.由于mse只能是正值,所以极值点必为极小值.当输入向量的维数较高时,计算很麻烦.通常采用搜索优化法,假设获得的第k次训练结果为W(k)和b(k),找出曲面上该点最陡下降方向,沿这个方向对它进行修正.求解均方误差的梯度运算量较大,可以用误差平方的梯度来近似表示:

(3)

(4)

由公式(3)和(4)得到自适应线性神经网络W和b的调整公式为:

W(k+1)=W(k)+2βe(k)pT

,

(5)

b(k+1)=b(k)+2βe(k)

.

(6)

式(5)、(6)中:β为学习速率,是决定W和b的收敛速度和稳定性的参数.β取值越大,学习速度就越快,但是如果取太大将会造成修正过度,系统变得不稳定,产生更大的误差[3].

1.2 自适应线性神经网络回音对消系统设计

应用ADALINE神经网络消除回音的原理框图如图2所示.图2中:s表示原始输入信号,即通话时希望听到的对方语音信号;n1表示通信系统的回音信号,即需要消除的噪声信号;n0为与回音信号n1相关的参考输入信号,也就是n1在传输过程发生非线性变换后得到的信号;s+n0作为ADALINE神经元的期望输出信号;y为回音信号经过ADALINE神经元自适应调节后得到的实际输出,接近于n0;期望输出信号与实际输出信号通过减法器后得到误差信号,作为系统的输出以ε表示,即ε=s+n0-y.则有

E(ε2)=E[(s+n0-y)2]=
E(s2)+2E[s·(n0-y)]+E[(n0-y)2]

.

通过自适应线性神经网络学习步长和训练次数的调节,使误差信号最小,得到

Emin(ε2)=Emin(s2)+2Emin[s·(n0-y)]+
Emin[(n0-y)2]

,

(7)

式(7)中:当y接近于n0时,其输出ε与信号源输入s差值约等于0,此时回音信号被消除[4].特别是对于间接回音信号的消除,此时信号源信号与回音信号线性无关,从而E[s·(n0-y)]=0,运算过程较为简便.

图2 回音对消原理图Fig.2 Principle diagram of echo cancellation

2 仿真结果及分析

2.1 语音通话时直接回音的消除

根据国际电报电话咨询委员会(International Telegraph and Telephone Consultative Committee,简称:CCITT)的长途通信协议标准,目前各国一般采用的话音采样频率为8 kHz.当声音延迟达到50 ms而且衰减较小时,人耳可以感觉到清晰的回音.仿真时录制一段话音作为原始语音信号,采样频率为8 kHz,延时1 s并把幅度降低到原来的60%作为回音信号.将回音信号作为自适应线性神经元的输入向量n1,原始语音信号与回音之和作为神经元的目标向量,通过回音对消后,系统可以得到较为清晰的自身话音信号,通过话筒传递到对方,受话人不会感觉到回音.

MATLAB软件是面对科学计算、可视化以及交互式程序设计的计算环境,利用它可以构建仿真系统,并绘制出话音信号的频谱图、语谱图.图3为直接回音消除时域、频域波形图,叠加回音信号后,时域中话音信号时间长度增加了,频域中各频率分量幅度变为原先的1.6倍.利用自适应线性神经网络实现回音对消后,时域、频域波形基本与原语音信号一致.把回音视为噪声,经过计算得出滤波前带回音信号信噪比约为4.437 0分贝,滤波后信噪比达到20.717 7分贝[5].

图3 直接回音消除时域、频域波形Fig.3 Waveform of direct echo cancellation in time and frequency domain

图4为直接回音消除语音信号的语谱图,原语音信号大约3.7 s,后面黑色部分为静音.叠加回音信号后,条纹变长了,而且信号持续时间变长.经过神经网络回音对消后,声纹重新变短,有用信号末尾的回音基本消失.

图4 直接回音消除语谱图Fig.4 Spectrogram of direct echo cancellation

2.2 语音通话时间接回音的消除

以采样频率8 kHz录制两段话音,其中一个为男性声音,另一个为女性声音.为了实验方便,假设女性声音为电话远端即受话人发出的声音.将男性声音作为回音信号n1输入到ADALINE系统中,叠加上对方声音的信号作为目标响应,通过回音对消系统可以获得清晰的来自对方的语音信号.

图5为间接回音消除时域、频域波形图.两个声音相加,频谱混叠在一起,通过经典滤波器、谱减法或小波变换等很难把有用的信号提取出来[6].经过自适应线性神经网络回音对消后,可以较好地还原出所需要的话音信号,滤波前信号信噪比约为3.659 2分贝,滤波后信噪比达到20.479 3分贝.

图5 间接回音消除时域、频域波形Fig.5 Waveform of indirect echo cancellation in time and frequency domain

图6为间接回音消除语谱图,两者声音叠加后,声纹较为紊乱.经过自适应线性神经网络回音对消后,语谱图特征与受话端发出的语音信号特征基本一致,回音信号基本消除.这样就可以清楚地听到对方说话,而不会受到自己说话回音的干扰.

图6 间接回音消除语谱图Fig.6 Spectrogram of indirect echo cancellation

通过实验发现,应当多次调整学习速率,太大不行,太小也不行.太小了学习过程变得漫长,而且回音信号并没有被削弱,效果不理想.太大了学习过程将不稳定,虽然程序运行时间较短,但是存在很大的误差,得到错误结果.特别在直接回音信号消除过程中,回音信号不同于其它噪声,它与信号源存在相关性,容易把自身信号当作噪声一并消除而使系统输出结果趋于零.仿真过程神经网络训练值重复次数要设置得比较大,否则无法有效消除回音,即使这样人耳还是可以感受到微弱的回音.不过在实验过程中电话回音幅度设置较大,实际情况下回音经过反射物后能量受到较大削弱,经过自适应线性神经网络对消后基本可以忽略,通话者感觉不到回音存在.

3 结 语

把自适应线性神经网络应用于通信系统回音消除,成功实现了电话回音的对消,获得较高的信噪比.在回音对消过程中,根据实际情况,还可以从一些地方加以改善,比如参数的合理选择、如何更好地解决收敛速度和稳态残留误差之间的矛盾.实现理想稳定的回音对消效果还存在一些难点,需要在实践过程中不断地完善算法.

参考文献:

[1] 周开利,康耀红. 神经网络模型及其MATLAB仿真程序设计[M]. 北京:清华大学出版社,2005.

[2] 郭峰,任兴民,刘婷婷. 基于神经网络消噪的独立成分分析方法研究[J]. 机械科学与技术,2010,29(12):1678-1682.

[3] 张帆. Adaline神经网络随机逼近LMS算法的仿真研究[J]. 电子设计工程,2009,17(9):88-90.

[4] 董翠英,周长英. 基于RBF神经网络的语音信号的噪声消除[J]. 制造业自动化,2010,32(5):228-230.

[5] 高宁,郑恩让,马令坤,等. 基于神经元网络的自适应噪声抵消系统研究与实现[J].计算机测量与控制,2010,18(1):133-135.

[6] 李政洋. 基于AD神经网络的语音增强[D]. 苏州:苏州大学,2008.

猜你喜欢

回音均方线性
一类随机积分微分方程的均方渐近概周期解
渐近线性Klein-Gordon-Maxwell系统正解的存在性
线性回归方程的求解与应用
回音筒
Beidou, le système de navigation par satellite compatible et interopérable
二阶线性微分方程的解法
基于抗差最小均方估计的输电线路参数辨识
基于随机牵制控制的复杂网络均方簇同步
回音是怎么产生的呢?
卷首语