首页 / 专利库 / 人工智能 / 人工智能 / 通用人工智能 / 一种基于深度学习的空中管制语音指令识别方法

一种基于深度学习的空中管制语音指令识别方法

阅读:1004发布:2020-05-31

专利汇可以提供一种基于深度学习的空中管制语音指令识别方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于 深度学习 的空中管制语音指令识别方法,包括以下步骤:获取待识别的语音 信号 ,并将其转换为16bit 16kHz的PCM音频数据;建立深度网络模型;利用 训练数据 训深度网络模型得到 语音识别 引擎 ;对所述音频数据进行语音切分;将语音切分得到的有效音频 片段 输入语音识别引擎,输出文字识别结果。其中,深度网络模型使用卷积模 块 作为特征提取器,并由reshape层和全连接层对提取的特征数据进行处理,利用 门 控循环单元进行序列学习,最终通过全连接层进行分类学习与决策,获得预测结果。本发明采用以 人工智能 深度学习引擎为核心,具有极强的专业适用性和口音泛化能 力 ,数据量依赖程度更低的有点,在空管语音的识别上显著优于通用语音识别系统。,下面是一种基于深度学习的空中管制语音指令识别方法专利的具体信息内容。

1.一种基于深度学习的空中管制语音指令识别方法,其特征在于,包括以下步骤:
S1:获取待识别的语音信号,将其转换为16bit 16kHz的PCM音频数据;
S2:对所述音频数据进行语音切分,得到处理后的有效音频片段
S3:建立深度网络模型;
S4:利用训练数据训练深度网络模型得到语音识别引擎;
S5:将有效音频片段输入语音识别引擎,并输出文字识别结果。
2.根据权利要求1所述的基于深度学习的空中管制语音指令识别方法,其特征在于,所述步骤S1所述的语音信号包括实时语音信号和/或历史语音信号。
3.根据权利要求1所述的基于深度学习的空中管制语音指令识别方法,其特征在于, 所述步骤S2采取的语音切分包括如下步骤:
S2.1:输入音频数据,对音频(采用1024个采样点为一帧)进行快速傅里叶变换,得到频谱序列M(x),仅保留x=1 256的部分;
~
S2.2:设置调节阈值f = -30dB,调节阈值f的大小可根据实际情况调整,若M(x)> f 记录为1,小于-30dB则记录为0,形成新的序列M0(x);
S2.3:设置语音阈值v = 0.2,语音阈值v的大小可根据实际情况调整,对M0求和,若M0/
256 > v则认为该帧为活动帧,即存在语音;
S2.4:连续活动帧在8帧以上,则认为连续活动帧的音频为有效音频片段。
4.根据权利要求1所述的基于深度学习的空中管制语音指令识别方法,其特征在于,所述步骤S3中所述的深度网络模型采用一个或一个以上结构相同的卷积模作为特征提取器,每个卷积模块包含两个卷积层和一个池化层,使用reshape层和全连接层对提取的特征数据进行处理,使用采用双向GRU神经网络的控循环单元进行序列学习,使用至少两个全连接层得到输出结果。
5.根据权利要求4所述的基于深度学习的空中管制语音指令识别方法,其特征在于,所述深度网络模型的模块连接处设置有dropout层。
6.根据权利要求1所述的基于深度学习的空中管制语音指令识别方法,其特征在于,所述步骤S4具体包括:
S4.1:获取空管指挥音频数据:获得需要识别的空管语音;
S4.2:标注语音数据:使用文字对S4.1所获得的语音进行标注得到训练数据,得到的训练数据包括语音数据和标注数据;
S4.3:成对按组划分训练数据;
S4.4:通过反向传播算法,利用Adadelta优化器对S3建立的深度网络模型进行训练,得到训练好的语音识别引擎。

说明书全文

一种基于深度学习的空中管制语音指令识别方法

[0001] 本发明涉及语音处理技术领域,尤其涉及一种基于深度学习的空中管制领域的语音识别方法。
[0002]

背景技术

[0003] 随着民航业快速发展,每年都增加大量的飞机和航班。然而空中管制人员却长期存在缺口,保守估计也有数千人之多。即使空管相关单位对此实施了一系列方法,比如4+1培养机制等方案,但空管人员依然存在大量流失的现象。同时又因为新进人员经验不足、培训时间和资源的缺乏等问题,导致无法发挥相应的人员效益。空管行业人员紧张导致了空管人员超负荷工作的问题,致使空中交通存在潜在的安全问题和效率问题。当前中国的空中交通管制仍是以管制员主观决策为主的高强度脑劳动,飞机班次随着民航的蓬勃发展而大大增多,而人手不足的空管目前又只能依赖管制员进行长时间高强度专注集中工作,人为失误在所难免。据统计,人为差错引发的航空事故占到了航空事故总量的80%,已经成为影响航空安全的重要原因。以2016年的10·11虹桥机场客机冲突事件为例,正是由于塔台管制员遗忘飞机动态,才造成如此严重的事故(跑道侵入)。因此,有必要引入语音识别系统,实时发送与记录管制员和飞行员的指令和回复语音,从而减少理解歧义和遗忘等情况。
[0004] 2016年,桂林市晶准测控技术有限公司采用预先训练的管制员语音库,进行语音识别,这种方法受限于已有的语音数据库,对于不能完全匹配规则的语音信息识别效果不佳,识别准确率不高。2018年,中国电子科技集团十五所构建基于连续隐尔科夫CHMM的声学模型用来识别语音,这种模型的识别准确率不及神经网络模型;中国民航大学使用特征增强的DNN-HMM模型进一步降低了错误率,但是DNN容易过拟合,而且容易陷入局部最优,其识别准确率仍不及CNN-GRU神经网络模型。
[0005]

发明内容

[0006] 本发明旨在针对上述现有技术的不足,构建一套专用于空中管制指令的语音识别的系统。本系统采用深度学习技术构建,基于人工智能语音识别引擎和外部信息修正系统,能够高准确地识别空管语音中大量的专业词汇、特殊读法和地区名称,实现较高的空管语音识别准确率。
[0007] 为了实现上述效果,本发明提供的技术方案如下:本发明包括以下步骤:
S1:获取待识别的语音信号,包括实时语音信号和历史语音信号中的至少一个,并将其转换为16bit 16kHz的PCM音频数据;
S2:对所述音频数据进行语音切分,得到处理后的有效音频片段
S3:建立深度网络模型;
S4:利用训练数据训练深度网络模型得到语音识别引擎;
S5:将有效音频片段输入语音识别引擎,并输出文字识别结果。
[0008] 所述的语音切分包含如下步骤:S2.1:输入音频数据,对音频(采用1024个采样点为一帧)进行快速傅里叶变换,得到频谱序列M(x),仅保留x=1 256的部分;
~
S2.2:设置调节阈值f = -30dB,调节阈值f的大小可根据实际情况调整,若M(x)> f 记录为1,小于-30dB则记录为0,形成新的序列M0(x);
S2.3:设置语音阈值v = 0.2,语音阈值v的大小可根据实际情况调整,对M0求和,若M0/
256 > v则认为该帧为活动帧,即存在语音;
S2.4:连续活动帧在8帧以上,则认为连续活动帧的音频为有效音频片段。
[0009] 所述的深度网络模型,采用一个或一个以上结构相同的卷积模作为特征提取器,每个卷积模块包含两个卷积层和一个池化层,使用reshape层和全连接层对提取的特征数据进行处理,使用门控循环单元()进行序列学习,使用至少两个全连接层进行分类学习与决策,获得预测结果。语音数据经过卷积模块、门控循环单元和全连接层可以获得预测结果,实现了一个完整的正向传播过程。
[0010] 所述的深度网络模型还在模块连接处设置有dropout层,其门控循环单元采用GRU神经网络,包含正向序列学习模块和反向序列学习模块。
[0011] 所述的基于深度学习的空中管制语音指令识别方法,利用训练数据训练得所述深度网络模型到语音识别引擎,包括以下具体步骤:S4.1:获取原始空管指挥音频数据;
S4.2:标注语音数据:使用文字对S4.1所获得的音频数据进行标注得到训练数据,得到的训练数据包括语音数据和标注数据;
S4.3:将语音数据和标注数据成对按组划分训练数据;
S4.4:通过反向传播算法,利用adadelta优化器对S3建立的深度网络模型进行训练,并形成可以应用的语音识别深度学习网络。
[0012] 将音频数据输入语音识别引擎,训练好的识别引擎将会把音频数据转化为文字结果输出。
[0013] 文字结果将用于输出、保存或其他应用使用。
[0014] 本发明具有以下有益效果:本发明所述的深度网络模型采用的卷积层模型具有局部感知、权值共享的优点,能够在相对较少的参数量下有效提取数据特征;池化层具有特征不变性和特征降维的优点,能够进一步压缩数据和参数量,防止模型过拟合。数据经过四个卷积模块,至下而上地提取数据特征,学习识别数据信息,符合人类的信息提取原理。
[0015] 其次,其中包含的门控循环单元(GRU)是一种模拟人类记忆系统的特殊的循环神经网络(RNN),由更新门和重置门两部分组成,分别控制前一时刻状态信息的记忆和遗忘程度,从而实现语言序列的学习,即上下文的相互关联。本发明语音识别引擎的GRU分别设置了正反两个方向的序列学习,进一步保障模型对上下文的理解。数据在经过GRU的序列学习后,进入两层全连接层进行分类学习与决策,获得更加准确的预测结果。另外,模块连接处还设置有dropout层,可以防止模型发生过拟合。
[0016] 由于空管专业性、地域差异性和人员复杂性,空管语音中存在大量专业名词、独特的地区名称、中英文混杂以及口音差异,这对于语音识别系统而言是一个巨大的挑战。本系统建立基于人工智能技术的语音识别引擎,用于空管语音的识别。相比于传统语音识别引擎,基于人工智能的语音识别引擎不仅识别准确率有质的提升(提升幅度约30% 60%),而且~模型结构大幅精简,训练与使用效率高。
[0017] 本发明采用以人工智能深度学习引擎为核心,实现完整的、专业化的,专门针对空管语音特殊性的语音识别系统。相比于当前各大互联网企业的通用语音识别系统,本系统中的语音识别引擎全部采用真实的空管语音进行训练,具有极强的专业适用性和口音泛化能力,场景高度特定,数据量依赖程度更低,在空管语音的识别上显著优于通用语音识别系统。
[0018]附图说明
[0019] 图1是本发明语音指令识别方法的流程示意图;图2是本发明深度网络模型的连接方式示意图;
图3是语音识别引擎训练过程的流程示意图。
[0020]

具体实施方式

[0021] 下面将结合本实施例中的附图对本发明实施例作清楚完整的说明。所述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0022] 如图1所示,一种基于深度学习的空中管制语音指令识别方法,具体采用以下步骤:S1:获取待识别的语音信号,将其转换为16bit 16kHz的PCM音频数据。
[0023] 待识别的语音信号将以实时语音流或者将历史语音流中的至少一种形式进行读取。历史语音流是指将已经存储好的音频文件,转化为字节串的形式进行读取,字节流的格式遵循16bit 16kHz PCM格式。实时语音流是指通过声卡等设备将模拟音频信号转化为数字信息,数字信号同样为连续的字节串16bit 16kHz PCM格式。
[0024] PCM 即脉冲编码调制 (Pulse Code Modulation),转换为PCM的有两种方式,一种是将模拟音频信号,通过声卡/音频采集卡,转换为数字字节串信号。第二种,是将其他音频格式转换为PCM格式。这里采用ffmpeg工具在linux系统中对其进行转换。转换方法执行命令如下:ffmpeg  -i “inputfile”  -f  wav  -acodec  pcm_s16le  -ar  16000 
“outputfile.wav”;
上述命令可以将其他类型的音频文件,转换为 16bit 16kHz的PCM音频数据。
[0025] S2:对所述音频数据进行语音切分,得到处理后的有效音频片段。
[0026] 具体方式为:输入音频数据,对音频帧(采用1024个采样点为一帧)进行快速傅里叶变换,得到频谱序列M(x),仅保留x=1 256的部分;设置调节阈值f = -30dB,调节阈值f的大小可根据实际~
情况调整,若M(x)> f 记录为1,小于-30dB则记录为0,形成新的序列M0(x);设置语音阈值v = 0.2,语音阈值v的大小可根据实际情况调整,对M0求和,若M0/256 > v则认为该帧为活动帧,即存在语音;;如果连续活动帧在8帧以上,则认为连续活动帧的音频为有效音频片段,该片段将传入到语音识别引擎中。
[0027] 优选地,阈值f的范围一般为-40dB到-10dB,主要取决于噪音强度。f应当大于噪音的平均强度。由于管制语音噪音较小,因此-30dB通常可以有效区分静音片段和有声音的片段。进而实现切分。当f取值过小时,所有的音频都会被认为是有语音的音频;而f取值过大时,所有的音频都会被认为是无语音的音频,无法完成切分。
[0028] 对于阈值v,其取值范围一般为0.1 0.9之间。其作用是判断音频片段的开始和结~束。当其取值过小的时候,任何小的音频波动,都会被当作音频开始,而音频活动即使以及已经停止,但也很难被认为是片段的结束。;当期取值过大的时候,即便有很强的音频活动,也不会被认为音频开始,且活动强度稍微降低,就会被认为音频片段结束。因此,应当选取适当的值,使得较小的音频活动不会触发音频片段开始,而较大的活动,也不会轻易的停止。
[0029] S3:建立深度网络模型。
[0030] 深度网络模型的框架如图2所示。语音数据分为音频和标注文字两部分,其中音频部分以语谱图形式作为输入数据传入模型,标注文字部分按照特定字典转换为对应数字序列作为期望的输出值。输入数据首先按先后顺序经过一个或一个以上结构相同的卷积模块(CNN)。优选地,本实施例采用了4个结构相同的卷积模,每个卷积模块包含两个卷积层和一个池化层。
[0031] 优选地,卷积模块的实施方式如下:layer_h1 = Conv2D(32, (3, 3), use_bias=True, activation='relu', padding='same', kernel_initializer='he_normal')(input_data) # 卷积层
layer_h2 = Conv2D(32, (3, 3), use_bias=True, activation='relu', padding='same', kernel_initializer='he_normal')(layer_h1) # 卷积层
layer_h3 = MaxPooling2D(pool_size=2, strides=None, padding="valid")(layer_h2) # 池化层
在经过卷积模块的特征提取后,所提取的特征数据经过reshape层和全连接层进行整形与综合,随后进入门控循环单元(GRU)进行序列学习。
[0032] 优选地,reshape层的实施方式如下:layer_h13 = Reshape((200, 3200))(layer_h12) # Reshape层
GRU是一种模拟人类记忆系统的特殊的循环神经网络(RNN),由更新门和重置门两部分组成,分别控制前一时刻状态信息的记忆和遗忘程度,从而实现语言序列的学习,即上下文的相互关联。本发明语音识别引擎的GRU分别设置了正反两个方向的序列学习,进一步保障模型对上下文的理解。
[0033] 优选地,双向GRU门控循环单元的实施方式如下:layer_h15 = Bidirectional(GRU(256, return_sequences=True, return_state=False), merge_mode='concat')(layer_h14)
数据在经过GRU的序列学习后,进入两层全连接层进行分类学习与决策,获得预测结果。此外,在模型框架的模块连接处设置了dropout层(放弃层),以防止模型过拟合。
[0034] layer_h6 = Dropout(0.1)(layer_h6)优选地,可在深度网络模型各模块的连接处均设置dropout层。
[0035] 模型中众多参数的训练需要反向传播,其本质是模型损失函数的最小化过程,本发明的语音识别引擎采用了先进的CTC损失函数,优选地:CTC的损失函数表示如下:
其中p(z|x)代表给定输入x,输出序列 z 的概率,S为训练集。损失函数可以解释为:给定样本后输出正确label的概率的乘积。其中p(z|x)可以转化为如下写法。
[0036] 其中x是给定输入,即经过神经网络的将音频特征序列变换成的符号特征序列。y 是给定输出,即音频对应的正确文字符号序列。|z’|表示序列z的长度。
[0037] 对于一个上诉公式,我们定义前向变量α(t,u) 为输出时刻为 t ,且输出序列z的路径的前向概率之和,其遵循如下递推关系:其中,u表示符号位置,lu’表示位置u的标签。
[0038] 首先定义一个反向变量β(t,u),它的含义是,所有能到达T时刻输出为空格或者对应label的“剩余”路径π′的概率之和。这里的剩余路径,指的是α(t,u)所描述的以外的路径。
[0039] 上述公式中, 表示t+1时刻,输出标签为li’的概率。
[0040] 具体实施则采用keras的ctc loss函数实现,方法如下:from keras import backend as K
def ctc_lambda_func(self, args):
y_pred, labels, input_length, label_length = args
y_pred = y_pred[:, :, :]
return K.ctc_batch_cost(labels, y_pred, input_length, label_length)该ctc_lambda_func函数即为ctc loss function计算函数。其中y_pred为神经网络计算的结果,labels表示正确结果,input_length表示预测batch的的长度,label_length表示正确结果batch的长度。
[0041] S4:利用训练数据训练深度网络模型得到语音识别引擎。
[0042] 具体方式为:获取原始空管指挥音频数据:获得需要识别的空管语音。除了使用真实的原始空管指挥音频数据,还可以使用人工智能合成拟真指令语音作为原始空管指挥音频数据进行使用;
标注语音数据:使用文字对所获得的语音进行标注得到训练数据,得到的训练数据包括语音数据和标注数据;可组织人员进行学习专业空管知识,并对空管语音进行标注。实现语音对应到相应语言的文字的形式的标注。比如(对应语音片段对应相应的标注内容:“东航三九八八上升到九百保持”);
成对按组划分训练数据,优选地,划分组的大小为10000对为一组,可根据训练需要将数据划分为具有公共能的数据组,根据训练数据的功能和具体情况的确定每组的具体数量;
通过反向传播算法,利用adadelta优化器对深度网络模型进行训练,得到训练好的语音识别引擎。
[0043] 优选地adadelta优化器的实施方式如下:ada_d = Adadelta(lr = 0.01, rho = 0.95, epsilon = 1e-06)
model.compile(loss={'ctc': lambda y_true, y_pred: y_pred}, optimizer = ada_d)
S5:将有效音频片段输入语音识别引擎,并输出文字识别结果。
[0044] 文字识别结果将用于输出、保存或其他应用使用。
[0045] 本发明实施例的方法,通过对深度神经网络进行结构优化,使用了卷积层模型具有局部感知、权值共享的优点,相对于全连接的DNN,能够在相对较少的参数量下有效提取数据特征,减小了过拟合的几率;双向GRU模型不仅可以实现语言序列的学习,还进一步保障模型对上下文的理解;本发明还采用了CTC方法,免去了对其语音和文本的不便,提高了后处理的效率。
[0046] 以上显示了本方案优选的实施方式。应当指出,本行业的技术人员应该了解本方案不受上述实施例的限制,任何本技术领域的技术人员在本发明披露的技术范围内,根据本发明的技术方案和发明构思加以等同或近似替换或改变,也应视为本发明的保护范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈