PromptKWS:一种基于提示引导的开放词汇关键词识别新框架

arXiv cs.CL 论文

摘要

本文介绍了PromptKWS,一种新颖的提示引导开放词汇关键词识别框架,利用提示嵌入和交叉注意力来提高准确性,在唤醒率和准确率方面分别比基线系统提高了超过10%和15%。

arXiv:2608.28640v1 公告类型:新 摘要:本文提出了一种新颖的提示引导关键词识别(KWS)框架,以提高开放词汇KWS系统的准确性。具体而言,我们引入了提示短语预测网络(PPN),这是一种编码器-解码器架构,旨在有效提取关键词提示嵌入。我们采用PPN编码器来编码关键词提示,并通过使用提示-声学多头交叉注意力(MHCA)将提示嵌入注入提示引导的KWS编码器中。实验表明,与基线系统相比,PromptKWS将唤醒率提高了超过10%。值得注意的是,PromptKWS的另一个优势在于它能够有效利用关键词提示来适应涉及噪声和发音变化的复杂现实环境。与在此类情况下常常遇到困难的纯声学模型相比,PromptKWS表现出色,在测试集中的平均准确率提高了超过15%。
查看原文
查看缓存全文

缓存时间: 2026/09/01 11:57

# PromptKWS:一种新颖的提示引导开放词汇关键词检测框架  
来源:https://arxiv.org/html/2608.28640  
\\interspeechcameraready\\name \[affiliation=1\]GaopengXu\\name\[affiliation=2\]ChengfeiLi\\name\[affiliation=1\]XianliangWang\\name\[affiliation=1\]LinZhu\\name\[affiliation=1\]JuanWei\\name\[affiliation=1\]WenpengLi\\name\[affiliation=1\]JianweiNiu\\name\[affiliation=1\]JieGao  
###### 摘要  
本文提出了 PromptKWS,一种新颖的提示引导关键词检测框架,旨在提升开放词汇关键词检测系统的准确性。具体而言,我们引入了提示短语预测网络(PPN),这是一种编码器-解码器架构,旨在有效提取关键词提示嵌入。我们采用 PPN 编码器对关键词提示进行编码,并通过提示-声学多头交叉注意力机制将提示嵌入注入到提示引导的 KWS 编码器中。实验表明,与基线系统相比,PromptKWS 将唤醒率提高了 10% 以上。值得注意的是,PromptKWS 的另一个优势在于它能够有效利用关键词提示,以适应包含噪声和发音变化的复杂现实环境。与在这些情况下往往表现不佳的纯声学模型相比,PromptKWS 展现出显著的性能,在测试集上的平均准确率提升超过 15%。  
###### 关键词:开放词汇关键词检测,提示引导,多任务学习  
## 1 引言  
关键词检测是许多基于语音交互系统的关键组件,能够在连续音频流中识别特定的单词或短语。KWS 在智能家居设备和智能座舱等领域有着广泛应用。虽然现有的 KWS 模型 [k1,k3,k4,k5,k6] 可以达到较高的检测率,但开发用户定义或可定制的系统仍然是一个重大挑战,尤其是在连续语音的背景下。这部分是由于需要包含目标关键词的大型数据集,以及更改目标关键词的不灵活性,这可能会阻碍 KWS 模型扩展到各种应用。  
开放词汇 KWS 系统通常采用两阶段方法 [8462227]。这些方法通常包括声学建模的初始阶段,随后是关键词搜索阶段。关键词搜索类似于自动语音识别中使用的图搜索过程,由于经过良好训练的 ASR 系统相对容易扩展到 KWS 任务,因此常用于连续语音中的开放词汇 KWS。在此背景下,可定制的关键词被表示为声学建模单元的简短序列,例如单音素或字素,并可以选择引入填充模型来吸收非关键词元素。加权有限状态转换器已被广泛认为是一种高效的图搜索方法。在构建解码图 [8268943,pan,sun2017] 时,这类系统的关键在于如何根据关键词和填充路径的分数进行有效设计。  
随着深度学习的兴起,[chen2014] 引入了基于深度学习的关键词识别声学模型,并为其配备了后处理模块,从而简化了模型的训练和推理过程。随后,许多研究 [shan2018,yang2022,9413588] 致力于进一步优化声学模型架构以提升系统整体性能。  
近期研究在文本和图像生成方面取得了重大进展,使用文本描述作为提示 [l1,l2,l3,l4,l5]。这种方法不仅在生成文本和图像方面取得了成功,也在文本转语音和自动语音识别等其他领域证明了有效性。例如,PromptTTS [tts] 可以根据文本描述合成语音,从而实现提示式文本到语音或文本到音频的任务。在 ASR 领域,PromptASR [asr] 利用自然语言来指导语音转换中的风格变化。  
受 PromptASR 启发,我们提出了 PromptKWS,一种利用关键词提示来提升开放词汇 KWS 性能的方法。与使用 BERT 模型提取提示嵌入的 PromptASR 不同,KWS 模型通常用于边缘设备,这意味着其整体参数规模需要远小于 ASR 模型。综合考虑性能和模型大小,我们提出了一种称为 PPN 的新方法,这是一种轻量级且高效的编码器-解码器架构,旨在从关键词提示中提取嵌入。由于 PPN 解码器仅在训练阶段使用,我们在推理时仅使用 PPN 编码器进行编码,这为模型增加的参数非常少。最后,我们通过提示-声学多头交叉注意力将关键词提示嵌入集成到类 Conformer 的提示引导 KWS 编码器中,并展示了 PromptKWS 在开放词汇 KWS 任务上的有效性。我们在多个测试集上评估了提出的 PromptKWS 框架。我们的实验结果表明,使用所提方法达到了令人印象深刻的高唤醒率。  
参见图1:PromptKWS 的架构图。  
## 2 PromptKWS  
### 2.1 模型架构  
如图1 (https://arxiv.org/html/2608.28640#S1.F1) 所示,提出的 PromptKWS 由三个主要部分组成:PPN 模块、提示引导的 KWS 编码器和 KWS 解码器。PPN 负责处理关键词提示并生成提示嵌入。EnK 由 N 个类 Conformer 层组成。这种结构允许编码器中的每一层不仅接收声学特征,还接收由 PPN 编码的关键词提示嵌入。在 EnK 中,关键词提示和语音模态的集成通过交叉注意力机制实现。在此上下文中,关键词提示嵌入充当键值对,而声学隐藏状态则作为查询,从而促进两种模态信息的无缝融合。DecK 包含一个配备 softmax 激活函数的线性层,将编码器的输出转换为最终的概率分布输出。  
### 2.2 提示短语预测网络  
提示短语预测网络是一种轻量级且高效的编码器-解码器架构,专为关键词提示嵌入提取而设计。编码器负责将输入的提示短语编码成固定长度的向量,而解码器则生成表示提示短语的输出令牌序列。通过利用 PPN 解码器的输出,我们可以计算与提示短语相关的损失,从而增强关键词提示嵌入的区分能力。具体而言,解码器的输出与真实提示短语使用交叉熵损失函数进行比较。该损失鼓励模型生成与真实提示短语一致的输出令牌,从而提高从提示短语中提取的嵌入质量。PPN 的一个关键优势是其轻量级架构,使其能够轻松集成到现有的 KWS 模型中,而不会显著增加模型的参数量或计算复杂度。由于 PPN 解码器仅在训练阶段使用,我们在推理时仅使用 PPN 编码器进行编码,这为模型增加的参数非常少。  
### 2.3 提示引导的 KWS 编码器  
模型的提示引导 KWS 编码器组件由 N 个类 Conformer 层组成,每层都精心设计包含多个关键组件,包括 FF 层、掩码多头自注意力层、多头交叉注意力层、因果卷积层以及一组额外的 FF 层。编码器中的掩码多头自注意力层负责处理输入的语音数据并生成捕获相关声学特征的隐藏状态序列。提示上下文信息通过 PPN 模块引入 KWS 编码器,该模块负责将关键词提示编码为提示嵌入。提示文本和语音模态的集成通过提示-声学多头交叉注意力机制实现,该机制允许编码器中的每一层不仅接收声学特征,还接收由 PPN 模块编码的提示嵌入。在此上下文中,提示嵌入充当键值对,而声学隐藏状态 MHSAout 则作为查询。多头交叉注意力促进了两种模态信息的无缝融合,使模型能够利用来自关键词提示的上下文信息来引导关键词检测过程。整个操作由公式1 (https://arxiv.org/html/2608.28640#S2.E1) 描述。  
k\\displaystyle\\mathbf\{k\}=\(Eprompt\)Wk,\\displaystyle=\(\\mathbf\{E\}\_\{prompt\}\)\\mathbf\{W\}\_\{k\},(1)  
v\\displaystyle\\mathbf\{v\}=\(Eprompt\)Wv,\\displaystyle=\(\\mathbf\{E\}\_\{prompt\}\)\\mathbf\{W\}\_\{v\},  
q\\displaystyle\\mathbf\{q\}=\(MHSAout\)Wq,\\displaystyle=\\left\(\\mathbf\{MHSA\}\_\{\\text\{out\}\}\\right\)\\mathbf\{W\}\_\{q\},  
MHCAout\\displaystyle\\mathbf\{MHCA\}\_\{\\text\{out\}\}=MHCA\(q,k,v\),\\displaystyle=\\mathbf\{MHCA\}\(\\mathbf\{q\},\\mathbf\{k\},\\mathbf\{v\}\),  
CAout\\displaystyle\\mathbf\{CA\}\_\{\\text\{out\}\}=MHSAout\+MHCAout,\\displaystyle=\\mathbf\{MHSA\}\_\{\\text\{out\}\}\+\\mathbf\{MHCA\}\_\{\\text\{out\}\},  
y\\displaystyle\\mathbf\{y\}=CAout\+Conv⁡\(CAout\)\\displaystyle=\\mathbf\{CA\}\_\{\\text\{out\}\}\+\\operatorname\{Conv\}\(\\mathbf\{CA\}\_\{\\text\{out\}\}\)  
### 2.4 KWS 解码器  
KWS 解码器组件使用连接时序分类实现。CTC 解码器负责生成表示检测到的关键词的输出令牌序列。CTC 解码器包含一个线性层和一个 softmax 层,将编码器的隐藏状态映射到输出令牌的概率分布序列。  
### 2.5 提示详情  
PromptKWS 模型包含两种类型的提示:关键词提示和场景提示。关键词提示提供关于模型被训练检测的唤醒词或触发短语的具体信息,包括唤醒词或触发短语对应的文本信息。它还包括一个特殊标识符“”,以确保在没有特定关键词提示的情况下模型不受影响。场景提示提供关于被检测关键词类型的更通用信息,包括不同类型的输入,例如默认唤醒词、自定义唤醒词、噪声、快速语音或非目标语音(,,, , )。这些元素也可以组合出现,例如,“”表示在噪声环境中检测默认唤醒词。表1 (https://arxiv.org/html/2608.28640#S2.T1) 显示了具有不同场景的两个 PromptKWS 训练样本。  
表 1:两种不同提示类型的训练样本。  
### 2.6 训练标准  
在 PromptKWS 中,损失函数由两部分组成:来自 KWS 网络的 CTC 损失和来自 PPN 的交叉熵损失。CTC 损失用于衡量预测和真实关键词标签序列之间的差异,而交叉熵损失用于衡量预测和真实提示短语标签之间的差异。模型的联合损失函数定义为:  
L=λLCTC\+\(1−λ\)LPPNL=\\lambda L\_\{CTC\}\+\(1\-\\lambda\)L\_\{PPN\}(2)  
其中,L 代表总损失函数,λ\\lambdais 是权重,LCTC和 LPPN分别代表 CTC 损失和 PPN 损失。  
## 3 实验  
### 3.1 模型配置  
我们使用的基线模型是一个 5 层的 conformer [conformer],每层维度为 128,使用具有 4 个注意力头的多头注意力。PPN 编码器包含 3 个 Transformer [att] 层。每层包括具有 4 个头的多头注意力、使用 ReLU 激活函数的前馈网络和层归一化。在 PPN 编码器中,注意力维度设置为 128,FF 层维度设置为 512。PPN 解码器由 2 个 Transformer 层组成。该模型由多个组件组成,总共有 2.7M 参数。这些组件包括一个具有 2.07M 参数的编码器(其中 0.31M 是多头交叉注意力的参数)、一个具有 0.11M 参数的 CTC 解码器、一个具有 0.66M 参数的 PPN 编码器和一个具有 0.44M 参数的 PPN 解码器。输出单元由 436 个上下文无关音素组成,辅以“”符号和“”符号。需要注意的是,PPN 编码器仅在系统初始化时运行,而 PPN 解码器仅在训练阶段使用。这种高效的架构使得 PromptKWS 模型仅在基线模型上增加了 0.97M 的额外参数,与在 PromptASR 中使用预训练 BERT 模型相比,这个数量微不足道。因此,该模型适合部署在边缘设备上。  
### 3.2 数据集  
我们在一个 5000 小时的中文 ASR 语料库上训练我们的模型,该语料库完全源自语音助手产品。为保证随机性,我们从训练数据集中抽样开发集并打乱顺序。为准确评估我们模型的性能,我们创建了一个通用正测试集 Dgeneral,该测试集在与训练集相同的环境中录制。该测试集包含 100 个不同的关键词,长度为 2 到 5 个中文字符,每个关键词有 90 个样本。我们使用了一个独立的 100 小时音频集作为负测试集,主要包含背景噪音、音乐、风噪、机器噪音和无关语音。我们还构建了一个少样本测试集 Dfew,以评估关键词提示在低样本场景中的有效性。该数据集包括 0-shot、1-shot、5-shot、10-shot 和 15-shot 场景,专门设计用于评估给定关键词训练示例有限的场景。此外,我们创建了两个特殊场景测试集 Drapid和 Dnoisy,以评估关键词提示在高背景噪音和快速语音等挑战性环境中的影响。为进一步验证我们框架的性能并确保可重现性,我们还在公开的中文基准 MobvoiHotwords [mobvoi] 上进行了实验。该数据集包含约 262 小时的音频,其中包含两个关键词“Hi Xiaowen”和“Nihao Wenwen”,在各种真实的噪音环境中录制。  
### 3.3 评估指标  
为了全面评估我们模型的性能,我们使用了两个关键指标:受试者工作特征曲线和准确率。对于 ROC 曲线,我们为每个关键词生成单独的曲线,利用正样本与 100 小时负集结合使用。ROC 曲线的横轴代表每小时误报率,纵轴代表错误拒绝率。  
### 3.4 PromptKWS 的性能  
首先,我们比较了不同 KWS 模型的准确率。如表2 (https://arxiv.org/html/2608.28640#S3.T2) 所示,我们提出的方法在 Dgeneral、Drapid 和 Dnoisy 所有三个数据集上均显著优于基线。具体而言,我们的方法在 Dgeneral 上达到了 92.3% 的准确率,比基线提高了 11.4%。在 Drapid 上,我们的准确率为 87.9%,提升了 13.8%。最值得注意的是,在 Dnoisy 上,我们的方法将准确率提高了 15.9%,达到 85.4%。这些结果表明,我们的模型在各种场景下的 KWS 任务中展现出卓越的性能,尤其是在更具挑战性的快速语音和嘈杂环境中。  
表 2:不同模型的准确率比较。

相似文章

自监督提示优化

Papers with Code Trending

本文提出了一种名为自监督提示优化(SPO)的框架,该框架通过输出对比来优化大语言模型的提示词,无需外部参考,显著降低了成本和数据需求。