所有提交的电磁系统将被重定向到在线手稿提交系统。作者请直接提交文章在线手稿提交系统各自的杂志。

基于MATLAB的反向传播神经网络自动语音识别

Siddhant c·乔希1A.N.Cheeran博士2
  1. M。理工大学的学生,EE、VJTI,孟买,印度马哈拉施特拉邦
  2. 学系副教授EE VJTI,孟买,印度马哈拉施特拉邦
相关文章Pubmed,谷歌学者

访问更多的相关文章国际先进研究期刊》的研究在电子、电子、仪表工程

文摘

语音界面计算机是下一个重大步骤,技术需要为普通用户。自动语音识别(ASR)将发挥重要作用的技术。有许多语音识别的应用如在飞机直接语音输入、数据输入、语音处理、语音用户界面如语音拨号。ASR系统可以分为两个不同的部分,即特征提取和特征识别。在本文中,我们提出基于MATLAB使用反向传播神经网络对ASR特征识别。本研究的目的是探讨如何采用神经网络识别isolated-word演讲作为替代传统的方法。这里开发的通用技术可以进一步扩展到其他应用程序,如声纳目标识别,导弹跟踪和水声信号的分类。利用bp神经网络算法使用输入训练样本和各自的期望输出值学会识别特定模式,通过修改节点的激活值和权重的链接连接节点。这样的训练网络后用于ASR系统的特征识别。

关键字

自动语音识别、人工神经网络、模式识别、反向传播算法

介绍

语音识别系统本质上是一个模式识别问题。语音识别涉及从输入信号中提取特征和分类类使用模式匹配模型。ASR系统的性能测量的基础上,识别精度、复杂度和鲁棒性。操作条件的偏差从那些认为在训练阶段可能导致退化性能[1]。
本研究的主要目的是探索如何利用bp神经网络可以应用于孤立词语音识别。这项工作的主要好处是它的贡献对采用神经网络技术解决共同但困难的模式识别问题,尤其是在ASR。有三个主要类型的模式识别技术,即动态时间规整(DTW),隐马尔可夫模型(HMM)和人工神经网络(ANN) [1], [5]。
本文组织如下。第二部分描述了自动语音识别,特别强调特征提取。第三部分描述了人工神经网络和一些算法使用神经元作为他们的主要元素。第四部分论述了反向传播神经网络的结构和特点。第五部分讨论了利用反向传播神经网络模式识别。最后,第六部分总结了纸。

自动语音识别

声学模式识别确定最佳匹配输入语音的参考模型,作为输出。声造型,自然摆出一个静态模式匹配问题是适合神经网络。许多ASR系统存在使用DTW或嗯特征识别。DTW方法措施之间的距离每一个参考系和每个输入帧使用动态算法获得最佳模式的扭曲。摘要描述语音信号使用pre-trained马尔可夫链。但是,在这样的ASR系统仍存在一些困难,因为语音识别是一个复杂的现象,由于不对称参与语言产生和语言解释。有效的结果,ASR可以使用这种方法更接近人类的感知。神经网络是模拟人脑后。因此,我们使用神经网络进行特征识别ASR系统[1],[2]。
在我们的ASR实现,语音波形、采样8 kHz用作输入特征提取模块。软件“无畏”是用来记录输入的语音数据库。语音文件记录在“波”格式,以下规范:Fs在8000赫兹= =采样率,每个抽样的比特数= 16。我们使用Mel-frequency Cepstral系数(MFCC)特征提取。这一阶段的效率对下一阶段很重要,因为它影响的行为建模的过程。
图1显示了一个自动语音识别系统的框图使用MFCC特征提取和神经网络识别特性。

人工神经网络

许多任务涉及智力或自动模式识别非常困难,但似乎被人类很容易执行。人类认识到各种对象,显然用很少的努力。人类的神经网络包含大量相互连接的神经元。人工神经网络计算系统的主题是借鉴生物神经网络的类比[2]、[4]。
神经网络是一个有用的工具为各种应用程序需要广泛的分类。利用神经网络的并行处理和分类数据基于特性的能力提供了一个有前途的平台模式识别。传统的顺序处理技术有局限性实现模式识别问题的灵活性和成本而通过训练神经网络执行处理任务,而不是编程的方式类似于人类大脑学习的方式。与传统机器顺序规则和公式需要显式地指定,其功能通过学习神经网络学习样本的[3],[7]。

(一)人工神经网络的特征

人工神经网络有一个标记的有向图结构节点执行一些计算。他们由一组节点和一组连接两节点的连接。每个连接有一个信号从一个节点到另一个地方。标签代表了连接强度或重量指示信号放大的程度或减少由一个连接。权重的不同的选择导致不同的功能评估的网络。权重的网络最初是随机学习算法是用于获得权重的值来实现所需的任务。图结构,连接权值修改的使用学习算法,结果在一个网络称为人工神经网络。神经网络商店的知识针对问题使用的连接权重学习算法[3],[7]。

(B)分类

分类意味着每个对象分配给一个特定的阶级或集团。基本的重要性在许多方面从图像和语音识别到社会科学。我们使用一个训练集样本模式组成的代表所有类,类成员信息对于每个模式。使用训练集,加入规则推导出每个类创建一个分类器,后来分配其他模式各自类根据这些规则。也就是说,我们使用神经网络对样本进行分类。,输入模式映射到不同的类中。每个输出节点可以代表一个类。一个输入模式确定属于类我如果第i个输出节点计算值高于其他所有输入输出节点时,输入模式网络[3],[4]。

(C)感知器和线性可分性

使用例子即感知器是一种机器学习训练样本输入向量分配给不同的类。感知器使用一个线性函数的输入。感知器只有一个输出,其价值决定了这类属于每个输入模式和由一个节点表示一个阶跃函数适用于净输入的加权和。如果存在一条线的方程是w0 + w1x1 + w2x2 = 0,将所有的样本一个类从另一个类,然后一个感知器,与重量w0 w1, w2的连接输入1,x1, x2,分别可以从这条线的方程。这样的分类问题是线性可分的,因为它们是可分离变量的一个线性组合输入。感知器之间的战略位置图重量和系数直线方程的条款适用于反过来[3],[7]。

使用感知器(D)的限制

如果有三个输入维度,可以解决两类问题使用一个感知器只有一个平面分离样品不同的类。对于简单的例子和二维空间由几何结构相对容易确定是否线性可分两类。但它对高维空间变得非常困难。如果没有线分离样品即属于两个不同的类。,the samples are not linearly separable, then a simple perceptron cannot classify the samples. It is the fundamental limitation of simple perceptron. Real life classification problems are linearly non-separable and hence perceptron training algorithm cannot achieve accurate results for such classification problems [3].
一个健壮的算法将达到一个合理的分离两类样本。两种算法实现健壮的分类为线性不可分的类——口袋算法和最小均方算法。LMS算法最小化均方误差,而不是分类错误的样本的数量,而口袋算法存储的信息更好的权重向量观测过程中修改重量[3],[7]。

口袋算法(E)

该算法识别最长的权向量不变作为权重向量之间的最佳解决方案运行检查。最好的解决方案探索到目前为止和不变的长度与最好的解决方案是存储在口袋里。口袋里的内容替换,每当一个新权向量有更长的成功运行了[3],[7]。

(F)学习机

健壮的识别也可以通过最小化均方误差(MSE)而不是分类样本的数量。一种自适应线性元素或学习机完成分类通过修改权重以这样一种方式以最小化均方误差在每一个迭代训练。这可以通过使用梯度下降法,因为MSE二次函数的导数存在无处不在。当输入样本在训练网络,线性加权计算净输入和与样本的期望输出值相比,生成一个错误的信号。此误差信号用于修改每个重量的学习机。与感知器训练算法不同,重量更改减少MSE即使样本正确分类的网络[3]、[7]。

(G)使用多层网络的监督学习

感知器方法可以扩展到解决线性不可分的分类问题,利用分层结构的节点。这种网络包含一个或多个隐藏层节点隔离输入数据的有用特性。但是它不容易训练这些网络。鉴于网络使一些样例输入错误,确定权重的网络必须修改,和在多大程度上是一个艰巨的任务。因此,感知器和其他一层网络严重限制他们的能力。与非线性前馈多层网络节点功能可以克服这些限制,并且可以用于许多应用程序。因此一个更强大的监督学习机制称为反向传播用于多层次、多级歧视[3],[5]。

反向传播网络

反向传播网络一词用于描述使用反向传播前馈神经网络训练学习方法。反向传播算法是最小均方算法的修改。修改网络权重之间的均方误差最小化的实际和预期的输出网络。反向传播算法利用监督学习网络的训练使用训练样本的输入以及期望的输出是已知的。权重被冻结一旦网络训练,它可以用来计算新的输入样本输出值。前馈过程包括提供一个输入模式输入层节点到第一隐层传递的输入值。每个隐层节点计算其输入的加权和,并将通过其激活函数之前结果和输出层。一个错误在更高的向后传播节点层多层网络底层的网络。backward-propagated的梯度误差测量是用来确定所需的重量修改为通向隐藏节点的连接。简而言之,权重在对应的负梯度方向修改一个错误的措施。 [3], [7].

(一)反向传播网络的体系结构

反向传播算法假定前馈神经网络架构。在此体系结构中节点划分为若干个层次编号0 l .这里的层数表示一个节点的距离从输入节点。输入一层一层编号为0的最低层和输出层数层L是最高的层。我们选择L 2。,we use a three-layer network. Nodes in the hidden layers neither directly receive inputs from nor send outputs to the external environment. An extra dummy node x0 with constant input equal to 1; is also used so that the threshold or bias term can be treated just like any other weight in the network. The number of nodes in the hidden layer depends on the problem complexity. Each output node and hidden node applies a sigmoid function to its net input. S-shaped sigmoid function is used because it is a monotonically increasing, continuous, invertible, and differentiable function [3], [7].

(B)反向传播网络的目标

我们训练bp网络与监督学习算法使用大量的输入模式,说P = 50。对于每个输入向量xp,我们有对应的期望输出值向量dp,维度,说k .这组输入输出对构成训练集{xp, dp}。xp的输入向量的长度等于输入模式的特征的数量。输出向量的长度dp等于给定的应用程序的数量的输出即类的数量,按给定的分类问题决定[3],[7]。
训练网络的目的是修改权重,使网络的输出向量是尽可能接近所需的输出向量,当一个样本输入向量呈现给网络。实现这一目标,需要网络的累积误差最小化。之间的差异所代表的实际输出和期望输出值误差函数犯错应该非负[3],[7]。
方程(1)代表了累积误差的神经网络。
图像
图像

模式识别使用bp神经网络在MATLAB

我们利用bp网络MATLAB实现。输入我们的实现——所需的输入训练样本和训练样本的输出,学习速率、动量重量更新,满意的均方误差,层数和每层节点的数目作为它的输入。这导致了神经网络的体系结构和实现最终所有连接的链接节点的权重;通过最小化均方误差计算,对于一个给定的输入训练样本的迭代次数[3],[7]。

(一)输入到系统

一个整数向量用L表示的层数和每层的节点数量的实现。有三种类型的层,输入层、隐藏层和输出层。我们的实现中有13个节点的输入层,我们使用MFCC特征提取算法,给出了特征向量的长度13。我们也正在设计的ASR系统孤立词语音识别的十位数字(0 - 9)。输出层有10个节点。对于每一个陈述的输入样本的测试阶段,只有一个输出节点的值为1,其余所有节点的输出为0。我们选择在隐藏层节点的数目为11。
我们的实现有两个矩阵- X和D,作为它的输入。矩阵X表示训练样本。是一个P-by-N矩阵,P =输入训练样本的数量和N =每个训练样本特征向量的长度。,13岁。矩阵D代表所需的输出值对应的输入训练向量。这是一个便士——K矩阵,P =输入训练样本的数量和K等于样本的类的数量分类即。10。我们使用50即输入样本。,5input samples per digit, for training the backpropagation network. Hence, P is 50 in our implementation.
学习速率Ž®决定的体重变化发生在每个迭代训练。我们选择学习速率为0.5。重量更新方程中的动量词代表多少当前的误差值对体重变化的影响。我们选择动力为0.2。令人满意的均方误差值的均方误差计算终止。

(B)系统的输出

我们商店的体重向量(w0, w1 w2…)权重矩阵。有一个权重矩阵每一对相邻层之间。初始权值是随机的。我们随机权重矩阵的范围[-0.5,0.5]。每一层,除了输出层有一个偏见节点x0,其激活总是一个。每个节点有一个链接在一层一层我偏见节点j (j >我)。所有的链接节点的权重0 x0分配。

(C)预分配矩阵

更快的计算,我们预先分配' 1 '所有激活向量(x1, x2, x3, x4…。),净向量(净= w1x1 + w2x2 +…。), ' 0 '所有三角洲权重向量(Δw)。δ向量即体重变化向量,两个额外的矩阵表示δ权重在前一个迭代和三角洲的总和为每个需要演示的示例输入权重。我两个矩阵P-by-K矩阵。e 50-by10矩阵。

(D)前馈阶段

所有节点的输出即激活值在每一层计算,通过应用乙状结肠函数在每个节点获得的“净”的价值。实际的输出向量应该配以获得所需的输出向量。区别所需的输出和获得的输出是错误。计算误差对所有样品,然后我们计算的运行总平方误差,通过添加所有输入样本的错误。

(E)反向传播阶段

在此阶段,反向误差传播的重量调整为每个示例输入模式发生。第i个节点的输入层持有价值xp,我输入模式的甲状旁腺素。网络隐层中的j的输入节点获得如下。
图像

(F)终止条件

培训是继续直到得到一个满意的低误差,或者直到超过最大迭代次数。我们使用per-epoch学习。一个时代由演讲的整个训练样本集的。在我们的案例中是50。我们选择1000时代。体重变化提出的所有训练样本积累在一起成一个单一的变化发生在满足终止条件。因此权重更新后所有样品都呈现给网络[3]。

(G)培训网络

说数字记录5样品/数字。因此,共50个不同的录音记录。然后我们计算MFCC系数对所有输入“波”文件。我们选择监督学习和创造目标向量即所需的输出向量为输入。因此,有50个目标向量。网络使用前馈阶段和反向传播训练阶段,直到满足终止条件[6]。

(H)的结果

我们使用2样品/数字即。,20 samples for testing the network. We test the network after the weights are modified by the training phase. We round off the output vectors for each testing sample to 0 or 1. The recognition rate of our training phase reaches 80 %.
结果总结在下表中。
图像
因此,精度达到80%测试组20个单词。0.5的学习速率和动量的0.2被发现给最好的识别率和速度训练。

数据乍一看

图1
图1

引用