文档库 最新最全的文档下载
当前位置:文档库 › 基于BP神经网络的语音识别技术

基于BP神经网络的语音识别技术

基于BP神经网络的语音识别技术
基于BP神经网络的语音识别技术

上海海事大学神经网络与语音识别

院系: 物流工程学院

课程名称: 制造与物流决策支持系统学生姓名: 学号:

时间:

目录

一.绪论

计算机的飞速发展,使人们的生活方式发生了根本性的改变,鼠标、键盘,这些传统的人机接口使人们体会到了生活的便利。科学技术日新月异,假如让“机器”能够听懂人的语言,并根据其信息去执行人的意图,那么这无疑是最理想的人机智能接口方式,因此语音识别作为一门极具吸引力的学科应运而生,很多专家都指出语音识别技术将是未来十年信息技术领域十大重要的科技发展技术之一。

语音识别(Speech Recognition)是指,计算机从人类获取语音信息,对语音信息进行分析处理,准确地识别该语音信息的内容、含义,并对语音信息响应的过程。语音信号具有非稳定随机特性,这使得语音识别的难度大。目前人类甚至仍没有完全理解自身听觉神经系统的构造与原理,那么要求计算机能像人类一样地识别语音信号很有挑战性。

研究背景及意义

语言在人类的智能组成中充当着很重要的角色,人与人之间的交流和沟通大部分是通过语言的方式有效的完成。作为人与人之问交流最方便、自然、快捷的手段,人们自然希望它成为人与计算机交流的媒介。随着数字信号处理及计算机科学的飞速发展,人们对实现人机对话产生越来越迫切的要求,使得语音识别技术近年来得到了迅速的发展,语音识别技术的研究进入了一个比较成熟的时期。语音识别是一门交叉科学,它综合了声学、语言学、语音学、生理科学、数字信号处理、通信理论、电子技术、计算机科学、模式识别和人工智能等众多学科。也是人机交互最重要的一步。

语音识别的国内外研究现状

通过语音传递信息是人类最重要,最有效,和最方便的交换信息的形式,语

音识别主要指让机器转达人说的话,即在各种情况下,准确的识别出语音的内容,从而根据其信息,执行人的各种意图。

广义的语音识别包括说话人的识别和内容的识别两部分。这里所说的语音识别,是指内容识别方面。采用计算机进行语音识别到现在已经发展了50年。

从特征参数上改进,采用各种办法进行语音增强是一个研究方向,但是到目前为止,还没有一种办法能把语音信号完美地从噪音环境提取出来。语音识别有广泛的商业化运用前景,主要可以分为通用场合和专用场合两个方面。

研究内容

本文研究的主要内容是结合模式识别的基本理论,研究BP神经网络孤立词语音识别的问题,实现1-5共5个数字的识别。分析了语音信号的预处理,特征提取及BP神经网络算法实现。

二.语音识别技术

语音信号

语音信号是随时间变化的一维信号,由一连串的音素组成,各个音素的排列有一定的规则。语音具有声学特征的物理性质,声音质量与它的频率范围有关,语音信号的频谱分量主要集中在200~3400Hz的范围内。语音信号的另一个重要特点是它的短时性。语音信号的特征是随时间变化而变化,只有在一段很短的时间间隔中,才保持相对稳定的特性。研究表明,在5ms~40ms的范围内语音信号的频谱特性和一些物理特征基本保持不变。语音信号短时特征和短时参数包括它的短时能量、短时过零率、短时相关函数、短时频谱等。

语音信号的最基本组成单位是音素。音素可分成浊音和清音两大类。如果将只有背景噪声的情况定义为“无声”,那么音素可分成“无声”、“浊音”和“清音”三类。在短时分析的基础上可以判断一小段语音属于哪一类。如果是浊语音段,还可测定它的另一些重要参数,如基音频率和共振峰等。

语音信号的数学模型

建立语音信号的数学模型是语音信号处理的基础。从人的发音器官的机理来假设,将语音信号分为一些相继的短段进行处理,在这些短段中可以认为语音信号特征是不随着时间变化的平稳随机过程。这样在这些短段时间内表示语音信号时可以采用线性时不变模型。通过上面的分析,将语音生成系统分成三个部分,喉的部分称为声门,在声门(声带)以下,称为“声门子系统”,它负责产生激励振动,是“激励系统”。从声门到嘴唇的呼气通道是声道,是“声道系统”,声道的形状主要由嘴唇和舌头的位置来决定。在说话的时候,声门处气流冲击声带产生振动,然后通过声道响应变成声音,由于发不同音时,声道的形状不同,所以能够听到不同的语音。语音从嘴唇辐射出去,所以嘴唇以外是“辐射系统”。激励的不同情况发不同性质的音,激励一般分为浊音激励和清音激励。发浊音时声道受到声带振动的激励引起共振,产生间歇的类斜三角形脉冲;发清音时声道被阻碍形成湍流,可以把清音激励模拟成随机白噪声。完整的语音信号的数学模型可以用三个子模型:激励模型、声道模型、辐射模型的串联来表示。

激励模型一般分为浊音激励和清音激励。发浊音时,由于声带不断张开和关闭将产生间歇的脉冲波,这个脉冲波类似于斜三角形的脉冲。发清音时,无论是发阻塞音或摩擦音,声道都被阻碍形成湍流。所以,可把清音激励模拟成随机白噪声。

声道模型有两种最常见的建模方式。一是把声道视为由多个等长的不同截面积的管子串联而成的系统,按此观点推导出的叫“声管模型”;另一个是把声道视为一个谐振腔,按此推倒出的叫“共振峰模型”。

从声道模型输出的速度波与语音信号的声压波之倒比称为辐射阻抗,它表征口唇的辐射效应。由辐射引起的能量损耗正比于辐射阻抗的实部,所以辐射模型是一阶类高通滤波器。

语音识别系统结构

孤立词语音识别是对特定的不连续的词语作为处理单元。语音识别系统的基本组成一般可以分为预处理模块、特征值提取模块及模式匹配三个模块。如图所

示为语音识别系统结构框图。

图语音识别系统结构框图

从图的系统整体架构可以看到,建立基于BP神经网络的语音识别系统可分为两个阶段,即训练阶段和识别阶段。首先由用户通过麦克风输入语音形成原始语音,然后系统对其进行预处理。预处理包括预加重,加窗分帧和端点检测三个过程。系统的前端采用了端点检测,目的是在一段语音信号中确定起点和终点。在特征提取部分,本系统采用了MFCC作为特征参数,用于有效地区分数字1-5.

在训练阶段,通过说话人多次重复语音,本系统从原始语音样本中去除冗余信息,提取说话人的特征参数并存储为BP神经网络的输入样本,在此基础上建立输入与输出的BP神经网络模型。在识别阶段,待测语音经过预处理,使用已经训练好的BP神经网络进行识别得到结果。

语音信号预处理

图是语音信号的预处理的流程图。从图可以看到预处理模块包括预加重,加窗分帧和端点检测。前级预加重、加窗分帧及端点检测是语音识别的准备工作,每一个环节对整个识别系统的性能有着重要的影响。前级预处理主要是对信号进行一定的滤波和分帧;加窗分帧就是将语音信号进行分段处理,使语音信号连续并保持一定的重叠率:端点检测是确定语音有用信号的起始点与终止点,并通过一定的手段处理,将没有意义的语音信号去除,从而减少语音匹配识别模块的运算量,同时也可以提高系统的识别率。预处理不合理或语音起止点及终止点判别不够准确都会使后续的特征矢量提取及模式匹配过程等工作受到很大的影响,甚至达不到语音识别的效果,因此预处理工作作为语音识别的第一步工作,必须达到所需的要求,为下一步的特征参数提取做好铺垫。

图语音信号预处理流程图

语音信号的采样

Matlab环境中语音信号的采集可使用wavrecord(n,fs,ch,dtype)函数录制,也可使用Windows的“录音机”程序录制成.wav文件然后使用wavread(file) 函数读入。在本实验中,使用matlab的语音工具包录取0-共10段语音。如图所示为

数字0的训练语音的信号波形图,第(I)幅图为完整的语音波形,第(II)、(III)幅图分别为语音的起始部分和结束部分的放大波形图。

语音信号的分帧

语音信号是一种典型的非平稳信号,它的均值函数u(x)和自相关函数R(xl,x2)都随时间而发生较大的变化。但研究发现,语音信号在短时间内频谱特性保持平稳,即具有短时平稳特性。因此,在实际处理时可以将语音信号分成很小的时间段(约10~30ms),称之为“帧”,作为语音信号处理的最小单位,帧与帧的非重叠部分称为帧移,而将语音信号分成若干帧的过程称为分帧。分帧小能清楚地描绘语音信号的时变特征但计算量大;分帧大能减少计算量但相邻帧间变化不大,容易丢失信号特征。一般取帧长20ms ,帧移为帧长的1/3~1/2。

在语音信号数字处理中常用的窗函数是矩形窗、汉明窗等,它们的表达式如下(其中N 为帧长):

矩形窗:

??

?-≤≤=其他

,010

,1)(N n n ? (2-1)

汉明窗:

0.540.46cos(2/(1)),01

()0,n N n N n π?--≤≤-?=?

?

其他 (2-2)

语音信号的预加重

预加重是指在A /D 转换后加一个6dB /倍频程的高频提升滤波器,语音信号的平均功率谱由于受声门激励和口鼻辐射的影响,高频端大约在800Hz 以上按6dB /Oct(倍频程)跌落。所以求语音信号频谱时,频率越高相应的成份越小,高频部分的频率比低频部分的难求。因此,预加重的目的是加强语音中的高频共振峰,使语音信号的短时频谱变得更为平坦,还可以起到消除直流漂移、抑制随机噪声和提高清音部分能量的效果,便于进行频谱分析和声道参数分析。此外,通常的方法是使用一阶零点数字滤波器实现预加重,其形式为:

(2-3)

频域相对应的形式为:

(2-4)其中,a为预加重系数。

基于短时能量和过零率的端点检测

在语音信号的预处理中,端点检测是关键的一步,语音信号的模型参数和噪声模型参数以及自适应滤波器中的适应参数都得依赖对应的信号段(语音段或噪声段)来计算确定。因此,只有准确地判定语音信号的端点,才能正确地进行语音处理。

端点检测的目的是从包含语音的一般信号中确定出语音的起点以及终点,一

般采用平均能量或平均幅度值与过零率相乘的方法来判断。这种利用短时能量和短时平均过零率两种特征共同参与检测,也被称为双门限法。

(1)短时能量

设S(n)为加窗语音信号,第t帧语音的短时平均能量为:

(2-5)

(2-6)其中N为分析窗宽度,St(n)为第t帧语音信号中的第n个点的信号取样值。上面两式原理是相同的,但后式有利于区别小取样值和大取样值,不会因为取平方而造成很大的差异。短时平均能量是时域特征参数,把它用于模型参数时,应进行归一化处理。

短时能量主要用途有:

(1)可以区分浊音段和清音段,因为浊音的En比清音时大得多。

(2)可以用来区分声母与韵母的分界,有声与无声的分界,连字的分界等。

(3)作为一种超音段信息,用于语音识别中。

(2)短时过零率

短时过零表示一帧语音信号波形穿过横轴(零电平)的次数。对于连续语音信号,过零意味着时域波形通过时间轴;而对于离散信号,如果相邻的取样值的改变符号则称为过零。过零率就是样本改变符号次数,定义语音信号寿(m)的短时

过零率Zn 为:

∑∞

-∞

=---=

m n m n m x m x Z )()]1(sgn[)](sgn[ω (2-7)

式中sgn[ ]是符号函数,即:

)0()

0(,,11]sgn[<≥?

?

?-=x x x (2-8) 短时过零率的主要用途为区分浊音和清音,浊音具有较低的过零率,而清音则具有较高的过零率。

(3)双门限检测的方法

在开始进行端点检测之前,首先为短时能量和过零率分别确定两个门限。一个是比较低的门限,其数值比较小,对信号的变化比较敏感,很容易就会被超过。另一个是比较高的门限,数值比较大,信号必须达到一定的强度,该门限才可能被超过。低门限被超过未必就是语音的开始,有可能是时间很短的噪声引起的。高门限被超过则可以基本确信是由于语音信号引起的。

双门限端点检测程序见附录,双门限法仿真流程图如下:

图3-4 双门限法仿真程序流程图

整个语音信号的端点检测可以分成四段:静音、过渡段、语音段、结束。在静音段,如果能量或过零率超越了低门限,就应该开始标记起始点,进入过渡段。在过波段中,由于参数的数值比较小,不能确信是否处于真伪的语音段,因此只要两个参数的数值回落到低l、J限以下,就将当前状态恢复到静音状态。而如果在过渡段中两个参数中的任一个超过了高门限,就可以确信进入语音段了。当前状态处于语音段时,如果两个参数的数值降低到低门限以下,而且总的计时长度小于最短时间门限,则认为这是段噪音,继续扫描以后的语音数据。否则就标记好结束端点,并返回。从而达到抗干扰的目的、提高识别率。如下图所示。

特征参数提取

特征值的提取是对原始的语音信号运用一定的数字信号处理技术进行适当的处理,从而得到一个矢量序列,这个矢量序列可以代表原始的语音信号所携带的信息,初步实现数据压缩。特征参数主要有:能量、幅度、过零率、频谱、倒谱和功率谱等。

考虑到其他因素的影响,还有许多基于基本参数的参数,本文选用了MEL 频率倒谱系数(MFCC)进行提取特征参数。

MFCC系数的计算是以“bark”为其频率基准的,它和线性频率的转换关系是:

(2-9) MFCC系数也是按帧计算的,首先要通过FFT得到该帧信号的功率谱S(n),转换为Mel频率下的功率谱。这需要在计算之前先在语音的频谱范围内设置若干个带通滤波器:

NHm(n) m=0,1,…,M-1; n=0,1,…,N/2-1 (2-10)M为滤波器的个数,通常取24,与临界带的个数一样;N为一帧语音信号的点数,为了计算FFT的方便,通常取256。滤波器在频域上为简单的三角形,其中心频率fm在Mel频率轴上是均匀分布的。

从图就可以看到MFCC系数的计算过程如下:

(1) 预处理:确定每一帧语音采样序列的长度(如N=256),并对每帧序列s(n)

进行预加重、分帧和加窗处理;

(2) 计算离散功率谱:对预处理的每帧进行离散FFT变换得到其频谱,再取模的平方作为离散功率谱S(n);

(3) 将功率谱通过滤波器组:计算S(n)通过M个Hm(n)后所得的功率值,即计算S(n)和Hm(n)在各离散频率点上的乘积之和,得到M个参数Pm,m=0,1,……M-1;

(4) 取对数:计算Pm的自然对数,得到Lm,m=0,1,……M-1;

(5) 离散余弦变换:对Lm计算其离散余弦变换,得到D m,m=0,1,……M-1,舍去代表直流成份的D0,取D1,D2,……,Dk作为MFCC参数。

图语音信号MFCC系数的算法流程图

三.基于BP神经网络语音识别算法实现BP神经网络原理

BP神经网络又称误差反向传递神经网络。它是一种依靠反馈值来不断调整节点之间的连接权值而构建的一种网络模型。它的整个体系结构如图1所示,分为输入层、隐藏层和输出层,其中隐藏层根据具体情况的需要,可以是一层结构也可为多层结构。BP算法的基本思想是:学习过程由信号的正向传播与误差的反向传播两个过程组成。正向传播时,输入样本从输人层传人,经各隐藏层逐层处理后,传向输出层。若输出层的实际输出与期望的输出(教师信号)不符,则转入误差的反向传播阶段。误差反传是将输出误差以某种形式通过隐藏层向输入层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号即作为修正各单元权值的依据。这种信号正向传播与误差反向传播的各层权值调整过程,是周而复始的进行的。权值不断调整的过程,也就是网络的学习训练过程,此过程一直进行到网络输出的误差减少到可以接受的程度,或进行到预先设定的学习次数为止。

图 BP神经网络体系结构

输入层神经元个数的确定

将数字图像的特征向量作为神经网络的输入,所以神经网络的输入层神经元个数等于特征向量的维数,数字语音识别提取的MFCC特征是一个行数row不确定,列数为24的二位向量,用此row×20=all个元素组成一个数字字符的列矩阵,即数字字符的特征向量,由于row都不一样,所以根据经验使all=600,不够600的直接用零补充。即600个输入神经元。输出层神经元个数的确定因为要识别5个数字,因此输出选择为5×1的矩阵,即输出节点数为5。当数字图像1—5输入神经网络后在输出神经元对应的位置上为1,其他的位置为0。输人数字0,第1个输出神经元为1,其他为0;输入数字1,第2个输出神经元为1,其他为0;以此类推。

网络隐含层数的确定

隐含层数越多,神经网络学习速度就越慢,根据Kosmogorov定理,在合理的结构和恰当的权值条件下,3层BP网络可以逼近任意的连续函数,因此,我们选取结构相对简单的3层BP网络。

隐含层神经元个数的确定

一般情况下,隐含层神经元个数是根据网络收敛性能的好坏来确定的,在总结大量网络结构的基础上,得出经验公式:s=sqr(0.43nm+ ++++其中n为输人层神经元个数,m为输出层神经元个数,根据以上公式,可以得出隐含层神经元个数为53。

BP神经网络构造

建立一个前向BP神经网络函数newff:net=newff(minmax(P),[600,53,5],{‘logsig’,‘logsig’,‘logsig’},‘traincgb’);其中minmax(P)为神经网络的对它的600个输入元素的最大值和最小值的限制。P为训练样本集合。[600,53,5]为该神经网络的层结构。{‘logsig’,‘logsig’,‘logsig’}为神经网络的

各层的转移函数,均设置为对数S型激活函数。训练函数采用traincgb ,即采用Powel1-Beale共轭梯度法训练。

BP神经网络的训练

3.6.1训练样本集合和目标值集合

数字语音识别提取的MFCC特征,由1~5这10个数字的特征列向量组成一个600×5的输入矢量,记为:sample_group=[1,2,,5 ];式中的1,2,,5代表数字的特征列向量。与输入矢量对应的目标矢量是希望每一个数字输入神经网络后在输出神经元对应的位置上为1,其他的位置为0。为此取目标矢量为对角线上为1的5×5的单位阵,用matlab命令实现为:targets=eye(5);

本文中1—5共5类数据,每类取4个做训练样本,即4组输入矢量构成训练样本集合训练神经网络,训练样本集合如下:P=[samples_groupl,

samples_group2,,samples_group5];P=double(P);与训练样本集合相对应的目标值集合由20组目标矢量构成,目标值集合如下:T=[targets,targets,,targets,targets]

3.6.2 网络训练

本文神经网络训练误差性能目标值设置为0.0001,当神经网络训练次数达到最大值1 000或者神经网络的误差平方降到0.0001以下,终止训练。程序代码如下:

net.trainParam.epochs=1000;%最大训练次数

net.trainParam.show=20;%显示的间隔次数

net.trainParam.min_grad=le-10;%最小执行梯度

net.trainParam.goal=0.0001;%性能目标值

net.1ayers{1}.initFcn=‘initwb’;%网络层的初始化函数选为‘initwb’,使下面的输入层初始化语句randnr’有效

net.inputWeights{1,1}.initFcn=‘randnr’;%输入层权值向量初始化

net.1ayerWeights{2,1}.initFcn=‘randnr’;%第1网络层到第2网络层

的权值向量初始化

net=init(net);%初始化网络

[net,tr]=train(net,P,T);%网络训练

其中[net,tr]中的net为更新了权值的神经网络,tr为训练记录(次数和每次训练的误差)。从相关的神经网络训练中可以看出,当神经网络的误差平方0.0000718时,小于性能目标值0.0001,神经网络训练结束,开始进行系统的性能测试。图3为学习误差曲线图。

图神经网络学习误差曲线

网络训练

测试函数为神经网络仿真函数,testout=sim(net,test_sample)其中net为训练完成了的网络,test_sample为测试样本的特征向量,testout为神经网络的输出。部分程序代码如下:

testout=sim(net,test_sample);%神经网络的仿真

max_value=max(testout);%输出神经元最大值

if(max_value> %输出神经元的最大值大于0.7才进行数字识别,小于0.7时拒绝识别

testout=compet(testout);

number=find(testout= =1);%数字识别结果

end

语音的识别结果

本系统测试时,通过话筒直接输入测试语音1,2,3,4,5,系统会先提取的语音特征,然后根据事前存好的输入样本自动训练网络,最后测试样本,得到输出结果。

表 BP神经网络算法识别率

其中可以看出1,3,5这三个语音的识别率都是为100%。完全识别正确。2,4这两个语音段的识别率都为80%,识别正确了4次,错误了1次。造成这种情况的原因可能是:

(1)外界环境的干扰,噪声的干扰。

(2)每次说话的语调,语音的不同。

本课题的主程序包括五个调用子程序,分别为分裂信号成重叠框架的enframe;实现特征提取的mfcc;判断矩阵的一个滤波器组melbankm;将多组mfcc系数取平均的。将取所有音频的mfcc系数处理成神经网络函数所需的输入格式的。

四.总结

通过对孤立词语音识别系统中各个模块的MATLAB仿真,可知每个模块都能满足系统的识别要求;从语音信号的端点检测看出,对不同人和不同的孤立词,该方法能准确的检测出起始点和终止点,为信号的特征参数提取做准备工作;而特征参数的提取通过MFCC算法也能很好的提取对信号识别的参数值;

应用BP神经网络算法对语音进行模式匹配,从仿真的结果和数据分析,可以清楚的看到各个语音的识别率。最后通过对一些孤立词语音进行识别的验证,得出整个系统在实际应用当中的可行性。

参考文献

[1]赵力. 语音信号处理[M] . 北京: 机械工业出版社, 2003

[2]蔡莲红, 黄德智, 蔡锐. 现代语音技术基础与应用[M] . 北京: 清华

[3]张雄伟,陈亮,杨吉斌. 现代语音处理技术及应用[M]. 北京:机械工业出版社, 2003.

[4]朱淑琴,裘雪红.一种精确检测语音端点的方法.计算机仿真,2004,22(3):214-216

[5]王让定,柴佩琪.语音倒谱特征的研究[J].计算机工程,2003,29(13):31 - 33.

[6]MATLAB中文论坛.MATLAB神经网络30个案例分析[M].北京:北京航空航天大学出版社,2010

[7]谭保华,熊健民,刘幺和.语音识别技术概述[J].郧阳师范高等专科学校学报,2004.

[8]詹新明,杨灿等.基于MATLAB和BP网络的语音识别系统[J].微计算机信息.2009,9(1):176-178

[9]万春.基于DTW的孤立词语音识别研究和算法改进.集美人学学报(自然科学版),2002(6):104—108.

[10]刘长明,任一峰.语音识别中DTW特征匹配的改进算法研究.中北大学学报(自然科学舨),2006,27(1):37-40

[11]We iH an, Cheong- Fat Chan, Ch iu- S ing Choy, et A n effic ientMFCC extraction method inspeech recogn ition [C] . IEEE Internat iona l Symposium on C ircu its and Systems, 2006: 145.

[12]Yu Hongzhi A research on recognit ion of T ibetan speakers based on MFCC and Delta features. International Forum on Computer Sc ience- Techno logy and App lications, 2009: 234.

[13]H Hermansky, HMorgan. RASTA p rocessing of speech[J]. IEEETrans on Speech and Audio Processing, 1994, 2(4) : 578 - 589.

[14]马莉,党幼云.特定人孤立词语音识别系统的仿真与分析.西安工程科技学院学报.2007,21(03):10-12.

附录

仿真实验所用程序

1.语音预处理端点检测程序:

[x,fs,nbits]=wavread('');

x = x / max(abs(x));%幅度归一化到[-1,1]

x = double(x);

x = x / max(abs(x));

%常数设置

FrameLen = 240;%指定帧长

FrameInc = 80;%指定帧移

amp1 = 20;

amp2 = 10;

zcr1 = 10;

zcr2 = 5;

maxsilence = 8; % 6*10ms = 30ms

minlen = 15; % 15*10ms = 150ms

status = 0;

count = 0;

silence = 0;

%计算过零率

tmp1 = enframe(x(1:end-1), FrameLen, FrameInc);%分帧处理,tmp1和tmp2为分帧后形成的二维数组

tmp2 = enframe(x(2:end) , FrameLen, FrameInc);

signs = (tmp1.*tmp2)<0;

diffs = (tmp1 -tmp2)>;

zcr = sum(signs.*diffs, 2);

%计算短时能量

amp = sum(abs(enframe(filter([1 ], 1, x), FrameLen, FrameInc)), 2);

%调整能量门限

amp1 = min(amp1, max(amp)/4);

amp2 = min(amp2, max(amp)/8);

%开始端点检测

x1 = [];?

x2 = [];

for n=1:length(zcr)

goto = 0;

switch status

case {0,1} % 0 = 静音, 1 = 可能开始

if amp(n) > amp1 % 确信进入语音段

x1(end+1) = max(n-count-1,1);

status = 2;

silence = 0;

count = count + 1;

elseif amp(n) > amp2 | ... % 可能处于语音段

zcr(n) > zcr2

status = 1;

count = count + 1;

else % 静音状态

status = 0;

count = 0;

if length(x1)~=length(x2)

x2(end+1)=x1(end)+count-silence/2-1;

end

end

case 2, % 2 = 语音段

if amp(n) > amp2 | ... % 保持在语音段

zcr(n) > zcr2

count = count + 1;

else % 语音将结束

silence = silence+1;

if silence < maxsilence % 静音还不够长,尚未结束

count = count + 1;

elseif count < minlen % 语音长度太短,认为是噪声

status = 0;

silence = 0;

count = 0;

else % 语音结束

status = 3;

end

end

case 3,

status=0;

x2(end+1)=x1(end)+count-silence/2-1;

end

end?

% count = count-silence/2;

% v_count(i)=v_count(i)+v_count(i-1);

% v_silence(i)=v_count(i)+v_silence(i);

if length(x2)

x2(end+1)=length(zcr);

end

subplot(311)

plot(x)

axis([1 length(x) -1 1])

ylabel('Speech');

for i=1:length(x2);

line([x1(i)*FrameInc x1(i)*FrameInc], [-1 1], 'Color', 'red'); line([x2(i)*FrameInc x2(i)*FrameInc], [-1 1], 'Color', 'green'); end

% line([x1*FrameInc x1*FrameInc], [-1 1], 'Color', 'red');

% line([x2*FrameInc x2*FrameInc], [-1 1], 'Color', 'red'); subplot(312)

plot(amp);

axis([1 length(amp) 0 max(amp)])

ylabel('Energy');

for i=1:length(x2);

line([x1(i) x1(i)], [min(amp),max(amp)], 'Color', 'red');

line([x2(i) x2(i)], [min(amp),max(amp)], 'Color', 'green');

end

subplot(313)

plot(zcr);

axis([1 length(zcr) 0 max(zcr)])

ylabel('ZCR');

for i=1:length(x2);

line([x1(i) x1(i)], [min(zcr),max(zcr)], 'Color', 'red');

line([x2(i) x2(i)], [min(zcr),max(zcr)], 'Color', 'green');

end

2.神经网络训练程序

N = 5;

M = 3;

TestMW = [ 1 2 3];

T1 = [1 0 0]'

T3 = [0 1 0]'

T5 = [0 0 1]'

Ttemp = [T1 T3 T5]

T = Ttemp;

for i=1:N-1

T = [T Ttemp];

end

PS = SampleCreate('S',N,UnitLength);

PR1 = min(PS');

PR1 = PR1';

PR2 = max(PS');

PR2 = PR2';

PR = [PR1 PR2];

if size(T,2)==size(PS,2)

netBP =

newff(PR,[30,10,3],{'tansig','tansig','tansig'},'trainbfg');

[net tr] = train(netBP,PS,T);

plotperf(tr); Test = SampleCreate('T',M,UnitLength);

Y = sim(net,Test)

'OK'

else

'êy2¥'

end

%end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%

figure(121);

title('·±×');

xlabel('±êμ');

ylabel('ù±Dòo');

imagesc([1:size(Y,2)],[1 3 5],abs(Y));

colormap(gray);

hold off; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%

Standard = Ttemp;

for j=1:M-1

Standard = [Standard Ttemp];

end

delta = Standard-Y; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%

deltaSqr = delta.*delta;

deltaSqrt = sqrt(sum(deltaSqr)/3); figure(1);

plot(deltaSqrt);

hold on;

title('ù·ùó2');

grid on;

for k=1:length(TestMW)

for l=3*(k-1)+1:3*k switch(TestMW(k))

case 1

sign = 'ko';

case 2

sign = 'r*';

case 3

sign = 'md';

otherwise

sign = 'y.';

end

plot(l,deltaSqrt(l),sign);

end

end

hold off; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%

%ê1óμóoí

deltaOp = abs(delta);

deltaOpS = sum(deltaOp)/3;

人工神经网络原理及实际应用

人工神经网络原理及实际应用 摘要:本文就主要讲述一下神经网络的基本原理,特别是BP神经网络原理,以及它在实际工程中的应用。 关键词:神经网络、BP算法、鲁棒自适应控制、Smith-PID 本世纪初,科学家们就一直探究大脑构筑函数和思维运行机理。特别是近二十年来。对大脑有关的感觉器官的仿生做了不少工作,人脑含有数亿个神经元,并以特殊的复杂形式组成在一起,它能够在“计算"某些问题(如难以用数学描述或非确定性问题等)时,比目前最快的计算机还要快许多倍。大脑的信号传导速度要比电子元件的信号传导要慢百万倍,然而,大脑的信息处理速度比电子元件的处理速度快许多倍,因此科学家推测大脑的信息处理方式和思维方式是非常复杂的,是一个复杂并行信息处理系统。1943年Macullocu和Pitts融合了生物物理学和数学提出了第一个神经元模型。从这以后,人工神经网络经历了发展,停滞,再发展的过程,时至今日发展正走向成熟,在广泛领域得到了令人鼓舞的应用成果。本文就主要讲述一下神经网络的原理,特别是BP神经网络原理,以及它在实际中的应用。 1.神经网络的基本原理 因为人工神经网络是模拟人和动物的神经网络的某种结构和功能的模拟,所以要了解神经网络的工作原理,所以我们首先要了解生物神经元。其结构如下图所示: 从上图可看出生物神经元它包括,细胞体:由细胞核、细胞质与细胞膜组成;

轴突:是从细胞体向外伸出的细长部分,也就是神经纤维。轴突是神经细胞的输出端,通过它向外传出神经冲动;树突:是细胞体向外伸出的许多较短的树枝状分支。它们是细胞的输入端,接受来自其它神经元的冲动;突触:神经元之间相互连接的地方,既是神经末梢与树突相接触的交界面。 对于从同一树突先后传入的神经冲动,以及同一时间从不同树突输入的神经冲动,神经细胞均可加以综合处理,处理的结果可使细胞膜电位升高;当膜电位升高到一阀值(约40mV),细胞进入兴奋状态,产生神经冲动,并由轴突输出神经冲动;当输入的冲动减小,综合处理的结果使膜电位下降,当下降到阀值时。细胞进入抑制状态,此时无神经冲动输出。“兴奋”和“抑制”,神经细胞必呈其一。 突触界面具有脉冲/电位信号转换功能,即类似于D/A转换功能。沿轴突和树突传递的是等幅、恒宽、编码的离散电脉冲信号。细胞中膜电位是连续的模拟量。 神经冲动信号的传导速度在1~150m/s之间,随纤维的粗细,髓鞘的有无而不同。 神经细胞的重要特点是具有学习功能并有遗忘和疲劳效应。总之,随着对生物神经元的深入研究,揭示出神经元不是简单的双稳逻辑元件而是微型生物信息处理机制和控制机。 而神经网络的基本原理也就是对生物神经元进行尽可能的模拟,当然,以目前的理论水平,制造水平,和应用水平,还与人脑神经网络的有着很大的差别,它只是对人脑神经网络有选择的,单一的,简化的构造和性能模拟,从而形成了不同功能的,多种类型的,不同层次的神经网络模型。 2.BP神经网络 目前,再这一基本原理上已发展了几十种神经网络,例如Hopficld模型,Feldmann等的连接型网络模型,Hinton等的玻尔茨曼机模型,以及Rumelhart 等的多层感知机模型和Kohonen的自组织网络模型等等。在这众多神经网络模型中,应用最广泛的是多层感知机神经网络。 这里我们重点的讲述一下BP神经网络。多层感知机神经网络的研究始于50年代,但一直进展不大。直到1985年,Rumelhart等人提出了误差反向传递学习算法(即BP算),实现了Minsky的多层网络设想,其网络模型如下图所示。它可以分为输入层,影层(也叫中间层),和输出层,其中中间层可以是一层,也可以多层,看实际情况而定。

基于BP神经网络的语音识别技术

海事大学 神经网络与语音识别 院系: 物流工程学院 课程名称: 制造与物流决策支持系统学生姓名: 学号: 时间:

目录 一.绪论 (3) 1.1 研究背景及意义 (3) 1.2 语音识别的国外研究现状 (3) 1.3研究容 (4) 二.语音识别技术 (5) 2.1语音信号 (5) 2.2语音信号的数学模型 (5) 2.3 语音识别系统结构 (6) 2.4 语音信号预处理 (7) 2.4.1 语音信号的采样 (8) 2.4.2语音信号的分帧 (8) 2.4.3语音信号的预加重 (9) 2.4.4 基于短时能量和过零率的端点检测 (9) 2.5 特征参数提取 (12) 三.基于BP神经网络语音识别算法实现 (14) 3.1 BP神经网络原理 (14) 3.2 输入层神经元个数的确定 (14) 3.3网络隐含层数的确定 (15) 3.4隐含层神经元个数的确定 (15) 3.5 BP神经网络构造 (15) 3.6 BP神经网络的训练 (16) 3.6.1训练样本集合和目标值集合 (16) 3.6.2 网络训练 (16) 3.7网络训练 (17) 3.8 语音的识别结果 (18) 四.总结 (19) 参考文献 (20) 附录 (21)

一.绪论 计算机的飞速发展,使人们的生活方式发生了根本性的改变,鼠标、键盘,这些传统的人机接口使人们体会到了生活的便利。科学技术日新月异,假如让“机器”能够听懂人的语言,并根据其信息去执行人的意图,那么这无疑是最理想的人机智能接口方式,因此语音识别作为一门极具吸引力的学科应运而生,很多专家都指出语音识别技术将是未来十年信息技术领域十大重要的科技发展技术之一。 语音识别(Speech Recognition)是指,计算机从人类获取语音信息,对语音信息进行分析处理,准确地识别该语音信息的容、含义,并对语音信息响应的过程。语音信号具有非稳定随机特性,这使得语音识别的难度大。目前人类甚至仍没有完全理解自身听觉神经系统的构造与原理,那么要求计算机能像人类一样地识别语音信号很有挑战性。 1.1 研究背景及意义 语言在人类的智能组成中充当着很重要的角色,人与人之间的交流和沟通大部分是通过语言的方式有效的完成。作为人与人之问交流最方便、自然、快捷的手段,人们自然希望它成为人与计算机交流的媒介。随着数字信号处理及计算机科学的飞速发展,人们对实现人机对话产生越来越迫切的要求,使得语音识别技术近年来得到了迅速的发展,语音识别技术的研究进入了一个比较成熟的时期。语音识别是一门交叉科学,它综合了声学、语言学、语音学、生理科学、数字信号处理、通信理论、电子技术、计算机科学、模式识别和人工智能等众多学科。也是人机交互最重要的一步。 1.2 语音识别的国外研究现状 通过语音传递信息是人类最重要,最有效,和最方便的交换信息的形式,语音识别主要指让机器转达人说的话,即在各种情况下,准确的识别出语音的容,

人工神经网络的发展及应用

人工神经网络的发展与应用 神经网络发展 启蒙时期 启蒙时期开始于1980年美国著名心理学家W.James关于人脑结构与功能的研究,结束于1969年Minsky和Pape~发表的《感知器》(Perceptron)一书。早在1943年,心理学家McCulloch和数学家Pitts合作提出了形式神经元的数学模型(即M—P模型),该模型把神经细胞的动作描述为:1神经元的活动表现为兴奋或抑制的二值变化;2任何兴奋性突触有输入激励后,使神经元兴奋与神经元先前的动作状态无关;3任何抑制性突触有输入激励后,使神经元抑制;4突触的值不随时间改变;5突触从感知输入到传送出一个输出脉冲的延迟时问是0.5ms。可见,M—P模型是用逻辑的数学工具研究客观世界的事件在形式神经网络中的表述。现在来看M—P 模型尽管过于简单,而且其观点也并非完全正确,但是其理论有一定的贡献。因此,M—P模型被认为开创了神经科学理论研究的新时代。1949年,心理学家D.0.Hebb 提出了神经元之间突触联系强度可变的假设,并据此提出神经元的学习规则——Hebb规则,为神经网络的学习算法奠定了基础。1957年,计算机学家FrankRosenblatt提出了一种具有三层网络特性的神经网络结构,称为“感知器”(Perceptron),它是由阈值性神经元组成,试图模拟动物和人脑的感知学习能力,Rosenblatt认为信息被包含在相互连接或联合之中,而不是反映在拓扑结构的表示法中;另外,对于如何存储影响认知和行为的信息问题,他认为,存储的信息在神经网络系统内开始形成新的连接或传递链路后,新 的刺激将会通过这些新建立的链路自动地激活适当的响应部分,而不是要求任何识别或坚定他们的过程。1962年Widrow提出了自适应线性元件(Ada—line),它是连续取值的线性网络,主要用于自适应信号处理和自适应控制。 低潮期 人工智能的创始人之一Minkey和pape~经过数年研究,对以感知器为代表的网络系统的功能及其局限性从数学上做了深入的研究,于1969年出版了很有影响的《Perceptron)一书,该书提出了感知器不可能实现复杂的逻辑函数,这对当时的人工神经网络研究产生了极大的负面影响,从而使神经网络研究处于低潮时期。引起低潮的更重要的原因是:20世纪7O年代以来集成电路和微电子技术的迅猛发展,使传统的冯·诺伊曼型计算机进入发展的全盛时期,因此暂时掩盖了发展新型计算机和寻求新的神经网络的必要性和迫切性。但是在此时期,波士顿大学的S.Grossberg教授和赫尔辛基大学的Koho—nen教授,仍致力于神经网络的研究,分别提出了自适应共振理论(Adaptive Resonance Theory)和自组织特征映射模型(SOM)。以上开创性的研究成果和工作虽然未能引起当时人们的普遍重视,但其科学价值却不可磨灭,它们为神经网络的进一步发展奠定了基础。 复兴时期 20世纪80年代以来,由于以逻辑推理为基础的人工智能理论和冯·诺伊曼型计算机在处理诸如视觉、听觉、联想记忆等智能信息处理问题上受到挫折,促使人们

神经网络在语音识别上应用

Harbin Institute of Technology 神经网络与智能信号处理 实验报告 神经网络实验报告 1、实验名称: 神经网络在语音识别上的应用 2、实验目的: 进一步了解神经网络在语音识别上的应用,了解神经网络的基本原理,学习神经网络的算法,还可以进一步分析不同的隐节点数以及训练步数对误差性能的影响。 3、实验要求: 1、设计一个标准的BP学习算法网络来对语音信号26个字母进行识别。 2、在训练时采用不同的隐含层神经元个数,分析其对网络性能、语音识别系统的识别率的影响。 3、用所创建的BP神经网络进行26个字母的语音识别,观察并记录结果,并分析其误差。 4、实验步骤: 1、语音识别的基本原理

语音识别的总体流程如下: 语音输入时要先经过预处理,包括预加重、分帧加窗等。然后进行特征提取,该实验中的特征参数为MFCC 参数。语音特征参数的时间序列构成语音的模式,将其与获得的参考模式逐一比较,获得最佳匹配的参考模式便是识别结果。 由于语音信号的复杂性,所以在一开始在语音信号输入语音识别系统时需要进行预处理,预处理包括预加重,分帧加窗,端点检测等。预加重的目的是为了加强语音的高频部分,以便在特征提取阶段进行频谱分析。分帧加窗的目的是为了使帧与帧之间平滑过渡,保持连续性以及保持语音信号的短时平稳性,降低由于不连续而产生的Gibbs 效应。端点检测的目的就是从语音信号序列中截取实际有效的语音信号。 特征提取阶段,是从语音数据中提取能反映语音信号特征和变化规律的参数,以唯一表征语音,这儿选用的语音信号特征参数为MEL 频率倒谱系数,即MFCC 。MEL 频率倒谱的实现过程如下图所示: (1)对语音信号进行预处理,加窗、分帧将其变为短时信号。 (2) 将短时时域信号转变为频域信号,并计算其短时能量,离散傅立叶变换。将时域信号后补若干0形成长为N 的序列,再经过离散傅立叶变换得到线性x(n)频谱,变换公式: X (k ) 0n,k N-1 X (k )=∑N ?1n =0x(n)e ?j2πk n ≤≤(3)在频标内三角带通滤波器个加于坐标得到滤波器组,转化关系为f mel =2595log (1+f hz 700) (4)求对数能量。为了使计算结果对噪声和谱估计噪声有更好的鲁棒性,一般将上述经过Mel 频谱取对数能量。则由线性频谱得到对数频谱的总的X(k)S(m)传递函数为:

人工神经网络的发展及应用

人工神经网络的发展及应用 西安邮电学院电信系樊宏西北电力设计院王勇日期:2005 1-21 1 人工神经网络的发展 1.1 人工神经网络基本理论 1.1.1 神经生物学基础生物神经系统可以简略地认为是以神经元为信号的处理单元,通过广泛的突触联系形成的信息处理集团,其物质结构基础和功能单元是脑神经细胞,即神经元(neuron) 。 (1)神经元具有信号的输人、整合、输出三种主要功能作用行为,结构如图1 所示: (2)突触是整个神经系统各单元间信号传递驿站,它构成各神经元之间广泛的联接。 (3)大脑皮质的神经元联接模式是生物体的遗传性与突触联接强度可塑性相互作用的产物,其变化是先天遗传信息确定的总框架下有限的自组织过程。 1.1.2 建模方法神经元的数量早在胎儿时期就已固定,后天的脑生长主要是指树突和轴突从神经细胞体中长出并形成突触联系,这就是一般人工神经网络建模方法的生物学依据。人脑建模一般可有两种方法:①神经生物学模型方法,即根据微观神经生物学知识的积累,把脑神经系统的结构及机理逐步解释清楚,在此基础上建立脑功能模型;②神 经计算模型方法,即首先建立粗略近似的数学模型并研究该模型的动力学特性,然后冉与真实对象作比较(仿真处理方法)。1.1.3 概

念人工神经网络用物理町实现系统采模仿人脑神经系统的结构和功能,是一门新兴的前沿交义学科,其概念以T.Kohonen.Pr 的论述 最具代表性:人工神经网络就是由简单的处理单元(通常为适应性神经元,模型见图2)组成的并行互联网络,它的组织能够模拟生物神 经系统对真实世界物体所作出的交互反应。 1.2 人工神经网络的发展 人工神经网络的研究始于40 年代初。半个世纪以来,经历了兴起、高潮与萧条、高潮及稳步发展的较为曲折的道路。1943 年,心理学家W.S.Mcculloch 和数理逻辑学家W.Pitts 提出了M—P 模型, 这是第一个用数理语言描述脑的信息处理过程的模型,虽然神经元的功能比较弱,但它为以后的研究工作提供了依据。1949 年,心理学家D. O. Hebb提出突触联系可变的假设,根据这一假设提出的学习规律为神经网络的学习算法奠定了基础。1957 年,计算机科学家Rosenblatt 提出了著名的感知机模型,它的模型包含了现代计算机的一些原理,是第一个完整的人工神经网络。1969 年,美国著名人工智能学者M.Minsky 和S.Papert 编写了影响很大的Perceptron 一书,从理论上证明单层感知机的能力有限,诸如不能解决异或问题,而且他们推测多层网络的感知能也不过如此,在这之后近10 年,神经网络研究进入了一个缓慢发展的萧条期。美国生物物理学家J.J.Hopfield 于1982年、1984 年在美国科学院院刊发表的两篇文章,有力地推动了神经网络的研究,引起了研究神经网络的

语音识别技术文献综述

语音识别技术综述 The summarization of speech recognition 张永双 苏州大学 摘要 本文回顾了语音识别技术的发展历史,综述了语音识别系统的结构、分类及基本方法,分析了语音识别技术面临的问题及发展方向。 关键词:语音识别;特征;匹配 Abstact This article review the courses of speech recognition technology progress ,summarize the structure,classifications and basic methods of speech recognition system and analyze the direction and the issues which speech recognition technology development may confront with. Key words: speech recognition;character;matching 引言 语音识别技术就是让机器通过识别和理解过程把语音信号转变为相应的文本或命令的高技术。语音识别是一门交叉学科,所涉及的领域有信号处理、模式识别、概率论和信息论、发声机理和听觉机理、人工智能等等,甚至还涉及到人的体态语言(如人民在说话时的表情手势等行为动作可帮助对方理解)。其应用领域也非常广,例如相对于键盘输入方法的语音输入系统、可用于工业控制的语音控制系统及服务领域的智能对话查询系统,在信息高度化的今天,语音识别技术及其应用已成为信息社会不可或缺的重要组成部分。 1.语音识别技术的发展历史 语音识别技术的研究开始二十世纪50年代。1952年,AT&Tbell实验室的Davis等人成功研制出了世界上第一个能识别十个英文数字发音的实验系统:Audry系统。

人工神经网络题库

人工神经网络 系别:计算机工程系 班级: 1120543 班 学号: 13 号 姓名: 日期:2014年10月23日

人工神经网络 摘要:人工神经网络是一种应用类似于大脑神经突触联接的结构进行信息处理的数学模型。在工程与学术界也常直接简称为神经网络或类神经网络。神经网络是一种运算模型,由大量的节点(或称神经元)之间相互联接构成,由大量处理单元互联组成的非线性、自适应信息处理系统。它是在现代神经科学研究成果的基础上提出的,试图通过模拟大脑神经网络处理、记忆信息的方式进行信息处理。 关键词:神经元;神经网络;人工神经网络;智能; 引言 人工神经网络的构筑理念是受到生物(人或其他动物)神经网络功能的运作启发而产生的。人工神经网络通常是通过一个基于数学统计学类型的学习方法(Learning Method )得以优化,所以人工神经网络也是数学统计学方法的一种实际应用,通过统计学的标准数学方法我们能够得到大量的可以用函数来表达的局部结构空间,另一方面在人工智能学的人工感知领域,我们通过数学统计学的应用可以来做人工感知方面的决定问题(也就是说通过统计学的方法,人工神经网络能够类似人一样具有简单的决定能力和简单的判断能力),这种方法比起正式的逻辑学推理演算更具有优势。 一、人工神经网络的基本原理 1-1神经细胞以及人工神经元的组成 神经系统的基本构造单元是神经细胞,也称神经元。它和人体中其他细胞的关键区别在于具有产生、处理和传递信号的功能。每个神经元都包括三个主要部分:细胞体、树突和轴突。树突的作用是向四方收集由其他神经细胞传来的信息,轴突的功能是传出从细胞体送来的信息。每个神经细胞所产生和传递的基本信息是兴奋或抑制。在两个神经细胞之间的相互接触点称为突触。简单神经元网络及其简化结构如图2-2所示。 从信息的传递过程来看,一个神经细胞的树突,在突触处从其他神经细胞接受信号。 这些信号可能是兴奋性的,也可能是抑制性的。所有树突接受到的信号都传到细胞体进行综合处理,如果在一个时间间隔内,某一细胞接受到的兴奋性信号量足够大,以致于使该细胞被激活,而产生一个脉冲信号。这个信号将沿着该细胞的轴突传送出去,并通过突触传给其他神经细胞.神经细胞通过突触的联接形成神经网络。 图1-1简单神经元网络及其简化结构图 (1)细胞体 (2)树突 (3)轴突 (4)突触

基于BP神经网络的语音识别技术

上海海事大学神经网络与语音识别 院系: 物流工程学院 课程名称: 制造与物流决策支持系统学生姓名: 学号: 时间: 目录

一.绪论 计算机的飞速发展,使人们的生活方式发生了根本性的改变,鼠标、键盘,这些传统的人机接口使人们体会到了生活的便利。科学技术日新月异,假如让“机器”能够听懂人的语言,并根据其信息去执行人的意图,那么这无疑是最理想的人机智能接口方式,因此语音识别作为一门极具吸引力的学科应运而生,很多专家都指出语音识别技术将是未来十年信息技术领域十大重要的科技发展技术之一。 语音识别(Speech Recognition)是指,计算机从人类获取语音信息,对语音信息进行分析处理,准确地识别该语音信息的内容、含义,并对语音信息响应的过程。语音信号具有非稳定随机特性,这使得语音识别的难度大。目前人类甚至仍没有完全理解自身听觉神经系统的构造与原理,那么要求计算机能像人类一样地识别语音信号很有挑战性。 研究背景及意义 语言在人类的智能组成中充当着很重要的角色,人与人之间的交流和沟通大部分是通过语言的方式有效的完成。作为人与人之问交流最方便、自然、快捷的手段,人们自然希望它成为人与计算机交流的媒介。随着数字信号处理及计算机科学的飞速发展,人们对实现人机对话产生越来越迫切的要求,使得语音识别技术近年来得到了迅速的发展,语音识别技术的研究进入了一个比较成熟的时期。语音识别是一门交叉科学,它综合了声学、语言学、语音学、生理科学、数字信号处理、通信理论、电子技术、计算机科学、模式识别和人工智能等众多学科。也是人机交互最重要的一步。 语音识别的国内外研究现状 通过语音传递信息是人类最重要,最有效,和最方便的交换信息的形式,语

人工神经网络及其应用实例_毕业论文

人工神经网络及其应用实例人工神经网络是在现代神经科学研究成果基础上提出的一种抽 象数学模型,它以某种简化、抽象和模拟的方式,反映了大脑功能的 若干基本特征,但并非其逼真的描写。 人工神经网络可概括定义为:由大量简单元件广泛互连而成的复 杂网络系统。所谓简单元件,即人工神经元,是指它可用电子元件、 光学元件等模拟,仅起简单的输入输出变换y = σ (x)的作用。下图是 3 中常用的元件类型: 线性元件:y = 0.3x,可用线性代数法分析,但是功能有限,现在已不太常用。 2 1.5 1 0.5 -0.5 -1 -1.5 -2 -6 -4 -2 0 2 4 6 连续型非线性元件:y = tanh(x),便于解析性计算及器件模拟,是当前研究的主要元件之一。

离散型非线性元件: y = ? 2 1.5 1 0.5 0 -0.5 -1 -1.5 -2 -6 -4 -2 2 4 6 ?1, x ≥ 0 ?-1, x < 0 ,便于理论分析及阈值逻辑器件 实现,也是当前研究的主要元件之一。 2 1.5 1 0.5 0 -0.5 -1 -1.5 -2 -6 -4 -2 2 4 6

每一神经元有许多输入、输出键,各神经元之间以连接键(又称 突触)相连,它决定神经元之间的连接强度(突触强度)和性质(兴 奋或抑制),即决定神经元间相互作用的强弱和正负,共有三种类型: 兴奋型连接、抑制型连接、无连接。这样,N个神经元(一般N很大)构成一个相互影响的复杂网络系统,通过调整网络参数,可使人工神 经网络具有所需要的特定功能,即学习、训练或自组织过程。一个简 单的人工神经网络结构图如下所示: 上图中,左侧为输入层(输入层的神经元个数由输入的维度决定),右侧为输出层(输出层的神经元个数由输出的维度决定),输入层与 输出层之间即为隐层。 输入层节点上的神经元接收外部环境的输入模式,并由它传递给 相连隐层上的各个神经元。隐层是神经元网络的内部处理层,这些神 经元在网络内部构成中间层,不直接与外部输入、输出打交道。人工 神经网络所具有的模式变换能力主要体现在隐层的神经元上。输出层 用于产生神经网络的输出模式。 多层神经网络结构中有代表性的有前向网络(BP网络)模型、

神经网络在语音识别上的应用

H a r b i n I n s t i t u t e o f T e c h n o l o g y 神经网络与智能信号处理 实验报告 神经网络实验报告 1、实验名称: 神经网络在语音识别上的应用 2、实验目的: 进一步了解神经网络在语音识别上的应用,了解神经网络的基本原理,学习神经网络的算法,还可以进一步分析不同的隐节点数以及训练步数对误差性能的影响。 3、实验要求: 1、设计一个标准的BP学习算法网络来对语音信号26个字母进行识别。 2、在训练时采用不同的隐含层神经元个数,分析其对网络性能、语音识别系统的识别率的影响。 3、用所创建的BP神经网络进行26个字母的语音识别,观察并记录结果,并分析其误差。 4、实验步骤: 1、语音识别的基本原理

语音识别的总体流程如下: 语音输入时要先经过预处理,包括预加重、分帧加窗等。然后进行特征提取,该实验中的特征参数为MFCC 参数。语音特征参数的时间序列构成语音的模式,将其与获得的参考模式逐一比较,获得最佳匹配的参考模式便是识别结果。 由于语音信号的复杂性,所以在一开始在语音信号输入语音识别系统时需要进行预处理,预处理包括预加重,分帧加窗,端点检测等。预加重的目的是为了加强语音的高频部分,以便在特征提取阶段进行频谱分析。分帧加窗的目的是为了使帧与帧之间平滑过渡,保持连续性以及保持语音信号的短时平稳性,降低由于不连续而产生的Gibbs 效应。端点检测的目的就是从语音信号序列中截取实际有效的语音信号。 特征提取阶段,是从语音数据中提取能反映语音信号特征和变化规律的参数,以唯一表征语音,这儿选用的语音信号特征参数为MEL 频率倒谱系数,即MFCC 。MEL 频率倒谱的实现过程如下图所示: (1)对语音信号进行预处理,加窗、分帧将其变为短时信号。 (2) 将短时时域信号转变为频域信号,并计算其短时能量,离散傅立叶变换。将时域信号 后补若干0形成长为N 的序列,再经过离散傅立叶变换得到线性频谱,变换公式: 0n,k N-1 (3)在频标内三角带通滤波器个加于坐标得到滤波器组,转化关系为

基于BP神经网络的语音识别技术

上海海事大学 神经网络与语音识别 院系: 物流工程学院 课程名称: 制造与物流决策支持系统学生姓名: 学号: 时间:

目录 一.绪论 (3) 1.1 研究背景及意义 (3) 1.2 语音识别的国内外研究现状 (3) 1.3研究内容 (4) 二.语音识别技术 (5) 2.1语音信号 (5) 2.2语音信号的数学模型 (5) 2.3语音识别系统结构 (6) 2.4语音信号预处理 (7) 2.4.1 语音信号的采样 (8) 2.4.2语音信号的分帧 (8) 2.4.3语音信号的预加重 (9) 2.4.4 基于短时能量和过零率的端点检测 (9) 2.5 特征参数提取 (13) 三.基于BP神经网络语音识别算法实现 (16) 3.1 BP神经网络原理 (16) 3.2 输入层神经元个数的确定 (16) 3.3网络隐含层数的确定 (17) 3.4隐含层神经元个数的确定 (17) 3.5 BP神经网络构造 (17) 3.6 BP神经网络的训练 (18) 3.6.1训练样本集合和目标值集合 (18) 3.6.2 网络训练 (18) 3.7网络训练 (19) 3.8 语音的识别结果 (20) 四.总结 (21) 参考文献 (22) 附录 (23)

一.绪论 计算机的飞速发展,使人们的生活方式发生了根本性的改变,鼠标、键盘,这些传统的人机接口使人们体会到了生活的便利。科学技术日新月异,假如让“机器”能够听懂人的语言,并根据其信息去执行人的意图,那么这无疑是最理想的人机智能接口方式,因此语音识别作为一门极具吸引力的学科应运而生,很多专家都指出语音识别技术将是未来十年信息技术领域十大重要的科技发展技术之一。 语音识别(Speech Recognition)是指,计算机从人类获取语音信息,对语音信息进行分析处理,准确地识别该语音信息的内容、含义,并对语音信息响应的过程。语音信号具有非稳定随机特性,这使得语音识别的难度大。目前人类甚至仍没有完全理解自身听觉神经系统的构造与原理,那么要求计算机能像人类一样地识别语音信号很有挑战性。 1.1 研究背景及意义 语言在人类的智能组成中充当着很重要的角色,人与人之间的交流和沟通大部分是通过语言的方式有效的完成。作为人与人之问交流最方便、自然、快捷的手段,人们自然希望它成为人与计算机交流的媒介。随着数字信号处理及计算机科学的飞速发展,人们对实现人机对话产生越来越迫切的要求,使得语音识别技术近年来得到了迅速的发展,语音识别技术的研究进入了一个比较成熟的时期。语音识别是一门交叉科学,它综合了声学、语言学、语音学、生理科学、数字信号处理、通信理论、电子技术、计算机科学、模式识别和人工智能等众多学科。也是人机交互最重要的一步。 1.2 语音识别的国内外研究现状 通过语音传递信息是人类最重要,最有效,和最方便的交换信息的形式,语音识别主要指让机器转达人说的话,即在各种情况下,准确的识别出语音的内容,

人工神经网络应用实例

人工神经网络在蕨类植物生长中的应用 摘要:人工神经网络(ARTIFICIAL NEURAL NETWORK,简称ANN)是目前国际上一门发展迅速的前沿交叉学科。为了模拟大脑的基本特性,在现代神经科学研究的基础上,人们提出来人工神经网络的模型。根据此特点结合蕨类植物的生长过程进行了蕨类植物生长的模拟。结果表明,人工神经网络的模拟结果是完全符合蕨类植物的生长的,可有效的应用于蕨类植物的生长预测。 关键词:人工神经网络;蕨类植物;MATLAB应用 一人工神经网络的基本特征 1、并行分布处理:人工神经网络具有高度的并行结构和并行处理能力。这特别适于实时控制和动态控制。各组成部分同时参与运算,单个神经元的运算速度不高,但总体的处理速度极快。 2、非线性映射:人工神经网络具有固有的非线性特性,这源于其近似任意非线性映射(变换)能力。只有当神经元对所有输入信号的综合处理结果超过某一门限值后才输出一个信号。因此人工神经网络是一种具有高度非线性的超大规模连续时间动力学系统。 3、信息处理和信息存储合的集成:在神经网络中,知识与信息都等势分布贮存于网络内的各神经元,他分散地表示和存储于整个网络内的各神经元及其连线上,表现为神经元之间分布式的物理联系。作为神经元间连接键的突触,既是信号转换站,又是信息存储器。每个神经元及其连线只表示一部分信息,而不是一个完整具体概念。信息处理的结果反映在突触连接强度的变化上,神经网络只要求部分条件,甚至有节点断裂也不影响信息的完整性,具有鲁棒性和容错性。 4、具有联想存储功能:人的大脑是具有联想功能的。比如有人和你提起内蒙古,你就会联想起蓝天、白云和大草原。用人工神经网络的反馈网络就可以实现这种联想。神经网络能接受和处理模拟的、混沌的、模糊的和随机的信息。在处理自然语言理解、图像模式识别、景物理解、不完整信息的处理、智能机器人控制等方面具有优势。 5、具有自组织自学习能力:人工神经网络可以根据外界环境输入信息,改变突触连接强度,重新安排神经元的相互关系,从而达到自适应于环境变化的目的。 二人工神经网络的基本数学模型 神经元是神经网络操作的基本信息处理单位(图1)。神经元模型的三要素为: (1) 突触或联接,一般用,表尔神经元和神经元之间的联接强度,常称之为权值。 (2) 反映生物神经元时空整合功能的输入信号累加器。 图1 一个人工神经元(感知器)和一个生物神经元示意图 (3) 一个激活函数用于限制神经元输出(图2),可以是阶梯函数、线性或者是指数形式的

人工神经网络概述及其在分类中的应用举例

人工神经网络概述及其在分类中的应用举例 人工神经网络(ARTIFICIAL NEURAL NETWORK,简称ANN)是目前国际上一门发展迅速的前沿交叉学科。为了模拟大脑的基本特性,在现代神经科学研究的基础上,人们提出来人工神经网络的模型。人工神经网络是在对人脑组织结构和运行机智的认识理解基础之上模拟其结构和智能行为的一种工程系统。 神经网络在2个方面与人脑相似: (1) 人工神经网络获取的知识是从外界环境中学习得来的。 (2) 互连神经元的连接强度,即突触权值,用于存储获取的信息。他既是高度非线性动力学系统,又是自适应组织系统,可用来描述认知、决策及控制的智能行为。神经网络理论是巨量信息并行处理和大规模并行计算的基础。 一人工神经网络的基本特征 1、并行分布处理:人工神经网络具有高度的并行结构和并行处理能力。这特别适于实时控制和动态控制。各组成部分同时参与运算,单个神经元的运算速度不高,但总体的处理速度极快。 2、非线性映射:人工神经网络具有固有的非线性特性,这源于其近似任意非线性映射(变换)能力。只有当神经元对所有输入信号的综合处理结果超过某一门限值后才输出一个信号。因此人工神经网络是一

种具有高度非线性的超大规模连续时间动力学系统。 3、信息处理和信息存储合的集成:在神经网络中,知识与信息都等势分布贮存于网络内的各神经元,他分散地表示和存储于整个网络内的各神经元及其连线上,表现为神经元之间分布式的物理联系。作为神经元间连接键的突触,既是信号转换站,又是信息存储器。每个神经元及其连线只表示一部分信息,而不是一个完整具体概念。信息处理的结果反映在突触连接强度的变化上,神经网络只要求部分条件,甚至有节点断裂也不影响信息的完整性,具有鲁棒性和容错性。 4、具有联想存储功能:人的大脑是具有联想功能的。比如有人和你提起内蒙古,你就会联想起蓝天、白云和大草原。用人工神经网络的反馈网络就可以实现这种联想。神经网络能接受和处理模拟的、混沌的、模糊的和随机的信息。在处理自然语言理解、图像模式识别、景物理解、不完整信息的处理、智能机器人控制等方面具有优势。 5、具有自组织自学习能力:人工神经网络可以根据外界环境输入信息,改变突触连接强度,重新安排神经元的相互关系,从而达到自适应于环境变化的目的。 6、软件硬件的实现:人工神经网络不仅能够通过硬件而且可借助软件实现并行处理。近年来,一些超大规模集成电路的硬件实现已经问世,而且可从市场上购到,这使得神经网络具有快速和大规模处理能力的实现网络。许多软件都有提供了人工神经网络的工具箱(或软件包)如Matlab、Scilab、R、SAS等。 二人工神经网络的基本数学模型

神经网络在语音识别中的应用

Information Technology ? 信息技术Electronic Technology & Software Engineering 电子技术与软件工程? 249【关键词】智能终端 神经网络 语音识别 语音特征 现阶段智能终端与用户之间的人机交互方式仍然是触屏、键盘或鼠标,传统操作式的人机交互已经无法满足信息时代对信息快速交互的需求,创新式语音交互技术不仅提高了人机交互效率,而且属于人类所习惯的交互方式。语音交互的核心技术为语音识别技术,语音识别技术优劣直接决定了语音交互方式是否可用。截止目前,关于语音识别技术的研究已有数十载,基于英语的语音识别技术的准确率已接近98%,而基于汉语的语音识别技术的准确率却相对较低,主要是由于汉语的复杂度相对应用更广,同音字较多且发音较短致使语音识别精度降低。神经网络凭借其神经网络拓扑结构在识别方面具有更好的识别效果,基于此,本文对神经网络在语音识别的应用展开了研究。 1 语音识别系统研究 语音识别系统是通过对语音信号进行分析,与词汇语音进行匹配处理,使得计算机能理解语音信号所传递的信息。经典的语音识别系统结构主要包括信号预处理、特征提取、数据训练、匹配计算、识别判决。 通过对语音识别系统的结构进行分析可知,可将其划分为三个模块,信号预处理模块、语音特征提取模块、训练与识别模块。神经网络在语音识别中的应用 文/冀瑞国 (1)信号预处理处于系统的前端,语音 信号的预处理将便于语音的特征提取,主要包括采样滤波、预加权、信号分帧、端点检测。其中本文的采样滤波的频率为8KHz ,并选择预加权方式对高频阶段的语音进行加权处理,从而有效地提高其信噪比。在信号分帧方面,本文所采纳的时间段为20ms ,并通过端点检测方法实现词汇信号与噪声信号的分割,从而完成语音信号的预处理。(2)语音特征提取模块主要是为语音数据训练与识别提供分析数据,所以语音特征的合理选择不仅能提升识别模型的训练效率,而且能有效提高模型的识别精度。本文基于特征独立性、信号有效表征和精简计算的原则选择的语音特征主要包括线性预测系数(LPC )、线性预测倒谱系数(LPCC )、美儿频率倒谱系数(MFCC )、改进的混合MFCC 。(3)训练与识别模块作为语音识别系统的核心,主要是对特征进行分析得到信号归属词汇。目前常用的识别模型主要有神经网络、支持向量机、深度学习和人工智能,支持向量机的识别精度相对较低,深度学习与人工智能需要大量的训练样本且实时性较差。由于语音识别对识别精度和实时性要求较高,因此本文选择神经网络作为语音识别模型。2 神经网络应用于语音识别神经网络由输入层、隐层和输出层构成,网络基本单元为神经元,输入层的神经元为所提取的语音信号特征,隐层的神经元通过样本训练构建,输出层的神经元为语音识别词汇。通过对神经网络的结构分析可知,神经网络具有很强的非线性映射能力、泛化能力和容错能力。神经网络进行语音识别之前需要对模型进行科学的训练,神经网络的训练流程如图1所示,首先需要准备大量词汇的语音特征,对词汇进行编号,然后将准备的语音特征作为模型训练的输入,将特征对应的词汇编号作为参考数据,最后检查模型训练的输出数据与参考数据之间的误差,当两者之间的数据误差低于所设置的阈值时停止训练,保存隐层神经元的阈值,以及各个神经元之间的链接权值,从而实现神经网络模型的建立。语音识别系统首先对语音信号的进行采样滤波、预加权、信号分帧、端点检测操作;其次提取预处理数据的LPC 、LPCC 、MFCC 、改进MFCC 值;最后训练构建的神经网络模型根据语音信号特征识别语音所对应的词汇,至此实现语音信号的识别。3 结论本文先对语音识别系统展开了研究,语音识别系统由信号预处理、语音特征提取、模型训练与识别三个模块构成,并分析了神经网络相对于支持向量机、深度学习和人工智能的优势,基于此设计了一套基于神经网络的语音识别系统。识别系统首先借助大量词汇的语音特征完成识别模型的训练,再利用训练合格的语音识别模型对从预处理数据中提取的LPC 、LPCC 、MFCC 、改进MFCC 的语音信号特征进行语音识别。参考文献[1]吴进,张青等.一种改进的孤立词语音识别系统设计[J].西安邮电大学学报,2016,21(01):76-80.[2]佘明洪.系统辨识中神经网络应用的初步研究与讨论 [J].科技展望,2016,26(34).[3]金超,龚铖,李辉.语音识别中神经网络声学模型的说话人自适应研究[J].计算机应用与软件,2018(02):200-205.作者简介冀瑞国(1991-),男,山东省聊城市人。大学本科学历。工程师。研究方向为人工智能语音识别。作者单位北京智合大方科技有限公司 北京市 100070 图1:BP 神经网络训练流程

人工神经网络模式识别

人工神经网络模式识别 一、人工神经网络模式识别 1、人工神经网络的概述 人工神经网络从人脑的生理学和心理学角度出发,通过模拟人脑的工作机理,实现机器的部分智能行为,是从微观结构和功能上对人脑进行抽象和简化,是模拟人类智能的一条重要途径。具体的模式识别是多种多样的,如果从识别的基本方法上划分,传统的模式识别大体分为统计模式识别和句法模式识别,在识别系统中引入神经网络是一种近年来发展起来的新的模式识别方法。尽管引入神经网络的方法和引入网络的结构可以各不相同,但都可称为神经网络模式识别。而且这些识别方法在解决传统方法较难处理的某些问题上带来了新的进展和突破,因而得到了人们越来越多的重视和研究。 人工神经元网络(Artificial Neural Network)简称神经网络,是基于日前人们对自然神经系统的认识而提出的一些神经系统的模型,一般是由一系列被称为神经元的具有某种简单计算功能的节点经过广泛连接构成的一定网络结构,而其网络连接的权值根据某种学习规则在外界输入的作用下不断调节,最后使网络具有某种期望的输出特性。神经网络的这种可以根据输入样本学习的功能使得它非常适合于用来解决模式识别问题,这也是神经网络目前最成功的应用领域之一。 2、神经网络进行模式识别的方法和步骤 神经网络模式识别的基本方法是,首先用己知样本训练神经网络,使之对不同类别的己知样本给出所希望的不同输出,然后用该网络识别未知的样本,根据各样本所对应的网络输出情况来划分未知样本的类别。神经网络进行模式识别的一般步骤如图2-1所示,分为如下几个部分: 预处理 样本获取常规处理特征变换神经网络识别 图 2-1 神经网络模式识别基本构成 1、样本获取 这一步骤主要是为了得到一定数量的用于训练和识别的样本。

《人工神经网络的发展及其应用》

人工神经网络及其应用 摘要:神经网络是新技术领域中的一个时尚词汇。很多人听过这个词,但很少人真正明白它是什么。本文的目的是介绍关于人工神经网络的基本包括它的背景,发展,发展前景。 关键词:神经网络,发展,背景。 1 人工神经网络产生的背景 自古以来,关于人类智能本源的奥秘,一直吸引着无数哲学家和自然科学家的研究热情。生物学家、神经学家经过长期不懈的努力,通过对人脑的观察和认识,认为人脑的智能活动离不开脑的物质基础,包括它的实体结构和其中所发生的各种生物、化学、电学作用,并因此建立了神经元网络理论和神经系统结构理论,而神经元理论又是此后神经传导理论和大脑功能学说的基础。在这些理论基础之上,科学家们认为,可以从仿制人脑神经系统的结构和功能出发,研究人类智能活动和认识现象。另一方面,19世纪之前,无论是以欧氏几何和微积分为代表的经典数学,还是以牛顿力学为代表的经典物理学,从总体上说,这些经典科学都是线性科学。然而,客观世界是如此的纷繁复杂,非线性情况随处可见,人脑神经系统更是如此。复杂性和非线性是连接在一起的,因此,对非线性科学的研究也是我们认识复杂系统的关键。为了更好地认识客观世界,我们必须对非线性科学进行研究。人工神经网络作为一种非线性的、与大脑智能相似的网络模型,就这样应运而生了。所以,人工神经网络的创立不是偶然的,而是20世纪初科学技术充分发展的产物。 2 人工神经网络的发展 人工神经网络的研究始于40年代初。半个世纪以来,经历了兴起、高潮与萧条、高潮及稳步发展的远为曲折的道路。 1943年,心理学家W.S.Mcculloch和数理逻辑学家W.Pitts 提出了M—P模型,这是第一个用数理语言描述脑的信息处理过程的模型,虽然神经元的功能比较弱,但它为以后的研究工作提供了依据。1949年,心理学家D.O.Hebb提出突触联系可变的假设,根据这一假设提出的学习规律为神经网络的学习算法奠定了基础。1957 年,计算机科学家Rosenblatt 提出了著名的感知机模型,它的模型包含了现代计算机的一些原理,是第一个完整的人工神经网络,第一次把神经网络研究付诸工程实现。由于可应用于模式识别,联想记忆等方面,当时有上百家实验室投入此项研究,美国军方甚至认为神经网络工程应当比“原子弹工程”更重要而给予巨额资助,并在声纳信号识别等领域取得一定成绩。1960年,B.Windrow和E.Hoff提出了自适应线性单元,它可用于自适应滤波、预测和模式识别。至此,人工神经网络的研究工作进入了第一个高潮。 1969年,美国著名人工智能学者M.Minsky和S.Papert编写了影响很大的Perceptron一书,从理论上证明单层感知机的能力有限,诸如不能解决异或问题,而且他们推测多层网络的感知机能力也不过如此,他们的分析恰似一瓢冷水,很多学者感到前途渺茫而纷纷改行,原先参与研究的实验室纷纷退出,在这之后近10年,神经网络研究进入了一个缓慢发展的萧条期。这期间,芬兰学者T.Kohonen 提出了自组织映射理论,反映了大脑神经细胞的自组织特性、记忆方式以及神经细胞兴奋刺激的规律;美国学者S.A.Grossberg的自适应共振理论(ART );日本学者K.Fukushima提出了认知机模型;ShunIchimari则致力于神经网络

相关文档
相关文档 最新文档