CN117223052A - 基于神经网络的关键词检出方法 - Google Patents
基于神经网络的关键词检出方法 Download PDFInfo
- Publication number
- CN117223052A CN117223052A CN202180097495.2A CN202180097495A CN117223052A CN 117223052 A CN117223052 A CN 117223052A CN 202180097495 A CN202180097495 A CN 202180097495A CN 117223052 A CN117223052 A CN 117223052A
- Authority
- CN
- China
- Prior art keywords
- acoustic model
- keyword
- acoustic
- detection method
- input
- 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
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 98
- 238000001514 detection method Methods 0.000 title claims abstract description 37
- 238000000034 method Methods 0.000 claims abstract description 23
- 238000012549 training Methods 0.000 claims description 20
- 230000000694 effects Effects 0.000 claims description 10
- 230000004913 activation Effects 0.000 claims description 9
- 238000001994 activation Methods 0.000 claims description 9
- 238000013527 convolutional neural network Methods 0.000 claims description 5
- 230000001419 dependent effect Effects 0.000 claims 1
- 238000005457 optimization Methods 0.000 abstract description 3
- 238000012217 deletion Methods 0.000 abstract description 2
- 230000037430 deletion Effects 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 9
- 238000010606 normalization Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000008447 perception Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000014616 translation Effects 0.000 description 1
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/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0495—Quantised networks; Sparse networks; Compressed networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
-
- 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
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/18—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being spectral information of each sub-band
-
- 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
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/24—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being the cepstrum
-
- 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
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/78—Detection of presence or absence of voice signals
-
- 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
- G10L2015/088—Word spotting
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Signal Processing (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
提供了一种通过将新的关键词重新映射为单独的声学模型序列来容许动态添加和删除关键词的基于神经网络(NN)声学模型的关键词检出方法。所述方法比较音素空间中的序列匹配,而不是直接比较预定声学空间中的序列匹配。因此,将声学模型交叉比较模型从全局优化放宽到每个分布的局部最小距离。
Description
技术领域
本公开总体上涉及关键词检出(KWS)技术。更具体地说,本公开涉及一种基于神经网络声学模型的关键词检出方法。
背景技术
随着移动装置或家庭消费型装置(诸如手机或智能扬声器)的快速发展,与话音识别相关的技术也越来越受欢迎。机器学习的最新突破使得具有麦克风的机器能够解析和翻译人类语言。例如,谷歌和必应的语音翻译能够将一种语言翻译成另一种语言。谷歌语音助手和亚马逊Alexa服务等语音识别技术对我们的生活产生了积极影响。在语音识别的帮助下,我们现在能够让机器更自然地执行简单的任务。
由于模型复杂性和高计算要求,常见的强大话音识别通常在云中进行。出于实用性和隐私方面的考虑,目前许多装置都需要在本地运行紧凑型话音识别,以检测简单的命令并做出反应。传统的紧凑型话音识别方法通常涉及用于分别对关键词和非关键词话音片段进行建模的隐马尔可夫模型(HMM)。在运行时期间,一般会应用遍历算法在解码图中找到最佳路径,作为最佳匹配结果。还有一些算法使用大词汇量连续话音识别器生成丰富的网格,并在网格中所有可能的路径中搜索关键词。由于传统的基于遍历的算法依赖于级联条件概率和大规模模式比较,这些算法容易受到嵌入式系统时钟速度和位深度的限制。此外,由于电池和计算方面的原因,话音识别在嵌入式系统上执行通常计算成本过高。这已成为语音辅助进入更广泛受众以进一步融入我们日常生活的主要障碍。
考虑到计算和功耗问题,有多种将话音识别算法简化为关键词检出(KWS)的示例。关键词可以用作唤醒词,诸如“好的,谷歌”和“Alexa”,也可以用作对嵌入式系统的简单命令,诸如“打开”和“关闭”。然而,标准KWS的一个常见问题是,所述算法对人为差异的容忍度有限。这种差异包括单个用户对简单命令的称呼不同,以及在说同一个词时的口音不同。此外,用户可能记不住系统中存储的预定关键词,或者存储的命令可能不是用户所需的。这是一个巨大的用户体验问题,标准的KWS算法无法解决这个问题,因为它是通过识别固定的声学模型来设计的。
因此,需要更先进、更高效、体积小、延迟低的模型,这些模型还可以在需要用户定制的情况下运行KWS。
发明内容
本发明中提供的关键词检出方法是基于神经网络(NN)声学模型。所述方法可以包括以下步骤,以检测来自用户的用户定制关键词。首先,用户可以使用麦克风将其感兴趣的关键词录制成多个目标关键词的音频片段,并且将多个目标关键词的模板注册到KWS系统中。通过用音素标记多个目标关键词的音频片段中的每一个,向NN声学模型注册多个目标关键词的模板,以分别生成多个目标关键词中的每一个的声学模型序列,并将模板的声学模型序列存储在微控制器单元(MCU)中。在使用所述方法来检测话音中那些已注册的关键词时,语音活动检测器正在工作以检测用户的话音输入。一旦检测到,就用音素标记话音输入的语音帧,以构建话音输入的声学序列,然后将其输入到所述模型以通过NN声学模型而与目标关键词的注册模板中的每一个进行比较。通过将话音输入的声学序列和模板的声学模型序列中的每一个输入到NN声学模型中,所述模型可以输出话音输入的语音帧与多个目标关键词片段中的一个相同的概率。如果输入话音与预先注册的序列中的一个足够相似,则可以确定关键词是从话音输入中检出的。
一种非暂时性计算机可读介质存储指令,所述指令在由处理器或微控制器单元(MCU)处理时,执行本公开中的基于NN声学模型的关键词检出方法。
附图说明
通过参考附图阅读以下对非限制性实施方案的描述,可以更好地理解本公开。在附图中,相同的附图标记指代对应的部件,其中:
图1示出了根据本公开的一个和多个实施方案的在声学模型中使用来进行关键词检出的示例性NN声学模型;
图2示出了图1的NN声学模型的训练过程的示例性流程图;
图3示出了根据本公开的一个和多个实施方案的向NN声学模型注册关键词的示例性流程图;
图4示出了根据本公开的一个和多个实施方案的使用NN声学模型进行关键词检测的示例性流程图。
具体实施方式
下文公开了本发明的实施方案的详细描述;然而,应理解,所公开的实施方案仅是可以体现为各种和替代形式的本公开的示例。附图不一定按比例绘制;一些特征可能被夸大或最小化以示出特定部件的细节。因此,本文公开的具体结构和功能细节不应被解释为限制性的,而是仅作为教导本领域的技术人员以各种方式采用本发明的代表性基础。
如本申请中所用,以单数叙述并以词语“一个”或“一种”开头的要素或步骤应被理解为不排除复数个所述要素或步骤,除非说明有这种排除。此外,对本公开的“一个实施方案”或“一个示例”的引用并不旨在排除存在同样包含所述特征的其他实施方案。术语“第一”、“第二”及“第三”等仅用作标签,并且不旨在对其对象强加数值要求或特定位置次序。此外,下文中的NN声学模型可以等同于NN模型,或者简称为模型。
本公开中提供的关键词检出方法采用了NN声学模型,所述NN声学模型被设计为实现用户定制,并允许在训练后进行关键词注册。KWS方法可以用于带有麦克风且需要一个小的本地命令集合的产品。它可以通过具有终端用户自定义关键词的任何无网络装置进行区分。
具体而言,KWS方法可以将语音活动检测器检测到的用户实时语音输入与用户预先注册的关键词进行逐一比较,从而检出用户实时话音输入中的关键词,所述关键词可能是用户交互中分配的某些动作的触发命令。可见,NN模型的输入侧通常应分别包括用户实时话音输入和用户预先注册的关键词的至少两个输入以进行比较。在实际应用中,当实时话音输入优选地一次与多于一个关键词模板进行比较时,话音中的关键词可能会以更高的概率被检测到。因此,实际设计的NN模型的输入侧可能包括多于两个输入,如图1所示的三个输入。
图1示出了根据本公开的一个和多个实施方案的用于关键词检出的示例性NN声学模型。输入到神经网络的三个关键词剪辑分别包括作为关键词的模板的第一输入和第二输入(关键词剪辑1、关键词剪辑2),并且第三输入(关键词剪辑3)是麦克风实时录制的话音信号。输入到图1的NN声学模型的这些关键词剪辑需要呈例如梅尔频率倒谱系数(MFCC)的梅尔频谱图的形式。MFCC是以Mel标度(即Mel域)在频域中提取的倒谱系数,它描述人耳对频率感知的非线性特征。MFCC的梅尔频谱图的每一帧都可以由从人声片段划分的多个帧中的一个提取的一帧大小的音素序列编码。音素的经编码MFCC被输入到图1的NN声学模型中。如本领域技术人员可以设想的,这里划分的每一帧的大小取决于对应人声的特征,并与输入的梅尔频谱图的大小相关。举例来说,当模型被配置为以16kHz的采样率处理大小为512×32的梅尔频谱图时,帧的大小可能为512×32/16000,其约为1秒。使用不同大小的帧可能会改变模型的性能。对于每个输入,如果一个关键词剪辑的大小大于一帧,则所述关键词剪辑中的多个MFCC梅尔频谱图可能会逐帧进入模型。梅尔频谱图的另一种示例性形式可以是梅尔频谱系数(MFSC),本文可以用它来代替MFCC。应注意,图1仅示出了本发明的示例性NN声学模型,所述模型的输入侧可以包括例如但不限于三个关键词剪辑,并且关键词剪辑的数量可以根据实际情况而不同。图1的示例中设置了三个输入,考虑到系统的计算量和输出效果,这被认为是一个相对合适的选择。
如图1所示的NN声学模型包括若干二维卷积层以处理以梅尔频谱图形式输入的关键词剪辑。如图1所示,NN模型首先包括二维卷积层,所述二维卷积层表示为conv2d(Conv2d_0)。然后,若干可分离二维卷积层(每个都带有可分离滤波器,所述滤波器可以将输入信号分离成多个通道)可以分别处理输入的多个关键词剪辑中的每一个。所需的分离通道的数量可能与输入的数量相对应。在图1的示例中,对于输入到NN模型的三个关键词剪辑,模型中的可分离二维卷积层各自需要能够将这三个输入分别分离成三个通道,以对应地处理三个输入关键词剪辑中的每一个。图1的NN模型中有三个这样的可分离二维卷积层:第一可分离二维卷积层,其三个通道分别被表示为(Separable_conv2d_0_1、Separable_conv2d_0_2、Separable_conv2d_0_3);第二可分离二维卷积层,其三个通道分别被表示为(Separable_conv2d_1_1、Separable_conv2d_1_2、Separable_conv2d_1_3);以及第三可分离二维卷积层,其三个通道分别被表示为(Separable_conv2d_2_1、Separable_conv2d_2_2、Separable_conv2d_2_3)。
在三个可分离二维卷积层之前,分别设置了三个批量归一化层(Batchnormalization_0、Batch normalization_1、Batch normalization_2)和三个空间数据平均层(Average pooling_0、Average pooling_1、Average pooling_2),以优化输出范围。
接下来,NN模型还包括深度方向的二维卷积层,所述深度方向的二维卷积层的对应的三个通道(Depthwise_conv2d_1、Depthwise_conv2d_2、Depthwise_conv2d_3)在另一个批量归一化层(Batch normalization_3)之后,然后三通道扁平化层(Flatten_0_1、Flatten_0_2、Flatten_0_3)将二维特征矩阵转换为通道的每一个中的矢量数据。在用于连接的数据连接和全连接层(Concatenate_0),以及用于两次收敛数据的两个密集层(Dense_0、Dense_1)之后,NN声学模型可以生成预测,并且可以在其输出侧输出关键词剪辑3与关键词剪辑1和2相同的概率。在本示例中,NN声学模型可以替代地被精简为深度方向的可分离卷积神经网络(DSCNN)模型,以适应优化量化感知的嵌入式系统。
如本领域技术人员所知,神经网络都是具有权重的矩阵运算,并且激活可以为那些矩阵运算增加非线性。在神经网络的训练过程中,所有的权重和激活都会被优化。
一般来说,神经网络的权重和激活都是用浮点来训练的,而定点数权重已被证明是足够的,并且与浮点权重相比,准确度相似。由于微控制器单元(MCU)系统的内存通常有限,因此需要进行训练后量化,这是一种转换技术,其可以缩小模型大小,同时还改善控制器和硬件加速器的延时,而模型准确度几乎不会下降。例如,如果将32位浮点的权重量化为8位定点,则模型将缩减到1/4,速度提高到3倍。
对于本公开中提供的NN模型,使用8位量化流来表示所有权重和激活。给定层的表示是固定的,但其他层的表示可能不同。例如,它可以用步长1表示范围[-128,127],也可以用步长4表示范围[-512,508]。这样,通过为每一层找到使准确度损失最小化的最佳步长,一次一层地将权重量化为8位。在对所有权重进行量化后,也会以类似的方式对激活进行量化,从而为每一层找到合适的步长。
图2示出了NN声学模型的训练过程的示例性流程图。所述过程开始,并且在步骤S210中收集大量的人类话音。举例来说,可以从为机器学习设计的已知通用语音识别数据集(诸如谷歌话音命令数据集)中收集大量人类话音。由于每种语言都有自己的音素系统,而音素是语音学中最小的区分性单位,因此可以假设,所收集的人类话音中包括的人声可以由有限的音素集覆盖。
在步骤S220中,可以用音素标记对应的人声作为训练数据。标记对应的人声的音素被划分为多个帧,以输入模型中用于训练。如前所述,在所述示例中,每个帧的大小在此可以设置为约1秒。
在步骤S230中,NN训练结果将每一帧推断为声学标签中的一个,其中含糊人声中的一些近似于用有限集合中的音素标记。在步骤S240中,将帧标签作为音素序列收集在旋转缓冲器中。
如图2的步骤S250中所示,应训练NN声学模型以覆盖足够大量的人类音素。例如,足够大量的音素序列可以通过标记诸如一万人(每人说100句话)获得。将大量人类音素运行到NN声学模型以用于训练模型,模型在训练中的输出是将输入音素正确区分为预设类别的概率,即NN声学模型输出将输入音素正确确定为多人预期的音素序列的概率。经训练模型应能够分辨人类话音,并达到一定的准确率,例如准确率高于90%。
最后,在步骤S260中,将标记典型人声的音素编码并存储在目标MCU上。考虑到经训练NN声学模型最终应被加载到嵌入式系统中,这些音素需要被编码为适合存储在MCU中并在各种嵌入式装置平台上运行。
经训练模型可以用于检测用户定制的关键词。在本公开中,利用NN声学模型来检测用户定制的关键词可以分别包括关键词注册和关键词检测这两个部分。
图3示出了向NN声学模型注册关键词的示例性流程图。当用户打算使用一些自定义命令或甚至其他任何感兴趣的习语作为关键词时,用户可以先将每个关键词注册到模型中,以成为关键词的模板。
在步骤S310中,可能会提示用户启用麦克风并准备录制。在步骤S320中,用户多次重复相同的关键词,并录制他想在模型上注册的一定大小的音频目标关键词片段。举例来说(但不限于此),用户可以重复3至5秒大小的相同关键词三次,从而录制三个各为3至5秒的音频片段。
在步骤S330中,可以在训练模型时使用诸如存储在目标MCU中的那些音素对目标关键词片段中的每一个进行标记,这可以生成对应的声学序列以最佳地拟合每个片段,并且在步骤S340中,可以将声学序列的多个片段组合成一个声学序列,以增加稳健性,即通过使用一些已知的优化算法,诸如通过比较和平均,将示例中对应声学序列的三个片段组合成一个组合的声学模型序列。然后,组合后的声学模型序列可以存储到目标MCU中,以在关键词检测的后续部分中用作关键词的一个模板。此处,用户可选地可以为多于一个模板注册一个关键词,并使用这些模板一次检测关键词,以提高系统准确地检测关键词的概率。例如,用户可以用不同的音调重复和录制关键词,以为该关键词注册两个模板。这两个模板分别对应于关键词剪辑1和2,以一次输入到图1的模型中。
对于用户打算注册的多个关键词,如图3中的步骤S350中所示,针对每个感兴趣的关键词都重复上述步骤S330、S340和S350。在用户将他/她自己感兴趣的关键词注册到NN声学模型中之后,可以使用所述模型来实时检测输入话音中的每个关键词。
图4示出了关键词检测的示例性流程图。在开始时,用户已经注册了例如N个关键词,并已经将其模板存储在目标MCU中。在步骤S410中,工作中的语音活动检测器可以确定是否有话音输入。一旦检测到话音输入,就可以从话音中提取能量较强的语音帧。在用之前存储在目标MCU中的音素标记每个帧之后,可以在步骤S420中将这些语音帧转换为声学序列。然后,可以在步骤S430中通过组合多个帧来构建例如长达3秒的声学序列。此处,构建的声学序列的大小可能取决于要用于比较的关键词模板的大小,因为声学序列应与NN声学模型中的目标关键词模板中的每一个进行比较。在所述示例中,如果模型中的所有关键词的注册模板都已经被设置为3秒,则声学序列的所有组合的多个帧会因此相应地被构建为长达3秒。
接下来,在步骤S440中,来自语音活动检测器的话音输入的声学序列当前存储在系统的缓冲器中,并且N个注册的关键词已经存储在目标MCU中。运行NN声学模型,因此,可以通过比较缓冲器中的声学序列与目标MCU中的预先注册的声学模型序列中的每一个,在图1所提供的NN中确定声学序列与关键词的预先注册的模板之间的相似性。
如前所述,N个关键词中的每一个都预先注册了其多于一个模板并将所述模板存储在目标MCU中,并且这些模板可以作为关键词剪辑中的一些输入到NN模型中,并且实时话音输入的语音帧可以作为其他关键词剪辑输入到模型中。参考图1的示例,首先将N个关键词中的第一个关键词的第一模板和第二模板分别作为关键词剪辑1和2输入到NN声学模型,并将缓冲器中的声学序列作为关键词剪辑3输入。NN声学模型可以输出关键词剪辑3与关键词剪辑1和2相同的概率。如果输入的声学序列与输入的预先注册的声学模型序列中的一个不相似,即输出的概率不高于预设阈值,则将N个关键词中的下一个关键词的两个预先注册的模板分别作为关键词剪辑1和2输入到NN模型,并再次将声学序列作为关键词剪辑3输入,以在NN模型中再次运行比较。保持将缓冲器中的声学序列与N个关键词中的每一个的两个模板进行比较,直到确定输入的声学序列与预先注册的声学模型序列中的一个足够相似,即输出的概率高于预设阈值(例如,相似性>90%),才确定两者匹配,并且检出匹配的关键词。然后在步骤S450中执行用户交互所分配的关键词的对应分配动作,并且所述过程进行到检测下一个实时话音输入。另一方面,如果输入的声学序列与目标MCU中的N个关键词的预先注册的模板中的任何一个都不相似,则确定用户的语音输入不包含任何关键词。模型中的比较会进行到下一个话音输入。否则,如果语音活动检测器没有下一个话音输入,则检测过程结束。
本公开中基于NN声学模型的KWS方法仅识别定制的预先注册的数据集中提供的特定词集。通过摆脱自然语言处理并使用有限的预定关键词数据集(通常每个关键词长达3秒),模型的大小能够从几千兆字节降至几百千字节。因此,基于NN声学模型的KWS系统可以在MCU或处理器中运行,并且可以部署到优化量化感知的嵌入式系统中,并适合所述嵌入式系统。据此,本公开中进一步提出了一种实时使用语音作为接口的端到端架构流程。用户可以通过用户交互说出一组终端用户定制的本地命令来分配操作,以控制任何无网络的装置,诸如汽车或手表。
本公开中的基于NN声学模型的KWS系统容许通过将新的关键词重新映射为单独的声学模型序列来动态添加和删除关键词。这是通过比较音素空间中的序列匹配,而不是直接比较预定的声学空间中的序列匹配来实现的。为此,将声学模型交叉比较模型从全局优化放宽到每个分布的局部最小距离。
可以利用一个或多个计算机可读介质的任意组合来执行本公开中的基于NN声学模型的KWS方法。计算机可读介质可以为计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以为例如但不限于电子、磁性、光学、电磁、红外或半导体系统、设备或装置或前述介质的任何合适的组合。计算机可读存储介质的更具体示例(非详尽列表)将包括以下介质:具有一个或多个导线的电气连接、便携式计算机软盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦可编程只读存储器(EPROM或快闪存储器)、光纤、便携式光盘只读存储器(CD-ROM)、光学存储装置、磁存储装置或前述介质的任何合适的组合。在本文档的上下文中,计算机可读存储介质可以是可以包含或存储供指令执行系统、设备或装置使用或与其结合使用的程序的任何有形介质。
本公开的KWS方法包括但不限于下文列出的项。
项1:一种基于神经网络(NN)声学模型的关键词检出方法,其包括以下步骤:
经由麦克风录制来自用户的多个目标关键词的音频片段;
在微控制器单元(MCU)中向所述NN声学模型注册所述多个目标关键词的模板;
通过语音活动检测器检测所述用户的话音输入;
其中所述关键词检出方法还包括:
通过将所述话音输入的语音帧和所述多个目标关键词的所述模板都输入到所述NN声学模型中,来将所述话音输入的所述语音帧与所述多个目标关键词的所述模板中的每一个进行比较。
项2:根据项1所述的关键词检出方法,其中所述NN声学模型包括具有多个通道的至少一个可分离二维卷积层,并且所述多个通道对应于所述NN声学模型的多个输入。
项3:根据项1至2中任一项所述的关键词检出方法,其中所述话音输入的所述语音帧和所述多个目标关键词的所述模板用音素标记,并以梅尔频谱图的形式作为梅尔频率倒谱系数(MFCC)输入到所述NN声学模型。
项4:根据项1至3中任一项所述的关键词检出方法,其中在与包括标记大量人类话音的音素的训练数据集一起使用之前对所述NN声学模型进行训练。
项5:根据项1至4中任一项所述的关键词检出方法,通过使用8位量化流来表示所述NN声学模型的权重和激活,来训练所述NN声学模型。
项6:根据项1至5中任一项所述的关键词检出方法,其中注册所述多个目标关键词的所述模板包括生成与所述多个目标关键词中的每一个相对应的声学模型序列以存储在所述MCU中。
项7:根据项1至6中任一项所述的关键词检出方法,所述声学模型序列的大小为3至5秒。
项8:根据项1至7中任一项所述的关键词检出方法,其中所述话音输入的所述语音帧中的每一个包括声学序列,并且所述声学序列的所述大小取决于存储在所述MCU中的所述声学模型序列。
项9:根据项1至8中任一项所述的关键词检出方法,其中如果输出的概率高于预设阈值,则可以检出所述话音输入中包括的关键词片段。
项10:根据项1至9中任一项所述的关键词检出方法,其中所述预设阈值可以设置为90%。
项11:根据项1至10中任一项所述的关键词检出方法,其中所述NN声学模型可以是深度方向的可分离卷积神经网络。
项12:一种非暂时性计算机可读介质,其存储指令,所述指令在由微控制器单元(MCU)处理时,执行以下步骤,包括:
经由麦克风录制来自用户的多个目标关键词片段;
在所述MCU中向神经网络(NN)声学模型注册所述多个目标关键词片段;
通过语音活动检测器检测所述用户的话音输入;
其中所述步骤还包括:
使用所述NN声学模型来将所述话音输入的语音帧与所述多个目标关键词片段中的每一个进行比较,以输出所述话音输入的所述语音帧与所述多个目标关键词片段中的一个相同的概率;以及
检出所述话音输入中包括的关键词片段。
项13:根据项12所述的非暂时性计算机可读介质,其还包括使用包括标记大量人类话音的音素的训练数据集来训练所述NN声学模型。
项14:根据项12至13中任一项所述的非暂时性计算机可读介质,其中所述话音输入的所述语音帧和所述多个目标关键词的所述模板用音素标记,并以梅尔频谱图的形式作为梅尔频率倒谱系数(MFCC)输入到所述NN声学模型。
项15:根据项12至14中任一项所述的非暂时性计算机可读介质,其中在与包括标记大量人类话音的音素的训练数据集一起使用之前对所述NN声学模型进行训练。
项16:根据项12至15中任一项所述的非暂时性计算机可读介质,通过使用8位量化流来表示所述NN声学模型的权重和激活,来训练所述NN声学模型。
项17:根据项12至16中任一项所述的非暂时性计算机可读介质,其中注册所述多个目标关键词的所述模板包括生成与所述多个目标关键词中的每一个相对应的声学模型序列以存储在所述MCU中。
项18:根据项12至17中任一项所述的非暂时性计算机可读介质,所述声学模型序列的大小为3至5秒。
项19:根据项12至18中任一项所述的非暂时性计算机可读介质,其中所述话音输入的所述语音帧中的每一个包括声学序列,并且所述声学序列的所述大小取决于存储在所述MCU中的所述声学模型序列。
项20:根据项12至19中任一项所述的非暂时性计算机可读介质,其中如果输出的概率高于预设阈值,则可以检出所述话音输入中包括的所述关键词片段。
项21:根据项12至20中任一项所述的非暂时性计算机可读介质,其中所述预设阈值可以设置为90%。
项22:根据项12至21中任一项所述的非暂时性计算机可读介质,其中所述NN声学模型可以是深度方向的可分离卷积神经网络。
虽然上文描述了示例性实施方案,但这些实施方案不旨在描述本公开的所有可能形式。相反,本说明书中使用的词语是描述词语,而不是限制词语,并且应理解在不脱离本公开的精神和范围的情况下可以做出各种变化。另外,可以对各种实施的实施方案的特征进行组合以形成本公开的进一步实施方案。
Claims (22)
1.一种基于神经网络(NN)声学模型的关键词检出方法,其包括以下步骤:
经由麦克风录制来自用户的多个目标关键词的音频片段;
在微控制器单元(MCU)中向所述NN声学模型注册所述多个目标关键词的模板;
通过语音活动检测器检测所述用户的话音输入;
其中所述关键词检出方法还包括:
通过将所述话音输入的语音帧和所述多个目标关键词的所述模板都输入到所述NN声学模型中,来将所述话音输入的所述语音帧与所述多个目标关键词的所述模板中的每一个进行比较。
2.根据权利要求1所述的关键词检出方法,其中所述NN声学模型包括具有多个通道的至少一个可分离二维卷积层,所述多个通道对应于所述NN声学模型的多个输入。
3.根据权利要求2所述的关键词检出方法,其中所述话音输入的所述语音帧和所述多个目标关键词的所述模板用音素标记,并以梅尔频谱图的形式作为梅尔频率倒谱系数(MFCC)输入到所述NN声学模型。
4.根据权利要求1所述的关键词检出方法,其中在与包括标记大量人类话音的音素的训练数据集一起使用之前对所述NN声学模型进行训练。
5.根据权利要求4所述的关键词检出方法,通过使用8位量化流来表示所述NN声学模型的权重和激活,来训练所述NN声学模型。
6.根据权利要求1所述的关键词检出方法,其中注册所述多个目标关键词的所述模板包括生成与所述多个目标关键词中的每一个相对应的声学模型序列以存储在所述MCU中。
7.根据权利要求6所述的关键词检出方法,所述声学模型序列的大小为3至5秒。
8.根据权利要求1所述的关键词检出方法,其中所述话音输入的所述语音帧中的每一个包括声学序列,并且所述声学序列的所述大小取决于存储在所述MCU中的所述声学模型序列。
9.根据权利要求1所述的关键词检出方法,其中如果输出的概率高于预设阈值,则可以检出所述话音输入中包括的关键词片段。
10.根据权利要求9所述的关键词检出方法,其中所述预设阈值可以设置为90%。
11.根据权利要求1所述的关键词检出方法,其中所述NN声学模型可以是深度方向的可分离卷积神经网络。
12.一种非暂时性计算机可读介质,其存储指令,所述指令在由微控制器单元(MCU)处理时,执行以下步骤,包括:
经由麦克风录制来自用户的多个目标关键词的音频片段;
在微控制器单元(MCU)中,向神经网络(NN)声学模型注册所述多个目标关键词的模板;
通过语音活动检测器检测所述用户的话音输入;
其中所述关键词检出方法还包括:
通过将所述话音输入的语音帧和所述多个目标关键词的所述模板都输入到所述NN声学模型中,来将所述话音输入的所述语音帧与所述多个目标关键词的所述模板中的每一个进行比较。
13.根据权利要求12所述的非暂时性计算机可读介质,其中所述NN声学模型包括具有多个通道的至少一个可分离二维卷积层,并且所述多个通道对应于所述NN声学模型的多个输入。
14.根据权利要求13所述的非暂时性计算机可读介质,其中所述语音输入的所述语音帧和所述多个目标关键词的所述模板用音素标记,并以梅尔频谱图的形式作为梅尔频率倒谱系数(MFCC)输入到所述NN声学模型。
15.根据权利要求12所述的非暂时性计算机可读介质,其中在与包括标记大量人类话音的音素的训练数据集一起使用之前对所述NN声学模型进行训练。
16.根据权利要求15所述的非暂时性计算机可读介质,通过使用8位量化流来表示所述NN声学模型的权重和激活,来训练所述NN声学模型。
17.根据权利要求12所述的非暂时性计算机可读介质,其中注册所述多个目标关键词的所述模板包括生成与所述多个目标关键词中的每一个相对应的声学模型序列以存储在所述MCU中。
18.根据权利要求17所述的非暂时性计算机可读介质,所述声学模型序列的大小为3至5秒。
19.根据权利要求12所述的非暂时性计算机可读介质,其中所述话音输入的所述语音帧中的每一个包括声学序列,并且所述声学序列的所述大小取决于存储在所述MCU中的所述声学模型序列。
20.根据权利要求12所述的非暂时性计算机可读介质,其中如果输出的概率高于预设阈值,则可以检出所述话音输入中包括的关键词片段。
21.根据权利要求20所述的非暂时性计算机可读介质,其中所述预设阈值可以设置为90%。
22.根据权利要求12所述的非暂时性计算机可读介质,其中所述NN声学模型可以是深度方向的可分离卷积神经网络。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2021/090268 WO2022226782A1 (en) | 2021-04-27 | 2021-04-27 | Keyword spotting method based on neural network |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117223052A true CN117223052A (zh) | 2023-12-12 |
Family
ID=83847663
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180097495.2A Pending CN117223052A (zh) | 2021-04-27 | 2021-04-27 | 基于神经网络的关键词检出方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20240212673A1 (zh) |
EP (1) | EP4330959A1 (zh) |
KR (1) | KR20240000474A (zh) |
CN (1) | CN117223052A (zh) |
WO (1) | WO2022226782A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9697828B1 (en) * | 2014-06-20 | 2017-07-04 | Amazon Technologies, Inc. | Keyword detection modeling using contextual and environmental information |
CN106297776B (zh) * | 2015-05-22 | 2019-07-09 | 中国科学院声学研究所 | 一种基于音频模板的语音关键词检索方法 |
US20170116994A1 (en) * | 2015-10-26 | 2017-04-27 | Le Holdings(Beijing)Co., Ltd. | Voice-awaking method, electronic device and storage medium |
US11217245B2 (en) * | 2019-08-29 | 2022-01-04 | Sony Interactive Entertainment Inc. | Customizable keyword spotting system with keyword adaptation |
CN111933124B (zh) * | 2020-09-18 | 2021-04-30 | 电子科技大学 | 一种可支持自定唤醒词的关键词检测方法 |
-
2021
- 2021-04-27 CN CN202180097495.2A patent/CN117223052A/zh active Pending
- 2021-04-27 US US18/557,644 patent/US20240212673A1/en active Pending
- 2021-04-27 WO PCT/CN2021/090268 patent/WO2022226782A1/en active Application Filing
- 2021-04-27 EP EP21938269.4A patent/EP4330959A1/en active Pending
- 2021-04-27 KR KR1020237035201A patent/KR20240000474A/ko active Search and Examination
Also Published As
Publication number | Publication date |
---|---|
KR20240000474A (ko) | 2024-01-02 |
WO2022226782A1 (en) | 2022-11-03 |
EP4330959A1 (en) | 2024-03-06 |
US20240212673A1 (en) | 2024-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111933129B (zh) | 音频处理方法、语言模型的训练方法、装置及计算机设备 | |
US11475881B2 (en) | Deep multi-channel acoustic modeling | |
CN109155132B (zh) | 说话者验证方法和系统 | |
US10074363B2 (en) | Method and apparatus for keyword speech recognition | |
KR101154011B1 (ko) | 다중 모델 적응화와 음성인식장치 및 방법 | |
JP4195428B2 (ja) | 多数の音声特徴を利用する音声認識 | |
Zhuang et al. | Unrestricted Vocabulary Keyword Spotting Using LSTM-CTC. | |
US20220343895A1 (en) | User-defined keyword spotting | |
KR20180091903A (ko) | 숫자 음성 인식에 있어서 음성 복호화 네트워크를 구성하기 위한 방법, 장치, 및 저장 매체 | |
US11205420B1 (en) | Speech processing using a recurrent neural network | |
KR20170063037A (ko) | 음성 인식 장치 및 방법 | |
JP6812843B2 (ja) | 音声認識用コンピュータプログラム、音声認識装置及び音声認識方法 | |
KR20170007107A (ko) | 음성인식 시스템 및 방법 | |
CN112151015A (zh) | 关键词检测方法、装置、电子设备以及存储介质 | |
US20210056958A1 (en) | System and method for tone recognition in spoken languages | |
CN112331207A (zh) | 服务内容监控方法、装置、电子设备和存储介质 | |
CN115457938A (zh) | 识别唤醒词的方法、装置、存储介质及电子装置 | |
CN112309398B (zh) | 工作时长监控方法、装置、电子设备和存储介质 | |
KR20210052563A (ko) | 문맥 기반의 음성인식 서비스를 제공하기 위한 방법 및 장치 | |
CN112037772B (zh) | 基于多模态的响应义务检测方法、系统及装置 | |
WO2022226782A1 (en) | Keyword spotting method based on neural network | |
KR101214252B1 (ko) | 다중 모델 적응화장치 및 방법 | |
KR20210081166A (ko) | 다국어 음성 환경에서의 언어 식별 장치 및 방법 | |
JP2003241787A (ja) | 音声認識装置および方法、並びにプログラム | |
KR20150054445A (ko) | 음성인식장치 |
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 |