CN114787915A - 训练关键词识别器 - Google Patents
训练关键词识别器 Download PDFInfo
- Publication number
- CN114787915A CN114787915A CN202080086882.1A CN202080086882A CN114787915A CN 114787915 A CN114787915 A CN 114787915A CN 202080086882 A CN202080086882 A CN 202080086882A CN 114787915 A CN114787915 A CN 114787915A
- Authority
- CN
- China
- Prior art keywords
- hotword
- customized
- model
- speech
- training
- 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
- 238000012549 training Methods 0.000 title claims abstract description 202
- 238000000034 method Methods 0.000 claims abstract description 72
- 238000012545 processing Methods 0.000 claims description 49
- 230000015654 memory Effects 0.000 claims description 31
- 230000008569 process Effects 0.000 claims description 31
- 230000015572 biosynthetic process Effects 0.000 claims description 16
- 238000003786 synthesis reaction Methods 0.000 claims description 16
- 238000013518 transcription Methods 0.000 claims description 9
- 230000035897 transcription Effects 0.000 claims description 9
- 238000004891 communication Methods 0.000 claims description 8
- 230000000977 initiatory effect Effects 0.000 claims description 6
- 238000001514 detection method Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000013527 convolutional neural network Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000003062 neural network model Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000001564 chemical vapour infiltration Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000035755 proliferation 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
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000012546 transfer 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/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
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/167—Audio in a user interface, e.g. using voice commands for navigating, audio feedback
-
- 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
-
- 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/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
- G10L13/00—Speech synthesis; Text to speech 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
- 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
-
- 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/28—Constructional details of speech recognition systems
- G10L15/285—Memory allocation or algorithm optimisation to reduce hardware requirements
-
- 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/28—Constructional details of speech recognition systems
- G10L15/30—Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
-
- 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
-
- 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)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Theoretical Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Acoustics & Sound (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Electrically Operated Instructional Devices (AREA)
Abstract
一种训练定制热词模型(200)的方法(300)包括接收第一训练音频样本集合(134)。该方法还包括使用被配置成接收第一训练音频样本集合作为输入的语音嵌入模型(202)来为第一训练音频样本集合中的每个训练音频样本生成表示定制热词(132)的对应热词嵌入(208)。语音嵌入模型在与第一训练音频样本集合比具有更大数目的训练音频样本的不同的训练音频样本集合(144)上被预训练。该方法进一步包括训练定制热词模型以在音频数据(12)中检测定制热词的存在。定制热词模型被配置成接收每个对应热词嵌入作为输入并且将每个对应热词嵌入分类为对应于定制热词作为输出。
Description
技术领域
本公开涉及训练关键词识别器(spotter)。
背景技术
支持语音的环境(例如,家庭、工作场所、学校、汽车等)允许用户向基于计算机的系统大声讲出查询或命令,该基于计算机的系统回应并回答查询和/或基于命令执行功能。支持语音的环境能够使用遍布环境的各个房间或区域的连接的麦克风设备的网络来实现。这些设备可以使用热词来帮助鉴别给定话语何时朝着系统,而不是针对存在于环境中的另一个人的话语。因此,设备可以在睡眠状态或休眠状态下操作并且只有当检测到的话语包括热词时才唤醒。神经网络最近已作为用于训练模型来在流音频中检测由用户讲出的热词的有吸引力的解决方案出现。通常,用于检测热词的系统被训练来在几乎没有热词定制情况下辨别预设热词。这些系统因此能够用大数据集来训练以对于预设热词生成鲁棒的热词检测,但是通常不具有如此丰富的大数据集用于训练模型以便类似地检测定制热词。
发明内容
本公开的一个方面提供一种用于训练定制热词模型的方法。该方法包括在数据处理硬件处接收第一训练音频样本集合,每个训练音频样本包含定制热词。该定制热词包括一个或多个词。该方法还包括通过数据处理硬件使用被配置成接收第一训练音频样本集合作为输入的语音嵌入模型来为第一训练音频样本集合中的每个训练音频样本生成表示定制热词的对应热词嵌入。语音嵌入模型在与第一训练音频数据集合不同的第二训练音频样本集合上被预训练。第二训练音频样本集合与第一训练音频样本集合比包括更大数目的训练音频样本。该方法还包括通过数据处理硬件来训练定制热词模型以在音频数据中检测定制热词的存在。定制热词模型被配置成接收使用语音嵌入模型生成的每个对应热词嵌入作为输入。定制热词模型还被配置成将每个对应热词嵌入分类为对应于定制热词作为输出。
本公开的实现方式可以包括以下可选特征中的一个或多个。在一些实现方式中,在训练定制热词模型之后,该方法包括:在驻留在用户设备上的数据处理硬件处接收由用户设备捕获的流音频数据;以及通过数据处理硬件使用经训练后的定制热词模型来确定定制热词是否存在于流音频数据中。在此实现方式中,当定制热词存在于流音频数据中时,该方法包括通过数据处理硬件在用户设备上发起唤醒过程以便处理定制热词和/或在流音频数据中跟随定制热词的一个或多个其他词项。
在一些配置中,远程系统在第二训练音频样本集合上预训练语音嵌入模型。在此配置中,第二训练音频样本集合包括:正训练音频样本,所述正训练音频样本包含由一个或多个不同讲话者讲出的目标热词的语料库;以及负训练音频样本,所述负训练音频样本不包含来自目标热词的语料库的目标热词中的任一个。这里,远程系统可以被配置成通过将目标热词的语料库划分成目标热词的多个随机组来预训练语音嵌入模型,目标热词的每个组包括来自目标热词的语料库的一个或多个目标热词的相应集合。对于从目标热词的语料库划分的目标热词的每个组,远程系统还可以被配置成通过在语音嵌入模型之上训练相应的预训练热词模型以在第二训练音频样本集合中检测来自目标热词的相应组的目标热词中的任一个的存在来预训练语音嵌入模型。远程系统可以被进一步配置成通过训练语音嵌入模型以针对目标关键词的多个随机组学习代表性语音嵌入来预训练语音嵌入模型。
在一些示例中,第一训练音频样本集合包括从一个或多个语音合成系统输出的定制热词的合成语音话语。在其他示例中,第一训练音频样本集合包括与讲出定制热词的用户相对应的一个或多个人类生成的语音话语以及从一个或多个语音合成系统输出的定制热词的多个合成语音话语。这里,多个合成语音话语中的至少一个合成语音话语可以包括与多个合成语音话语中的其他合成语音话语不同的合成话音。该方法可以包括:在数据处理硬件处接收与定制热词相对应的输入文本,该输入文本由用户经由在数据处理硬件上运行的图形用户界面加以输入;以及通过数据处理硬件使用输入文本作为至一个或多个语音合成系统的输入来生成定制热词的多个合成语音话语。可选地,该方法可以包括:在数据处理硬件处接收与讲出定制热词的用户相对应的一个或多个人类生成的语音话语;通过数据处理硬件来生成一个或多个人类生成的语音话语中的至少一个的转录;以及通过数据处理硬件使用一个或多个人类生成的语音话语中的至少一个的转录作为至一个或多个语音合成系统的输入来生成定制热词的多个合成语音话语。
在一些实现方式中,语音嵌入模型包括五个卷积块。在此实现方式中,定制热词模型包括被配置成接收来自语音嵌入模型的五个卷积块的最后卷积的输出作为输入的一个卷积块,并且包括被配置成接收来自卷积块的输出作为输入的一个分类块。语音嵌入模型和定制热词模型的每个卷积块可以包括四个卷积层和最大池层(maxpool layer)。定制热词模型的分类块可以包括最大池层,跟随有卷积层或全连接层之一。
在一些配置中,数据处理硬件驻留在与用户相关联的用户设备上。这里,用户设备的用户可以将定制热词指配给用户设备。
本公开的另一方面提供一种用于训练定制热词模型的系统。该系统包括数据处理硬件和与该数据处理硬件通信的存储器硬件。该存储器硬件存储指令,这些指令当在数据处理硬件上运行时使数据处理硬件执行操作。操作包括接收第一训练音频样本集合,每个训练音频样本包含定制热词,该定制热词包括一个或多个词。操作还包括使用被配置成接收第一训练音频样本集合作为输入的语音嵌入模型来为第一训练音频样本集合中的每个训练音频样本生成表示定制热词的对应热词嵌入。语音嵌入模型在与第一训练音频数据集合不同的第二训练音频样本集合上被预训练。第二训练音频样本集合与第一训练音频样本集合比包括更大数目的训练音频样本。操作进一步包括训练定制热词模型以在音频数据中检测定制热词的存在。定制热词模型被配置成接收使用语音嵌入模型生成的每个对应热词嵌入作为输入并且将每个对应热词嵌入分类为对应于定制热词作为输出。
此方面可以包括以下可选特征中的一个或多个。在一些示例中,数据处理硬件驻留在用户设备上并且操作包括:在训练定制热词模型之后,接收由用户设备捕获的流音频数据;以及使用经训练后的定制热词模型来确定定制热词是否存在在流音频数据中。在此示例中,当定制热词存在于流音频数据中时,操作包括在用户设备上发起唤醒过程以便处理定制热词和/或在流音频数据中跟随定制热词的一个或多个其他词项。
在一些实现方式中,远程系统在第二训练音频样本集合上预训练语音嵌入模型。在此实现方式中,第二训练音频样本集合包括:正训练音频样本,所述正训练音频样本包含由一个或多个不同讲话者讲出的目标热词的语料库;以及负训练音频样本,所述负训练音频样本不包含来自目标热词的语料库的目标热词中的任一个。这里,远程系统可以被配置成通过将目标热词的语料库划分成目标热词的多个随机组来预训练语音嵌入模型,目标热词的每个组包括来自目标热词的语料库的一个或多个目标热词的相应集合。附加地,对于从目标热词的语料库划分的目标热词的每个组,远程系统还可以被配置成通过在语音嵌入模型之上训练相应的预训练热词模型以在第二训练音频样本集合中检测来自目标热词的相应组的目标热词中的任一个的存在并且训练语音嵌入模型以针对目标关键词的多个随机组学习代表性语音嵌入来预训练语音嵌入模型。
在一些配置中,第一训练音频样本集合包括从一个或多个语音合成系统输出的定制热词的合成语音话语。在其他配置中,第一训练音频样本集合包括与讲出定制热词的用户相对应的一个或多个人类生成的语音话语以及从一个或多个语音合成系统输出的定制热词的多个合成语音话语。这里,多个合成语音话语中的至少一个合成语音话语可以包括与多个合成语音话语中的其他合成语音话语不同的合成话音。操作可以包括:接收与定制热词相对应的输入文本,该输入文本由用户经由在数据处理硬件上运行的图形用户界面加以输入;以及使用输入文本作为至一个或多个语音合成系统的输入来生成定制热词的多个合成语音话语。可选地,操作可以包括:接收与讲出定制热词的用户相对应的一个或多个人类生成的语音话语;生成一个或多个人类生成的语音话语中的至少一个的转录;以及使用一个或多个人类生成的语音话语中的至少一个的转录作为至一个或多个语音合成系统的输入来生成定制热词的多个合成语音话语。
在一些示例中,语音嵌入模型包括五个卷积块。在此示例中,定制热词模型包括:一个卷积块,该一个卷积块被配置成接收来自语音嵌入模型的五个卷积块的最后卷积的输出作为输入;以及分类块,该分类块被配置成接收来自卷积块的输出作为输入。这里,语音嵌入模型和定制热词模型的每个卷积块可以包括四个卷积层和最大池层。定制热词模型的分类块可以包括最大池层,跟随有卷积层或全连接层之一。
在一些实现方式中,数据处理硬件驻留在与用户相关联的用户设备上。这里,用户设备的用户可以将定制热词指配给用户设备。
本公开的一个或多个实现方式的细节在下面的附图和描述中阐述。根据说明书和附图,并且根据权利要求书,其他方面、特征和优点将是显而易见的。
附图说明
图1A-1C是支持语音的环境的示例的示意图。
图2A是图1B和图1C的示例定制热词模型的示意图。
图2B是图2A的定制热词模型的示例块的示意图。
图3是用于训练定制热词模型的方法的操作的示例布置的流程图。
图4是可以用于实现本文描述的系统和方法的示例计算设备的示意图。
在各个附图中相似的附图标记指示相似的元件。
具体实施方式
支持话音的设备(例如,运行话音助理的用户设备)允许用户大声讲出查询或命令并且回应并回答查询和/或基于命令执行功能。通过使用“热词”(也称为“关键词”、“注意词”、“唤醒短语/词”、“触发短语”或“话音动作发起命令”),其中通过协定为了引起支持话音的设备注意而讲出的预定词项/短语被保留,支持话音的设备能够鉴别针对系统(即,用于发起唤醒过程以便处理在话语中跟随热词的一个或多个词项)的话语和针对环境中的个人的话语。通常,支持话音的设备在睡眠状态下操作以保存电池电力并且不处理输入音频数据,除非该输入音频数据遵循讲出的热词。例如,当在睡眠状态下时,支持话音的设备经由麦克风捕获输入音频并且使用被训练的热词检测器来在输入音频中检测热词的存在。当在输入音频中检测到热词时,支持话音的设备发起唤醒过程以便处理热词和/或在输入音频中跟随热词的任何其他词项。
热词检测类似于大海捞针,因为热词检测器必须连续地侦听流音频,并且当在流音频中检测到热词的存在时正确地且立即触发。换句话说,热词检测器的任务是忽视流音频,除非检测到热词的存在。热词检测器通常采用神经网络来解决在连续音频流中检测热词的存在的复杂性。热词检测器通常包括将由用户设备的麦克风捕获的原始音频信号转换成被格式化以供由神经网络处理的一个或多个音频特征的组件。神经网络被训练来识别包括热词的音频序列。遗憾的是,常常需要单独的模型来检测不同热词,或者模型不适于改变配置的热词。
随着支持话音的设备的增加,通常需要这些设备在语音识别时有效,同时在设备用于执行语音识别的处理资源方面也高效。因此,一些支持话音的设备利用云计算环境来执行语音识别,而其他支持话音的设备在设备上执行语音识别。差异是通常完全在设备上的方法仅使用支持话音的设备的资源来执行语音识别。这些方法中的每一种可能具有一些缺点。例如,通过将语音识别中涉及的计算卸载到云中,支持话音的设备跨越网络向云计算环境发送在设备处捕获的连续音频流。这些流通过网络的通信增加时延并且还需要支持话音的设备具有专用连接/信道以用于通过网络与云计算环境进行这种恒定通信。尽管在设备上的完整语音识别系统可以似乎减轻这些通信担忧中的一些,但是要在设备上具有完整语音识别系统常常在支持话音的设备处要求更多数量级的处理能力。在一些配置中,如果用户不想要向云计算环境提供话音数据和/或向云计算环境共享用户正在查询的东西,则支持话音的设备的用户具有支持话音的设备在设备上执行语音识别的选项。
为了使这些缺点平衡,支持话音的设备包括被设计来仅检测与支持话音的设备的使用相关的特定热词集合的热词检测器。换句话说,热词检测器被配置成在处于睡眠状态的同时执行最少处理,直到热词用信号通知跟随口语热词的输入音频数据应该被处理为止。这允许热词检测器触发在支持话音的设备上、在云中或在两者的某种组合上运行的完整语音识别过程。遗憾的是,通常在仅特定短语(即,热词)集合上训练热词检测器。由于受限于特定短语集合,热词检测器传统上对热词定制不灵活。如果诸如支持话音的设备的用户或支持话音的设备的制造商的实体想要为支持话音的设备实现定制热词,则该实体将需要发起训练热词检测器以准确地检测此定制热词的新训练过程或重新训练过程。由于训练热词检测器以检测任何热词常常是涉及与热词相关的大训练数据集合(例如,数万个训练样本)的过程,所以训练定制热词将类似地要求这样的与定制热词相关的大训练数据集合。因此,由于训练模型以检测热词的性质,定制热词配置不适合快速生成,该快速生成允许实体定制其支持话音的设备的语音接口。
与热词定制相关的一个问题是支持话音的设备可以被配置有预训练热词检测模型。该预训练热词检测模型可以由远程实体在设备外构建和测试。然而为了使得能实现热词定制,不能完全在设备外训练热词检测器。想要使用定制热词的实体,诸如支持话音的设备的用户或支持话音的设备的制造商,将需要在支持话音的设备处针对定制热词训练热词检测器(例如,在按需构建方法中)。这带来至少两个潜在问题。第一问题是如何构建用于在设备处检测定制热词的鲁棒模型,而第二问题是如何生成大量训练数据以对于定制热词确保模型的准确性。
远程实体生成预训练模型的一个这种优点是远程实体可以能够访问具有训练数据(例如,音频样本)的训练数据储存库或者被给予足够的时间来基于预训练模型生成大量训练数据,这确保热词检测器的准确性。这里,利用热词定制,实体或多或少请求定制热词模型是按需构建的(即,在请求时构建)。为了快速地且有效地创建满足此需求的定制热词模型,本文描述的方法利用预训练模型。为了并入预训练模型,热词检测器使用神经网络模型(例如,卷积神经网络(CNN))。此神经网络模型包括从输入数据(例如,音频输入)中提取特征并且对所提取的特征分类(例如,以标识热词)的一个或多个层。CNN是指在其中使用在训练期间自主地学习其权重的加权滤波器来通过卷积提取不同特征的神经网络拓扑。例如,神经网络模型提取可以标识热词的存在的特征并且对那些特征进行加权以获得热词是否存在的分类。由于CNN的拓扑可以包括对于与热词相关的特征各自包含不同抽象级别的多个层,所以将检测定制热词的存在的模型可以与标识非定制热词的预训练模型共享多个层。换句话说,使用预训练模型的层防止完全从头开始生成定制热词模型。这产生包括一个或多个新层(也称为头模型)以用于与来自预训练热词检测模型的一个或多个层相结合地进行定制热词检测的神经网络模型。利用这种类型的配置,定制热词模型可以能够执行高效的设备上训练(例如,用比完全预训练模型更少的训练数据)。这里,可以在设备上训练(或重新训练)定制热词模型的头模型以检测定制热词,而无需完全重新训练基础模型。实际上,此结构可以允许在支持话音的设备处部署定制热词模型。
在一些配置中,除了在支持话音的设备处有效地部署定制热词模型之外,本文的方法还可以利用合成语音训练数据(例如,合成语音训练示例)来训练定制热词模型。通过使用合成语音训练数据,想要创建定制热词的实体可以生成大量训练数据,这对于定制热词确保模型的准确性。例如,实体生成一些真实语音训练数据来训练定制热词模型,并且此大量真实语音训练数据由合成语音训练数据补充。替换地,可以完全在合成语音训练数据上训练定制热词模型。这里,合成语音训练数据可以有益于定制热词模型的训练,因为尽管定制热词模型可以利用训练数据储存库(例如,当训练定制热词模型的预训练模型部分时),但是头模型在支持话音的设备处针对定制热词训练时不能利用这个相同的训练数据储存库。因此,合成训练示例(例如,由文本至语音(TTS)系统或其他合成音频生成系统生成)可以改进定制热词检测准确性。通过使用这些方法中的一种或两种(即,用于定制热词的头模型和/或合成训练数据),热词检测器可以以促进快速原型设计和/或按需定制的方式适应定制热词检测器。
图1A-1C是支持语音的环境100(也称为支持语音的系统100)的示例。在支持语音的环境100中,用户与诸如支持话音的设备110的基于计算机的系统交互的方式可以是通过话音输入。支持话音的设备110(通常也称为设备110或用户设备110)被配置成从支持语音的环境100内的一个或多个用户10捕获声音(例如,流音频数据12)。这里,流音频数据12可以是指由用户10讲出的话语,其充当针对设备110的可听查询或命令。支持语音的系统100可以通过回答查询和/或使命令被执行来回应查询或命令。用户设备110包括数据处理硬件112和与数据处理硬件112通信并且存储指令的存储器硬件114,这些指令当通过数据处理硬件112执行时,使数据处理硬件112执行一个或多个操作。用户设备110还包括用于捕获支持语音的系统100内的口语话语12并且将其转换成电信号的音频捕获设备(例如,麦克风)116以及用于传送可听音频信号(例如,作为来自设备110的输出音频数据)的语音输出设备(例如,扬声器)118。
设备110可以与用户10相关联并且能够在例如音频数据12的话语以热词132开始时处理来自相关用户10的音频数据12。热词132可以是使设备110将随后讲出的短语视为针对系统的话音输入的口语短语。换句话说,热词132可以是显式地指示口语输入将被视为话音命令的口语短语。即,热词132可以是关于热词132或跟随热词132的一个或多个词项的触发终结、自动语音识别(ASR)或语义解释的口语短语。换句话说,提及“热词”是指作为指定热词或听起来与指定热词的至少一部分类似(例如,听起来与其他语言中的热词类似)的词或短语。
为了在话语12内检测热词132的存在,设备110包括热词检测器120。热词检测器120可以接收与话语12相对应的声音(例如,流音频数据12)并且确定话语12是否包括已被指定或指配为热词132的词项。在一些示例中,热词检测器120检测从话语12捕获的声音的声学特征。这里,当声学特征是热词132的特性时,热词检测器120标识热词132。利用对热词132的检测,热词检测器120可以对于设备110发起唤醒过程和进一步过程。在其他配置中,热词检测器120将对热词132的检测传送到用户设备110的其他组件。在一些实现方式中,为了高效地且有效地检测热词132,热词检测器120由热词检测器模型200、200a-b(例如,定制热词模型200)用语音的数据或示例来训练以学习如何标识话语12是否包括热词132。
在一些示例中,诸如设备110的所有者或制造商的用户10想要定制与他的或她的设备110相关联的热词132。为了生成定制热词132,用户10可以发起对定制热词132的请求130。例如,图1A-1C描绘了最初针对设备110的热词132对应于多词短语“Hey Google(嘿谷歌)”,但是用户10想要将此默认热词132改变成“Hey Boo Boo(嘿嘘嘘)”的定制热词短语。换句话说,用户10可能想要向他的或她的作为瑜伽熊(Yogi Bear)粉丝的孩子提供更多喜剧价值的定制热词132。在一些实现方式中,请求130对应于针对设备110的热词132的配置设置。
为了处理此热词定制请求130,需要在定制热词132上训练设备110的定制热词检测器120。一般地说,在热词定制之前,设备110可以默认被配置有一个或多个特定热词132。这里,已经在这些默认热词132(例如,“Hey Google”)上训练了设备110的热词检测器120。在一些示例中,跨越网络150与设备110进行通信的远程系统140(例如,诸如云计算环境的远程计算环境)已经生成了已在设备110上推送或实现的热词模型200、200a(例如,通过训练设备110的热词检测器120)。在这些示例中,远程系统140可以使用训练数据样本储存库142来生成鲁棒训练后的热词模型200以在训练期间向热词模型200a提供训练音频样本集合144。换句话说,远程系统140可以包括或积累大训练音频样本集合144(例如,数万个样本),这确保热词模型200a的准确性。
然而当用户10想要设备110用热词检测器120来执行定制热词检测时,热词模型200a需要适应定制热词模型200、200b以便标识定制热词132。由于定制热词模型200b和热词模型200a可能具有重叠功能性来执行热词特征标识,所以热词定制过程可以利用这些类似性。例如,定制热词模型200b可以包括预训练模型202(例如,也称为嵌入模型)和头模型204。这里,预训练模型202(例如,如图2A和图2B所示)可以很像热词模型200a包括卷积层。例如,这些卷积层可以以类似方式执行特征提取,而无论特征提取是针对默认热词132还是定制热词132的。在一些实现方式,如图1B和图1C中,定制热词模型200b的预训练模型202被示出正在用也训练了热词模型200a的训练音频样本集合144来训练。通过包括预训练热词模型200a(例如,预训练模型202)的一部分,定制热词模型200b不需要被从头开始完全训练并且可以利用例如远程系统140的训练数据样本储存库142。这可以允许仍然在大量训练样本上训练定制热词模型200b,即使这些训练样本不一定包括或包含定制热词132也如此。
在一些配置中,远程系统140使用不同类型的训练音频样本144来训练热词模型200a和/或定制热词模型200b。例如,训练音频样本144可以是正训练音频样本144、144p或负训练音频样本144、144n。正训练音频样本144p是指包括目标热词132(例如,或目标热词132的语料库的某个部分)的训练音频样本144。相比之下,负训练音频样本144n是指不包含任何目标热词132的训练音频样本144。此外,在一些实现方式中,为了帮助生成鲁棒热词模型200a-b,训练音频样本144来自具有变化口音或语言修改的多个不同讲话者。通过在训练音频样本144中具有这些类型的变化,热词模型200a-b可以更很可能不管用户10如何都准确地标识热词132。
在一些实现方式中,一旦远程系统140预训练定制热词模型200b的预训练模型202,远程系统140就将定制热词模型200b推送给设备110以完成定制热词模型200b的训练过程。由于远程系统140不能猜测或标识用户10可能请求成为定制热词132的东西,所以训练过程的剩余部分可以在设备110处发生。在一些示例中,除了用户10生成定制热词请求130之外,支持语音的环境100内的用户10和/或其他讲话者生成和/或提供特定于定制热词132的训练数据。例如,图1B和图1C图示用户10提供训练音频样本134。在一些配置中,用户10提供和/或生成对应于讲出定制热词132的用户10的人类生成的语音话语(也称为真实语音)的训练音频样本134。例如,用户10讲出定制热词132几次以生成这些人类生成的训练音频样本134、134a-n。在一些示例中,类似于远程系统140的训练音频样本142,这些人类生成的训练音频样本134可以包括正或负训练示例。图1B和图1C描绘没有定制热词132的第三训练音频样本134、134c来表示负训练样本。对于训练音频样本134,设备110可以提示用户10在配置过程期间生成人类生成的训练音频样本134以设置定制热词132。
在一些实现方式中,除了在设备110处用人类生成的训练音频样本134来训练定制热词模型200b之外,定制热词模型200b还被配置成同样用对应于从一个或多个语音合成器160(即,文本至语音(TTS)系统)输出的定制热词132的合成语音话语162的训练音频样本来训练。在一些示例中,定制热词模型200b在合成语音话语162上附加地训练以补充人类生成的训练音频样本134。在其他示例中,定制热词模型200b完全在设备110处在合成语音话语162上训练。用于训练定制热词模型200b的这些合成语音话语162可以包括一种或多种不同的合成话音以便试图在训练期间将定制热词模型200b引入到各种话音或语言差异。
在一些配置如图1C中,为定制热词132设置的用户设备110、110a或支持语音的环境100中的另一用户设备110、110b(例如,诸如移动设备)接收与定制热词132相对应的输入文本(例如,经由图形界面)并且在合成器160处使用输入文本来生成一个或多个合成语音话语162。在一些实现方式中,在设备110或远程系统140上实现的ASR系统(未示出)接收定制热词132的人类生成的语音话语134作为输入,并且生成定制热词132的转录164作为输出,该转录可以作为输入被提供给合成器以用于生成定制热词132的一个或多个合成语音话语162。在所示出的示例中,语音合成器160可以驻留在设备110上,驻留在诸如远程系统140的远程计算系统上,或者在设备110a上和在远程系统140上的某种组合。
在训练定制热词模型200b之后,设备110可以接收在音频捕获设备116处捕获的流音频数据12(例如,由用户10讲出的话语)并且基于经训练后的定制热词模型200b来确定音频数据12是否包括定制热词132的存在。这里,当定制热词132存在于流音频数据12中时,设备110发起其唤醒过程以便处理定制热词132和/或在流音频数据12中跟随定制热词132的一个或多个词项。
在一些配置中,设备110与实体相关联并且由该实体用于最初训练定制热词模型200b以便使用以上讨论的技术来检测定制热词132的存在。在训练定制热词模型200b完成之后,可以在与实体相关联的多个支持话音的设备上实现经训练后的定制热词模型200b以供由实体的客户和/或雇员使用。在这些配置中,实体可以选择一个或多个定制热词132,其可以包括但不限于商品名称、产品名称或对实体唯一的其他专有名称。例如,如果实体是汽车制造商,则可以在销售给汽车制造商的客户的车辆的信息娱乐系统中实现经训练后的定制热词模型200b以检测定制热词132“Hey Car(嘿汽车)”。在另一示例中,实体可能包括电器制造商并且能够在由电器制造商销售的电器上实现经训练后的定制热词模型200b以检测诸如“Dishwasher(洗碗机)”的定制热词132。
参考图2A和图2B,定制热词模型200b的架构包括预训练模型202和头模型204。这里,如先前陈述的,此架构的假定是对热词132分类所需要的大部分工作独立于实际热词132。因此,可以将针对热词模型200a的训练过程并入在定制热词模型200b的预训练模型202中(例如,作为共享嵌入模型)。定制热词模型200b的每个部分202、204包括一个或多个块210。当定制热词模型200b具有CNN拓扑时,每个块210是卷积块210、210CV或分类块210、210CL。一般地说,卷积块210CV执行特征提取,而分类块210CL对提取的特征进行分类(例如,对所提取的特征的嵌入进行分类)。在一些示例中,预训练模型202处的定制热词模型200b接收对数梅尔输入特征206作为输入。例如,定制热词模型200b在提供三十二维度对数梅尔特征向量作为对数梅尔输入特征206的低占位面积特征提取器之上运行。对数梅尔特征向量可以覆盖范围从60Hz到3800Hz的音频频率,该音频频率被量化为每十毫秒八位。
也称为嵌入模型的预训练模型202被配置成将由对数梅尔输入特征206表示的音频流(例如,音频数据12)转换成嵌入208、208a-n(例如,维度特征向量)。当训练预训练模型202时,可以使用多个头模型204、204a-n。例如,每个头模型204对应于在预训练模型202之上并行训练的目标热词132的不同组。在一些实现方式中,可以将许多目标热词132划分成目标热词132的多个随机组。例如,图2A描绘与头模型204a、204b-n相对应的目标热词132的三个随机组。目标热词132的这些组中的每一个可以包括来自所有目标热词132的主体的一个或多个目标热词132的集合。此方法可以允许预训练模型202学习可能对热词132的任何任意组有用的嵌入208。换句话说,通过用多个并行头模型204(例如,具有随机目标热词组)训练预训练模型202,预训练模型202被训练为使得其嵌入输出对特定热词无用,但是相反对任何稍后定义的热词132(例如,定制热词132)普遍有用。在一些实现方式中,在训练预训练模型202之后,多个并行头模型204被丢弃以便稍后被有用地训练来在设备110处对定制热词132进行分类。
继续参考图2A,预训练模型202包括五个卷积块210CV、210a-e。利用卷积结构,卷积块210的输出被作为输入馈送到后续卷积块210n+1中。例如,第一卷积块210、210a的输出被作为输入馈送到第二卷积块210、210b中。第二卷积块210b的输出然后被作为输入馈送到第三卷积块210、210c中。第三卷积块210c的输出被作为输入馈送到第四卷积块210、210d中。第四卷积块210d的输出被作为输入馈送到预训练模型202的第五和最后卷积块210、210e中。利用这五级或五块卷积过程,预训练模型202生成一个或多个热词嵌入208。
如图2B所示,可以将每个卷积块210CV进一步细分成层212。例如,卷积块210CV被划分成四个卷积层212、212a、b、d、e以及最大池层212、212c。在一些示例中,更像块210的次序,卷积层212的次序从第一层212a顺序地进行到第五层212e。这里,在对每个块210进行卷积期间,卷积过程首先在第一层212a处执行1x3卷积,然后在第二层212、212b处执行3x1卷积,跟随有在第三层212、212c处执行最大池操作,然后跟随有在第四层212、212d处执行1x3卷积,并且随后在第五层212e处执行3x1卷积。这些卷积操作还可以在每个块210的一个或多个信道之上被复合。
继续参考图2A,在一些示例中,头模型204包括单个卷积块210CV、210f和单个分类块210CL、210g。在此结构中,卷积块210CV、210f接收预训练模型202的第五卷积块210、210e的输出(例如,热词嵌入208)作为输入并且分类块210CL、210g接收来自卷积块210CV、210f的输出作为输入。这里,分类块210CL、210g可以是当需要来自头模型204的连续预测流时跟随有1x1卷积的最大池层212或跟随有全连接层212的最大池层212。
一旦远程系统140训练预训练模型202(即,嵌入模型202),定制热词模型200b就被推送给设备110。然后可以继续在设备110处基于一个或多个特定定制热词132附加地训练定制热词模型200b。例如,当设备110接收到要生成定制热词132的请求130时,预训练模型202为每个训练音频样本(例如,人类生成的语音134或合成语音162)生成热词嵌入208。由于远程系统140先前训练预训练模型202以基于训练音频样本144的数目大于在设备110处生成的训练音频样本以任意地生成有用的热词嵌入208,预训练模型202能够为训练音频样本快速地生成有意义的热词嵌入208。利用针对每个训练音频样本的嵌入208,头模型204接收这些嵌入208作为输入并且将每个嵌入208分类为对应于定制热词132。基于此方法在热词检测器120处训练和部署定制热词模型200b以随后标识被训练以检测的定制热词132。
图3是用于训练定制热词模型的方法300的示例。在操作302处,方法300接收第一训练音频样本集合134、162,每个训练音频样本包含定制热词132。定制热词132包括一个或多个词。在操作304处,方法300使用被配置成接收第一训练音频样本集合134、162作为输入的语音嵌入模型202来为第一训练音频样本集合134、162中的每个训练音频样本134、162生成表示定制热词132的对应热词嵌入208。语音嵌入模型202在与第一训练音频数据集合134、162不同的第二训练音频样本集合144上被预训练。第二训练音频样本集合144与第一训练音频样本集合134、162比包括更大数目的训练音频样本。在操作306处,方法300训练定制热词模型200b以在音频数据12中检测定制热词132的存在。在操作308处,定制热词模型200b被配置成接收使用语音嵌入模型202生成的每个对应热词嵌入208作为输入。在操作310处,定制热词模型200b还被配置成将每个对应热词嵌入208分类为对应于定制热词132作为输出。
图4是可以用于实现本文档中描述的系统和方法的示例计算设备400的示意图。计算设备400旨在表示各种形式的数字计算机,诸如膝上型计算机、台式机、工作站、个人数字助理、服务器、刀片服务器、大型机和其他适当的计算机。这里示出的组件、它们的连接和关系及其功能意在为仅是示例性的,而不意在限制本文档中描述和/或要求保护的发明的实现方式。
计算设备400包括处理器410、存储器420、存储设备430、连接到存储器420和高速扩展端口450的高速接口/控制器440、以及连接到低速总线470和存储设备430的低速接口/控制器460。组件410、420、430、440、450和460中的每一个使用各种总线来互连,并且可以被安装在公共主板上或者酌情以其他方式安装。处理器410能够处理用于在计算设备400内运行的指令,包括存储在存储器420中或在存储设备430上以在诸如被耦合到高速接口440的显示器480的外部输入/输出设备上显示用于图形用户界面(GUI)的图形信息的指令。在其他实现方式中,可以酌情使用多个处理器和/或多条总线以及多个存储器和多种类型的存储器。另外,可以连接多个计算设备400,其中每个设备提供必要操作的部分(例如,作为服务器组、一组刀片服务器或多处理器系统)。
存储器420在计算设备400内非暂时性地存储信息。存储器420可以是计算机可读介质、易失性存储器单元或非易失性存储器单元。非暂时性存储器420可以是用于在临时或永久基础上存储程序(例如,指令序列)或数据(例如,程序状态信息)以供由计算设备400使用的物理设备。非易失性存储器的示例包括但不限于闪速存储器和只读存储器(ROM)/可编程只读存储器(PROM)/可擦除可编程只读存储器(EPROM)/电可擦除可编程只读存储器(EEPROM)(例如,通常用于固件,诸如引导程序)。易失性存储器的示例包括但不限于随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、相变存储器(PCM)以及磁盘或磁带。
存储设备430能够为计算设备400提供大容量存储。在一些实现方式中,存储设备430是计算机可读介质。在各种不同的实现方式中,存储设备430可以是软盘设备、硬盘设备、光盘设备或磁带设备、闪速存储器或其他类似的固态存储器设备或设备的阵列,包括存储区域网络或其他配置中的设备。在附加实现方式中,计算机程序产品被有形地体现在信息载体中。计算机程序产品包含指令,这些指令当被运行时,执行一种或多种方法,诸如上述方法。信息载体是计算机或机器可读介质,诸如存储器420、存储设备430或处理器410上的存储器。
高速控制器440管理计算设备400的带宽密集型操作,而低速控制器460管理较低带宽密集型操作。职责的这种分配仅是示例性的。在一些实现方式中,高速控制器440被耦合到存储器420、显示器480(例如,通过图形处理器或加速器),并且被耦合到可以接受各种扩展卡(未示出)的高速扩展端口450。在一些实现方式中,低速控制器460被耦合到存储设备430和低速扩展端口490。可以包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端口490可以例如通过网络适配器被耦合到一个或多个输入/输出设备,诸如键盘、指点设备、扫描仪或诸如交换机或路由器的联网设备。
如图所示,可以以许多不同形式实现计算设备400。例如,它可以被实现为标准服务器400a或者多次实现在一组此类服务器400a中,作为膝上型计算机400b,或作为机架服务器系统400c的一部分。
能够在数字电子和/或光学电路系统、集成电路系统、专门地设计的ASIC(专用集成电路)、计算机硬件、固件、软件和/或其组合中实现本文描述的系统和技术的各种实现方式。这些各种实现方式能够包括在包括至少一个可编程处理器的可编程系统上可运行和/或可解释的一个或多个计算机程序中的实现方式,该至少一个可编程处理器可以是专用的或通用的,被耦合以从存储系统、至少一个输入设备和至少一个输出设备接收数据和指令,并且向存储系统、至少一个输入设备和至少一个输出设备传送数据和指令。
这些计算机程序(也称为程序、软件、软件应用或代码)包括用于可编程处理器的机器指令,并且能够用高级过程和/或面向对象编程语言和/或用汇编/机器语言加以实现。如本文所使用的,术语“机器可读介质”和“计算机可读介质”是指用于向可编程处理器提供机器指令和/或数据的任何计算机程序产品、非暂时性计算机可读介质、装置和/或设备(例如,磁盘、光盘、存储器、可编程逻辑器件(PLD)),包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”是指用于向可编程处理器提供机器指令和/或数据的任何信号。
本说明书中描述的过程和逻辑流程可以是通过一个或多个可编程处理器(也称为数据处理硬件)运行一个或多个计算机程序以通过对输入数据操作并且生成输出来执行功能而执行的。过程和逻辑流程还能够由专用逻辑电路系统例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)执行。作为示例,适合于运行计算机程序的处理器包括通用和专用微处理器两者,以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的必要元件是用于执行指令的处理器以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括或被操作地耦合以从用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘)接收数据或者向该一个或多个大容量存储设备转移数据,或者兼而有之。然而,计算机不必具有此类设备。适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,作为示例包括半导体存储器设备,例如EPROM、EEPROM和闪速存储器设备;磁盘,例如内部硬盘或可移动盘;磁光盘;以及CD ROM和DVD-ROM盘。处理器和存储器能够由专用逻辑电路系统补充,或者并入在专用逻辑电路系统中。
为了提供与用户的交互,能够在计算机上实现本公开的一个或多个方面,该计算机具有用于向用户显示信息的显示设备,例如CRT(阴极射线管)、LCD(液晶显示器)监视器或触摸屏幕,并且可选地包括用户能够通过其向计算机提供输入的键盘和指点设备,例如鼠标或轨迹球。其他种类的设备也能够用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且能够以任何形式接收来自用户的输入,包括声学、语音或触觉输入。另外,计算机能够通过向由用户使用的设备发送文档并且从由用户使用的设备接收文档来与用户交互;例如,通过响应于从web浏览器接收到的请求而向用户的客户端设备上的web浏览器发送web页面。
已经描述了许多实现方式。然而,应理解,可以在不脱离本公开的精神和范围的情况下做出各种修改。因此,其他实现方式在以下权利要求的范围内。
Claims (28)
1.一种训练定制热词模型(200)的方法(300),所述方法(300)包括:
在数据处理硬件(112)处接收第一训练音频样本集合(134),每个训练音频样本包含定制热词(132),所述定制热词(132)包括一个或多个词;
通过所述数据处理硬件(112)使用被配置成接收所述第一训练音频样本集合(134)作为输入的语音嵌入模型(202)来为所述第一训练音频样本集合(134)中的每个训练音频样本(134)生成表示所述定制热词(132)的对应热词嵌入(208),所述语音嵌入模型(202)在与所述第一训练音频样本集合(134)不同的第二训练音频样本集合(144)上被预训练,所述第二训练音频样本集合(144)与所述第一训练音频样本集合(134)比包括更大数目的训练音频样本(144);以及
通过所述数据处理硬件(112)训练所述定制热词模型(200)以在音频数据(12)中检测所述定制热词(132)的存在,所述定制热词模型(200)被配置成:
接收使用所述语音嵌入模型(202)生成的每个对应热词嵌入(208)作为输入;并且
将每个对应热词嵌入(208)分类为对应于所述定制热词(132)作为输出。
2.根据权利要求1所述的方法(300),进一步包括,在训练所述定制热词模型(200)之后:
在驻留在用户设备(110)上的数据处理硬件(112)处接收由所述用户设备(110)捕获的流音频数据(12);
通过所述数据处理硬件(112)使用训练后的定制热词模型(200)来确定所述定制热词(132)是否存在于所述流音频数据(12)中;以及
当所述定制热词(132)存在于所述流音频数据(12)中时,通过所述数据处理硬件(112)在所述用户设备(110)上发起唤醒过程以便处理所述定制热词(132)和/或在所述流音频数据(12)中跟随所述定制热词(132)的一个或多个其他词项。
3.根据权利要求1或2所述的方法(300),其中,远程系统(140)在所述第二训练音频样本集合(144)上预训练所述语音嵌入模型(202),所述第二训练音频样本集合(144)包括:
正训练音频样本(144p),所述正训练音频样本(144p)包含由一个或多个不同的讲话者讲出的目标热词的语料库;以及
负训练音频样本(144n),所述负训练音频样本(144n)不包含来自所述目标热词的语料库的目标热词中的任一个。
4.根据权利要求3所述的方法(300),其中,所述远程系统(140)被进一步配置成通过以下步骤来预训练所述语音嵌入模型(202):
将所述目标热词的语料库划分成目标热词的多个随机组,目标热词的每个组包括来自所述目标热词的语料库的一个或多个目标热词的相应集合;
对于从所述目标热词的语料库划分的目标热词的每个组,在所述语音嵌入模型(202)之上训练相应的预训练热词模型(200)以在所述第二训练音频样本集合(144)中检测来自目标热词的相应组的目标热词中的任一个的存在;以及
训练所述语音嵌入模型(202)以针对目标热词的多个随机组学习代表性语音嵌入。
5.根据权利要求1-4中的任一项所述的方法(300),其中,所述第一训练音频样本集合(134)包括从一个或多个语音合成系统输出的定制热词(132)的合成语音话语(162)。
6.根据权利要求1-5中的任一项所述的方法(300),其中,所述第一训练音频样本集合(134)包括:
与讲出所述定制热词(132)的用户相对应的一个或多个人类生成的语音话语;以及
从一个或多个语音合成系统输出的定制热词(132)的多个合成语音话语(162)。
7.根据权利要求6所述的方法(300),其中,所述多个合成语音话语(162)中的至少一个合成语音话语(162)包括与所述多个合成语音话语(162)中的其他合成语音话语(162)不同的合成话音。
8.根据权利要求6或7所述的方法(300),进一步包括:
在所述数据处理硬件(112)处接收与所述定制热词(132)相对应的输入文本(164),所述输入文本(164)由用户经由在所述数据处理硬件(112)上运行的图形用户界面加以输入;以及
通过所述数据处理硬件(112)使用所述输入文本(164)作为至所述一个或多个语音合成系统的输入来生成所述定制热词(132)的多个合成语音话语(162)。
9.根据权利要求6-8中的任一项所述的方法(300),进一步包括:
在所述数据处理硬件(112)处接收与讲出所述定制热词(132)的用户相对应的一个或多个人类生成的语音话语;
通过所述数据处理硬件(112)来生成所述一个或多个人类生成的语音话语中的至少一个的转录(164);以及
通过所述数据处理硬件(112)使用所述一个或多个人类生成的语音话语中的至少一个的转录(164)作为至所述一个或多个语音合成系统的输入来生成所述定制热词(132)的多个合成语音话语(162)。
10.根据权利要求1-9中的任一项所述的方法(300),其中:
所述语音嵌入模型(202)包括五个卷积块(210);并且
所述定制热词模型(200)包括:
一个卷积块(210),所述一个卷积块(210)被配置成接收来自所述语音嵌入模型(202)的五个卷积块(210)的最后卷积的输出作为输入;以及
分类块(210),所述分类块(210)被配置成接收来自所述卷积块(210)的输出作为输入。
11.根据权利要求10所述的方法(300),其中,所述语音嵌入模型(202)和所述定制热词模型(200)的每个卷积块(210)包括四个卷积层(212)和一个最大池层(212)。
12.根据权利要求10或11所述的方法(300),其中,所述定制热词模型(200)的分类块(210)包括最大池层(212),跟随有卷积层(212)或全连接层(212)之一。
13.根据权利要求1-12中的任一项所述的方法(300),其中,所述数据处理硬件(112)驻留在与用户相关联的用户设备(110)上。
14.根据权利要求13所述的方法(300),其中,所述用户设备(110)的用户将所述定制热词(132)指配给所述用户设备(110)。
15.一种系统(110),所述系统(110)包括:
数据处理硬件(112);以及
与所述数据处理硬件(112)通信的存储器硬件(114),所述存储器硬件(114)存储指令,所述指令当在所述数据处理硬件(112)上运行时使所述数据处理硬件(112)执行操作,所述操作包括:
接收第一训练音频样本集合(134),每个训练音频样本包含定制热词(132),所述定制热词(132)包括一个或多个词;
使用被配置成接收所述第一训练音频样本集合(134)作为输入的语音嵌入模型(202)来为所述第一训练音频样本集合(134)中的每个训练音频样本(134)生成表示所述定制热词(132)的对应热词嵌入(208),所述语音嵌入模型(202)在与所述第一训练音频样本集合(134)不同的第二训练音频样本集合(144)上被预训练,所述第二训练音频样本集合(144)与所述第一训练音频样本集合(134)比包括更大数目的训练音频样本(144);以及
训练所述定制热词模型(200)以在音频数据(12)中检测所述定制热词(132)的存在,所述定制热词模型(200)被配置成:
接收使用所述语音嵌入模型(202)生成的每个对应热词嵌入(208)作为输入;并且
将每个对应热词嵌入(208)分类为对应于所述定制热词(132)作为输出。
16.根据权利要求15所述的系统(110),其中,所述操作进一步包括,在训练所述定制热词模型(200)之后:
在用户设备(110)上接收由所述用户设备(110)捕获的流音频数据(12);
使用训练后的定制热词模型(200)来确定所述定制热词(132)是否存在于所述流音频数据(12)中;以及
当所述定制热词(132)存在于所述流音频数据(12)中时,在所述用户设备(110)上发起唤醒过程以便处理所述定制热词(132)和/或在所述流音频数据(12)中跟随所述定制热词(132)的一个或多个其他词项。
17.根据权利要求15或16所述的系统(110),其中,远程系统(140)在所述第二训练音频样本集合(144)上预训练所述语音嵌入模型(202),所述第二训练音频样本集合(144)包括:
正训练音频样本(144p),所述正训练音频样本(144p)包含由一个或多个不同的讲话者讲出的目标热词的语料库;以及
负训练音频样本(144n),所述负训练音频样本(144n)不包含来自所述目标热词的语料库的目标热词中的任一个。
18.根据权利要求17所述的系统(110),其中,所述远程系统(140)被进一步配置成通过以下步骤来预训练所述语音嵌入模型(202):
将所述目标热词的语料库划分成目标热词的多个随机组,目标热词的每个组包括来自所述目标热词的语料库的一个或多个目标热词的相应集合;
对于从所述目标热词的语料库划分的目标热词的每个组,在所述语音嵌入模型(202)之上训练相应的预训练热词模型(200)以在所述第二训练音频样本集合(144)中检测来自目标热词的相应组的目标热词中的任一个的存在;以及
训练所述语音嵌入模型(202)以针对目标热词的多个随机组学习代表性语音嵌入。
19.根据权利要求15-18中的任一项所述的系统(110),其中,所述第一训练音频样本集合(134)包括从一个或多个语音合成系统输出的定制热词(132)的合成语音话语(162)。
20.根据权利要求15-19中的任一项所述的系统(110),其中,所述第一训练音频样本集合(134)包括:
与讲出所述定制热词(132)的用户相对应的一个或多个人类生成的语音话语;以及
从所述一个或多个语音合成系统输出的定制热词(132)的多个合成语音话语(162)。
21.根据权利要求20所述的系统(110),其中,所述多个合成语音话语(162)中的至少一个合成语音话语(162)包括与所述多个合成语音话语(162)中的其他合成语音话语(162)不同的合成话音。
22.根据权利要求20或21所述的系统(110),其中,所述操作进一步包括:
接收与所述定制热词(132)相对应的输入文本,所述输入文本由用户经由在所述数据处理硬件(112)上运行的图形用户界面加以输入;以及
使用所述输入文本作为至所述一个或多个语音合成系统的输入来生成所述定制热词(132)的多个合成语音话语(162)。
23.根据权利要求20-22中的任一项所述的系统(110),其中,所述操作进一步包括:
接收与讲出所述定制热词(132)的用户相对应的一个或多个人类生成的语音话语;
生成所述一个或多个人类生成的语音话语中的至少一个的转录(164);以及
使用所述一个或多个人类生成的语音话语中的至少一个的转录(164)作为至所述一个或多个语音合成系统的输入来生成所述定制热词(132)的多个合成语音话语(162)。
24.根据权利要求15-23中的任一项所述的系统(110),其中:
所述语音嵌入模型(202)包括五个卷积块(210);并且
所述定制热词模型(200)包括:
一个卷积块(210),所述一个卷积块(210)被配置成接收来自所述语音嵌入模型(202)的五个卷积块(210)的最后卷积的输出作为输入;以及
分类块(210),所述分类块(210)被配置成接收来自所述卷积块(210)的输出作为输入。
25.根据权利要求24所述的系统(110),其中,所述语音嵌入模型(202)和所述定制热词模型(200)的每个卷积块(210)包括四个卷积层(212)和最大池层(212)。
26.根据权利要求24或25所述的系统(110),其中,所述定制热词模型(200)的分类块(210)包括最大池层(212),跟随有卷积层(212)或全连接层(212)之一。
27.根据权利要求15-26中的任一项所述的系统(110),其中,所述数据处理硬件(112)驻留在与用户相关联的用户设备(110)上。
28.根据权利要求27所述的系统(110),其中,所述用户设备(110)的用户将所述定制热词(132)指配给所述用户设备(110)。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/717,518 | 2019-12-17 | ||
US16/717,518 US11341954B2 (en) | 2019-12-17 | 2019-12-17 | Training keyword spotters |
PCT/US2020/065445 WO2021127064A1 (en) | 2019-12-17 | 2020-12-16 | Training keyword spotters |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114787915A true CN114787915A (zh) | 2022-07-22 |
Family
ID=74181362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080086882.1A Pending CN114787915A (zh) | 2019-12-17 | 2020-12-16 | 训练关键词识别器 |
Country Status (6)
Country | Link |
---|---|
US (2) | US11341954B2 (zh) |
EP (1) | EP4052252A1 (zh) |
JP (1) | JP7268251B2 (zh) |
KR (1) | KR102540248B1 (zh) |
CN (1) | CN114787915A (zh) |
WO (1) | WO2021127064A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11763806B1 (en) * | 2020-06-25 | 2023-09-19 | Amazon Technologies, Inc. | Speaker recognition adaptation |
US11557278B2 (en) * | 2020-12-10 | 2023-01-17 | Google Llc | Speaker dependent follow up actions and warm words |
US20220293088A1 (en) * | 2021-03-12 | 2022-09-15 | Samsung Electronics Co., Ltd. | Method of generating a trigger word detection model, and an apparatus for the same |
US20230017728A1 (en) * | 2021-07-14 | 2023-01-19 | Harman International Industries, Incorporated | Techniques for audio feature detection |
WO2024053915A1 (en) * | 2022-09-05 | 2024-03-14 | Samsung Electronics Co., Ltd. | System and method for detecting a wakeup command for a voice assistant |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8489399B2 (en) | 2008-06-23 | 2013-07-16 | John Nicholas and Kristin Gross Trust | System and method for verifying origin of input through spoken language analysis |
US9589563B2 (en) * | 2014-06-02 | 2017-03-07 | Robert Bosch Gmbh | Speech recognition of partial proper names by natural language processing |
US9548053B1 (en) * | 2014-09-19 | 2017-01-17 | Amazon Technologies, Inc. | Audible command filtering |
US9779725B2 (en) * | 2014-12-11 | 2017-10-03 | Mediatek Inc. | Voice wakeup detecting device and method |
US9600231B1 (en) * | 2015-03-13 | 2017-03-21 | Amazon Technologies, Inc. | Model shrinking for embedded keyword spotting |
US10438593B2 (en) * | 2015-07-22 | 2019-10-08 | Google Llc | Individualized hotword detection models |
US10331402B1 (en) * | 2017-05-30 | 2019-06-25 | Amazon Technologies, Inc. | Search and knowledge base question answering for a voice user interface |
CN107358951A (zh) * | 2017-06-29 | 2017-11-17 | 阿里巴巴集团控股有限公司 | 一种语音唤醒方法、装置以及电子设备 |
US10679615B2 (en) | 2018-04-16 | 2020-06-09 | Google Llc | Adaptive interface in a voice-based networked system |
US10210860B1 (en) * | 2018-07-27 | 2019-02-19 | Deepgram, Inc. | Augmented generalized deep learning with special vocabulary |
JP7014142B2 (ja) | 2018-11-30 | 2022-02-01 | 日本電信電話株式会社 | キーワード抽出装置、キーワード抽出方法、およびプログラム |
US11132992B2 (en) * | 2019-05-05 | 2021-09-28 | Microsoft Technology Licensing, Llc | On-device custom wake word detection |
-
2019
- 2019-12-17 US US16/717,518 patent/US11341954B2/en active Active
-
2020
- 2020-12-16 EP EP20839505.3A patent/EP4052252A1/en active Pending
- 2020-12-16 JP JP2022537095A patent/JP7268251B2/ja active Active
- 2020-12-16 KR KR1020227024628A patent/KR102540248B1/ko active IP Right Grant
- 2020-12-16 CN CN202080086882.1A patent/CN114787915A/zh active Pending
- 2020-12-16 WO PCT/US2020/065445 patent/WO2021127064A1/en unknown
-
2022
- 2022-05-04 US US17/662,021 patent/US20220262345A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4052252A1 (en) | 2022-09-07 |
WO2021127064A1 (en) | 2021-06-24 |
KR102540248B1 (ko) | 2023-06-07 |
US20220262345A1 (en) | 2022-08-18 |
JP7268251B2 (ja) | 2023-05-02 |
US11341954B2 (en) | 2022-05-24 |
JP2022552916A (ja) | 2022-12-20 |
KR20220107310A (ko) | 2022-08-02 |
US20210183367A1 (en) | 2021-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11887582B2 (en) | Training and testing utterance-based frameworks | |
US11341954B2 (en) | Training keyword spotters | |
US11475881B2 (en) | Deep multi-channel acoustic modeling | |
EP3424044B1 (en) | Modular deep learning model | |
JP7248751B2 (ja) | ホットワード認識音声合成 | |
US11355102B1 (en) | Wakeword detection | |
AU2016277548A1 (en) | A smart home control method based on emotion recognition and the system thereof | |
EP3069336A1 (en) | Envelope comparison for utterance detection | |
CN112368769A (zh) | 端到端流关键词检出 | |
CN109661704A (zh) | 用于电子设备的上下文感知查询识别 | |
US11694685B2 (en) | Hotphrase triggering based on a sequence of detections | |
CN116547752A (zh) | 虚假音频检测 | |
WO2023158444A2 (en) | Hybrid multilingual text-dependent and text-independent speaker verification | |
Tsai et al. | Customized wake-up word with key word spotting using convolutional neural network | |
CN114945980A (zh) | 小尺寸多通道关键字定位 | |
US20240212678A1 (en) | Multi-participant voice ordering | |
WO2024138102A1 (en) | Multi-participant voice ordering | |
JP2024538771A (ja) | デジタル信号プロセッサベースの継続的な会話 |
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 |