CN112420026A - 优化关键词检索系统 - Google Patents
优化关键词检索系统 Download PDFInfo
- Publication number
- CN112420026A CN112420026A CN201910783303.8A CN201910783303A CN112420026A CN 112420026 A CN112420026 A CN 112420026A CN 201910783303 A CN201910783303 A CN 201910783303A CN 112420026 A CN112420026 A CN 112420026A
- Authority
- CN
- China
- Prior art keywords
- keyword
- utterance
- texts
- given
- text
- 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
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/1815—Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L2015/081—Search algorithms, e.g. Baum-Welch or Viterbi
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Acoustics & Sound (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了用于优化关键词检索系统的方法和装置。可以生成包含给定关键词的话语文本集合。可以合成与所述话语文本集合相对应的语音信号集合。可以利用所述语音信号集合中的至少一部分语音信号以及所述话语文本集合中与所述至少一部分语音信号相对应的话语文本来优化所述关键词检索系统中的声学模型。
Description
背景技术
语音识别可以用于从输入的语音信号中识别出与其相对应的文本序列。基于语音的关键词检索(KWS:keyword spotting)或关键词识别是语音识别的子任务。关键词检索不需要从语音信号中检索或识别出每个词语,而是仅需要从该语音信号中检索或识别出给定关键词。
发明内容
提供本发明内容以便介绍一组概念,这组概念将在以下的具体实施方式中做进一步描述。本发明内容并非旨在标识所保护主题的关键特征或必要特征,也不旨在用于限制所保护主题的范围。
本公开的实施例提供了用于优化关键词检索系统的方法和装置。可以生成包含给定关键词的话语文本集合。可以合成与所述话语文本集合相对应的语音信号集合。可以利用所述语音信号集合中的至少一部分语音信号以及所述话语文本集合中与所述至少一部分语音信号相对应的话语文本来优化所述关键词检索系统中的声学模型。
应当注意,以上一个或多个方面包括以下详细描述以及权利要求中具体指出的特征。下面的说明书及附图详细提出了所述一个或多个方面的某些说明性特征。这些特征仅仅指示可以实施各个方面的原理的多种方式,并且本公开旨在包括所有这些方面和其等同变换。
附图说明
以下将结合附图描述所公开的多个方面,这些附图被提供用以说明而非限制所公开的多个方面。
图1示出了根据实施例的示例性关键词检索系统。
图2示出了根据实施例的声学特征提取的示例性过程。
图3示出了根据实施例的示例性声学模型。
图4示出了根据实施例的对声学模型进行优化的示例性过程。
图5示出了根据实施例的生成优化数据的示例性过程。
图6示出了根据实施例的生成话语文本集合的示例性过程。
图7示出了根据实施例的生成话语文本集合的另一示例性过程。
图8示出了根据实施例的针对给定关键词的示例性解码网络。
图9示出了根据实施例的示例性解码过程。
图10示出了根据实施例的针对示例性给定关键词的解码输出。
图11示出了根据实施例的用于优化关键词检索系统的示例性方法的流程图。
图12示出了根据实施例的用于优化关键词检索系统的示例性装置。
图13示出了根据实施例的用于优化关键词检索系统的示例性装置。
具体实施方式
现在将参考多种示例性实施方式来讨论本公开。应当理解,这些实施方式的讨论仅仅用于使得本领域技术人员能够更好地理解并从而实施本公开的实施例,而并非教导对本公开的范围的任何限制。
基于语音的针对给定关键词的检索可以被应用于诸如设备唤醒、命令控制、语音搜索等领域。设备唤醒是指将设备从休眠状态激活至运行状态。用于唤醒设备的关键词可以是由例如设备商指定的关键词,例如,“你好小娜”、“你好小冰”等。命令控制是指在检测到特定命令后执行与该特定命令对应的控制操作。用于命令控制的关键词可以是含有特定动作的词组,例如,“关闭手机”、“打开音乐播放器”等。语音搜索是指从采集的大量语音信号中搜索给定关键词。例如,该给定关键词可以是敏感词语、商标名称等。
以设备唤醒为例,其已经被广泛地应用于诸如机器人、智能家居、车载设备、手机、可穿戴设备等各种设备中。只要设备具备语音交互功能,就可以通过对语音输入中给定关键词的识别来启动人机交互。为了实现对特定设备的唤醒,不同的设备可能具有不同的唤醒词,例如,不同的给定关键词。可见,具有设备唤醒功能的设备的不同将导致用于唤醒这些设备的给定关键词可能会截然不同。另外,在不同的应用场景下,前述提到的命令控制以及语音搜索中使用的给定关键词可能也会千差万别。
关键词检索系统通常采用声学模型来进行关键词检索。现有的声学模型是个通用模型,其在理论上可以支持对任意关键词的检索,但是并不能保证对某些给定关键词的检索能够满足用户的要求。这是因为针对某些关键词的训练数据可能非常少,甚至可能缺乏针对某些给定关键词的训练数据。从而,在使用现有的声学模型对给定关键词进行检索时,可能导致无法满足关键词检索系统的性能要求。
为了训练出高质量的声学模型,以使得关键词检索系统针对给定关键词的检索能够达到期望的性能要求,通常需要使用数百甚至上千小时的包含给定关键词的真实场景的语音数据和对应的话语文本来对声学模型进行训练。如果针对每个给定关键词都采集大量的真实场景的语音数据并且对所采集的语音数据进行人工标注,则将非常耗时且耗力。
本公开的实施例提出了用于优化关键词检索系统的方法和装置。可以利用给定关键词来生成包含给定关键词的话语文本,然后使用文本转语音(TTS)技术来将该话语文本转化成对应的语音信号。该给定关键词可以是一个词语(例如,“小娜”)、由多个词语组成的一个词组或短语(例如,“查询天气”)、一个短句(例如,“你好小娜”)等。话语文本可以指以文本的形式表示的话语内容。语音信号可以指一段连续的音频信号。所合成的语音信号可以被用于优化关键词检索系统中的声学模型,从而使得优化后的声学模型能够更有效地用于对给定关键词的检索。
此外,本公开的实施例还可以基于关键词检索系统的性能指标,利用包含给定关键词的数据集和不包含给定关键词的数据集来调整与给定关键词相对应的置信度门限,以使得基于所调整的置信度门限所进行的关键词检索能够满足关键词检索系统所要求的检出(CA:correct accept)度量和误检(FA:false accept)度量。
图1示出了根据实施例的示例性关键词检索系统100。如图1所示,该示例性关键词检索系统100可以包括声学特征提取模块110、声学模型120、解码器130、置信度计算模块140以及置信度门限判断模块150。语音信号105被输入到声学特征提取模块110,然后依次经由声学模型120、解码器130、置信度计算模块140以及置信度门限判断模块150的处理后,可以得到检索结果155。检索结果155指示是否从输入的语音信号105中检索出给定关键词。以下将对示例性关键词检索系统100中的每个模块进行详细地说明。
语音信号105可以是要被检索其中是否含有给定关键词的一段连续的音频信号。该音频信号可以是通过音频采集的方式获得的,或者可以是通过TTS的方式获得的。
声学特征提取模块110可以对输入的语音信号105进行一系列的处理,以将其从时域转换到频域,并为声学模型120提取声学特征。声学特征可以指在频域中对语音信号的表征。例如,声学特征可以是滤波器组(Fbank)特征、梅尔频率倒谱系数(MFCC)特征等。下文将结合图2详细描述如何对语音信号进行声学特征提取。
声学模型120可以是利用大量的语音识别数据预先训练好的模型,例如,种子声学模型。该种子声学模型可以被训练用于区分不同的音素,进而实现从声学特征到音素的映射。在本文中,音素可以指构成语音的最小单位。此外,图1中的声学模型120还可以是根据本公开的实施例对种子声学模型优化后的声学模型。例如,声学模型120可以是在种子声学模型的基础上,至少利用本公开中所合成的包含给定关键词的语音信号对种子声学模型进行优化后的模型。与种子声学模型相比,该优化后的声学模型对给定关键词可以具有更好的检索性能。对声学模型120的优化过程将在下文结合图3和图4进行详细地描述。
声学模型120对输入的每帧的声学特征进行分类,将每帧的声学特征对应到所有可能的音素并计算各音素的概率,最后将包含每帧在所有音素上的概率的概率向量提供给解码器130。在一种情况下,概率向量中的所有元素之和可以为100%。概率向量中的元素的数目取决于声学模型的建模单元和输入的语音信号所使用的语言包含的音素数。假设以单音素为建模单元,则该向量中的元素的数目等于输入的语音信号所使用的语言包含的音素数。
可以根据构成给定关键词的多个音素以及这些音素的顺序,利用加权有限状态转移器(WFST)来构建针对该给定关键词的解码网络。解码器130根据声学模型120在每帧处提供的概率向量来确定包含给定关键词的最佳解码路径,并将该最佳解码路径上每帧所对应的音素的概率输出到置信度计算模块140。
置信度计算模块140获得在包含给定关键词的最佳解码路径上每帧所对应的音素的概率,并相应地计算该给定关键词的置信度值。
置信度门限判断模块150将从置信度计算模块140接收的置信度值与置信度门限进行比较,以确定检索结果155。如果所接收的置信度值大于置信度门限,则确定检索出给定关键词,否则确定未检索出给定关键词。置信度门限可以是针对任意关键词预先设置的门限(例如,0.5),可以是根据经验分别为每个给定关键词预先设置的门限,或者可以是在优化声学模型时根据关键词检索系统的性能指标调整后的针对给定关键词的门限。针对置信度门限的具体调整过程将在下文中介绍。
图2示出了根据实施例的声学特征提取的示例性过程200。如图2所示,其详细描述了如何从输入的语音信号210中提取出声学特征,例如Fbank特征290或MFCC特征295。
在220处,对语音信号210进行预加重处理。例如,该预加重处理可以包括将高通滤波器应用于语音信号210,以对语音信号210的高频部分进行补偿。
在230处,对经预加重的语音信号进行分帧。例如,将指定数目的采样点定义为一帧语音信号。
在240处,对分帧后的语音信号进行加窗。例如,可以将每帧语音信号乘以汉明窗,以增加帧左端和右端的连续性。
在250处,对加窗后的信号执行离散傅里叶变换。将信号从时域转换到频域,可以更好地表现该信号的特性。通过离散傅里叶变换可以得到每帧语音信号的频谱,然后对该频谱取模平方得到语音信号的功率谱。
在260处,对语音信号的功率谱应用梅尔滤波器组,以对语音信号的频谱进行平滑并消除谐波。
在270处,对梅尔滤波器组的输出取对数,以得到Fbank特征290。Fbank特征290已经非常贴近人耳的响应特性。考虑到Fbank特征的特征相关性较高,可选地,方法200可以包括在280处对270处的输出执行离散余弦变换,以得到MFCC特征295。
经过图2的处理,可以从语音信号210中提取出Fbank特征向量或者MFCC特征向量,以用于检索语音信号210中是否包含给定关键词、或者用于训练或优化声学模型。
图3示出了根据实施例的示例性声学模型300。如图3所示,可以使用长短期记忆循环神经网络(LSTM-RNN)来建立示例性声学模型300。例如,该声学模型可以通过堆叠多个LSTM层(例如,L层LSTM)来建立。
在建立声学模型时,可以以单音素、双音素或三音素为建模单元来建立声学模型。在以三音素为建模单元建立声学模型时,可以考虑音素的上下文,因而可以提高语音识别的准确性。由于关键词检索无需检索出所输入的语音信号中的每个单词或字符,因而降低了对语音信号中部分音素间的关联性的要求。此外,部署关键词检索系统的设备一般存在低功耗的要求。因此,为了降低计算复杂度并节省功耗,该声学模型300可以以单音素或者独立于上下文的音素(ciphone)为建模单元来建立的。下面以中文为例,假设中文所包括的音素数目为98个。需要注意,本公开的实施例可以以类似的方式应用于其他各种语言。由于不同语言的发音不同,因此不同语言所包括的音素数目也可能会不同。
可以利用大量的语音识别数据对声学模型进行训练。该声学模型的参数被训练为使得负交叉熵最大化:
其中,L(xt)表示第t帧的负交叉熵值,T表示输入的语音信号的帧数,表示在T个帧上平均后的负交叉熵值。S表示声学模型对于每帧所输出的音素数目,例如,输入到声学模型的语音信号所使用的语言包含的总音素数目。xt为输入到声学模型的第t帧的声学特征305。y为输出的音素的索引。是目标概率,通常为0或者1。如果输入xt对应于当前音素y,则该目标概率为1,否则该目标概率为0。p(y|xt)表示声学模型的输出概率,例如,在输入为xt的情况下,输出为音素y的概率。
由声学特征提取模块提取的每帧的声学特征305被输入到声学模型300,经过L层LSTM(例如,LSTM 310,LSTM 320,……,LSTM 330等)的处理,最终输出该帧的声学特征经分类后的音素概率335。音素概率335可以是包含该帧在所有音素上的概率的概率向量。该帧在一个音素上的概率可以被计算为:
其中,p(y=k|xt)表示在输入为xt的情况下,索引y等于k的音素的概率,例如,p可以是在给定输入声学特征的情况下,音素的后验概率。k=1,…S,其中,S是声学模型输出的音素数目,其可以是语音信号所采用的语言(例如中文)所包含的音素数目(例如98个)。L是声学模型内的LSTM的层数。表示针对索引为k的音素在第L层的输出,n取1至S。
利用通用的语音识别数据所训练的上述声学模型理论上可以支持对任意关键词的检索。该声学模型可以作为种子声学模型。由于在训练过程中并未使用特别针对给定关键词的训练数据,或者只使用了非常有限的针对给定关键词的训练数据,上述的种子声学模型可能不能很好地对该给定关键词进行检索。因此,本公开的实施例可以进一步使用包含给定关键词的优化数据来对种子声学模型做进一步的优化。
图4示出了根据实施例的对声学模型进行优化的示例性过程400。过程400可以被执行用于对以上结合图3所讨论的种子声学模型进行优化。
如图4所示,在410处,基于给定关键词405来生成包含给定关键词405的优化数据。该优化数据可以包括含有给定关键词的话语文本以及基于该话语文本合成的语音信号。
在420处,可以利用图2所示的过程来提取优化数据中的语音信号的声学特征,例如,Fbank特征或者MFCC特征。在经过声学特征提取之后,该语音信号被转换成声学特征。
在430处,为每帧的声学特征指派一个与音素相关的标签。例如,可以使用预训练的语音识别系统,例如,混合高斯模型-隐马尔科夫模型、深度神经网络-隐马尔科夫模型等,来指派标签。假设对于话语文本“你好小娜”,要对与该话语文本对应的语音信号的300帧的声学特征进行标注。
首先,可以根据建模单元将“你好小娜”分解成如下的音素序列:
“ni i_li_h h aa_l o_l xi aa_l o_l n a_h a_l”。
然后,为每帧的声学特征指派一个音素标签,例如:
为第0-30帧声学特征指派音素标签ni;
为第31-50帧声学特征指派音素标签i_l;
……
为第290-300帧声学特征指派音素标签a_l。
在440处,利用每帧的声学特征和每帧的声学特征对应的音素标签来对种子声学模型进行优化。例如,可以使用基于Kullback-Leibler(KL)散度的损失函数来对种子声学模型进行优化。为了实现更好的优化效果,可以对上述公式(1)添加基于KL散度的正则项。在去除与声学模型参数无关的项之后可以得到下式:
上述公式(3)可以被重写为:
其中:
其中,pSeedModel(y|xt)表示将xt输入到优化前的种子声学模型后估计出的音素y的后验概率。ρ表示正则权重。如果ρ=1意味着基本上使用优化前的种子声学模型,如果ρ=0意味着基本上纯粹地基于本公开所合成的语音信号来重新训练声学模型。通过比较公式(1)和公式(4)可以看出,将KL散度正则项应用于原来的训练准则(即,公式(1)的损失函数)相当于将目标概率分布从变为如果ρ介于0与1之间,则是对由未优化的种子声学模型所估计的概率分布和由优化数据所标注的真实概率的线性插值。该插值通过阻止优化后的声学模型偏离种子声学模型太远来防止过度优化。
无论是对声学模型300进行训练还是进一步优化,对声学模型的输出p(y=k|xt)的计算方式均相同,即,如上述公式(2)所示。
接下来将详细描述如何生成用于优化声学模型的优化数据。
图5示出了根据实施例的生成优化数据的示例性过程500。
如图5所示,在510处,生成包含给定关键词的话语文本集合。例如,可以通过多种方式生成包含给定关键词的话语文本集合,包括但不限于下述的几种实施方式。
在一种实施方式中,可以将所述给定关键词与一组参考话语文本进行拼接。该组参考话语文本中的参考话语文本可以指用来与给定关键词进行拼接以形成所述话语文本集合的任意话语文本。例如,这些参考话语文本可以是根据使用场景来选取的,其可以包括闲聊型参考话语文本、工作助手型参考话语文本等。参考话语文本可以从公开的语音数据库获取、或者从互联网上获取。例如,该组参考话语文本可以包括:<请打开灯>、<请播放音乐>、<明日天气怎么样>等。
可以采用以下方式中的至少一种方式来拼接给定关键词和参考话语文本。
在一种方式中,将所述给定关键词分别放置于所述一组参考话语文本中的一个或多个参考话语文本的前面。以上述参考话语文本和给定关键词“你好小娜”为例,通过该方式拼接后的话语文本集合可以包括,例如,<你好小娜,请打开灯>、<你好小娜,请播放音乐>、<你好小娜,明日天气怎么样>等。
在一种方式中,将所述给定关键词分别放置于所述一组参考话语文本中的任意两个参考话语文本之间。仍以上述参考话语文本和给定关键词“你好小娜”为例,通过该方式拼接后的话语文本集合可以包括,例如,<请打开灯,你好小娜,请播放音乐>、<请打开灯,你好小娜,明日天气怎么样>、<请播放音乐,你好小娜,明日天气怎么样>等。此外,还可以交换给定关键词前后的两个参考话语文本的顺序,从而形成另一个拼接后的话语文本集合。
在一种方式中,将所述给定关键词分别放置于所述一组参考话语文本中的一个或多个参考话语文本的后面。仍以上述参考话语文本和给定关键词“你好小娜”为例,通过该方式拼接后的话语文本集合可以包括,例如,<请打开灯,你好小娜>、<请播放音乐,你好小娜>、<明日天气怎么样,你好小娜>等。
在另一种实施方式中,可以通过从一组参考话语文本中搜索与给定关键词语义相关的参考关键词,并使用给定关键词来替代参考关键词的方式来生成包含给定关键词的话语文本集合。例如,图6示出了根据实施例的生成话语文本集合的示例性过程600。
在610处,从一组参考话语文本中搜索与所述给定关键词语义相关的至少一个参考关键词。可以通过在向量空间中计算两个词语的向量表示之间的余弦距离来确定语义相关性。如果计算出的余弦距离大于预定的距离门限,则可以确定这两个词语为语义相关的词语。例如,假设该组参考话语文本可以包括:<早上好小冰,请查询北京到上海的最近航班>、<您好小度,搜索口碑最好的餐厅>、<请搜索当前最热门的电影>等。首先,将给定关键词“你好小娜”转换成对应的词向量,然后将该组参考话语文本中的每个词语也转换成各自对应的词向量。假设通过计算给定关键词的词向量与该组参考话语文本中的每个词向量的余弦距离发现,“早上好小冰”和“您好小度”满足上述用于判断语义相关的距离门限。因此,“早上好小冰”和“您好小度”可以被认为是与给定关键词“你好小娜”语义相关的参考关键词。
在620处,从所述一组参考话语文本中提取包含所述至少一个参考关键词的一个或多个参考话语文本。仍以上述的该组参考话语文本为例进行说明。由于搜索出“早上好小冰”和“您好小度”是与“你好小娜”语义相关的参考关键词,因此,可以提取出这两个参考关键词所在的参考话语文本:<早上好小冰,请查询北京到上海的最近航班>、<您好小度,搜索口碑最好的餐厅>。
在630处,利用所述给定关键词来替代所提取的一个或多个参考话语文本中的所述至少一个参考关键词,以生成所述话语文本集合中的一个或多个话语文本。例如,可以使用“你好小娜”分别替代参考话语文本<早上好小冰,请查询北京到上海的最近航班>中的“早上好小冰”以及替代参考话语文本<您好小度,搜索口碑最好的餐厅>中的“您好小度”,以形成话语文本集合中的话语文本:<你好小娜,请查询北京到上海的最近航班>、<你好小娜,搜索口碑最好的餐厅>。
在再一种实施方式中,可以通过合成与给定关键词语义相关的参考关键词,然后再从一组参考话语文本中搜索该参考关键词,并使用给定关键词来替代该参考关键词的方式生成包含给定关键词的话语文本集合。例如,图7示出了根据实施例的生成话语文本集合的另一示例性过程700。
在710处,将所述给定关键词切分成多个子关键词。以“你好小娜”为例,可以将该给定关键词切分成两个子关键词:“你好”和“小娜”。
在720处,获取与所述多个子关键词分别语义相关的多个参考词语。可以从公开的语音数据库或者从互联网上分别获取与每个子关键词语义相关的参考词语。另外,还可以从预先设计好的词典中获取参考词语。与610处描述的类似,可以通过计算两个词向量之间的余弦距离来查找与每个子关键词语义相关的多个参考词语。以从词典获取的方式为例进行说明。例如,通过计算词典中的一个或多个词语的向量与子关键词“你好”的向量之间的余弦距离,查询得到参考词语:“你好”、“您好”、“早上好”、“晚上好”等。再通过计算词典中的一个或多个词语的向量与子关键词“小娜”的向量之间的余弦距离,查询得到参考词语:“小娜”、“小冰”、“小度”、“小爱”等。
在730处,将所述多个子关键词与所述多个参考词语组合成至少一个参考关键词。在一种实现方式中,可以将子关键词“你好”分别与参考词语“小冰”、“小度”、“小爱”组合成参考关键词,例如“你好小冰”、“你好小度”、“你好小爱”;可以将子关键词“小娜”分别与参考词语“您好”、“早上好”、“晚上好”组合成参考关键词,例如“您好小娜”、“早上好小娜”、“晚上好小娜”。在另一种实现方式中,可以将获取的与每个子关键词语义相关的多个参考词语相互组合成参考关键词。例如,将一组参考词语“您好”、“早上好”、“晚上好”分别与另一组参考词语“小冰”、“小度”、“小爱”组合成参考关键词,例如“您好小冰”、“您好小度”、“您好小爱”、“早上好小冰”、“早上好小度”、“早上好小爱”、“晚上好小冰”、“晚上好小度”、“晚上好小爱”等。
在740处,从一组参考话语文本中搜索所述至少一个参考关键词。假设该组话语文本可以包括以下话语文本:<晚上好小冰,请查询明日天气>、<早上好小度,请播放音乐>、<请关灯>等。通过搜索发现该组话语文本中的前两个话语文本含有参考关键词“晚上好小冰”、“早上好小度”。
在750处,从所述一组参考话语文本中提取包含所述至少一个参考关键词的一个或多个参考话语文本。例如,由于经搜索发现该组参考话语文本中的两个参考话语文本含有参考关键词“晚上好小冰”、“早上好小度”,则提取这两个参考关键词所在的参考话语文本:<晚上好小冰,请查询明日天气>、<早上好小度,请播放音乐>。
在760处,利用所述给定关键词来替代所提取的一个或多个参考话语文本中的所述至少一个参考关键词,以生成所述话语文本集合中的一个或多个话语文本。例如,使用给定关键词“你好小娜”来替代参考话语文本<晚上好小冰,请查询明日天气>中的参考关键词“晚上好小冰”,并且替代参考话语文本<早上好小度,请播放音乐>中的参考关键词“早上好小度”,从而生成话语文本集合中的话语文本:<你好小娜,请查询明日天气>、<你好小娜,请播放音乐>。
返回到图5,在生成优化数据的过程中,可选地,还可以在520处通过由语言模型执行过滤来从所述话语文本集合中选择出用于合成所述语音信号集合的一个或多个话语文本。以上述提及的拼接方式为例进行说明,至少由于用于拼接的该组话语文本可以是随机选取的,因此在将给定关键词与该组话语文本进行拼接后,所获得的包含给定关键词的话语文本可能存在不符合语言逻辑的情形,例如,<你好小娜,小冰开灯>。为了生成高质量的优化数据,可以基于语言模型直接地从所述话语文本集合中选择出合乎语言逻辑的话语文本、或者将所述话语文本集合中不合乎语言逻辑的话语文本去除来进一步用于合成语音信号。例如,可以基于预先训练的语言模型来计算所拼接的话语文本的语言模型得分,其中,该语言模型可以是N元语言模型。如果所拼接的话语文本经语言模型计算出的得分高于预定义的语言逻辑门限,则确定所拼接的话语文本合乎语言逻辑,可以用来合成语音信号,否则确定所拼接的话语文本不合乎语言逻辑,不可以用来合成语音信号。需要指出,该过滤和选择过程可以同样适用于利用给定关键词来替代一组话语文本中的参考关键词的情形。
在530处,合成与所述话语文本集合相对应的语音信号集合。例如,可以使用现有的TTS技术来将话语文本合成为语音信号。在针对所述话语文本集合中的每个话语文本合成语音信号时,可以设置不同讲话者的声音,以使得所合成的语音信号可以模拟不同的讲话者。这些不同的讲话者可以包括以下各项中的至少一项:不同性别的讲话者、不同年龄的讲话者和不同口音的讲话者。此外,在合成语音信号时还可以考虑讲话者与麦克风的距离,不同的距离可以体现语音信号的不同能量。
可选地,为了使优化数据多样化,还可以在540处对所述语音信号集合中的至少一个语音信号执行信号变换。例如,所述信号变换可以包括以下各项中的至少一项:添加背景噪声、执行速度扰动、以及施加室内脉冲响应。
关于添加背景噪声,可以将时域的噪声信号直接叠加到所合成的语音信号上,从而生成添加了背景噪声的语音信号。这不仅增加了优化数据的多样性,而且还使经信号变换后的语音信号更接近现实场景采集的语音信号。
关于执行速度扰动,可以通过在时域中对所合成的语音信号的波形中的部分采样点进行复制来降低语音信号的速度,或者通过对所合成的语音信号的波形中的部分采样点进行抽取来提高语音信号的速度。因此,针对一段合成的语音信号,可以通过对部分采样点进行复制,并且抽取另外一部分采样点来实现对该段语音信号的速度扰动。此外,还可以通过对一段合成的语音信号复制不同数量的采样点和/或抽取不同数量的采样点来实现对该段语音信号的速度扰动。
关于施加室内脉冲响应,该室内脉冲响应可以表征以下信息中的至少一项:扬声器与话筒之间的延迟、直达声和混响声的电平比、声音早期和晚期的衰变率以及直达声的频率响应。可以将预先测量出的室内脉冲响应与所合成的语音信号进行卷积,从而得到施加了室内脉冲响应的语音信号。
以上结合图3至图7详细描述了如何生成优化数据,以及如何利用该优化数据来优化关键词检索系统中的声学模型。在对声学模型进行优化后,可以利用其来实现对给定关键词的检索。优化后的声学模型可以接收从语音信号中提取的声学特征,并且将例如根据上述公式(2)计算出的音素概率传递给解码器,以进一步确定是否存在包含给定关键词的最佳解码路径。
图8示出了根据实施例的针对给定关键词的示例性解码网络800。该解码网络800可以由图1中的解码器130所使用。假设输入的语音信号所采用的语言包含总共S个单音素,则在以单音素为单元来建模的情况下,理论上T帧语音信号共有ST种可能的解码路径。数目ST太大,并且ST种可能的解码路径中的大部分解码路径是无意义的。因此,为了降低解码网络的复杂度,如图8所示,可以基于WFST和给定关键词来建立缩减版的解码网络,以约束可能的解码路径。
该缩减版的解码网络包括两部分,上半部分是给定关键词解码路径的状态转移过程,下半部分是给定关键词之外的无用解码路径的示意性状态转移过程。图8中的每个节点可以对应于声学模型输出中的多个音素中的一个音素,每条带有箭头的线具有预定义的权重,其可以被看作转移概率。
如图8的上半部分所示,可以根据声学模型的建模单元(例如,单音素)来将给定关键词分解为顺序排列的N个音素。需要指出,根据给定关键词的发音,这N个音素中可能会包含相同的音素。为了便于说明,假设给定关键词解码路径中的相邻音素不同。由于每个音素可能会持续若干帧,因此,在图8中的给定关键词解码路径中,可能会存在音素的自转移810,随着时间的推移,若干帧后会出现音素间转移820。
如图8的下半部分所示,至少可以将给定关键词对应的音素之外的音素看作无用音素,将这些无用音素互联,从而构成无用解码路径。在语音信号中不存在给定关键词的情况下,声学模型的输出可能会在这些无用音素间跳转。此外,这些无用音素中的任何一个音素都可以跳转到给定关键词路径的第1个音素。
图9示出了根据实施例的示例性解码过程900。如图9所示,该解码过程900可以是基于图8中的解码网络800的。
在给定输入声学特征向量X=(x1,x2…,xT)的情况下,解码过程900可以使用维特比算法来计算下述公式(6)中的联合概率,以找到使该联合概率最大的标签序列向量Y=(y1,y2…,yT):
其中,
其中,p(xi)可以从公式(7)中去除,因为其对于所有可能的yi都是相同的。yi可以取1至S,其用来标识音素。p(yi)是音素yi的先验概率,其可以从训练数据中估计出。p(yi|xi)是声学模型的输出概率,例如,在输入为xi的情况下,输出为音素yi的概率。p(yi|yi-1)是音素之间的转移概率。
如图9所示,假设给定关键词可以被拆分成3个音素,输入的语音信号为4帧。对于多条可能的给定关键词解码路径,根据图8的解码网络,给定关键词的第1个音素只可能转移到给定关键词的第1个音素(即,自转移,例如P11→P12,P12→P13等)和给定关键词的第2个音素(即,音素间转移,例如P11→P22,P12→P23等);给定关键词的第2个音素只可能转移到给定关键词的第2个音素(即,自转移,例如P22→P23,P23→P24等)和给定关键词的第3个音素(即,音素间转移,例如P22→P33,P23→P34等);以此类推。
在每个时刻T=T′(即,第T′帧),可以使用维特比算法计算出到当前时刻T′的最佳解码路径得分p(x1,x2…,xT′,y1,y2…,yT′),其中,yT′=k,k=1,2,…M+N。M+N是图8中的总节点数,即,构成图8的解码网络的总音素数。假设给定关键词解码路径的最后一个音素的索引为Nk(即,图8中的N)。如果p(x1,x1…,xT′,y1,y1…,yT′=Nk)大于p(x1,x1…,xT′,y1,y1…,yT′=Ni),则意味着当前的最佳解码路径即为给定关键词解码路径,其中,i≠k,然后,将该当前的最佳解码路径上每帧对应的音素概率提供给置信度计算模块140。
接下来,以给定关键词含有3个音素为例来说明示例性的解码过程。
参照图9,针对可能的给定关键词解码路径,假设在T=1时刻,当前的最佳解码路径得分为p(x1,1),表明在T=1时刻,输出索引为1的音素的概率最大。在T=2时刻,可能的包含给定关键词的解码路径可以包括两条:(1)P11→P12;(2)P11→P22。假设经计算,根据联合概率得分可以确定第(1)条解码路径为最佳解码路径,其得分为p(x1,x2,1,1),表明在T=2时刻,联合输出索引为(1,1)的音素的联合概率最大。在T=3时刻,可能的包含给定关键词的解码路径可以包括2条:(1)P11→P12→P23;(2)P11→P12→P13。假设经计算,根据联合概率得分可以确定第(1)条解码路径为最佳解码路径,其得分为p(x1,x2,x3,1,1,2),表明在T=3时刻,联合输出索引为(1,1,2)的音素的联合概率最大。在T=4时刻,可能的包含给定关键词的解码路径可以包括2条:(1)P11→P12→P23→P34;(2)P11→P12→P23→P24。假设经计算,根据联合概率得分可以确定第(1)条解码路径为最佳解码路径,其得分为p(x1,x2,x3,x4,1,1,2,3),表明在T=4时刻,联合输出索引为(1,1,2,3)的音素的联合概率最大。在T=4时刻,输入的声学特征向量X已经流经给定关键词的所有音素,所以T=4时刻的第(1)条解码路径即为解码器解码出的含有给定关键词的最佳解码路径。解码器将该最佳解码路径上的每个时间节点对应的音素概率提供给后续的置信度计算模块140。
图10示出了根据实施例的针对示例性给定关键词的解码输出1000。
如图10所示,解码器将T=1时刻的索引为1的音素(即,给定关键词的第1个音素)的概率、T=2时刻的索引为1的音素(即,给定关键词的第1个音素)的概率、T=3时刻的索引为2的音素(即,给定关键词的第2个音素)的概率以及T=4时刻的索引为3的音素(即,给定关键词的第3个音素)的概率传递给置信度计算模块140。
考虑到讲话者的语速,一个音素可能持续多个帧。置信度计算模块140可以从持续了多个帧的同一音素的多个概率中选取最大的概率作为该音素的最终概率。然后,针对给定关键词的所有音素,计算这些音素的概率的平均值。例如,可以将给定关键词的所有音素(例如,N个音素)的概率相乘,再开N次方,从而得到给定关键词的所有音素的平均概率,并将该平均概率作为给定关键词的置信度值。通过该方法计算出的置信度值不仅消除了不同语速对检测结果的影响,而且降低了给定关键词的不同长度对检索结果的影响。
再参照图10,由于包含给定关键词的解码路径中的第1个音素持续了2帧(即,T=1和T=2,下文将其称为第1帧和第2帧),所以针对第1个音素,可以从这两帧中选取最大的概率作为第1个音素的概率。然后将选取出的第1个音素的概率乘以第3帧中第2个音素的概率和第4帧中第3个音素的概率,再将乘积开三次方,从而得到给定关键词的所有音素的平均概率,并将该平均概率作为给定关键词的置信度值。
置信度门限判断模块150可以通过将上述置信度值与置信度门限进行比较,以确定检索结果。如在图1中提及的,可以调整与所述给定关键词相对应的置信度门限,以满足所述关键词检索系统的性能指标。所述关键词检索系统的性能指标可以包括但不限于针对所述给定关键词的检出度量和误检度量。检出度量可以通过检出正确率来体现,该检出正确率可以通过正确检出的给定关键词话语的数量除以总的给定关键词话语的数量来计算。误检度量可以通过在每小时内没有给定关键词话语但是被误检出给定关键词话语的数量来体现。
基于关键词检索系统的上述性能指标,所述调整所述置信度门限可以包括:针对包含所述给定关键词的数据集和不包含所述给定关键词的数据集,利用所述关键词检索系统来执行关键词检索;以及至少基于关键词检索的结果和所述性能指标来调整所述置信度门限。
在一个方面,为了确定满足上述性能指标的针对给定关键词的置信度门限,可以预先准备包含该给定关键词的数据集,该数据集包括含有给定关键词的语音信号。利用本公开的关键词检索系统来确定使用该数据集最终能够检索出的给定关键词话语的数量,再根据已知的该数据集包含的总的给定关键词话语的数量就可以计算出检出正确率。可选地,所述包含所述给定关键词的数据集可以包括例如在图5的530处所合成的语音信号集合中的至少一部分语音信号。在另一个方面,还可以预先准备不包含给定关键词的数据集,该数据集包括不含有该给定关键词的语音信号。利用本公开的关键词检索系统来确定使用该数据集在每小时内最终检索出的给定关键词话语的数量,将其作为每小时的误检数量。最后,可以根据置信度门限与检出正确率和每小时的误检数量之间的关系,选取与满足关键词检索系统要求的检出正确率和每小时的误检数量相对应的置信度门限。
图11示出了根据实施例的用于优化关键词检索系统的示例性方法1100的流程图。
在1110处,可以生成包含给定关键词的话语文本集合。
在1120处,可以合成与所述话语文本集合相对应的语音信号集合。
在1130处,可以利用所述语音信号集合中的至少一部分语音信号以及所述话语文本集合中与所述至少一部分语音信号相对应的话语文本来优化所述关键词检索系统中的声学模型。
在一种实施方式中,所述生成包含给定关键词的话语文本集合可以包括:将所述给定关键词与一组参考话语文本进行拼接。
在一种实施方式中,所述将所述给定关键词与一组参考话语文本进行拼接可以包括以下各项中的至少一项:将所述给定关键词分别放置于所述一组参考话语文本中的一个或多个参考话语文本的前面;将所述给定关键词分别放置于所述一组参考话语文本中的任意两个参考话语文本之间;以及将所述给定关键词分别放置于所述一组参考话语文本中的一个或多个参考话语文本的后面。
在一种实施方式中,所述生成包含给定关键词的话语文本集合可以包括:从一组参考话语文本中搜索与所述给定关键词语义相关的至少一个参考关键词;从所述一组参考话语文本中提取包含所述至少一个参考关键词的一个或多个参考话语文本;以及利用所述给定关键词来替代所提取的一个或多个参考话语文本中的所述至少一个参考关键词,以生成所述话语文本集合中的一个或多个话语文本。
在一种实施方式中,所述生成包含给定关键词的话语文本集合可以包括:将所述给定关键词切分成多个子关键词;获取与所述多个子关键词分别语义相关的多个参考词语;将所述多个子关键词与所述多个参考词语组合成至少一个参考关键词;从一组参考话语文本中搜索所述至少一个参考关键词;从所述一组参考话语文本中提取包含所述至少一个参考关键词的一个或多个参考话语文本;以及利用所述给定关键词来替代所提取的一个或多个参考话语文本中的所述至少一个参考关键词,以生成所述话语文本集合中的一个或多个话语文本。
在一种实施方式中,方法1100还可以包括:通过由语言模型执行过滤来从所述话语文本集合中选择出用于合成所述语音信号集合的一个或多个话语文本。
在一种实施方式中,方法1100还可以包括:对所述语音信号集合中的至少一个语音信号执行信号变换。
在一种实施方式中,所述信号变换可以包括以下各项中的至少一项:添加背景噪声;执行速度扰动;以及施加室内脉冲响应。
在一种实施方式中,用于优化所述声学模型的损失函数可以是基于Kullback-Leibler(KL)散度的。
在一种实施方式中,方法1100还可以包括:调整与所述给定关键词相对应的置信度门限,以满足所述关键词检索系统的性能指标。
在一种实施方式中,所述调整置信度门限可以包括:针对包含所述给定关键词的数据集和不包含所述给定关键词的数据集,由所述关键词检索系统来执行关键词检索,所述包含所述给定关键词的数据集包括所述语音信号集合中的至少另一部分语音信号;以及至少基于所述关键词检索的结果和所述性能指标来调整所述置信度门限。
在一种实施方式中,所述关键词检索系统的性能指标可以包括针对所述给定关键词的检出度量和误检度量。
在一种实施方式中,所述合成与所述话语文本集合相对应的语音信号集合可以包括:针对所述话语文本集合中的每个话语文本,合成采用不同讲话者的声音的多个语音信号。
在一种实施方式中,所述不同讲话者可以包括以下各项中的至少一项:不同性别的讲话者、不同年龄的讲话者和不同口音的讲话者。
应当理解,方法1100还可以包括根据上述公开实施例的用于优化关键词检索系统的任何步骤/处理。
图12示出了根据实施例的用于优化关键词检索系统的示例性装置1200。
装置1200可以包括:话语文本生成模块1210,用于生成包含给定关键词的话语文本集合;语音信号合成模块1220,用于合成与所述话语文本集合相对应的语音信号集合;以及声学模型优化模块1230,用于利用所述语音信号集合中的至少一部分语音信号以及所述话语文本集合中与所述至少一部分语音信号相对应的话语文本来优化所述关键词检索系统中的声学模型。
在一种实施方式中,所述话语文本生成模块1210可以用于:将所述给定关键词与一组参考话语文本进行拼接。
在一种实施方式中,所述话语文本生成模块1210可以用于:从一组参考话语文本中搜索与所述给定关键词语义相关的至少一个参考关键词;从所述一组参考话语文本中提取包含所述至少一个参考关键词的一个或多个参考话语文本;以及利用所述给定关键词来替代所提取的一个或多个参考话语文本中的所述至少一个参考关键词,以生成所述话语文本集合中的一个或多个话语文本。
在一种实施方式中,所述话语文本生成模块1210可以用于:将所述给定关键词切分成多个子关键词;获取与所述多个子关键词分别语义相关的多个参考词语;将所述多个子关键词与所述多个参考词语组合成至少一个参考关键词;从一组参考话语文本中搜索所述至少一个参考关键词;从所述一组参考话语文本中提取包含所述至少一个参考关键词的一个或多个参考话语文本;以及利用所述给定关键词来替代所提取的一个或多个参考话语文本中的所述至少一个参考关键词,以生成所述话语文本集合中的一个或多个话语文本。
在一种实施方式中,装置1200还可以包括:置信度门限调整模块,用于调整与所述给定关键词相对应的置信度门限,以满足所述关键词检索系统的性能指标。
此外,装置1200还可以包括根据上述本公开实施例的被配置用于优化关键词检索系统的任何其它模块。
图13示出了根据实施例的用于优化关键词检索系统的示例性装置1300。
装置1300可以包括至少一个处理器1310。装置1300还可以包括与至少一个处理器1310连接的存储器1320。存储器1320可以存储计算机可执行指令,当所述计算机可执行指令被执行时,使得所述至少一个处理器1310执行以下操作:生成包含给定关键词的话语文本集合;合成与所述话语文本集合相对应的语音信号集合;以及利用所述语音信号集合中的至少一部分语音信号以及所述话语文本集合中与所述至少一部分语音信号相对应的话语文本来优化所述关键词检索系统中的声学模型。
本公开的实施例可以实施在非暂时性计算机可读介质中。该非暂时性计算机可读介质可以包括指令,当所述指令被执行时,使得一个或多个处理器执行根据上述本公开实施例的用于优化关键词检索系统的任何操作。
应当理解,以上描述的方法中的所有操作都仅仅是示例性的,本公开并不限制于方法中的任何操作或这些操作的顺序,而是应当涵盖在相同或相似构思下的所有其它等同变换。
还应当理解,以上描述的装置中的所有模块都可以通过各种方式来实施。这些模块可以被实施为硬件、软件、或其组合。此外,这些模块中的任何模块可以在功能上被进一步划分成子模块或组合在一起。
已经结合各种装置和方法描述了处理器。这些处理器可以使用电子硬件、计算机软件或其任意组合来实施。这些处理器是实施为硬件还是软件将取决于具体的应用以及施加在系统上的总体设计约束。作为示例,本公开中给出的处理器、处理器的任意部分、或者处理器的任意组合可以实施为微处理器、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、状态机、门逻辑、分立硬件电路、以及配置用于执行在本公开中描述的各种功能的其它适合的处理部件。本公开给出的处理器、处理器的任意部分、或者处理器的任意组合的功能可以实施为由微处理器、微控制器、DSP或其它适合的平台所执行的软件。
软件应当被广泛地视为表示指令、指令集、代码、代码段、程序代码、程序、子程序、软件模块、应用、软件应用、软件包、例程、子例程、对象、运行线程、过程、函数等。软件可以驻留在计算机可读介质中。计算机可读介质可以包括例如存储器,存储器可以例如为磁性存储设备(如,硬盘、软盘、磁条)、光盘、智能卡、闪存设备、随机存取存储器(RAM)、只读存储器(ROM)、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、寄存器或者可移动盘。尽管在本公开给出的多个方面中将存储器示出为是与处理器分离的,但是存储器也可以位于处理器内部(如,缓存或寄存器)。
以上描述被提供用于使得本领域任何技术人员可以实施本文所描述的各个方面。这些方面的各种修改对于本领域技术人员是显而易见的,本文限定的一般性原理可以应用于其它方面。因此,权利要求并非旨在被局限于本文示出的方面。关于本领域技术人员已知或即将获知的、对本公开所描述各个方面的元素的所有结构和功能上的等同变换,都将由权利要求所覆盖。
Claims (20)
1.一种用于优化关键词检索系统的方法,包括:
生成包含给定关键词的话语文本集合;
合成与所述话语文本集合相对应的语音信号集合;以及
利用所述语音信号集合中的至少一部分语音信号以及所述话语文本集合中与所述至少一部分语音信号相对应的话语文本来优化所述关键词检索系统中的声学模型。
2.如权利要求1所述的方法,其中,所述生成包含给定关键词的话语文本集合包括:
将所述给定关键词与一组参考话语文本进行拼接。
3.如权利要求2所述的方法,其中,所述将所述给定关键词与一组参考话语文本进行拼接包括以下各项中的至少一项:
将所述给定关键词分别放置于所述一组参考话语文本中的一个或多个参考话语文本的前面;
将所述给定关键词分别放置于所述一组参考话语文本中的任意两个参考话语文本之间;以及
将所述给定关键词分别放置于所述一组参考话语文本中的一个或多个参考话语文本的后面。
4.如权利要求1所述的方法,其中,所述生成包含给定关键词的话语文本集合包括:
从一组参考话语文本中搜索与所述给定关键词语义相关的至少一个参考关键词;
从所述一组参考话语文本中提取包含所述至少一个参考关键词的一个或多个参考话语文本;以及
利用所述给定关键词来替代所提取的一个或多个参考话语文本中的所述至少一个参考关键词,以生成所述话语文本集合中的一个或多个话语文本。
5.如权利要求1所述的方法,其中,所述生成包含给定关键词的话语文本集合包括:
将所述给定关键词切分成多个子关键词;
获取与所述多个子关键词分别语义相关的多个参考词语;
将所述多个子关键词与所述多个参考词语组合成至少一个参考关键词;
从一组参考话语文本中搜索所述至少一个参考关键词;
从所述一组参考话语文本中提取包含所述至少一个参考关键词的一个或多个参考话语文本;以及
利用所述给定关键词来替代所提取的一个或多个参考话语文本中的所述至少一个参考关键词,以生成所述话语文本集合中的一个或多个话语文本。
6.如权利要求2至5中任一项所述的方法,还包括:
通过由语言模型执行过滤来从所述话语文本集合中选择出用于合成所述语音信号集合的一个或多个话语文本。
7.如权利要求1所述的方法,还包括:
对所述语音信号集合中的至少一个语音信号执行信号变换。
8.如权利要求7所述的方法,其中,所述信号变换包括以下各项中的至少一项:
添加背景噪声;
执行速度扰动;以及
施加室内脉冲响应。
9.如权利要求1所述的方法,其中,用于优化所述声学模型的损失函数是基于Kullback-Leibler(KL)散度的。
10.如权利要求1所述的方法,还包括:
调整与所述给定关键词相对应的置信度门限,以满足所述关键词检索系统的性能指标。
11.如权利要求10所述的方法,其中,所述调整置信度门限包括:
针对包含所述给定关键词的数据集和不包含所述给定关键词的数据集,由所述关键词检索系统来执行关键词检索,所述包含所述给定关键词的数据集包括所述语音信号集合中的至少另一部分语音信号;以及
至少基于所述关键词检索的结果和所述性能指标来调整所述置信度门限。
12.如权利要求10所述的方法,其中,所述关键词检索系统的性能指标包括针对所述给定关键词的检出度量和误检度量。
13.如权利要求1所述的方法,其中,所述合成与所述话语文本集合相对应的语音信号集合包括:
针对所述话语文本集合中的每个话语文本,合成采用不同讲话者的声音的多个语音信号。
14.如权利要求13所述的方法,其中,所述不同讲话者包括以下各项中的至少一项:不同性别的讲话者、不同年龄的讲话者和不同口音的讲话者。
15.一种用于优化关键词检索系统的装置,包括:
话语文本生成模块,用于生成包含给定关键词的话语文本集合;
语音信号合成模块,用于合成与所述话语文本集合相对应的语音信号集合;以及
声学模型优化模块,用于利用所述语音信号集合中的至少一部分语音信号以及所述话语文本集合中与所述至少一部分语音信号相对应的话语文本来优化所述关键词检索系统中的声学模型。
16.如权利要求15所述的装置,其中,所述话语文本生成模块用于:
将所述给定关键词与一组参考话语文本进行拼接。
17.如权利要求15所述的装置,其中,所述话语文本生成模块用于:
从一组参考话语文本中搜索与所述给定关键词语义相关的至少一个参考关键词;
从所述一组参考话语文本中提取包含所述至少一个参考关键词的一个或多个参考话语文本;以及
利用所述给定关键词来替代所提取的一个或多个参考话语文本中的所述至少一个参考关键词,以生成所述话语文本集合中的一个或多个话语文本。
18.如权利要求15所述的装置,其中,所述话语文本生成模块用于:
将所述给定关键词切分成多个子关键词;
获取与所述多个子关键词分别语义相关的多个参考词语;
将所述多个子关键词与所述多个参考词语组合成至少一个参考关键词;
从一组参考话语文本中搜索所述至少一个参考关键词;
从所述一组参考话语文本中提取包含所述至少一个参考关键词的一个或多个参考话语文本;以及
利用所述给定关键词来替代所提取的一个或多个参考话语文本中的所述至少一个参考关键词,以生成所述话语文本集合中的一个或多个话语文本。
19.如权利要求15所述的装置,还包括:
置信度门限调整模块,用于调整与所述给定关键词相对应的置信度门限,以满足所述关键词检索系统的性能指标。
20.一种用于优化关键词检索系统的装置,包括:
至少一个处理器;以及
存储器,其存储计算机可执行指令,当所述计算机可执行指令被执行时使得所述至少一个处理器:
生成包含给定关键词的话语文本集合;
合成与所述话语文本集合相对应的语音信号集合;以及
利用所述语音信号集合中的至少一部分语音信号以及所述话语文本集合中与所述至少一部分语音信号相对应的话语文本来优化所述关键词检索系统中的声学模型。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910783303.8A CN112420026A (zh) | 2019-08-23 | 2019-08-23 | 优化关键词检索系统 |
PCT/US2020/037339 WO2021040842A1 (en) | 2019-08-23 | 2020-06-12 | Optimizing a keyword spotting system |
EP20736492.8A EP4018437B1 (en) | 2019-08-23 | 2020-06-12 | Optimizing a keyword spotting system |
US17/626,629 US20220262352A1 (en) | 2019-08-23 | 2020-06-12 | Improving custom keyword spotting system accuracy with text-to-speech-based data augmentation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910783303.8A CN112420026A (zh) | 2019-08-23 | 2019-08-23 | 优化关键词检索系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112420026A true CN112420026A (zh) | 2021-02-26 |
Family
ID=71452741
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910783303.8A Pending CN112420026A (zh) | 2019-08-23 | 2019-08-23 | 优化关键词检索系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220262352A1 (zh) |
EP (1) | EP4018437B1 (zh) |
CN (1) | CN112420026A (zh) |
WO (1) | WO2021040842A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113516997A (zh) * | 2021-04-26 | 2021-10-19 | 常州分音塔科技有限公司 | 一种语音事件识别装置和方法 |
CN114420101A (zh) * | 2022-03-31 | 2022-04-29 | 成都启英泰伦科技有限公司 | 一种未知语言端侧命令词小数据学习识别方法 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11961522B2 (en) | 2018-11-28 | 2024-04-16 | Samsung Electronics Co., Ltd. | Voice recognition device and method |
WO2020153736A1 (en) | 2019-01-23 | 2020-07-30 | Samsung Electronics Co., Ltd. | Method and device for speech recognition |
WO2020231181A1 (en) | 2019-05-16 | 2020-11-19 | Samsung Electronics Co., Ltd. | Method and device for providing voice recognition service |
WO2021030918A1 (en) * | 2019-08-22 | 2021-02-25 | Fluent.Ai Inc. | User-defined keyword spotting |
US11721338B2 (en) * | 2020-08-26 | 2023-08-08 | International Business Machines Corporation | Context-based dynamic tolerance of virtual assistant |
US20220284891A1 (en) * | 2021-03-03 | 2022-09-08 | Google Llc | Noisy student teacher training for robust keyword spotting |
US11977852B2 (en) * | 2022-01-12 | 2024-05-07 | Bank Of America Corporation | Anaphoric reference resolution using natural language processing and machine learning |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007004831A (ja) * | 2006-09-29 | 2007-01-11 | Hitachi Ltd | 語義関連ネットワークを用いた文書検索システム |
US7275033B1 (en) * | 2000-09-30 | 2007-09-25 | Intel Corporation | Method and system for using rule-based knowledge to build a class-based domain specific statistical language model |
CN101196904A (zh) * | 2007-11-09 | 2008-06-11 | 清华大学 | 一种基于词频和多元文法的新闻关键词抽取方法 |
CN103186607A (zh) * | 2011-12-30 | 2013-07-03 | 大连天维科技有限公司 | 分布式语音检索系统 |
CN103956166A (zh) * | 2014-05-27 | 2014-07-30 | 华东理工大学 | 一种基于语音关键词识别的多媒体课件检索系统 |
JP2018010610A (ja) * | 2016-07-01 | 2018-01-18 | パナソニックIpマネジメント株式会社 | エージェント装置、対話システム、対話方法及びプログラム |
US10210861B1 (en) * | 2018-09-28 | 2019-02-19 | Apprente, Inc. | Conversational agent pipeline trained on synthetic data |
CN109712612A (zh) * | 2018-12-28 | 2019-05-03 | 广东亿迅科技有限公司 | 一种语音关键词检测方法及装置 |
-
2019
- 2019-08-23 CN CN201910783303.8A patent/CN112420026A/zh active Pending
-
2020
- 2020-06-12 EP EP20736492.8A patent/EP4018437B1/en active Active
- 2020-06-12 WO PCT/US2020/037339 patent/WO2021040842A1/en unknown
- 2020-06-12 US US17/626,629 patent/US20220262352A1/en active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7275033B1 (en) * | 2000-09-30 | 2007-09-25 | Intel Corporation | Method and system for using rule-based knowledge to build a class-based domain specific statistical language model |
JP2007004831A (ja) * | 2006-09-29 | 2007-01-11 | Hitachi Ltd | 語義関連ネットワークを用いた文書検索システム |
CN101196904A (zh) * | 2007-11-09 | 2008-06-11 | 清华大学 | 一种基于词频和多元文法的新闻关键词抽取方法 |
CN103186607A (zh) * | 2011-12-30 | 2013-07-03 | 大连天维科技有限公司 | 分布式语音检索系统 |
CN103956166A (zh) * | 2014-05-27 | 2014-07-30 | 华东理工大学 | 一种基于语音关键词识别的多媒体课件检索系统 |
JP2018010610A (ja) * | 2016-07-01 | 2018-01-18 | パナソニックIpマネジメント株式会社 | エージェント装置、対話システム、対話方法及びプログラム |
US10210861B1 (en) * | 2018-09-28 | 2019-02-19 | Apprente, Inc. | Conversational agent pipeline trained on synthetic data |
CN109712612A (zh) * | 2018-12-28 | 2019-05-03 | 广东亿迅科技有限公司 | 一种语音关键词检测方法及装置 |
Non-Patent Citations (1)
Title |
---|
LUISE VALENTI RYGAARD: "Using Synthesized Speech to Improve Speech Recognition for Low-Resource Languages", pages 1, Retrieved from the Internet <URL:http://parasol.tamu.edu/dreu2015/Rygaard/report.pdf> * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113516997A (zh) * | 2021-04-26 | 2021-10-19 | 常州分音塔科技有限公司 | 一种语音事件识别装置和方法 |
CN114420101A (zh) * | 2022-03-31 | 2022-04-29 | 成都启英泰伦科技有限公司 | 一种未知语言端侧命令词小数据学习识别方法 |
CN114420101B (zh) * | 2022-03-31 | 2022-05-27 | 成都启英泰伦科技有限公司 | 一种未知语言端侧命令词小数据学习识别方法 |
Also Published As
Publication number | Publication date |
---|---|
EP4018437A1 (en) | 2022-06-29 |
US20220262352A1 (en) | 2022-08-18 |
WO2021040842A1 (en) | 2021-03-04 |
EP4018437B1 (en) | 2024-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111933129B (zh) | 音频处理方法、语言模型的训练方法、装置及计算机设备 | |
CN112420026A (zh) | 优化关键词检索系统 | |
US11475881B2 (en) | Deep multi-channel acoustic modeling | |
US9934777B1 (en) | Customized speech processing language models | |
US20220189458A1 (en) | Speech based user recognition | |
KR102450853B1 (ko) | 음성 인식 장치 및 방법 | |
US10923111B1 (en) | Speech detection and speech recognition | |
US9911413B1 (en) | Neural latent variable model for spoken language understanding | |
US10210862B1 (en) | Lattice decoding and result confirmation using recurrent neural networks | |
US10134388B1 (en) | Word generation for speech recognition | |
US10448115B1 (en) | Speech recognition for localized content | |
US10079022B2 (en) | Voice recognition terminal, voice recognition server, and voice recognition method for performing personalized voice recognition | |
US11043214B1 (en) | Speech recognition using dialog history | |
US10381000B1 (en) | Compressed finite state transducers for automatic speech recognition | |
US11158307B1 (en) | Alternate utterance generation | |
JP2005165272A (ja) | 多数の音声特徴を利用する音声認識 | |
US10565989B1 (en) | Ingesting device specific content | |
US10199037B1 (en) | Adaptive beam pruning for automatic speech recognition | |
CN106875936A (zh) | 语音识别方法及装置 | |
US11705116B2 (en) | Language and grammar model adaptation using model weight data | |
KR20180038707A (ko) | 동적 가중치 값과 토픽 정보를 이용하는 음성인식 방법 | |
US20230110205A1 (en) | Alternate natural language input generation | |
JP2013125144A (ja) | 音声認識装置およびそのプログラム | |
US11282495B2 (en) | Speech processing using embedding data | |
US11328713B1 (en) | On-device contextual understanding |
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 |