一种基于深度学习目标检测的语音识别方法与流程

文档序号:14251112阅读:792来源:国知局
一种基于深度学习目标检测的语音识别方法与流程
本发明涉及深度学习语音识别的
技术领域
,尤其是指一种基于深度学习目标检测的语音识别方法。技术背景长久以来,语音作为人类特有的能力备受关注,它是人类之间交流以及人类获取外界信息资源的最重要的工具和渠道。随着移动互联网的不断发展,人与计算机以及人与移动设备的自由交互越来越被重视。语音作为人类重要的交流工具被首要考虑融入移动互联网领域,它主要包括三项技术:语音识别、语音编码和语音合成。其中,语音识别指的是将语音翻译成文字,它是人机交互分支中的一个重要组成,是实现人类与智能设备交互的关键方法与技术,使得机器能够听懂人类的语言,近一步推动了人工智能的发展。语音识别从发展到现在,已经融入了人类生活的方方面面,例如语音搜索、语音打字、语音控制机器人等,给人类的生活带来了极大的便利。自20世纪70年代发展以来,语音识别一直以隐马尔科夫模型(hmm)为基础,但识别效果并不理想。直到21世纪初期,高斯混合隐马尔科夫模型(gmm-hmm)的出现极大地降低了语音识别的错误率,但仍然离商业化标准较远。近年来,随着深度学习的热潮再次涌起,基于深度神经网络的语音识别系统也随之火热,不仅在已有的最好系统基础上将错误率再次减低30%甚至更多,而且由于计算机基础设备的发展和大数据的产生,语音识别已经成为了具有商业标准的前沿技术。虽然语音识别技术目前已经相当成熟,但是在噪音环境下的语音识别效果仍然不理想。大多数语音识别系统只考虑语音的时域信息,对频域部分不予考虑,这使得语音识别在噪音环境中难以应用,例如在工厂车间环境下,语音识别仍然很困难,在工业的实时系统中难以应用,这极大的阻碍了工业生产的智能化发展。因此需要一种基于深度学习目标检测的语音识别方法来降低噪音对识别效果的影响,该方法使用深度学习对语谱图进行检测,而基于语谱图的语音识别不仅可以考虑语音的时域信号,还能兼顾频域信号,对时域与频域的有效交叉区域进行检测识别,可以避免高频噪音的影响,提高识别准确率,促使语音识别的应用范围更广。技术实现要素:本发明的目的在于克服现有技术的不足,提出了一种基于深度学习目标检测的语音识别方法,该方法考虑了噪音环境下语音识别困难的问题,提高了复杂环境中语音识别的准确率,实现了更好的语音识别效果。为实现上述目的,本发明所提供的技术方案为:一种基于深度目标检测的语音识别方法,包括以下步骤:1)对输入语音进行录制存储,利用声卡采集声音数据并保存;2)将语音转化为语谱图,通过短时傅里叶变换将原始语音转化为时频分析图,具体是:利用短时傅里叶变换对步骤1)采集的声音数据进行处理,将原始语音信号用三维图谱的方式显示,其中,横轴表示时间,纵轴表示频率,颜色深浅表示局部时频交叉域能量的大小;3)制作语谱图数据集,对语谱图的局部有效区域进行标注,具体是:利用标注工具对步骤2)变换的语谱图中的有效交叉区域进行标注,得到每个有效区域的边界框(boundingbox)信息并保存,制作成为数据集,再将数据集分为训练集和验证集;4)将有标注的语谱图训练集作为输入,对检测模型进行有监督的训练,这里的检测模型使用yolov2目标检测模型,该检测模型是一个端到端的网络结构,具有实时性,具体如下:4.1)维度聚类:在训练开始之前选择出更合适的先验框(box)的维度,能够提高预测的准确率。因为语谱图中信号的边界框宽高比与常见图像的宽高比相差较大,因此需要重新聚类。具体做法是采用k-means聚类方法训练boundingbox,自动找到与所有boundingbox宽高纬度最接近的box维度。k-means聚类算法是采用距离作为相似性评价指标,即被聚类的两个对象距离越近,两者的相似度越高,距离同一个聚类中心(centroid)比其他聚类中心更近的几个对象被认为是统一类别的对象,最终得到的结果是k个聚类中心点。传统的k-means使用欧氏距离来计算误差,这种计算方法容易导致不同大小的box所得的误差相差较大,改进的评判标准采用iou得分制,其中iou指的是两个边框的交集与并集之比,例如有框a与框b,用s(a∩b)表示a与b相交的面积,s(a∪b)表示a与b相并的面积,则a与b的iou计算公式如下:每个box到聚类中心点的iou即该box属于这个中心点所指类别的概率,iou越大,相反的计算距离越小,该box属于该类的可能性越大,最终得到的距离公式如下:d(box,centroid)=1-iou(box,centroid)4.2)参数调整:针对不同的数据集训练网络需要使用不同的参数。例如根据训练集中的类别修改配置文件中classes选项的数值和names文件中类别的名称,根据训练集和验证集的所在文件路径修改data文件中train和validate的参数值。步骤4.1)通过k-means算法得到了最合适的box的个数k,并且yolov2的每个box包含(4+1+c)个参数,其中数字4为每个box的坐标参数个数,数字1为confidence,是每个box的置信度,c指的是训练集样本类别的个数,因此最终配置文件中输出层的参数将应该修改为k*(4+1+c);4.3)训练网络:在终端命令行中输入训练命令,调用步骤4.2)修改过参数的配置文件,开始对网络进行有监督的训练。一般来说,训练命令加上预训练权重选项能使得网络得到更好的效果,但是由于步骤4.1)针对语谱图数据集中的boundingbox进行了重新聚类,因此常用的预训练权重将不再适用语谱图检测数据集;5)测试训练结果,具体是:将步骤4.3)训练得到的最终权重作为测试使用的权重,对需要测试语谱图数据进行测试,将得到的预测结果转换成对应的文字并输出。本发明与现有技术相比,具有以下优点与有益效果:1、本发明使用语谱图来进行语音识别,相比传统的语音识别方法,语谱图能够同时展现时域与频域的信息,能够更好的表达语音信息。2、使用深度学习目标检测方法对语谱图的局部有效区域进行检测,能够避免高频噪音的影响,提高噪音环境下语音识别的准确率。3、本发明是基于端到端的语音识别系统,不仅具有实时性,而且应用场景更为广泛,推动了人工智能的发展。附图说明图1为本发明方法的逻辑流程示意图。图2为检测框与边界框的iou示例图。图3为检测框示意图。具体实施方式下面结合具体实施例对本发明作进一步说明。如图1所示,本实施例所提供的基于深度学习目标检测的语音识别方法,包括以下步骤:1)对输入语音进行录制存储,利用声卡采集声音数据并保存,数据保存格式为wav格式。声音数据内容是中文1-10,分别由5个不同的人进行录制,每个人重复朗读10个数字重复100遍,录音环境为无声环境,得到干净声音数据。为对比噪音环境下的识别效果,将干净声音数据中加入工厂噪音,得到带有噪音的500条声音数据。2)将语音转化为语谱图,通过短时傅里叶变换将原始语音转化为时频分析图,具体是:利用短时傅里叶变换对步骤1)采集到的500条干净声音数据和500条含噪声音数据进行处理,分别变换成500张纯净语谱图和500张含噪语谱图,每张语谱图包含10条语音信息。3)制作语谱图数据集,对语谱图的局部有效区域进行标注,具体是:利用标注工具lableimage对步骤2)变换的500张干净语谱图和500张含噪语谱图的有效交叉区域进行标注,将能表示语音信号的区域标注为对应语音的标签,最终两种数据集分别生成含有标签和标注边界参数(boundingbox)的500个xml文件,其中每种数据集中的400个xml文件作为训练集来训练网络,剩余100个xml文件作为验证集来验证网络效果。由于人的发声频率最多不差过8000hz,正常的发声频率在5000hz以下,而工厂的噪音频率一般在8000hz以上,因此标注区域是在语谱图的0-5000hz频域区间。4)将有标注的语谱图训练集作为输入,对检测模型进行有监督的训练,这里的检测模型使用yolov2目标检测模型,该检测模型是一个端到端的网络结构,具有实时性,具体如下:4.1)维度聚类:在训练开始之前选择出更合适的先验框(box)的维度,能够提高预测的准确率。因为语谱图中信号的边界框宽高比与常见图像的宽高比相差较大,因此需要重新聚类。具体做法是采用k-means聚类方法训练步骤3)中标注的boundingbox,自动找到与所有boundingbox宽高纬度最接近的box维度。根据步骤3)制作的语谱图数据集,k-means最终选出4个尺度的box最为合适。每个尺度的box被称作detectionbox(db),实际标注的boundingbox被称作groundtruth(gt),如图2所示,两个的iou计算公式如下:每个detectionbox与相近groundtruth的iou即为该检测框内的目标为groundtruth对应标签类别的概率,iou越大,检测目标为该标签的概率越大,最终定义的公式如下:d(box,centroid)=1-iou(box,centroid)4.2)参数调整:针对不同的数据集训练网络需要使用不同的参数。例如根据训练集中的类别修改配置文件中classes选项的数值为10,names文件中类别的名称为数字1-10,根据训练集和验证集的所在文件路径修改data文件中train和validate为实际路径。步骤4.1)通过k-means算法得到了4个尺度最合适检测框,并且yolov2的每个box包含15个参数,如图3所示,其中4个参数为每个检测框的左上角坐标(x,y)和检测框的宽高(w,h),1个参数是confidence,是每个检测框的置信度,10个参数是训练集样中10个数字的类别数(classes),因此最终配置文件中输出层的参数将应该修改为60。为了使网络训练结果更好,且不发生过拟合现象,训练的迭代次数置为60000次。由于设备条件的限制,无法一次性训练全部数据,需要使用mini-batch方法,将训练集分成8个子集,每次训练使用一个子集,投入网络50张图片。4.3)训练网络:在终端命令行中输入训练命令,调用步骤4.2)修改过参数的配置文件,将两种不同的数据集分别输入网络中进行有监督的训练,每种数据集重复训练四次,最终得到的训练结果如下表1所示(wre表示错词率)。表1训练结果数据集干净语音含噪语音wre14.53%6.38%wre24.45%6.75%wre34.76%6.42%wre44.32%6.56%5)测试训练结果,具体是:将步骤4.3)训练得到的两种权重作为测试使用的权重,在静音环境中和嘈杂环境中分别录制新的语音数据1-10,纯净语音数据集训练得到的权重对新录制的语音识别效果更好,输出结果与新数据完全相符,含噪语音数据集训练得到的权重对新录制的语音识别效果相对较差,输出结果中有2个数字识别错误。综上所述,在采用以上方案后,本发明为语音识别提供了新的方法,避免了高频噪音的影响,提高了识别准确率,有效扩大语音识别的应用范围,具有实际推广价值,值得推广。以上所述实施例只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1