CN114420098A - 唤醒词检测模型训练方法、电子设备和存储介质 - Google Patents
唤醒词检测模型训练方法、电子设备和存储介质 Download PDFInfo
- Publication number
- CN114420098A CN114420098A CN202210084326.1A CN202210084326A CN114420098A CN 114420098 A CN114420098 A CN 114420098A CN 202210084326 A CN202210084326 A CN 202210084326A CN 114420098 A CN114420098 A CN 114420098A
- Authority
- CN
- China
- Prior art keywords
- model
- frame
- sequence
- loss function
- level
- 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.)
- Granted
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 121
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000012549 training Methods 0.000 title claims abstract description 64
- 238000003860 storage Methods 0.000 title claims abstract description 20
- 230000006870 function Effects 0.000 claims description 43
- 230000015654 memory Effects 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 8
- 239000011159 matrix material Substances 0.000 claims description 7
- 230000002708 enhancing effect Effects 0.000 claims description 5
- 230000007246 mechanism Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 abstract description 14
- 238000012360 testing method Methods 0.000 description 9
- 238000002474 experimental method Methods 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 238000012805 post-processing Methods 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000945 filler Substances 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 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/02—Feature extraction for speech recognition; Selection of recognition unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- 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/045—Combinations of 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/047—Probabilistic or stochastic 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
-
- 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
-
- 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/26—Speech to text systems
-
- 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)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Machine Translation (AREA)
Abstract
本发明公开唤醒词检测模型训练方法、电子设备和存储介质,其中,一种唤醒词检测模型训练方法,包括:为所述唤醒词检测模型提供唤醒词的文本信息作为所述模型的输入;使用修正后的交叉熵损失函数、帧级检测损失函数和序列级检测损失函数作为所述模型的训练标准,其中,所述修正后的交叉熵损失函数用于表征唤醒词与非唤醒词之间的区别,帧级检测中的帧级序列通过去重操作后映射至所述序列级检测中的序列级序列。本申请实施例不仅能充分利用到大量的已有数据,大大提高了模型的鲁棒性。此外,本方案还能在训练过程中随机自定义各种唤醒词,并且通过我们提出的检测Loss进行更好的约束。能够使得我们获得一个鲁棒性好且易用的模型。
Description
技术领域
本发明属于唤醒词检测模型训练技术领域,尤其涉及唤醒词检测模型训练方法、系统、电子设备和存储介质。
背景技术
随着物联网的发展,唤醒词检测技术引起了许多现实世界应用的兴趣,例如语音助手。用户可以通过“OK Google”、“Hey Siri”、“Alexa”等预定义关键词唤醒自己的智能设备,并向设备发出各种控制命令。
唤醒词检测任务需要模型流式地监听和解码音频,它是通用关键词检测系统(Keyword Detection System,KWS)任务的特例。关于连续语音处理中的关键词检测系统主题有丰富的文献。离线大词汇连续语音识别(Large Vocabulary Continuous SpeechRecognition,LVCSR)系统可以将声学特征转录为文本,文本可用于检测感兴趣的关键词,但这些系统中的大多数并不适合计算受限环境中的唤醒词检测任务。对于在线、内存消耗小的低延迟唤醒词检测系统,传统的方法是基于关键字/填充节点的隐马尔可夫模型(Hidden Markov Model,HMM)。随着深度学习技术的进步,先前的一些工作提出了没有HMM的单个神经网络系统,直接预测唤醒词。此类系统中应用到的神经网络包括深度神经网络(Deep Neural Network,DNN)、卷积神经网络(Convolutional Neural Network,CNN)、循环神经网络(Recurrent Neural Network,RNN)或长短期记忆(Long Short-Term Memory,LSTM),和注意力机制(attention mechanism)。这种方法主要由声学模型和后处理模块组成。声学模型旨在将语音信号编码为特征或者是转换为后验概率矩阵。后处理模块可以是相似度比较方法或解码算法,其目的是计算每个语音帧的检测分数。
尽管上述方法在某些特定条件下可以很好地工作,例如当关键字是预定义好的,但是这仍然有两个未解决的问题限制了模型的潜力。
(1)关键词是固定的。大多数现有的唤醒词检测系统都需要预先定义一个特定的唤醒词。这些系统需要大量包含预定义关键词的数据进行训练,并且模型训练好之后无法更改。虽然已经有一些研究致力于研究开放词汇的唤醒词检测任务以允许用户自定义任何唤醒词,但仍然存在许多挑战。例如模型的鲁棒性,以及如何实时检测关键字。
(2)训练标准与评价指标不匹配。虽然唤醒词检测任务通常使用由声学模型和后处理模块组成的方法,但现有的大多数工作采用交叉熵作为训练准则,这不能很好地反映评估指标的性能,如准确率、召回率、误识别率和未识别率。
发明内容
本发明实施例提供一种唤醒词检测模型训练方法、电子设备和存储介质,用于至少解决上述技术问题之一。
第一方面,本发明实施例提供一种唤醒词检测模型训练方法,包括:为所述唤醒词检测模型提供唤醒词的文本信息作为所述模型的输入,其中,所述文本信息用于加强对于每一帧后验的预测;使用修正后的交叉熵损失函数、帧级检测损失函数和序列级检测损失函数作为所述模型的训练标准,其中,所述修正后的交叉熵损失函数用于表征唤醒词与非唤醒词之间的区别,帧级检测中的帧级序列通过去重操作后映射至所述序列级检测中的序列级序列。
第二方面,提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例的唤醒词检测模型训练方法和系统的步骤。
第三方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行本发明任一实施例的唤醒词检测模型训练方法和系统的步骤。
本申请实施例不仅能充分利用到大量的已有数据,大大提高了模型的鲁棒性。此外,本方案还能在训练过程中随机自定义各种唤醒词,并且通过我们提出的检测Loss进行更好的约束。能够使得我们获得一个鲁棒性好且易用的模型。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的一种唤醒词检测模型训练方法的流程图;
图2为本发明一实施例提供的另一种唤醒词检测模型训练方法的流程图;
图3为本发明一实施例提供的带有文本提示的唤醒词检测系统的结构;
图4为本发明一实施例提供的帧级检测过程示例;
图5为本发明一实施例提供的采样帧级序列的示例;
图6为本发明一实施例提供的在dev93数据集上使用不同w值获得的F1分数;
图7为本发明一实施例提供的基线的F1分数比较;
图8是本发明一实施例提供的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,其示出了本申请的唤醒词检测模型训练方法和系统一实施例的流程图。
如图1所示,在步骤101中,为所述唤醒词检测模型提供唤醒词的文本信息作为所述模型的输入,其中,所述文本信息用于加强对于每一帧后验的预测;
在步骤102中,使用修正后的交叉熵损失函数、帧级检测损失函数和序列级检测损失函数作为所述模型的训练标准,其中,所述修正后的交叉熵损失函数用于表征唤醒词与非唤醒词之间的区别,帧级检测中的帧级序列通过去重操作后映射至所述序列级检测中的序列级序列。
本申请实施例不仅能充分利用到大量的已有数据,大大提高了模型的鲁棒性。此外,本方案还能在训练过程中随机自定义各种唤醒词,并且通过我们提出的检测Loss进行更好的约束。能够使得我们获得一个鲁棒性好且易用的模型。
在一些可选的实施例中,所述模型的输入包括声学特征、关键字嵌入序列和可学习的填充序列,所述可学习的填充序列提供非关键字文本信息。
在一些可选的实施例中,所述模型输出帧级后验矩阵,所述帧级后验矩阵用于计算所述修正后的交叉熵损失函数、所述帧级检测损失函数和所述序列级检测损失函数。
在一些可选的实施例中,所述修正后的交叉熵损失函数的计算公式为:
其中,pt是对应标签在第t帧的预测概率,w是用于强调唤醒词的超参数,W代表唤醒词对应的帧。
在一些可选的实施例中,所述帧级检测损失函数的计算公式为:
其中,pl对应于标签类别的概率,po对应于输出预测类别的概率,TN表示帧的类别为真阴性,FP表示帧的类别为假阳性,TP表示帧的类别为真阳性和FN表示帧的类别为假阴性。
在一些可选的实施例中,所述序列级检测损失函数的计算公式为:
在一些可选的实施例中,所述模型应用注意力机制,隐藏大小为240,投影大小为48,文本嵌入的维度设置为48。
在一些可选的实施例中,所述模型包括5层深度前馈顺序记忆网络和一个输出层。从而可以用在资源比较匮乏的设备上。
需要说明的是,上述方法步骤并不用于限制各步骤的执行顺序,实际上,某些步骤可能会同时执行或者以与步骤限定的相反的顺序执行,本申请在此没有限制。
下面对通过描述发明人在实现本发明的过程中遇到的一些问题和对最终确定的方案的一个具体实施例进行说明,以使本领域技术人员更好地理解本申请的方案。
发明人在实现本申请的过程中发现现有技术中存在以下缺陷:(1)关键词通常是出厂预设好的,用户一般不能随意修改,DIY(Do it yourself自助的、自己动手的)属性较差;(2)模型性能还有提高的潜能。发明人还发现上述缺陷主要是由以下原因导致的:目前自定义唤醒词模型的技术还不够成熟。唤醒准确率和误唤醒都难以控制。
本领域技术人员在面对上述缺陷时,通常会预先定义一个或少量的唤醒词来供用户使用;或者自定义一些音节,让用户组合自己的唤醒词,但无法做到完全自定义。我们的方案给用户提供的自由度更高,同时这也要求模型有更强大的建模与分辨各个音素的能力。
本申请实施例的方法通过在模型训练过程中,随机挑选关键词进行训练,使得模型在使用时具备随便定义唤醒词的能力。同时,我们将检测问题回归本源,提出了多个层级的检测Loss(Loss Function,损失函数),让模型天然的具备更强的检测能力。
请参考图2,其示出了本发明一实施例提供的唤醒词检测模型训练方法和系统的一个具体示例的结构框图。
如图2所示,本方案不仅能充分利用到大量的已有数据,大大提高了模型的鲁棒性。此外,本方案还能在训练过程中随机自定义各种唤醒词,并且通过我们提出的检测Loss进行更好的约束。能够使得我们获得一个鲁棒性好且易用的模型。
以下通过具体的实验和实验数据验证本申请实施例相对于现有技术具有的有益效果。
发明人在实现本申请的过程中发现,解决上述问题有两种可能的方向。一种是使用端到端模型直接预测关键词的存在概率,另一种是在训练阶段优化检测指标来解决训练和评估之间的不匹配。在本申请实施例中,我们专注于后一个方向,以减轻不匹配并提高性能。
在本申请实施例中,我们为始终在线的关键字发现任务提出了一种文本自适应检测框架。我们设计了一个内存消耗低的流媒体系统,它允许自定义任意唤醒词,并通过检测指标进行了优化。核心贡献总结如下:
·本申请实施例提出了一个唤醒词检测系统,它可以使用文本适应技术结合修改后的加权交叉熵损失来定制任意唤醒词。loss根据文本自适应信息为不同的帧分配不同的权重,以区分唤醒词和非唤醒词。
·为了解决损失度量不匹配问题,我们引入了帧级检测度量和序列级检测度量来直接优化训练过程。
2.文本自适应检测
在本节中,我们提出了一种新颖的文本自适应检测框架,将KWS直接表述为检测问题而不是分类问题。首先介绍了整个框架,包括网络结构、训练数据标注、模型输入输出等。接下来介绍如何将文本信息与声学特征进行流式融合。最后,我们根据文本提示定义修改后的交叉熵损失。
图3示出了带有文本提示的唤醒词检测系统的结构。系统的输入是声学特征序列和关键字对应的建模单元嵌入。我们在关键字嵌入之后拼接一个填充嵌入向量。检测模块使用帧级后验矩阵、关键字的时间信息和话语对应的对齐来计算损失并更新模型。其中,中英文对照如下:Alignments-对齐,One Best-最好路径,Sample-样本,Keyword Positon-关键字位置,Frame Posterior-帧级别后验概率,Detection Module-检测模块,Model-模型,Feed Forward-全连接层,Cross Attention-跨模态的注意力模块,Query-查询,Key-键,Value-值,Audio Features-音频特征序列,Text Prompt-文本提示,Keyword and FillerEmbedding-关键词和填充节点特征序列。
2.1.文本自适应检测框架概述
前馈顺序记忆网络(Feedforward Sequential Memory Network,FSMN)被提议用于在不使用循环反馈的情况下对顺序数据中的长期依赖性进行建模。其修改版本名为紧凑型前馈顺序记忆网络(Compact Feedforward Sequential Memory NetworkcFSMN),通过将FSMN与低秩矩阵分解相结合来引入投影层,以减小模型尺寸,这有利于小足迹关键字发现任务。由于它已被证明优于RNN/LSTM并且可以更可靠和更快地学习,我们采用这种变体FSMN架构作为我们系统的主干,从声学特征中提取信息。
我们以单声道为建模单位。在训练唤醒词检测模型之前,我们使用相同的数据集预训练高斯混合模型-隐马尔可夫模型(Gaussian Mixture Models-Hidden MarkovModel,GMM-HMM)声学模型,以提供强制对齐以创建帧级声学目标。在训练阶段,我们模型的输入包括声学特征、关键字嵌入序列和可学习的填充嵌入,旨在为非关键字框架提供非关键字文本信息,如hn/ai(不适用于关键字)标签。该模型输出帧级后验矩阵,该矩阵在检测模块中用于计算定义为Ltp、Lfd和Lsd的损失函数。拟议系统的概述如图1所示。
在测试阶段,唤醒词检测可以通过简单地将测试音频和定制的唤醒词输入到训练有素的模型中来完成,然后是包括后验平滑和置信度计算的评分算法。
2.2.带文本提示的分类模型
文本提示是指为模型提供关键字的文本信息,作为输入促进偏向分类,使模型对关键字更加敏感。在训练过程中,我们从成绩单(transcript)的单音素序列中随机选取一个连续的token子序列作为关键词音素序列。然后,声学嵌入和标记嵌入通过交叉注意模块进行融合。在测试阶段,我们可以通过使用不同的音素序列作为文本提示来自定义任意关键字。
之前的一些工作分享了类似的想法,以利用来自唤醒词的声学特征和文本嵌入的信息。我们的工作在两个方面不同于之前的工作。(1)在这项工作中,我们使用文本提示来加强对每一帧后验的预测,而在之前的工作中,使用文本信息来定位关键字的位置并对话语进行检测。(2)此外,在我们的工作中,额外的填充向量用于对非唤醒词进行建模。所有过程如图3所示。
2.3.修正的交叉熵损失函数
我们使用修改后的交叉熵损失函数作为训练标准。损失可以计算为:
其中pt是对应标签在第t帧的预测概率。w是用于强调唤醒词的超参数,W代表唤醒词对应的帧。
修改后的交叉熵损失可以被认为是唤醒词和非唤醒词之间的区别。在这项工作中,为不同时期的每个话语随机选择关键字,并即时获得开始和结束时间戳。然后利用时间信息来计算公式1中定义的损失。因此,使用权重w>1自然会促使模型更加关注与关键字对应的帧。
3.训练检测模块
在本节中,我们将介绍建议的训练标准,以解决唤醒词检测任务中的损失度量不匹配问题。更具体地说,我们分别提出了帧级和序列级检测程序,以增强检测文本提示提供的关键字的能力。
3.1.帧级检测损失
在每一帧预测单音可以看作是帧级单音检测任务,因此,帧可以分为四类,即真阴性(TN)、假阳性(FP)、真阳性(TP)和假阴性(FN)。类别由参考和假设中的框架是否属于唤醒词来确定。例如,如图2所示,红色节点表示属于关键字的帧。如果Ref和Hyp中的两个节点都为红色,则该帧被确定为TP帧。由于文本提示已经提供了Ref的时间信息,我们只需要计算Hyp的时间信息。首先,假设是通过贪婪搜索产生的,其中每一帧都采用概率最高的音素。在获得一个最佳的帧级序列后,应用去重操作将帧级序列映射到序列级,并记录每个标记的索引。然后使用Knuth-Morris-Pratt(KMP)算法找到文本提示和假设生成的音素序列之间的所有匹配点。值得注意的是,可能有0个、1个或多个匹配点。根据匹配结果,可以确定关键字的位置,然后将其映射回帧级别以获得假设的时间信息。最后,使用帧级检测模块将每个帧分类为四个类别之一。我们在图2中的假设中展示了两个匹配点的示例。
交叉熵损失用于优化具有正确类别(TN和TP)的帧。同时,它也被用于FN帧以将预测推向正确的标签。然而,对于FP帧,我们不关心它们的目标类别,因此我们将FP帧的分类重新表述为二元检测问题,并降低了预测唤醒词的概率。最终的帧级检测损失定义如下:
其中pl对应于标签类别的概率;po对应于输出预测类别的概率。
图4示出了帧级检测过程示例。在这个图中,话语一共有T帧,每一帧都属于以下四类之一:TN、FP、TP、FN。Ref和Hyp分别代表参考(标签)和假设(预测)。浅色节点表示非唤醒词对应的状态,深色节点表示属于唤醒词的状态。在Hyp序列中,有两个潜在的匹配点,第一个与参考不完全对齐,后者是虚警。其中,中英文对照如下:non-wakp word frame-非唤醒词帧,wakp word frame-唤醒词帧。
3.2.序列级检测损失
在导出帧级后验矩阵的输出后,我们根据后验对一些帧级序列进行采样。采样过程如图3所示。每个序列的对数概率定义为:
然后我们使用重复数据删除操作来合并3.1节中相同的连续单音素,因此,我们得到每个假设的单音素序列。然后,我们可以检测关键字是否出现在假设序列中。奖励函数定义为:如果关键词出现,样本得到奖励r=1;否则,r=-1。
根据REINFORCE(Monte-Carlo policy gradient,蒙特卡罗策略梯度)的规则,我们可以计算每个话语的奖励如下:
其中n是采样器采样的样本数,j表示每个样本的索引。变量基线定义为:
图5示出了采样帧级序列的示例。在这张图中,话语一共有T帧,每一帧可以预测成D类。该序列是从分类分布中采样的,每个话语的样本总数为n=4。
最后,使用策略梯度策略训练检测模块的序列级损失函数为:
4.实验和结果
4.1.数据集
华尔街日报(WSJ)用于评估我们想法的有效性。我们使用Kaldi中的脚本进行数据准备。在训练过程中,如果相应音素序列的长度在`min=3和`max=9之间,每个词都有机会被随机选为关键字。在我们的实验中,`min和`max是基于测试集的最大和最小关键字长度,以保持训练和测试之间的一致性。由于我们的目标是建立一个检测任意唤醒词的模型,我们根据以下规则在测试集中随机选择唤醒词:(1)关键字必须至少出现5次参考以保证有足够的正例评估性能并减少随机性。(2)关键字不是和弦。由于我们只有单一的声学模型,没有任何语言模型,我们必须避免复音词的出现,以保证词与单音序列的一对一映射。满足这两个要求后,我们最终在dev93集中选择了80个单词,在ev92集中选择了56个单词,在ev93集中选择了29个单词。此外,我们随机选择20个不包含任何关键字的话语作为否定数据集。最后,我们选择37396条话语用于训练,503条话语用于开发,以及333(ev92)和213(ev93)条话语用于测试。
4.2.配置
基线模型由5个深度前馈顺序记忆网络(DFSMN)层和一个具有75个节点的输出层组成,这些节点对应于来自CMU发音词典的一组音素。隐藏大小和投影大小分别为256和64。较大的baseline由7个DFSMN层组成,其隐藏大小为1024,投影大小为256。带有文本提示模块的模型也由5层组成,与基线模型一致。由于我们的模型应用了注意力机制,我们将隐藏大小减少到240,投影大小减少到48,并将文本嵌入的维度设置为48,从而使模型参数总数具有可比性。
在本申请实施例中,声学特征是使用25毫秒汉明窗口和10毫秒窗口跳跃提取的40维对数梅尔滤波器组系数。我们从左右拼接5帧,总共440维向量作为模型的输入。我们将跳帧的参数设置为3,以降低模型的计算成本。
图6示出了在dev93数据集上使用不同w值获得的F1分数。
我们使用标准的交叉熵损失来训练基线。建议的带有文本提示的模型使用等式(1)中的Ltp进行了优化。当使用前文提出的帧级检测损失Lfd和序列级检测损失Lsd优化模型时,其参数由经过良好训练的模型初始化,该模型由损失Ltp优化,具有较低的学习率。最终模型以多任务方式使用损失L进行优化:
因为α和β是超参数。我们凭经验设置α=1000和β=0.001,因为它们会在我们的实验中获得最佳性能。
4.3.评价指标
如第3节所述,我们将多级检测指标纳入模型训练。为了减轻损失度量不匹配,我们使用检测统计(TN、FP、TP、FN)来构建损失函数。我们使用这些统计数据来计算准确率、召回率和F1-scores(F1分数)。对于每个测试数据集,微F1分数用于衡量系统性能。
4.4.权重w对损失的影响
为了研究方程(1)中不同权重w的影响,我们测试了从1到25的不同w值,结果如图4所示。当w=1时,我们修改后的损失退化为原始交叉熵损失并得到最差的表现。实验结果表明,在w=15左右实现了最佳性能。为了进行比较,我们还使用原始交叉熵与Lfd和Lsd一起使用训练检测模块对模型进行了微调,而不是等式(7)中提出的训练标准。结果表明,与使用w=15相比,这效果不佳,因此未在表中显示。因此,在下面的实验中,我们只展示了在w=15时获得的与Ltp相关的实验结果。
4.5.结果
图7示出了本申请实施例的表1的截图,表1示出了基线的F1分数比较,带有文本提示的注意力模型,带有文本提示和训练检测模块的注意力模型。其中,中英文对照如下:Model-模型,Baseline-基线模型,Larger Baseline-大模型,Text Prompt-带有文本提示模型,Frame level-帧级别准则,Sequence level-序列级别准则,Frame-帧级别,Sequence-序列级别,#Param.-参数数量,#MACs-计算量,Dataset-数据集。
本申请实施例在表1中展示了实验结果。为了简单起见,我们只显示了F1分数,反映了精度和召回率的组合结果。基线模型由5个DFSMN层组成,其参数总数为270k,而较大的模型有4000k参数。为了可比性,我们提出的模型只有268k参数,略小于基线模型。每个模型的MAC数量是在1秒样本上计算的。它还表明,我们提出的模型与基线模型相比具有相对较小的计算成本。当只使用文本提示时,我们的方法可以显著优于基线模型,甚至击败更大的基线模型。与dev93、ev92和ev93数据集上的基线模型相比,它分别实现了14.79%、16.77%和6.35%的相对改进。
此外,我们使用带有帧级和序列级训练检测模块的文本提示来训练模型。除了ev92数据集上的帧级检测方法外,这两种方法都可以进一步提高基于文本提示的基本模型的性能。根据我们对ev92的故障分析,带有帧级训练检测模块的基于文本提示的模型提高了召回率,但降低了精度,总体上导致F1分数较低。召回率的增加意味着误报数量的减少,这与我们在3.1节中对FP帧的特殊处理是一致的。它表明模型是朝着我们期望的方向训练的。这些实验结果表明,我们的帧级和序列级训练方法都可以有效地辅助检测模型训练。
本申请实施例最终合并了所有三个模块,将训练标准修改为等式(7),并以较低的学习率对之前训练有素的模型进行微调。与基线模型相比,所提出方法的组合在三个数据集上分别实现了22.83%、19.22%和8.59%的最终相对改进。与较大的基线相比,虽然其参数大小比我们提出的系统大15倍,但我们仍然获得了9.03%、10.14%、3.85%的相对改进。上述观察显示了我们系统的巨大潜力,并说明我们的系统非常适合部署在低资源设备上,并且很好地满足唤醒词检测任务的要求。
5.结论
在本申请实施例中,我们为始终在线的关键字发现任务提出了一种文本自适应检测框架,该框架可以自定义任意唤醒词并解决DNN训练标准与关键字检测指标之间的不匹配问题。我们引入了带有交叉熵损失的修改版本的文本提示,以区分属于唤醒词和非唤醒词的帧。通过提出的文本提示模块,我们可以在训练过程中随机采样唤醒词,然后使用多级检测标准来辅助训练。对于可比较的模型大小,我们的方法在测试数据集中明显优于基线;即使基线模型的参数比我们的多15倍,所提出的系统仍然可以获得更好的性能。在未来的工作中,我们将探索更细粒度的检测标准,并进一步提高模型的泛化能力。
在另一些实施例中,本发明实施例还提供了一种非易失性计算机存储介质,计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的唤醒词检测模型训练方法和系统;
作为一种实施方式,本发明的非易失性计算机存储介质存储有计算机可执行指令,计算机可执行指令设置为:
为所述唤醒词检测模型提供唤醒词的文本信息作为所述模型的输入,其中,所述文本信息用于加强对于每一帧后验的预测;
使用修正后的交叉熵损失函数、帧级检测损失函数和序列级检测损失函数作为所述模型的训练标准,其中,所述修正后的交叉熵损失函数用于表征唤醒词与非唤醒词之间的区别,帧级检测中的帧级序列通过去重操作后映射至所述序列级检测中的序列级序列。
非易失性计算机可读存储介质可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据唤醒词检测模型训练方法和系统的使用所创建的数据等。此外,非易失性计算机可读存储介质可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,非易失性计算机可读存储介质可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至唤醒词检测模型训练方法和系统。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本发明实施例还提供一种计算机程序产品,计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,使计算机执行上述任一项唤醒词检测模型训练方法和系统。
图7是本发明实施例提供的电子设备的结构示意图,如图7所示,该设备包括:一个或多个处理器710以及存储器720,图7中以一个处理器710为例。唤醒词检测模型训练方法和系统的设备还可以包括:输入装置730和输出装置740。处理器710、存储器720、输入装置730和输出装置740可以通过总线或者其他方式连接,图7中以通过总线连接为例。存储器720为上述的非易失性计算机可读存储介质。处理器710通过运行存储在存储器720中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例唤醒词检测模型训练方法和系统。输入装置730可接收输入的数字或字符信息,以及产生与通讯补偿装置的用户设置以及功能控制有关的键信号输入。输出装置740可包括显示屏等显示设备。
上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。
作为一种实施方式,上述电子设备应用于唤醒词检测模型训练方法和系统中,用于客户端,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够:
为所述唤醒词检测模型提供唤醒词的文本信息作为所述模型的输入,其中,所述文本信息用于加强对于每一帧后验的预测;
使用修正后的交叉熵损失函数、帧级检测损失函数和序列级检测损失函数作为所述模型的训练标准,其中,所述修正后的交叉熵损失函数用于表征唤醒词与非唤醒词之间的区别,帧级检测中的帧级序列通过去重操作后映射至所述序列级检测中的序列级序列。
本申请实施例的电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子装置。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种唤醒词检测模型训练方法,包括:
为所述唤醒词检测模型提供唤醒词的文本信息作为所述模型的输入,其中,所述文本信息用于加强对于每一帧后验的预测;
使用修正后的交叉熵损失函数、帧级检测损失函数和序列级检测损失函数作为所述模型的训练标准,其中,所述修正后的交叉熵损失函数用于表征唤醒词与非唤醒词之间的区别,帧级检测中的帧级序列通过去重操作后映射至所述序列级检测中的序列级序列。
2.根据权利要求1所述的方法,其中,所述模型的输入包括声学特征、关键字嵌入序列和可学习的填充序列,所述可学习的填充序列提供非关键字文本信息。
3.根据权利要求2所述的方法,其中,所述模型输出帧级后验矩阵,所述帧级后验矩阵用于计算所述修正后的交叉熵损失函数、所述帧级检测损失函数和所述序列级检测损失函数。
7.根据权利要求1-6中任一项所述的方法,其中,所述模型应用注意力机制,隐藏大小为240,投影大小为48,文本嵌入的维度设置为48。
8.根据权利要求7所述的方法,其中,所述模型包括5层深度前馈顺序记忆网络和一个输出层。
9.一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至8任一项所述方法的步骤。
10.一种存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1至8任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210084326.1A CN114420098B (zh) | 2022-01-20 | 2022-01-20 | 唤醒词检测模型训练方法、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210084326.1A CN114420098B (zh) | 2022-01-20 | 2022-01-20 | 唤醒词检测模型训练方法、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114420098A true CN114420098A (zh) | 2022-04-29 |
CN114420098B CN114420098B (zh) | 2024-09-03 |
Family
ID=81276551
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210084326.1A Active CN114420098B (zh) | 2022-01-20 | 2022-01-20 | 唤醒词检测模型训练方法、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114420098B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115273832A (zh) * | 2022-09-22 | 2022-11-01 | 深圳市友杰智新科技有限公司 | 唤醒优化模型的训练方法、唤醒优化的方法和相关设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107123417A (zh) * | 2017-05-16 | 2017-09-01 | 上海交通大学 | 基于鉴别性训练的定制语音唤醒优化方法及系统 |
US20180261213A1 (en) * | 2017-03-13 | 2018-09-13 | Baidu Usa Llc | Convolutional recurrent neural networks for small-footprint keyword spotting |
CN110033758A (zh) * | 2019-04-24 | 2019-07-19 | 武汉水象电子科技有限公司 | 一种基于小训练集优化解码网络的语音唤醒实现方法 |
CN111883121A (zh) * | 2020-07-20 | 2020-11-03 | 北京声智科技有限公司 | 唤醒方法、装置及电子设备 |
US20200349927A1 (en) * | 2019-05-05 | 2020-11-05 | Microsoft Technology Licensing, Llc | On-device custom wake word detection |
CN112071308A (zh) * | 2020-09-11 | 2020-12-11 | 中山大学 | 一种基于语音合成数据增强的唤醒词训练方法 |
US20200402500A1 (en) * | 2019-09-06 | 2020-12-24 | Beijing Dajia Internet Information Technology Co., Ltd. | Method and device for generating speech recognition model and storage medium |
US20210225362A1 (en) * | 2020-01-22 | 2021-07-22 | Google Llc | Attention-Based Joint Acoustic and Text On-Device End-to-End Model |
-
2022
- 2022-01-20 CN CN202210084326.1A patent/CN114420098B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180261213A1 (en) * | 2017-03-13 | 2018-09-13 | Baidu Usa Llc | Convolutional recurrent neural networks for small-footprint keyword spotting |
CN107123417A (zh) * | 2017-05-16 | 2017-09-01 | 上海交通大学 | 基于鉴别性训练的定制语音唤醒优化方法及系统 |
CN110033758A (zh) * | 2019-04-24 | 2019-07-19 | 武汉水象电子科技有限公司 | 一种基于小训练集优化解码网络的语音唤醒实现方法 |
US20200349927A1 (en) * | 2019-05-05 | 2020-11-05 | Microsoft Technology Licensing, Llc | On-device custom wake word detection |
US20200402500A1 (en) * | 2019-09-06 | 2020-12-24 | Beijing Dajia Internet Information Technology Co., Ltd. | Method and device for generating speech recognition model and storage medium |
US20210225362A1 (en) * | 2020-01-22 | 2021-07-22 | Google Llc | Attention-Based Joint Acoustic and Text On-Device End-to-End Model |
CN111883121A (zh) * | 2020-07-20 | 2020-11-03 | 北京声智科技有限公司 | 唤醒方法、装置及电子设备 |
CN112071308A (zh) * | 2020-09-11 | 2020-12-11 | 中山大学 | 一种基于语音合成数据增强的唤醒词训练方法 |
Non-Patent Citations (2)
Title |
---|
KAI YU: "sequence discriminative training for deep learning based acoustic keyword spotting", 《SPEECH COMMUNICATION》, 2 August 2018 (2018-08-02) * |
陈凯斌: "基于LFMMI的两级唤醒词检测研究", 《中国优秀硕士学位论文全文数据》, 15 February 2021 (2021-02-15) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115273832A (zh) * | 2022-09-22 | 2022-11-01 | 深圳市友杰智新科技有限公司 | 唤醒优化模型的训练方法、唤醒优化的方法和相关设备 |
CN115273832B (zh) * | 2022-09-22 | 2023-02-28 | 深圳市友杰智新科技有限公司 | 唤醒优化模型的训练方法、唤醒优化的方法和相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114420098B (zh) | 2024-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109637546B (zh) | 知识蒸馏方法和装置 | |
CN111933129B (zh) | 音频处理方法、语言模型的训练方法、装置及计算机设备 | |
US20210312914A1 (en) | Speech recognition using dialog history | |
CN110516253B (zh) | 中文口语语义理解方法及系统 | |
Alon et al. | Contextual speech recognition with difficult negative training examples | |
Chen et al. | Joint multiple intent detection and slot filling via self-distillation | |
US11132994B1 (en) | Multi-domain dialog state tracking | |
CN110706692A (zh) | 儿童语音识别模型的训练方法及系统 | |
CN109637527B (zh) | 对话语句的语义解析方法及系统 | |
CN111816160A (zh) | 普通话和粤语混合语音识别模型训练方法及系统 | |
CN112183061B (zh) | 一种多意图口语理解方法、电子设备和存储介质 | |
CN112017643B (zh) | 语音识别模型训练方法、语音识别方法及相关装置 | |
US12087305B2 (en) | Speech processing | |
CN113160855B (zh) | 在线语音活性检测系统改进方法和装置 | |
CN112967739A (zh) | 一种基于长短期记忆网络的语音端点检测方法及系统 | |
CN111814489A (zh) | 口语语义理解方法及系统 | |
Rasipuram et al. | Acoustic and lexical resource constrained ASR using language-independent acoustic model and language-dependent probabilistic lexical model | |
JP2021190101A (ja) | アテンション基盤シーケンスツーシーケンスモデルの性能向上方法及び装置 | |
Chang et al. | Turn-taking prediction for natural conversational speech | |
CN108491380B (zh) | 用于口语理解的对抗多任务训练方法 | |
CN111862963B (zh) | 语音唤醒方法、装置和设备 | |
Jeon et al. | Voice trigger detection from LVCSR hypothesis lattices using bidirectional lattice recurrent neural networks | |
CN114420098B (zh) | 唤醒词检测模型训练方法、电子设备和存储介质 | |
CN110992943A (zh) | 基于词混淆网络的语义理解方法及系统 | |
CN112183062B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |