基于神经网络算法的助听器帮助聋人恢复听力

2018-09-14 11:31山西工程技术学院崔建国宁永香
电子世界 2018年17期
关键词:正弦波助听器基波

山西工程技术学院 崔建国 宁永香

0 引言

人工神经网络(Artificial Neural Network,即ANN),它从信息处理角度对人脑神经元网络进行抽象,建立某种简单模型,按不同的连接方式组成不同的网络。在工程与学术界也常直接简称为神经网络或类神经网络。神经网络是一种运算模型,由大量的节点(或称神经元)之间相互联接构成。每个节点代表一种特定的输出函数,称为激励函,(activation function)。每两个节点间的连接都代表一个对于通过该连接信号的加权值,称之为权重,这相当于人工神经网络的记忆。网络的输出则依网络的连接方式,权重值和激励函数的不同而不同。而网络自身通常都是对自然界某种算法或者函数的逼近,也可能是对一种逻辑策略的表达[1]。

最近十多年来,人工神经网络的研究工作不断深入,已经取得了很大的进展,其在模式识别、智能机器人、自动控制、预测估计、生物、医学、经济等领域已成功地解决了许多现代计算机难以解决的实际问题,表现出了良好的智能特性。

听力损伤很厉害的人,普通助听器没有对其没有多少用,因为它们必须依靠送话器的嘴子(口承)。但是,当声音中的频率变化信息是表现为语音基波频率的正弦波时,有些聋人能听到这种变化。因为这种频率变化信息为聋人提供了语音中的重音和声调。利用人工神经网络这种算法设计一种新型的助听器,可以很好地服务于耳聋患者。

1 MLP(多层感知机)简介

MLP(Multi-Layer Perceptron),即多层感知机,是一种前向结构的人工神经网络,映射一组输入向量到一组输出向量。MLP可以被看做是一个有向图,由多个节点层组成,每一层全连接到下一层。除了输入节点,每个节点都是一个带有非线性激活函数的神经元(或称处理单元)[2],如下图。

图1 多层感知机结构图

一种被称为反向传播算法的监督学习方法常被用来训练MLP。MLP是感知机的推广,克服了感知机不能对线性不可分数据进行识别的弱点。

MLP在80年代的时候曾是相当流行的机器学习方法,拥有广泛的应用场景,譬如语音识别、图像识别、机器翻译等等,但自90年代以来,MLP遇到来自更为简单的支持向量机的强劲竞争。近来,由于深层学习的成功,MLP又重新得到了关注[3]。

2 SIVO助听器

前文所述,当声音中的频率变化信息是表现为语音基波频率的正弦波时,有些聋人能听到这种变化,基于这种结论,世界上许多科研机构或企业已用这种方法做出了处理语音的电子系统样机,但大多只是部分成功。在伦敦的GUY医院作了一种称为SIVO的助听器,并由药物委员会和健康部投资,现正在由30个耳聋患者鉴定其性能。

SIVO这种助听器可以提取语音的基波频率,其方法是检测语音压缩波形中声域的脉冲激励信号所产生的初始峰值电压,这个模拟峰值电压信号驱动一个微控制器去合成某种正弦波,其幅度和频率与每个聋人相适应。不幸的是这种系统在充满噪声和混响(或反射)自然环境中的性能较差。

3 基于人工神经网络算法的SIVO2系统

第二种助听器最近由GUY医院的工程部所设计,成为SIVO2,它将克服SIVO的许多限制或不足,采用了基于人工神经网络算法的数字信号处理技术,称为多层感知机,简称MLP(Multilayer Perceptron)。

经初步研究表明:在有噪声的情况下,这种多层感知机(即MLP)能成功地检测语音中的基波信号。

SIVO2系统的设计基本准则是:必须体积小巧,且一个电池能待机和实时处理语音工作12小时以上,后一点“实时处理语音工作”是非常重要的,因为说话人的基波频率变化特性能传送有用信息给耳聋患者。

SIVO2系统中,输入的语音送到三阶高通贝塞尔滤波器,如图2,该滤波器低端转折频率为80Hz,滤波器能将噪声滤去,而保存有用信息的线性相位响应。因为即使最大安静的房间内也存在一个大的次声(频率小于16Hz)噪声,约60到70分贝,如不滤去,则会影响听者注意力甚至对听者产生痛苦的感觉。

图2 基于神经网络算法的助听器结构图

滤波器的输出信号送到模拟集成电路AD28MSPO2的16位西格玛(Sigma)增量编码解码器,该集成电路有连续输出和抗假频干扰能力以及重新构成多种滤波器的能力,是一种可切换的高通滤波器,并且可进行可编程增益控制,编码解码器的采样频率为8kHz。

SIVO2系统的核心是德克萨斯仪器公司的高速16位定点DSP(数字信号处理器)芯片TMS32C51。它首先完成几个二阶IIR(递归滤波器)滤波器功能,以便把语声信号分为6个频率组(频率50Hz和30KHz之间分为6个频率组)。这6组信号输出然后再进行整流,以保持其正电压部分,再经过低通滤波器滤波,采样频率降到2KHz采样和进行对数压缩,最后才送DSP神经网络进行处理。这6组信号驱动6条延迟线(每条延迟线都有41级),延迟线形成MLP的输入向量[4]。

多层感知机部分包括六个处理单元和一个输出单元,六个处理单元之间双层全互联。MLP是用来识别语音基波的,MLP的输出去控制产生合适的正弦波,该正弦波再编码解码器,最后去驱动一个推挽式恒流助听器。

对所有的助听器来说,一个带决定性的设计考虑因数是其功耗大小,需要仔细地设计和作某些折中考虑。DSP芯片TMS32C51片内有4k字节RAM和可以用来利用的静态逻辑电路,RAM能用来存储数据,减少了芯片的通信量。研究表明,MLP工作于8位是适当的,它为在16位DSP中作进一步研究提供了足够的基础。

要使MLP发挥作用,其输出的非线性函数必须加到每个单元,通常采用的非线性函数是S型函数,而不包括除法和幂指数,因其运算太慢可能影响实时操作,采用查表算法,乘、加数据操作被减化,TMS32C51能在一个50ns周期内完成。

虽然对MLP来说8位工作是合适的,但是滤波器的组合软件必须以16位精度运行,以获得足够的动态范围和iir滤波器的稳定工作(因为Fir滤波器复杂,所以未用)。

总计,查表运算可以用于:S函数,输出基波作正弦波的合成,存储与耳聋患者感觉舒服的听觉曲线有关的频率以及与讲话人是男人、女人或小孩有关的频率偏移。

整个SIVO2系统是装在两块6层印制板上,一块装DSP,它有两片128k*8位的电可擦除E2PROM芯片和两片8k*8位的25nsCMOS静态SRAM。另一块印制板上装有麦克风放大器、高通噪声滤波器、编译码器和耳机功率放大器。整个系统用这种方法分开是因为每个患者都有一个合适的电气管子插在耳内,它以小电流仿真建立声音的感觉。

由电可擦除的E2PROM芯片存储程序编码和要查阅的表格,它还采用了Intel公司的“自举块”型BACK ROM器件,它有4个可保护、可擦除的部分。静态SRAM保存MLP的权值,它不能放入DSP的RAM,且每个部分都有它自己的“选通”线,以便能选择高字节或低字节以节省功率。

电可擦除E2PROM很适合这种应用,因为我们可以毫无困难地重新对助听器再编程,就像对RAM编程一样方便,且用了“自举块”技术,意味着即使发生某些程序运行错误时,也绝不会完全死机(系统瘫痪),可以“自举”(自启动之意)。

SIVO2系统采用电池供电,因此省电变得极为重要,系统绝不允许任何总线悬空(可以接为高阻),管脚悬空比较容易接受外界的电磁干扰,且将总线拉高(高电平)时在电阻上的功耗比起总线悬空的功耗要少的多。

4 结语

这种基于人工神经网络算法开发的助听器样机经过长期测试,效果很好,表明该系统获得了高度的成功。佩戴这种助听器的耳聋患者不仅能听到声音,而且在典型噪声情况环境下,声音听起来相对是和谐的,不同于一般的助听器放大后引起听者不舒服或感觉模糊。

猜你喜欢
正弦波助听器基波
220年前的助听器:科技的力量、社会的进步
单相正弦波变频电源设计与实现
关于助听器您需要了解的知识
采用BC5016S的纯正弦波逆变器设计及制作
基于跟踪微分器的基波测量方法研究
我是奶奶的“助听器”
眼镜助听器
基于多尺度形态学和Kalman滤波的基波分量提取
基于IEC62053-24静止式基波频率无功电能表标准对提高无功补偿效果的作用
利用基波相量变化率的快速选相方法