CN115206321A - 语音关键词的识别方法、装置和电子设备 - Google Patents
语音关键词的识别方法、装置和电子设备 Download PDFInfo
- Publication number
- CN115206321A CN115206321A CN202210845913.8A CN202210845913A CN115206321A CN 115206321 A CN115206321 A CN 115206321A CN 202210845913 A CN202210845913 A CN 202210845913A CN 115206321 A CN115206321 A CN 115206321A
- Authority
- CN
- China
- Prior art keywords
- voice
- data
- keyword
- neural network
- resnet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000012549 training Methods 0.000 claims abstract description 65
- 238000003062 neural network model Methods 0.000 claims abstract description 40
- 238000012360 testing method Methods 0.000 claims abstract description 14
- 238000012795 verification Methods 0.000 claims abstract description 14
- 239000012634 fragment Substances 0.000 claims abstract description 12
- 239000011159 matrix material Substances 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 16
- 230000006870 function Effects 0.000 claims description 14
- 238000001228 spectrum Methods 0.000 claims description 13
- 238000011176 pooling Methods 0.000 claims description 9
- 238000007781 pre-processing Methods 0.000 claims description 9
- 238000012216 screening Methods 0.000 claims description 7
- 238000005070 sampling Methods 0.000 claims description 6
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 238000000605 extraction Methods 0.000 claims description 5
- 238000005457 optimization Methods 0.000 claims description 4
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 claims description 3
- 238000011156 evaluation Methods 0.000 claims description 3
- 230000037433 frameshift Effects 0.000 claims description 3
- 239000000126 substance Substances 0.000 claims description 3
- 238000013210 evaluation model Methods 0.000 claims description 2
- 238000013528 artificial neural network Methods 0.000 description 19
- 238000012545 processing Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 238000013527 convolutional neural network Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 2
- 210000005069 ears Anatomy 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/223—Execution procedure of a spoken command
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Telephonic Communication Services (AREA)
Abstract
本公开提供一种语音关键词的识别方法、装置和电子设备,其中该识别方法包括:从中文音频资源中获取一个或多个关键词的语音片段,构建得到中文语音指令数据集;获取数据集中预设关键词指令的语音数据,将语音数据转换成Fbank特征,并按预定的比例分为训练集和验证集;构建基于ResNet的神经网络模型,以便用于对语音数据的Fbank特征进行编码;使用基于ResNet的神经网络模型对语音数据的Fbank特征进行编码,输出预测关键词指令标签,将该预测关键词指令标签与真实的关键词指令标签进行对比,对基于ResNet的神经网络模型的参数进行调整;以及输入测试用语音数据,返回测试用语音数据的关键词识别结果。
Description
技术领域
本发明涉及语音识别技术领域,尤其涉及一种语音关键词的识别方法、装置和电子设备。
背景技术
随着人工智能技术的不断发展,语音识别技术也不断渗透进人们生活中的各个领域,如手机、智能家居、智能穿戴设备及智能车载设备等。语音唤醒,即语音关键词检测作为语音识别任务中一个关键的技术,是所有嵌入式智能设备能进行语音交互的基础。高质量的语音指令数据集是训练获得高质量语音关键词识别模型的关键。
目前国内市面上的数据服务厂商提供的语音数据集都是在特定环境下,使用手机或者其他录音设备,对几百上千个说话人进行语音数据采集组成的。例如,数据堂200人的中文关键词手机采集语音数据集,是分别在安静和吵杂环境下,使用手机设备对200名说话人进行指定关键词录音采集组成的。
现阶段语音关键词识别模型多基于DNN(Deep Neural Networks,深度神经网络,拥有多个隐藏层的神经网络,其内部的神经网络层可以分为三类,输入层,隐藏层和输出层)、CNN(Convolutional Neural Network,卷积神经网络)或RNN(Recurrent NeuralNetwork,循环神经网络)神经网络训练得到。如在方案基于CRNN(ConvolutionalRecurrent Neural Network,卷积循环神经网络)的低量级语音关键词识别方法中,采用了一个CNN层和两个RNN层对输入的语音MFCC(Mel Frequency Cepstrum Coefficient,梅尔频率倒谱系数)特征向量进行编码,然后再通过一个全连接层及softmax(软最大化)激活函数获得语音关键词识别结果。
而市场上用于训练语音关键词识别的ResNet(Residual network,残差神经网络)往往采用BasicBlock(基础块)残差块结构。如在方案基于残差学习的低能耗的语音关键词识别方案中,采用了包含6个BasicBlock残差块的Res15神经网络对语音的MFCC(Mel-scaleFrequency Cepstral Coefficients,梅尔倒谱系数)特征进行编码,然后再通过一个全连接层及softmax激活函数获得语音关键词识别结果。
目前,用于训练语音关键词识别模型的语音指令数据集存在的问题主要包括:国内尚没有类似Google Speech Commands Dataset这样的开源的中文语音命令数据集;以及目前的技术中,语音数据都是在指定的录音环境下,对多个说话人进行录制,最后处理汇总构建成语音数据集,这种高昂的人力及时间成本使得一般用户无法获得自己想要的语音指令数据集。
此外,目前在微控制器上部署基于神经网络的语音关键词识别模型也存在以下问题:使用基于DNN神经网络训练得到的语音关键词识别模型,虽然占用的计算资源较少,能获得较快的运算速度,但在识别准确率以及内存资源占用上无法获得理想的效果;使用基于CNN神经网络训练得到的语音关键词识别模型,虽然在识别准确率上能够取得较好的效果,但模型需要占用的计算资源和内存资源较多,运行起来也需要更高的功耗;使用基于RNN神经网络训练得到的语音关键词模型,虽然能够在计算和内存上占用较少的资源,但其总体的识别准确率比基于CNN神经网络训练得到的语音关键词识别模型要低一些。
发明内容
针对上述问题,本发明提出了一种语音关键词的识别方法、装置和电子设备。提出了一种基于ResNet神经网络的语音关键词识别方法,相较于市场上采用BasicBlock残差块结构的ResNet神经网络,本发明中的ResNet神经网络采用了Bottleneck(瓶颈层)残差块结构,不仅能够减少模型参数还能保证模型性能提升,使训练得到的语音关键词识别模型在占用较少计算和内存资源的同时,在识别准确率上也能取得理想效果,使模型更适合部署在微控制器系统中。
根据本发明的第一方面,提供一种语音关键词的识别方法,所述方法包括:
从中文音频资源中获取一个或多个关键词的语音片段,构建得到中文语音指令数据集;
获取所述数据集中的预设关键词指令的语音数据,将所述语音数据转换成Fbank(FilterBank,滤波器组)特征,并按预定的比例分为训练集和验证集;
构建基于ResNet的神经网络模型,以便用于对所述语音数据的Fbank特征进行编码;
使用所述基于ResNet的神经网络模型对所述语音数据的Fbank特征进行编码,输出预测关键词指令标签,将该预测关键词指令标签与真实的关键词指令标签进行对比,对所述基于ResNet的神经网络模型的参数进行调整;以及
输入测试用语音数据,返回所述测试用语音数据的关键词识别结果。
进一步优选地,其中,从中文音频资源中获取一个或多个关键词的语音片段,构建得到中文语音指令数据集包括:
从开源的中文语音识别数据集或者视频网站中获取原始音频数据集;
从原始音频数据中筛选包含关键词的语音数据,以获得筛选的语音文件;
将筛选出的所述语音文件进行语音识别,并生成识别报文,其中,所述识别报文中包含词级别时间戳;以及
根据关键词的起始及终止时间截取出关键词语音片段。
进一步优选地,其中,获取所述数据集中的预设关键词指令的语音数据,将所述语音数据转换成Fbank特征,并按预定的比例分为训练集和验证集包括:
通过预定的采样率来读取数据集中预设关键词指令的语音音频文件,并返回音频时间序列以及音频的采样率;
通过短时傅里叶变换将音频序列转换成一个大小为的STFT复数矩阵,将STFT矩阵取模后获得音频数据的幅度谱,将幅度谱做平方操作获得音频数据的能量谱,其中,n_fft为FFT窗口大小,hop_length为帧移,win_length为加窗窗长;
构建梅尔滤波器组,将能量谱通过梅尔滤波器组后,取对数获得音频数据的Fbank特征矩阵;以及
将所有生成的Fbank特征矩阵按照所述的预定比例分成训练集和验证集。
进一步优选地,其中,所述的基于ResNet的神经网络模型包括一个卷积核大小为3×3、步长为1的2D卷积层,一个池化窗口大小为2×2、步长为1的2D平均池化层,三个残差模块,一个全局平均池化层以及一个全连接层;并且其中,所述残差模块为采用Bottleneck结构的残差块。
进一步优选地,其中,使用所述基于ResNet的神经网络模型对所述语音数据的Fbank特征进行编码,输出预测关键词指令标签,将该预测关键词指令标签与真实的关键词指令标签进行对比,对所述基于ResNet的神经网络模型的参数进行调整,包括:
获得各关键词下所有语音数据的Fbank特征矩阵,乱序后各取前M条数据,组成一个[(M*L)×D×T]大小的批训练数据,其中L为关键词的分类个数,D为Fbank特征的频域特征维度,T为Fbank特征的时长;
标记批训练数据的真实标签,并进行编码,得到批训练数据的真实标签矩阵Y;
将批训练数据输入到所述基于ResNet的神经网络模型中,并输出获得一个[(M*L)×L]大小的批训练数据的编码矩阵E;
基于梯度下降优化算法Adam或SGD,根据模型的损失迭代优化整个模型。
进一步优选地,其中,用所述基于ResNet的神经网络模型对所述语音数据的Fbank特征进行编码,输出预测关键词指令标签,将该预测关键词指令标签与真实的关键词指令标签进行对比,对所述基于ResNet的神经网络模型的参数进行调整,还包括:
使用验证集评价模型,评价指标使用准确率对所述基于ResNet的神经网络模型进行评价。
用下式计算所述交叉熵损失:
进一步优选地,其中,所述将筛选出的所述语音文件进行语音识别,并生成识别报文,包括:将筛选出的所述语音文件通过第三方语音识别工具进行语音识别;并且其中,所述生成识别报文为生成json报文。
根据本发明的第二方面,提供一种语音关键词的识别装置,所述装置包括:
中文语音指令数据集构件模块,用于从中文音频资源中获取一个或多个关键词的语音片段,构建得到中文语音指令数据集;
语音数据预处理模块,用于获取所述数据集中的预设关键词指令的语音数据,将所述语音数据转换成Fbank特征,并按预定的比例分为训练集和验证集;
编码模型构建模块,用于构建基于ResNet的神经网络模型,以便用于对所述语音数据的Fbank特征进行编码;
网络模型训练模块,英语使用所述基于ResNet的神经网络模型对所述语音数据的Fbank特征进行编码,输出预测关键词指令标签,将该预测关键词指令标签与真实的关键词指令标签进行对比,对所述基于ResNet的神经网络模型的参数进行调整;以及
模型预测模块,用于在输入测试用语音数据后,返回所述测试用语音数据的关键词识别结果。
根据本发明的第三方面,提供一种电子设备,所述电子设备包括:处理器和存储器;所述存储器存有计算机程序,该计算机程序被处理器执行,以实现如上文所述的任一方法。
有益效果
高质量的语音关键词数据集是构建高性能语音关键词识别系统的基础,通过引入本发明的技术方案,用户能够结合第三方语音识别工具,从海量的中文音视频资源中抓取想要的是语音指令片段,构建用户想要的中文语音指令数据集。此外,用户还可以根据本发明提出的语音关键词识别方法,结合上述构建的中文语音指令数据集,能够在保证占用较少计算和内存资源的同时,在识别准确率上也能取得理想效果,使模型更适合部署在微控制器系统中。
附图说明
在下面结合附图对于示例性实施例的描述中,本公开的更多细节、特征和优点被公开,在附图中:
图1示出了根据本发明的语音关键词的识别方法的一优选实施例。
图2示出了根据本发明的构建中文语音指令数据集的一优选实施例。
图3示出了根据本发明的筛选语音文件的流程的一优选实施例。
图4示出了根据本发明的语音数据预处理步骤的一优选实施例。
图5示出了根据本发明的基于ResNet神经网络的编码模型的一优选实施例。
图6示出了根据本发明的一优选实施例的残差块的结构。
图7示出了根据本发明的一优选实施例的模型训练步骤。
图8示出了根据本发明一优选实施例的语音关键词的识别装置。
图9示出了根据本发明一优选实施例的构建中文语音指令数据集的装置。
图10示出了能够用于实现本公开的实施例的示例性电子设备的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
以下参照附图描述本公开的方案。
首先,结合图1描述本发明的语音关键词的识别方法,图1示出了根据本发明的语音关键词的识别方法的一优选实施例。如图1所示,所述方法包括步骤S1至步骤S5。
S1,构建中文语音指令数据集。结合第三方语音识别工具,从海量中文音频资源中抓取关键词语音片段,从而构建得到中文语音指令数据集。其中,第三方语音识别工具可以是讯飞、百度、阿里、腾讯语音识别技术、kaldi或者MFA。语音指令数据集是指,包含多个不同的关键词,每个关键词下包含数千条由不同说话人录制的该关键词的语音数据。
S2,语音数据预处理。接收数据集中预设关键词指令的语音数据,经过处理后将语音数据转换成Fbank特征,并按预定比例分为训练集和验证集进行保存,如8:2的比例。
其中,人耳对声音频谱的响应是非线性的,Fbank是一种前端处理算法,以类似于人耳的方式对音频进行处理,可以提高语音识别的性能。获得语音信号的Fbank特征的一般步骤是:预加重、分帧、加窗、短时傅里叶变换、mel滤波、去均值等。对Fbank做离散余弦变换,即可获得mfcc特征。
S3,构造编码模型。构建一个基于ResNet的神经网络模型,用于对语音数据的Fbank特征进行编码。
S4,网络模型训练。使用基于ResNet的神经网络模型对语音数据的Fbank特征进行编码,输出预测关键词指令标签,并将预测关键词指令标签与真实的关键词指令标签进行对比,从而调整、更新模型参数的过程。
S5,模型测试,在基于ResNet的神经网络模型运行时,给出若干条语音数据,模型将返回各语音数据的关键词识别结果。
以下,结合附图对个步骤进行详细说明。首先对步骤S1构建中文语音指令数据集步骤进行详细说明。
图2示出了根据本发明的构建中文语音指令数据集的一优选实施例。如图2所示,构建中文语音指令数据集包括步骤S11至步骤S14。
S11,获取原始音频数据集。原始音频数据可从各个开源的中文语音识别数据集获取,需保证每条音频文件有对应的中文文本;也可从各视频网站中获取视频的音频数据作为原始音频数据,需保证获取的音频数据有对应的外挂字幕文件。
S12,筛选语音文件。获取了原始音频数据后,从原始音频数据中筛选包含关键词的语音数据,其中选择什么词作为关键词可以在配置文件中自主配置。即,用户需要构建哪些关键词的语音指令数据集,可以通过配置文件进行自定义配置。
图3示出了根据本发明所述的筛选语音文件的流程的一优选实施例。具体的,当从开源中文语音识别数据集中筛选包含关键词的语音文件时,可以通过查找各语音数据对应的中文文本中是否包含对应的关键词文本,若包含,则将对应的语音文件的路径保存到对应的关键词字典中。当从视频获取的音频数据中筛选包含关键词的语音文件,可以通过查找音频对应的外挂字幕文件中是否包含关键词文本。若一条字幕中包含关键词文本,则根据该条字幕起始和终止时间通过librosa工具截取音频并保存,同时将保存文件的路径储存到对应的关键词字典中。所述的Librosa是一个用于音频、音乐分析、处理的python工具包,包含时频处理、特征提取、绘制声音图形等多种常见功能。
S13,获取关键词时间戳。从原始数据集中筛选出包含关键词的语音文件后,正式从语音数据中截取出关键词语音片段。为了从语音文件中准确截取关键词语音片段,需要知道关键词出现的具体时间。因此,需要获取关键词的时间戳。将语音文件通过第三方语音识别工具进行语音识别生成识别报文,识别报文中包含词级别时间戳。其中,所述第三方语音识别工具例如为,讯飞、百度、阿里、腾讯语音识别技术、kaldi或者MFA。
S14,截取关键词语音片段。在得到语音文件的词级别时间戳后,就可以查找到关键词对应的时间戳,并根据关键词的起始及终止时间截取(例如,通过librosa工具截取)出关键词语音片段并保存到对应的关键词目录下。
以下结合图4对语音数据预处理步骤进行详细说明。
图4示出了根据本发明的语音数据预处理步骤的一优选实施例。如图4所示,在数据预处理阶段中,首先,通过例如16000的采样率来读取数据集中不同关键词的语音音频文件,并返回音频时间序列以及音频的采样率。
然后,通过短时傅里叶变换(STFT)将音频序列转换成一个大小为 的STFT复数矩阵,其中n_fft为FFT窗口大小,例如为512;hop_length为帧移,例如为160,win_length为加窗窗长,例如为320。
将STFT矩阵取模后可以获得音频数据的幅度谱,将幅度谱做平方操作,获得音频数据的能量谱。然后,构建一个例如,FFT组件数为512、产生的梅尔带数为40的梅尔滤波器组,将能量谱通过梅尔滤波器组后取对数,以获得音频数据的Fbank特征矩阵。
进一步地,判断生成的特征矩阵帧数是否满足预定帧数,例如80帧,若不满足,则对Fbank特征矩阵进行填零补齐;若满足,则取该音频文件生成的Fbank特征矩阵最后的80帧来表示该音频文件。最后,将所有生成的Fbank特征矩阵按照预定比例,例如8:2的比例分成训练集和验证集,并以“.npy”文件格式保存到对应的路径。
以下结合图5、6对构造语音关键词识别模型步骤进行详细说明。
S3、构建编码模型
现有的语音关键词识别方案往往基于DNN、CNN或者RNN结构训练语音关键词识别模型,因此模型不能在计算资源占用、内存资源占用及模型识别准确率上同时取得理想效果,造成模型无法满足部署在微控制器上时高准确率、低延时及低资源占用的要求。
为了解决上述问题,本发明构造了一个基于ResNet的神经网络模型,该模型通过基于ResNet的神经网络对输入语音特征进行编码。图5示出了根据本发明的基于ResNet的神经网络模型的一优选实施例。如图5所示,ResNet神经网络是由一个卷积核大小为3×3、步长为1的2D卷积层,一个池化窗口大小为2×2、步长为1的2D平均池化层,三个残差模块,一个全局平均池化层以及一个全连接层构成。
进一步地,图6示出了根据本发明的一优选实施例的残差块的结构。如图6所示,本发明方案采用Bottleneck结构的残差块,其中,设置两个1×1的卷积层是为了减少和恢复通道数。其中,所述的BasicBlock为ResNet中的一种网络结构,BasicBlock包含了残差支路和一个short-cut支路,由于比传统卷积结构多了一个short-cut支路用于传递低层信息,使得网络能够训练地很深。
本发明所采用的该结构相比市场上基于ResNet的神经网络模型的语音关键词识别模型采用的BasicBlock结构,能够更加显著地减少模型参数,大幅减少计算量,缩短训练时间,并保证模型性能的提升。
下面结合图7详细描述本发明的模型训练步骤。图7示出了根据本发明的一优选实施例的模型训练步骤。
如图7所示,每轮的所述模型训练包括:
S41,获取批训练数据。具体地,通过读取预处理后保存的各关键词的.npy文件,获得各关键词下所有语音数据的Fbank特征矩阵,乱序后各取前M条数据,组成一个[(M*L)×D×T]大小的批训练数据。其中L为关键词的分类个数,D为Fbank特征的频域特征维度,T为Fbank特征的时长。标记批训练数据的真实标签,真实标签使用例如,one-hot编码进行表示,得到批训练数据的真实标签矩阵Y。将批训练数据作为网络模型的输入。
S42,模型编码。具体地,将批训练数据输入到基于ResNet结构的神经网络中,并根据最后一层全连接层的输出,获得一个[(M*L)×L]大小的批训练数据的编码矩阵E。
S43,计算模型损失。具体地,将批训练数据的编码矩阵E再经过一层softmax函数后,得到批训练数据中各条语音的分类识别概率矩阵可以用表示批训练数据中,第i条语音被模型预测识别为第j个关键词的概率;最后根据批训练数据的真实标签矩阵Y,利用下式计算模型的交叉熵损失:
S44,反向传播更新模型参数。具体地,基于梯度下降优化算法Adam(Adaptivemomentum,自适应动量的随机优化方法)或SGD(Stochastic Gradient Descent,随机梯度下降),根据模型的损失Loss迭代优化整个模型。
优选地,所述模型训练步骤还包括:
S45,评估模型性能。具体地,使用验证集评价模型,评价指标使用准确率(Accuracy)进行评价,若模型性能提升则保存模型。其中,所述的准确率指标是一个用于评估分类模型的指标,模型预测正确数量所占总量的比例
以下对模型预测步骤进行详细说明。
在模型测试阶段中,先在真实环境下通过手机麦克风或者设备麦克风录制若干条不同指令关键词的语音,再经过如图4和图7所示流程对各语音数据进行Fbank特征提取及预测分类,取概率最高的一维对应的关键词作为各条语音的关键词识别结果。
根据本发明的一个实施例提,提供一种语音关键词的识别装置。图8示出了根据本发明一优选是示例的语音关键词的识别装置,如图8所示,所述装置包括:中文语音指令数据集构件模块1、语音数据预处理模块2、编码模型构建模块3、网络模型训练模块4以及模型预测模块5,具体地,所述中文语音指令数据集构件模块1,用于利用第三方语音识别工具从中文音频资源中获取关键词语音片段,构建得到中文语音指令数据集;所述语音数据预处理模块2,用于接收所述数据集中的不同关键词指令的语音数据,将所述语音数据转换成Fbank特征,并按预定的比例分为训练集和验证集;所述语音关键词识别模型构建模块3,用于构建基于ResNet的神经网络模型,以便用于对所述语音数据的特征向量进行编码;所述网络模型训练模块4,用于使用所述基于ResNet的神经网络模型对所述语音数据的特征向量进行编码,输出预测关键词指令标签,将该预测关键词指令标签与真实的关键词指令标签进行对比,对所述基于ResNet的神经网络模型的参数进行调整;以及所述模型预测模块5,用于在输入测试用语音数据后,返回所述测试用语音数据的关键词识别结果。
在本发明的又一实施例中,提供一种构建中文语音指令数据集的装置。图9示出了根据本发明一优选实施例的构建中文语音指令数据集的装置,如图9所示,所述装置包括:原始音频数据集获取模块11、语音文件筛选模块12、关键词时间戳获取模块13以及关键词语音片段截取模块14。具体地,所述原始音频数据集获取模块11用于从开源的中文语音识别数据集或者视频网站中获取原始音频数据集;所述语音文件筛选模块12用于从原始音频数据中筛选包含关键词的语音数据,以获得筛选的语音文件;所述关键词时间戳获取模块13用于将筛选出的所述语音文件通过第三方语音识别工具进行语音识别,并生成识别报文,其中,所述识别报文中包含词级别时间戳;以及所述关键词语音片段截取模块14用于根据关键词的起始及终止时间截取出关键词语音片段。
以上对本发明的语音关键词的识别方法及其所利用的构建中文语音指令数据集步骤进行了详细说明。应当指出,以上描述仅仅是示例性的,并不用于限制本发明。
另一方面,在一个实施例中,本发明还提供一种电子设备,该电子设备包括处理器和控制器。所述的处理器用于提供计算和控制能力。所述的存储器包括非易失性存储介质、内存储器,其上存储能够被处理器执行的计算机程序,并以实现本发明所述的语音关键词识别方法以及构建中文语音指令数据集的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
进一步地,本发明的方案可以应用于语音关键词数据集构建以及语音关键词识别系统中,应用场景包括智能家居,例如通过语音指令控制屋内的家电;智能驾驶,比如通过语音指令控制车载设备等等。
高质量的语音关键词数据集是构建高性能语音关键词识别系统的基础,通过引入本发明的技术方案,用户能够结合第三方语音识别工具,从海量的中文音视频资源中抓取想要的是语音指令片段,构建用户想要的中文语音指令数据集。此外,用户还可以根据本发明提出的语音关键词识别方法,结合上述构建的中文语音指令数据集,能够在保证占用较少计算和内存资源的同时,在识别准确率上也能取得理想效果,使模型更适合部署在微控制器系统中。
本公开示例性实施例还提供一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器。所述存储器存储有能够被所述至少一个处理器执行的计算机程序,所述计算机程序在被所述至少一个处理器执行时用于使所述电子设备执行根据本公开实施例的方法。
本公开示例性实施例还提供一种存储有计算机程序的非瞬时计算机可读存储介质,其中,所述计算机程序在被计算机的处理器执行时用于使所述计算机执行根据本公开实施例的方法。
本公开示例性实施例还提供一种计算机程序产品,包括计算机程序,其中,所述计算机程序在被计算机的处理器执行时用于使所述计算机执行根据本公开实施例的方法。
参考图10,现将描述可以作为本公开的服务器或客户端的电子设备1000的结构框图,其是可以应用于本公开的各方面的硬件设备的示例。电子设备旨在表示各种形式的数字电子的计算机设备,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图10所示,电子设备1000包括计算单元1001,其可以根据存储在只读存储器(ROM)1002中的计算机程序或者从存储单元1008加载到随机访问存储器(RAM)1003中的计算机程序,来执行各种适当的动作和处理。在RAM 1003中,还可存储设备1000操作所需的各种程序和数据。计算单元1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
电子设备1000中的多个部件连接至I/O接口1005,包括:输入单元1006、输出单元1007、存储单元1008以及通信单元1009。输入单元1006可以是能向电子设备1000输入信息的任何类型的设备,输入单元1006可以接收输入的数字或字符信息,以及产生与电子设备的用户设置和/或功能控制有关的键信号输入。输出单元1007可以是能呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。存储单元1008可以包括但不限于磁盘、光盘。通信单元1009允许电子设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据,并且可以包括但不限于调制解调器、网卡、红外通信设备、无线通信收发机和/或芯片组,例如蓝牙设备、WiFi设备、WiMax设备、蜂窝通信设备和/或类似物。
计算单元1001可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1001的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1001执行上文所描述的各个方法和处理。例如,在一些实施例中,语音关键词的识别方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1008。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1002和/或通信单元1009而被载入和/或安装到电子设备1000上。在一些实施例中,计算单元1001可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行语音关键词的识别方法。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
如本公开使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
Claims (10)
1.一种语音关键词的识别方法,其特征在于,所述方法包括:
从中文音频资源中获取一个或多个关键词的语音片段,构建得到中文语音指令数据集;
从所述数据集中获取预设关键词指令的语音数据,将所述语音数据转换成Fbank特征,并按预定的比例分为训练集和验证集;
构建基于ResNet的神经网络模型,以便用于对所述语音数据的Fbank特征进行编码;
使用所述基于ResNet的神经网络模型对所述语音数据的Fbank特征进行编码,输出预测关键词指令标签,将该预测关键词指令标签与真实的关键词指令标签进行对比,对所述基于ResNet的神经网络模型的参数进行调整;以及
输入测试用语音数据,返回所述测试用语音数据的关键词识别结果。
2.如权利要求1所述的识别方法,其特征在于,其中,
从中文音频资源中获取一个或多个关键词的语音片段,构建得到中文语音指令数据集,包括:
从开源的中文语音识别数据集或者视频网站中获取原始音频数据集;
从原始音频数据中筛选包含关键词的语音数据,以获得筛选的语音文件;
将筛选出的所述语音文件进行语音识别,并生成识别报文,其中,所述识别报文中包含词级别时间戳;以及
根据关键词的起始及终止时间截取出关键词语音片段。
3.如权利要求1或2所述的识别方法,其特征在于,其中,
从所述数据集获取预设关键词指令的语音数据,将所述语音数据转换成Fbank特征,并按预定的比例分为训练集和验证集,包括:
通过预定的采样率来读取数据集中预设关键词的语音音频文件,并返回音频时间序列以及音频的采样率;
通过短时傅里叶变换将音频序列转换成一个大小为的STFT复数矩阵,将STFT矩阵取模后获得音频数据的幅度谱,将幅度谱做平方操作获得音频数据的能量谱,其中,n_fft为FFT窗口大小,hop_length为帧移,win_length为加窗窗长;
构建梅尔滤波器组,将能量谱通过梅尔滤波器组后,取对数获得音频数据的Fbank特征矩阵;以及
将所有生成的Fbank特征矩阵按照所述的预定比例分成训练集和验证集。
4.如权利要求3所述的识别方法,其中,
所述的基于ResNet的神经网络模型包括一个卷积核大小为3×3、步长为1的2D卷积层,一个池化窗口大小为2×2、步长为1的2D平均池化层,三个残差模块,一个全局平均池化层以及一个全连接层;并且其中,
所述残差模块为Bottleneck结构的残差块。
5.如权利要求3所述的识别方法,其中,
使用所述基于ResNet的神经网络模型对所述语音数据的Fbank特征进行编码,输出预测关键词指令标签,将该预测关键词指令标签与真实的关键词指令标签进行对比,对所述基于ResNet的神经网络模型的参数进行调整,包括:
获得预设关键词指令下所有语音数据的Fbank特征矩阵,乱序后各取前M条数据,组成一个[(M*L)×D×T]大小的批训练数据,其中L为关键词的分类个数,D为Fbank特征的频域特征维度,T为Fbank特征的时长;
标记批训练数据的真实标签,得到批训练数据的真实标签矩阵Y;
将批训练数据输入到所述基于ResNet的神经网络模型中,并输出获得一个[(M*L)×L]大小的批训练数据的编码矩阵E;
基于梯度下降优化算法Adam或SGD,根据模型的损失迭代优化整个模型。
6.如权利要求5所述的识别方法,其特征在于,其中,
使用所述基于ResNet的神经网络模型对所述语音数据的Fbank特征进行编码,输出预测关键词指令标签,将该预测关键词指令标签与真实的关键词指令标签进行对比,对所述基于ResNet的神经网络模型的参数进行调整,还包括:
使用验证集评价模型,评价指标使用准确率对所述基于ResNet的神经网络模型进行评价。
8.如权利要求2所述的识别方法,其特征在于,其中,所述将筛选出的所述语音文件进行语音识别,并生成识别报文,包括:
将筛选出的所述语音文件通过第三方语音识别工具进行语音识别;并且其中,
所述生成识别报文为生成json报文。
9.一种语音关键词的识别装置,其特征在于,所述装置包括:
中文语音指令数据集构件模块,用于中文音频资源中获取一个或多个关键词的语音片段,构建得到中文语音指令数据集;
语音数据预处理模块,用于获取所述数据集中的预设关键词指令的语音数据,将所述语音数据转换成Fbank特征,并按预定的比例分为训练集和验证集;
编码模型构建模块,用于构建基于ResNet的神经网络模型,以便用于对所述语音数据的Fbank特征进行编码;
网络模型训练模块,英语使用所述基于ResNet的神经网络模型对所述语音数据的Fbank特征进行编码,输出预测关键词指令标签,将该预测关键词指令标签与真实的关键词指令标签进行对比,对所述基于ResNet的神经网络模型的参数进行调整;以及
模型预测模块,用于在输入测试用语音数据后,返回所述测试用语音数据的关键词识别结果。
10.一种电子设备,其特征在于,所述电子设备包括:
处理器和存储器;所述存储器存有计算机程序,该计算机程序被处理器执行,以实现如权利要求1-8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210845913.8A CN115206321A (zh) | 2022-07-19 | 2022-07-19 | 语音关键词的识别方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210845913.8A CN115206321A (zh) | 2022-07-19 | 2022-07-19 | 语音关键词的识别方法、装置和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115206321A true CN115206321A (zh) | 2022-10-18 |
Family
ID=83581788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210845913.8A Pending CN115206321A (zh) | 2022-07-19 | 2022-07-19 | 语音关键词的识别方法、装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115206321A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116782093A (zh) * | 2023-08-28 | 2023-09-19 | 深圳市奇创想科技有限公司 | 便携式音箱的音频调节方法、装置、电子设备及介质 |
-
2022
- 2022-07-19 CN CN202210845913.8A patent/CN115206321A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116782093A (zh) * | 2023-08-28 | 2023-09-19 | 深圳市奇创想科技有限公司 | 便携式音箱的音频调节方法、装置、电子设备及介质 |
CN116782093B (zh) * | 2023-08-28 | 2023-11-07 | 深圳市奇创想科技有限公司 | 便携式音箱的音频调节方法、装置、电子设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6393730B2 (ja) | 音声識別方法および装置 | |
JP6099556B2 (ja) | 音声識別方法および装置 | |
CN112509555B (zh) | 方言语音识别方法、装置、介质及电子设备 | |
CN111402891A (zh) | 语音识别方法、装置、设备和存储介质 | |
CN112466314A (zh) | 情感语音数据转换方法、装置、计算机设备及存储介质 | |
CN113488024B (zh) | 一种基于语义识别的电话打断识别方法和系统 | |
Silva et al. | Spoken digit recognition in portuguese using line spectral frequencies | |
CN112116903A (zh) | 语音合成模型的生成方法、装置、存储介质及电子设备 | |
CN108877779B (zh) | 用于检测语音尾点的方法和装置 | |
CN111816166A (zh) | 声音识别方法、装置以及存储指令的计算机可读存储介质 | |
CN107731232A (zh) | 语音翻译方法和装置 | |
CN115206321A (zh) | 语音关键词的识别方法、装置和电子设备 | |
CN114495977A (zh) | 语音翻译和模型训练方法、装置、电子设备以及存储介质 | |
CN116913304A (zh) | 实时语音流降噪方法、装置、计算机设备及存储介质 | |
CN113421554B (zh) | 语音关键词检测模型处理方法、装置及计算机设备 | |
CN113555005B (zh) | 模型训练、置信度确定方法及装置、电子设备、存储介质 | |
CN110675858A (zh) | 基于情绪识别的终端控制方法和装置 | |
CN112712793A (zh) | 语音交互下基于预训练模型的asr纠错方法及相关设备 | |
CN114420105A (zh) | 语音识别模型的训练方法、装置、服务器及存储介质 | |
CN117649846B (zh) | 语音识别模型生成方法、语音识别方法、设备和介质 | |
CN110634475B (zh) | 语音识别方法、装置、电子设备和计算机可读存储介质 | |
CN113793598B (zh) | 语音处理模型的训练方法和数据增强方法、装置及设备 | |
CN111292766B (zh) | 用于生成语音样本的方法、装置、电子设备和介质 | |
CN116895289A (zh) | 语音活动检测模型的训练方法、语音活动检测方法及装置 | |
CN115376563A (zh) | 一种语音端点检测方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |