CN116343765A - 自动语境绑定领域特定话音识别的方法和系统 - Google Patents
自动语境绑定领域特定话音识别的方法和系统 Download PDFInfo
- Publication number
- CN116343765A CN116343765A CN202211482705.2A CN202211482705A CN116343765A CN 116343765 A CN116343765 A CN 116343765A CN 202211482705 A CN202211482705 A CN 202211482705A CN 116343765 A CN116343765 A CN 116343765A
- Authority
- CN
- China
- Prior art keywords
- domain
- general
- phrase
- sentence
- gram
- 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
- 238000000034 method Methods 0.000 title claims abstract description 109
- 238000012549 training Methods 0.000 claims description 49
- 238000012545 processing Methods 0.000 claims description 37
- 230000015654 memory Effects 0.000 claims description 20
- 230000004044 response Effects 0.000 claims description 11
- 238000004458 analytical method Methods 0.000 claims description 4
- 230000005236 sound signal Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 29
- 238000001514 detection method Methods 0.000 description 22
- 238000013459 approach Methods 0.000 description 16
- 230000009471 action Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 239000000463 material Substances 0.000 description 7
- 238000001914 filtration Methods 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 238000007792 addition Methods 0.000 description 4
- 230000008451 emotion Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 239000002023 wood Substances 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 239000003990 capacitor Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 231100001261 hazardous Toxicity 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 241000894006 Bacteria Species 0.000 description 1
- 241000238558 Eucarida Species 0.000 description 1
- 208000003028 Stuttering Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002542 deteriorative effect Effects 0.000 description 1
- 238000012854 evaluation process Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007787 long-term memory Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000009278 visceral effect Effects 0.000 description 1
- 210000000707 wrist Anatomy 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/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
- G10L15/19—Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
- G10L15/197—Probabilistic grammars, e.g. word n-grams
-
- 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
- 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
- G10L15/14—Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
- G10L15/142—Hidden Markov Models [HMMs]
- G10L15/144—Training of HMMs
-
- 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/14—Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
- G10L15/142—Hidden Markov Models [HMMs]
- G10L15/148—Duration modelling in HMMs, e.g. semi HMM, segmental models or transition probabilities
-
- 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
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/27—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
- G10L25/30—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using 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
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/48—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
- G10L25/51—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
-
- 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
- G10L2015/025—Phonemes, fenemes or fenones being the recognition units
-
- 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
- G10L2015/0631—Creating reference templates; Clustering
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Artificial Intelligence (AREA)
- Probability & Statistics with Applications (AREA)
- Evolutionary Computation (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Machine Translation (AREA)
Abstract
本公开涉及自动语境绑定领域特定话音识别的方法和系统。一种自动语境绑定领域特定话音识别的系统、物品和方法使用一般语言模型。
Description
技术领域
本公开涉及自动语境绑定领域特定话音识别的方法和系统。
背景技术
自动话音识别(automatic speech recognition,ASR)系统已变得越来越重要,因为越来越多的基于计算机的设备使用话音识别来从用户接收命令以便执行一些动作,以及将话音转换为文本,用于听写应用或者举行视频会议,其中在一个或两个方向上交换信息。ASR还可用于自动有害话音检测,其中统计语言模型可以检测出攻击性、不适当、粗俗、侮辱性或者伤害性的话音。这可能是在线游戏环境所需要的,以避免儿童听到这种有害话音。有害话音检测可用于随后对违规话音进行清空或用哔声盖过,以便听众无法听到有害的词语。否则,例如系统可以警告游戏平台上的违规用户改变其行为,或者终止违规用户对平台的访问。有害话音检测也可以被社交视频或音频网站用来监视上传到其平台的视频或音频。然而,执行这些任务的常规领域特定ASR语言模型往往是非常不准确的。
发明内容
根据本公开的一方面,提供了一种由计算机实现的音频处理的方法,包括:获得一般句子或一般短语或者两者的自动话音识别一般数据集;生成领域数据集,包括选择带有来自领域列表的一个或多个领域单词或领域短语的一般句子或一般短语或者两者的至少一些部分,并且将所选择的一般句子或一般短语或者两者的至少一些部分添加到所述领域数据集;并且训练领域语言模型,该领域语言模型被布置为识别领域单词、领域短语以及领域句子的至少一些部分,其中包括使用所述领域数据集。
根据本公开的一方面,提供了一种由计算机实现的自动领域话音识别的系统,包括:存储器,其存储人类话音的音频信号;以及处理器电路,其形成与所述存储器通信地连接的至少一个处理器,所述至少一个处理器被布置为通过以下步骤来进行操作:获得一般句子或一般短语或者两者的自动话音识别一般数据集;生成领域数据集,包括选择带有来自领域列表的一个或多个领域单词或领域短语的一般句子或一般短语或者两者的至少一些部分,并且将所选择的一般句子或一般短语或者两者的至少一些部分添加到所述领域数据集;并且训练领域语言模型,该领域语言模型被布置为识别领域单词、领域短语以及领域句子的至少一些部分,其中包括使用所述领域数据集。
根据本公开的一方面,提供了至少一个非暂态计算机可读介质,包括多个指令,所述多个指令响应于在计算设备上被执行,使得所述计算设备通过以下步骤来进行操作:获得一般句子或一般短语或者两者的自动话音识别一般数据集;生成领域数据集,包括选择带有来自领域列表的一个或多个领域单词或领域短语的一般句子或一般短语或者两者的至少一些部分,并且将所选择的一般句子或一般短语或者两者的至少一些部分添加到所述领域数据集;并且训练领域语言模型,该领域语言模型被布置为识别领域单词、领域短语以及领域句子的至少一些部分,其中包括使用所述领域数据集。
附图说明
在附图中以示例的方式而不是限制的方式图示了本文描述的素材。为了图示的简单和清晰,附图中图示的元素不一定是按比例绘制的。例如,为了清晰,一些元素的尺寸相对于其他元素可被夸大。另外,在认为适当时,在附图之间重复附图标记以指示出对应的或相似的元素。在附图中:
图1是示出了传统领域统计语言模型的示意图;
图2是示出了另一个传统领域统计语言模型的示意图;
图3是示出了音频处理系统的示意图,该音频处理系统用于根据本文的至少一个实现方式执行自动语境绑定领域特定话音识别;
图4是示出了带有语言模型的解码器的示意图,该语言模型用于根据本文的至少一个实现方式的自动语境绑定领域特定话音识别;
图5是示出了音频处理系统的示意图,该音频处理系统用于根据本文的至少一个实现方式训练自动语境感知领域特定话音识别语言模型;
图6是示出了根据本文的至少一个实现方式,用于语境绑定领域特定语言模型训练数据集的语境绑定领域特定训练n元语法的示图;
图7是根据本文的至少一个实现方式,用于自动语境绑定领域特定话音识别的音频处理的方法的流程图;
图8是根据本文的至少一个实现方式,用于自动语境绑定领域特定话音识别的音频处理的详细流程图;
图9是示例系统的说明图;
图10是另一示例系统的说明图;并且
图11图示了全都根据本公开的至少一些实现方式布置的另一示例设备。
具体实施方式
现在参考附图描述一个或多个实现方式。虽然论述了具体的配置和布置,但应当理解执行这一点只是为了说明。相关领域的技术人员将会认识到,在不脱离描述的精神和范围的情况下,可以采用其他配置和布置。相关领域的技术人员将会清楚,本文描述的技术和/或布置也可被用在与本文所述不同的各种其他系统和应用中。
虽然接下来的描述阐述了例如可在诸如片上系统(system-on-a-chip,SoC)体系结构之类的体系结构中显现的各种实现方式,但本文描述的技术和/或布置的实现方式不限于特定的体系结构和/或计算系统,而是可由任何体系结构和/或计算系统为类似的目的而实现。例如,采用例如多个集成电路(integrated circuit,IC)芯片和/或封装的各种体系结构,和/或各种计算设备、商业设备和/或消费电子(consumer electronic,CE)设备,例如服务器,膝上型或桌面型计算机,移动设备(例如智能电话、智能耳麦或耳机),视频游戏面板或控制台,手持游戏显示设备,游戏控制器,虚拟、增强或合并现实耳麦,电视,电视机顶盒,车载系统,听写机,用于建筑物的安保和环境控制系统,等等,可以实现本文描述的技术和/或布置。另外,虽然接下来的描述可阐述许多具体细节,例如逻辑实现方式、系统组件的类型和相互关系、逻辑分区/集成选择,等等,但可在没有这种具体细节的情况下实现要求保护的主题。在其他情况中,可能没有详细示出一些素材,例如控制结构和完整软件指令序列,以免模糊本文公开的素材。可以用硬件、固件、软件或者其任意组合来实现本文公开的素材。
本文公开的素材也可被实现为存储在机器可读介质或存储器上的指令,这些指令可被一个或多个处理器读取和执行。机器可读介质可包括用于以机器(例如,计算设备)可读的形式存储或传输信息的任何介质和/或机构。例如,机器可读介质可包括只读存储器(ROM);随机访问存储器(random access memory,RAM);磁盘存储介质;光存储介质;闪存设备;电的、光的、声的或者其他形式的传播信号(例如,载波、红外信号、数字信号,等等),以及其他。在另一形式中,可结合上文提及的任何示例或者其他示例使用诸如非暂态计算机可读介质之类的非暂态物品,只不过其不包括暂态信号本身。其确实包括除了信号本身以外的可以以“暂态”方式暂时保存数据的那些元素,例如RAM等等。
说明书中提及“一个实现方式”、“一实现方式”、“一示例实现方式”等等指示的是描述的实现方式可包括特定的特征、结构或特性,但可能不一定每个实现方式都包括该特定特征、结构或特性。此外,这种短语不一定指同一实现方式。另外,当联系一实现方式来描述特定的特征、结构或特性时,认为联系其他实现方式(无论本文是否明确描述)来实现这种特征、结构或特性是在本领域技术人员的知识范围内的。
本文描述了自动语境绑定领域特定话音检测的系统、物品和方法。
自动话音识别(ASR)应用可以识别话音,然后这些话音可以被搜索,以识别话音中的单词、短语和句子。ASR使用声学模型来提供经处理的音频中的音素的概率。然后,ASR系统使用带有语言模型的语言解释器来提供单词序列(例如句子或短语)的概率。然后使用解码器(或者变换器)将这两个输入结合在一起,以产生排名的假设列表,其中该列表上的第一个假设通常被用于进一步处理。ASR的这些组合组件基于感知到的声音和语言统计,以概率的形式,有效地识别话音。语言模型可能足够精密,以理解语境、语法规则,等等,从而使得语言模型甚至可以在同音异义字之间区分单词,例如,听起来相同但具有不同定义的单词,比如“to”、“too”和“two”。虽然术语“语言模型”可具有若干个不同的含义,包括指整个ASR系统本身,但本文使用的语言模型一般是指这样的语言模型,或者语言模型的版本(或者状态):它被解码器处的语言解释器使用,并且从解码器处的声学解释器模型接收句子概率,并且输出最有可能的单词、短语或句子,以便由解码器用来生成句子(或者短语或假设)的排名列表。
如前所述,具有语言模型的解码器可以被训练成专门识别,或者更准确地识别特定领域的词汇。这可包括有害单词检测,其中有害领域特定的ASR系统可以识别,甚至具体地指示出在捕捉的音频的句子中的违规单词的存在。有时,该领域可能包括这样的单词或短语:这些单词或短语要求在解码器使用语言模型执行的语境分析之外的额外模块,例如声学环境,和/或说话人的语调(或者情绪或音调变化),以便确定该音频是否包含领域单词。具体而言,在有害领域语境下,取决于所讲的内容,情形可能会非常不同,这取决于在音频中的语境中使用的确切单词,以及环境,这例如与音频是否是在网络游戏内、与家人或朋友、或者在商业电话会议上讲出的有关。然而,在许多情况下,只需要有有害词语本身的存在,例如脏话,就应该采取某个动作或者做出某个判决来作为响应,这与其他更多依赖句子语境的领域不同。当有害领域触发可以仅仅基于单词本身的存在而更频繁地发生时,这在能够提供准确的单词识别时,会使得系统准确得多。然而,高准确性仍然是领域特定的ASR所极度缺乏的。
参考图1,音频处理系统100具有传统领域特定统计语言模型(或者只是领域语言模型)104,该模型被用于ASR中并且是直接从训练数据集102训练(或者估计)的,该训练数据集带有训练文本或词句,这些训练文本或词句具有目标领域单词。这在本文中可以被称为基线语言模型。这种模型的准确性主要取决于数据量和数据表示应用领域的准确程度。这样的语言模型要求大量的训练句子。然而,对于包括有害语言领域在内的许多领域而言,要获得大量的训练数据是很困难的,而且成本很高。对于许多用例,例如有害领域,数据集根本不存在,并且将需要被创建。而且,这些训练模型通常只是在包括领域单词或短语的数据上进行训练的,从而,对于语言模型以前没有经历过的语言,大量的领域外语言不能被利用来减少假阳性,进而降低准确性,因此降低了语言模型的价值。
参考图2,其他传统音频处理系统200用可能包括或不包括领域单词的文本句子语言模型训练数据集(或者一般数据集)202训练一般(或者通用)语言模型204,同时用领域单词(0元语法(0-gram))列表语言模型训练数据集206单独训练领域单词列表语言模型(领域单词列表模型)208。然后对一般数据集204和领域单词列表模型208进行插值,以组合这些模型并且形成插值的领域特定语言模型210。这种传统方法使得一般语言模型偏向于目标领域词汇。然而,由于该模型是在没有单词的出现频率和单词级语境的情况下用单词插值的,所以在最终的语言模型中获得的信息很少。具体而言,领域单词的熟悉语境以及足够数目的不同样本有助于识别有害语言。没有它,就会降低语言模型预测的准确性。
为了解决这些问题,所公开的系统和方法训练了一种语境感知的领域特定(或者只是领域)的统计语言模型,在本文也可称之为一般和领域特定的语言模型。这里的系统使用智能语境注入到统计语言模型中,以强调在适当的语境中选择的短语。该模型使用领域短语或单词列表来过滤掉从第一一般语言模型的训练一般数据集可用的单词序列,这样就不需要额外的训练数据。第二领域特定语言模型从被过滤掉的序列中估计,然后与一般语言模型进行插值。只是为了清晰起见,过滤掉整个一般单词或短语用于领域数据集中将被称为过滤,而不是如本文所述的生成n元语法(n-gram)。
详细来说,训练可以通过从一般数据集中只选择来自那些包括领域单词或短语的句子或短语的语境信息来完成,其中领域可以是有害语言。然后,这种一般感知信息可以通过若干种不同的方式被添加到领域数据集。按照一种方法,带有领域短语或单词的整个一般句子或一般短语被添加到领域数据集。按照另一种方法,来自一般数据集的一般句子或短语中的每个检测到的领域单词被用来形成多个n元语法,其中该领域单词在多个n元语法的每一个中处于不同的位置。可以对在一般数据集中找到的每个领域单词重复多个n元语法的生成。然后,这些n元语法被添加到领域数据集。使用这种带有n元语法的第二种方法是因为它最大限度地减少了添加的冗余不相关信息的量。在第一种方法中,添加了与句子中的相关有害单词相距甚远的n元语法,这些n元语法并不提供相关信息。通过限制范围,最大限度地减少了否则可能被引入到新语言模型中的错误。
n元语法(或者Q元语法)是来自文本或话音的给定样本的n个项目的连续序列。这里的n元语法的项目是指单词或者那些通常在书面文本的句子中由空格隔开或者在音频中由停顿隔开的语言单位。复合词或者连字符词可以算作单个单词或者多个单词。对于这里的n元语法,语言的一部分,例如音素、音节和单词的字母,通常不会被计算在内,除非它们出于特定的原因被挑出来,或者有句子间隔强调这样的话音部分,例如模仿一个人的口吃,例如“st,st,stupid”。n元语法通常是从文本或话音语料库中收集的。
这种领域语言模型布置提高了召回率(肯定领域检测与所有检测的比率)并且降低了在连续话音中使用自动话音识别检测领域单词和短语的延时。更高的召回率是有用的,因为错误的检测比错误的拒绝成本要低。虽然对有害领域特别有用,但本方法和系统也可用于提高其他领域的识别准确性,例如命名的实体、名称、关键字及其他。
现在参考图3,用于自动语境感知领域特定话音检测的音频处理系统或设备300可以是启用了话音的人机接口(human machine interface,HMI),并且可具有音频捕捉或接收设备304,例如麦克风。麦克风304可以接收来自用户302的声波,并且将波转换成可被记录在存储器中的原始电声信号。这样的麦克风304可以在提供音频处理的智能电话上的本地,或者可以在提供音频处理的物理设备300的远程。系统300可具有模拟/数字(A/D)转换器306,以向声学前端单元308提供数字声学信号。
声学前端单元308可以执行预处理,这可包括噪声消除,预加重过滤以平坦信号,和/或语音激活检测(voice activation detection,VAD)以识别话语的端点,以及线性预测,梅尔倒谱,和/或诸如能量测量之类的添加物,以及delta和加速系数,以及其他处理操作,比如权重函数、特征向量堆叠和变换、降维和正规化。前端单元308还可以将声学信号划分成帧,按照一个示例是10ms帧,并且利用傅里叶变换等等从声学信号中提取声学特征或特征向量,以识别信号中提供的音素。
然后,声学评分单元310为要识别的语境相关音素确定概率得分。按照一种方法,声学模型324可以类似于用于这里的解码和/或语言解释的马尔可夫链或模型,并且可以是深度神经网络隐马尔可夫模型(deep neural network hidden Markov model,DNN-HMM)。在声学评分DNN的输出处可以使用三倍降低的帧率。DNN的输入特征可具有每秒100帧的原始帧率。使用的DNN可具有递归连接或者内部拼接,这样DNN就不是纯粹的前馈DNN了。否则,声学评分单元可以使用或者可以是高斯混合模型(gaussian mixture model,GMM)、其他DNN、或者其他执行相同任务的声学模型。
解码器312可具有声学解释器单元313和语言解释器单元314。声学解释器单元313可具有声学模型324,其形式为加权有限状态换能器(weighted finite statetransducer,WFST),其使用声学得分来识别话语或句子假设。假设的单词序列或单词网格可以由WFST形成,以通过利用马尔可夫模型或链上的令牌传递算法来形成话语假设。单词网格可以提供置信度度量和/或替代结果。WFST的马尔可夫链或模型使用的计算可以被表示为具有权重的弧和状态的网络。WFST可以是确定性的或者非确定性的有限状态换能器。可以使用许多不同形式的WFST,其中WFST可以由词库WFST(L)、语言模型或语法WFST(G)、语境敏感性WFST(C)、HMM WFST(H)静态或动态地组成,该HMM WFST(H)可以将HMM转变、HMM状态ID、GMM密度或者DNN输出状态ID作为输入符号。在被用于解码之前,WFST可以被或不被按任何顺序进行确定、最小化、权重或标签推送或者以其他方式进行变换(例如,通过按权重、输入或输出符号对弧进行排序)。另外,WFST可以用语言模型提供的权重执行解码。
从声学解释器313输出的单词序列和/或单词网格的识别和概率可以被提供给语言解释器单元314。语言解释器单元314与声学解释器313合作,确定可能在句子中具有领域单词的句子的列表。这个列表是解码器312的输出。语言解释器单元314可以操作经训练的一般和语境感知的领域特定语言模型322,该模型是通过使用本文的方法来训练的。语言模型322的细节将结合下面描述的语言模型400(图4)来提供。一般和语境感知领域特定语言模型322的输出是单词序列(或句子)的概率。
一旦生成了列表,语言解释器单元314本身,或者另一个单元,例如终端设备316,就可以搜索列表以寻找来自音频的最有可能的句子,并且可以提供响应或者启动动作。例如,该响应可以是通过扬声器组件318的音频形式,或者作为显示组件320上的文本的视觉形式。否则,来自语言解释器314的动作可以启动或控制另一个终端设备316(无论是否被认为是话音识别系统300的一部分,或者与话音识别系统300在同一设备内)。例如,用户可以说出“给家里打电话”以激活电话设备上的电话呼叫,用户可以通过向车辆电子钥匙(fob)说出单词来启动车辆,或者智能电话上的话音模式可以在智能电话上执行某些任务。
具体到有害领域检测,终端设备316可以是应用,以在扬声器318处生成来发出的音频上对脏话进行用哔声盖过或者清空,或者可以是游戏应用,它警告用户或者关断用户对游戏的访问。终端设备316可以简单地是软件而不是物理设备或硬件或者其任意组合,并且除了具有理解由话音识别确定产生的命令或请求并且根据该命令或请求执行或启动动作的能力以外,不特别限于任何东西。
声学评分单元310、解码器312和音频处理系统300的其他单元可以使用已知的特定规则、构造、操作和属性进行单个最佳话音解码,并且为了对本文描述的新特征的布置提供清晰的描述,在此不对它们的不相关的细节进行进一步说明。
参考图4,领域特定ASR系统400使用类似于语言模型322的语境感知领域特定语言模型(或者一般领域特定语言模型)410来检测领域语言,并且可以使用本文的方法和系统来进行训练。具体而言,语言模型400可具有解码器402,该解码器402具有声学解释器单元404,该声学解释器单元404使用声学模型406,如上文对于声学解释器单元313所描述。解码器402也可具有语言解释器408,它使用一般领域特定语言模型410。
声学解释器404可以使用WFST和维特比算法来消除最没有希望的句子,然后生成带有概率的单词网格或者单词序列或者句子假设,或者换句话说,个体句子的声学概率的列表,正如对于声学解释器313(图3)所提及的。这些声学概率被提供给语言解释器408。
语言解释器408使用语言模型410来生成从声学解释器单元404接收的句子的先验概率,特别是生成由语言模型提供给WFST的权重。语言模型410可以采取马尔可夫模型的形式,它具有加权状态和弧的链。按照一种形式,马尔科夫模型可以是卡尔迪系统中的隐马尔科夫模型和长短期记忆(hidden Markov model and long short-term memory,HMM-LSTM)链。与其他使用帧级目标的系统相比,用于训练卡尔迪链的目标函数使用正确音素序列的对数概率作为目标函数。从而,本马尔可夫模型可以是高级研究计划局(AdvancedResearch Project Agency,ARPA)语言模型。当使用神经网络时,它可具有一个或多个激活函数层,例如tanh和SoftMax层。来自解码器404的输出410可以是排名的句子(或短语)列表,该列表可以被搜索以寻找(一个或多个)领域单词。
对于领域语言检测,下面是可用作语言模型410的示例n元语法语言模型,并且它是以可与本方法和系统一起使用的ARPA格式表示的(另见https://cmusphinx.github.io/wiki/arpaformat)。
\data\
n-gram 1=7
n-gram 2=7
\1-grams:
-1.0000<unk> -0.2553
-98.9366<s> -0.3064
-1.0000</s> 0.0000
-0.6990wood -0.2553
-0.6990cindy -0.2553
-0.6990pittsburgh -0.2553
-0.6990jean -0.1973
\2-grams:
-0.2553 <unk>wood
-0.2553 <s><unk>
-0.2553 wood pittsburgh
-0.2553 cindy jean
-0.2553 pittsburgh cindy
-0.5563 jean</s>
-0.5563 jean wood
\end\
在这种格式中,第一节段\data\表示n元语法的阶数和每个阶数存在的数目。然后,为n元语法的每一阶提供节段,其中第一列是1元语法的序列的概率P(w),2元语法的P(Wi|Wi-1),3元语法的P(Wi|Wi-1,Wi-2),等等依此类推。第二列是以文本形式表达的序列,并且第三列是回退值,这是在未见过或者未经历过的序列的情况下估计的“后退”值。这里,较低阶n元语法将得到完整的概率P(Wi|Wi-1,Wi-2)。
另外,语言模型可具有或者包括其他的语境或意图检测单元,例如可以被视为或者不被视为语言模型的一部分的语境词典,以及语法模型。
一旦确定了用户意图,语言解释器单元408就确定并且输出最有可能具有领域单词或短语的句子的排名列表412,其中列表上的第一个假设通常被用于进一步处理。可以执行搜索以确定句子是否具有领域语言。然后,带有这些具有领域单词或语言的句子的列表可以被提供给后置识别模型,例如环境模型单元414、语音语调/情感模型单元416和领域判决单元418,以执行动作。对于有害领域,以及短语中是否存在脏话,环境模型单元414可以确定语言是否适当。在商业环境中,可能是不适当的,但在个人住所,可能是可接受的,并且即使有脏话存在时,也可能是这样的。如果不是纯粹基于环境而被指示为领域单词,那么该短语可以被传递给语音语调模型单元416,以确定说话人的情绪或者语音音调变化是否对领域检测确定有影响。然后,该短语被传递给领域判决单元418,以做出最终判决并且启动适当的动作。可以使用传统的后置识别模型,这里不需要提供这些模型的细节。
参考图5,提供音频处理系统或设备500,以训练如本文所述的一般和领域特定的语言模型。系统500可具有文本句子语言模型训练数据集(或者一般数据集)502,一般语言模型单元504,它使用一般数据集502来训练一般语言模型506。另外,领域单词列表508被获得或者提供给领域过滤器单元510,该单元在一般数据集502中选择具有来自领域列表508的领域单词或短语的一般句子或一般短语。按照一个选项,n元语法生成器单元530为所选择的一般句子和/或短语中的个体领域单词或短语生成多个n元语法。
参考例如图6,示图600示出了来自一般语言模型数据集的示例一般语言模型句子604上的n元语法滑动窗口602。该句子被重复了三次(A-C)以示出n元语法窗口602的变化位置。n元语法窗口602可以被固定为具有三个单词的长度,并且被示为包围作为n元语法606的三个单词序列,该n元语法606包括可能的有害领域单词“dumb”的示例。窗口602被移动以捕捉n元语法窗口602中的每个位置的领域单词,这进而提供了三个n元语法606、608和610,每个在n元语法606、608和610内的领域单词的位置不同,并且将n元语法606、608和610添加到领域数据集。这可以对于为作为目标的任何领域找到的每个领域单词或领域短语重复进行。
此后,要么领域过滤器将一般句子和/或短语534直接添加到语境感知领域语言模型训练数据集(或者领域数据集)532,要么n元语法生成器单元530将基于一般的n元语法536添加到领域数据集532,或者这两者都可被执行。然后,领域语言模型单元514利用领域数据集训练领域语言模型516。
然后,一般和领域特定语言模型单元518将两个经训练的一般和领域语言模型506和516组合起来,例如通过由插值单元520执行的语言模型插值,并且形成一般和领域特定语言模型522,该模型522可以在连续自动话音识别期间被用于准确的领域语言检测。对于音频处理或模型训练系统500的操作,下面在过程700和800中提供一些细节。
参考图7,提供了用于语境感知领域特定话音识别的计算机实现方法的示例过程700。在图示的实现方式中,过程700可包括由均匀编号的操作702至716中的一个或多个所图示的一个或多个操作、功能或动作。按照非限制性的示例,在相关时,在此可以参考本文利用图3-图6和图9中的任何一者描述的示例话音识别设备或系统来描述过程700。
过程700可包括“获得一般句子或一般短语或者两者的自动话音识别一般数据集”702,这指的是一般或通用语言模型数据集,例如用于ASR连续监视,例如用于个人助理应用(例如,苹果的“Siri”或者亚马逊的“Alexa”)那种。在这一点上,在一般数据集中可能没有对于任何特定领域的偏向,虽然可能有,例如对于特定行业或者特定应用用途或者目标。按照一种替代方案,一般语言模型可以偏向特定的领域(例如,某个行业或特定的市场或部门,例如“客户”),并且这是与被生成和在其中训练的领域数据集的领域不同的领域。当检测假阴性比检测假阳性更重要时,这可能是需要的。
过程700可包括“使用一般数据集训练一般语言模型”704。这是为经训练的一般语言模型要与下面描述的领域模型相组合时提供的。一般语言模型是利用已知技术来训练的。
过程700可包括“生成领域数据集”706。此操作可包括“选择具有来自领域列表的一个或多个领域单词或领域短语的一般句子或一般短语或者两者的至少一些部分”708。具体而言,这涉及到首先过滤一般数据集中的一般句子和一般短语,以找到与领域单词列表上的那些相匹配的领域单词或领域短语。按照一种形式,领域单词列表可包括单个单词和双词短语。按照一种方法,当该方法找到具有来自领域列表的领域语言的完整一般句子和完整一般短语以添加到领域数据集时,该选择停止。
按照另一种方法,一旦在一般句子或一般短语中找到了领域单词或短语,就会生成并且提取来自一般句子或一般短语的带有领域语言的语境n元语法,以只将语境n元语法添加到领域数据集,而不是完整的一般句子或者完整的一般短语。具体地,这可涉及生成多个语境n元语法,其中每一者在一般句子或一般短语中具有至少一个领域单词。按照一种方法,每个找到的领域单词或短语具有多个语境n元语法,其中这些n元语法的每一者包括来自单个一般句子或单个一般短语中的相同或单个位置的相同领域单词。按照一种形式,在同一个一般句子或一般短语中的同一领域单词的每个语境n元语法内,同一领域单词的位置是不同的。系统可以在带有领域单词的一般句子或短语上使用滑动窗口来生成同一领域单词或领域短语的多个n元语法(如图6所示)。这对于一般句子或一般短语中的领域单词或领域短语的每个实例重复进行。
在这种方法中,窗口中的单词总数可以是固定的,例如三个单词,虽然窗口大小可以变化,而不是在每个相同的领域单词或领域短语处滑动(例如,从1到3个单词或者从3到5个单词)。否则,这两种技术(固定窗口和变化窗口)都可以被使用,或者依据某些因素(例如,脏话与有害短语)在同一个一般数据集上交替使用,或者一起使用。
然后,此操作可包括“将所选择的一般句子或一般短语或者两者的至少一些部分添加到领域数据集”710。领域数据集最初可包括领域单词和短语的领域列表,虽然其他变化是可能的。按照一种方法,如前所述,省略n元语法生成,并且将所选择的完整一般句子和/或一般短语添加到领域数据集。按照另一种方法,当生成n元语法时,n元语法被添加到领域数据集,而不添加所选择的完整一般句子和完整一般短语。按照另一种方法,所选择的完整一般句子和短语以及n元语法都被添加到领域数据集。
过程700可包括“训练领域语言模型以识别领域语言,包括使用领域数据集”712。这里,领域语言模型是用添加了所选句子、短语和/或语境n元语法的领域数据集来训练的。按照一种方法,过程700可以在此停止,并且经训练的领域语言模型可以在运行时期间被用于领域语言检测。然而,已发现,当经训练的领域语言模型与经训练的一般语言模型相组合时,所得到的语言模型要准确得多,如下所示。
因此,过程700可包括“形成经训练的领域特定语言模型,包括组合一般语言模型和领域语言模型”714,并且按照一种形式使用语言模型插值。这种插值过程远远不止简单地将一个数据集的单词添加到另一个数据集的单词,而是通常可能包括组合在两个数据集中都找到的同一单词或短语的概率,如下文所说明。所得到的组合语言模型可被称为一般和领域特定语言模型。
过程700可包括“在执行自动话音识别的同时自动检测领域语言”716,并且在此,一般和领域特定语言模型在运行时期间被用于检测领域语言,同时也具有执行常规连续一般ASR的能力。
参考图8,提供了用于自动语境感知领域特定话音识别的计算机实现方法的示例过程800。在图示的实现方式中,过程800可包括由均匀编号的操作802至826中的一个或多个所图示的一个或多个操作、功能或动作。按照非限制性的示例,在相关时,在此可以参考本文利用图3-图5和图9中的任何一者描述的示例话音识别设备或系统来描述过程800。
过程800可包括“获得一般数据集”802。通用或一般语言模型可具有大量的通用数据来训练第一或一般(或通用)语言模型。这可包括来自各种各样不同的公开可用的语言数据库中的一个或多个的完整一般句子和完整一般短语,或者可能是定制的一般语言模型数据库。这里的示例使用了由各种来源的报纸、广播、书籍和其他语言内容的混合构成的数据库。一般数据集至少应当是已知具有被用于本方法的目标领域语言的可接受频率的。另外,一般数据集可具有一种语言的至少一百万单词。
过程800可包括“训练一般LM”804,其中可以通过公知的技术例如n元语法计数来训练一般数据库。参见例如www.cs.cmu.edu/afs/cs/project/cmt-55/lti/Courses/731/homework/HW8/srilm/man/html/ngram-count.1.html。
过程800可包括“获得领域列表”806,包括单词或短语的预定领域列表。在有害语言领域的情况下,该领域列表可包括被认为是不适当的、侮辱性的、伤害性的等等的单词或短语。当领域是有害语言时,这可包括脏话,但也可能是其他侮辱性的、伤害性的、不适当的等等的单词和短语,这取决于语境、说话时的环境(例如在线游戏)以及说话的方式(人的语音的语调、音调变化或者情绪)。例如,取决于说话的方式和地点,它可能是一种赞美而不是一种侮辱。可以用要监视的任何一种或多种语言来提供领域单词列表。参考图5,领域列表508可包括单个单词(1元语法)或者双字短语(2元语法),但也可以使用其他替代方案。
过程800可包括“过滤一般句子或短语以获得领域句子或短语”808,这可以由领域过滤器单元510执行。这里,领域列表508被用作目标列表,以在一般数据(一般数据集的一般句子和一般短语)中找到领域单词和短语。这涉及到循环经过可用的一般数据集,并且选择具有来自领域列表的领域单词或短语的所有一般句子或一般短语。按照一种形式,系统只搜索确切的领域单词或领域短语,而在这个时点忽略任何其他语境。然后选择一般句子或一般短语,并且对其进行标记(和/或提取)以便添加到领域数据集。
按照一种方法,对要添加到领域数据集的一般数据的选择结束于此,并且所选择的具有领域语言的一般句子和一般短语将被添加到领域数据集。这个操作提供了超越传统方法的领域语言模型益处,因为它提供了领域单词的频率及其语境的统计信息。这些模型在目标领域中的表现显著优于使用传统方法创建的模型。
然而,使用带有领域语言的完整一般句子和完整一般短语的领域语言模型,仍然可能是在相对有限数量的示例上进行训练的。具体而言,通常情况下,一般数据集没有足够的带有有害单词的句子来建立高度准确的领域数据集。因此,所得到的语言模型不仅可能偏向于领域单词,而且可能偏向于被用于训练领域语言模型的领域数据集中的一般句子中出现的所有单词和短语(n元语法)。由于在较小的训练子集(添加到领域数据集的一般句子和短语)中没有表示将会概率均等的大量的所有可能的单词序列,这可能会提高模型迷惑性,从而可能使得解码器感到困惑。
从而,过程800可包括“生成n元语法”810,并且这可以由n元语法生成器单元530来操作。这里,从所选择的具有领域单词或短语的一般句子和一般短语获得单词的序列(或者语境n元语法),以使得领域单词或短语在n元语法内。对于领域单词的每个单一实例生成多个n元语法。通过使用带有单个领域单词的多个n元语法而不是完整的一般句子,这更好地确保了领域单词被以其频率来表示,并且被绑定到其相邻语境,而不会对在句子中远离领域单词之处出现的短语引入不合需要的偏向。
为了如上所述生成和提取n元语法,这可包括“使用滑动窗口”812,如上文对于图6所说明的。滑动窗口602通常可以是固定的长度,例如三个单词,虽然可以替代地或者额外地使用不同的窗口大小,只要相同的领域单词或领域短语在该相同领域单词或领域短语的每个n元语法中即可。按照一种替代方案,窗口是固定的还是变化的,可以取决于其他因素,例如当在一般句子中连续找到多个领域短语时,潜在的领域短语的长度。在这种情况下,具有更长窗口的至少一些变化可能是有帮助的。
n元语法生成器530生成和提取n元语法,并且通过分别在五个或三个单词的5单词(或者其他长度,比如3单词)序列上滑动,并且从中创建n元语法,来利用滑动窗口控制左右语境长度。按照一种形式,在考虑到句子边界(或者开头或结尾)时,窗口大小可以被剪除。
过程800可包括“将一般来源领域语言添加到领域数据集”814,并且同样如前所述,这可包括“添加一般句子或短语”816,其中所选择的具有领域语言的一般句子和短语被放置在领域数据集中,而不是n元语法。或者,此操作814可包括“添加一般n元语法”818,指的是将语境n元语法或者只是n元语法添加到领域数据集,而不是完整的一般句子或者完整的一般短语。按照另外一种替代方案,n元语法和所选择的完整一般句子和一般完整短语都被添加到领域数据集。
按照一种方法,在任何一般数据被添加到领域数据集之前,领域列表(例如,有害单词和短语的列表508)也为领域数据集提供初始语料库。按照一种替代方法,领域列表只被用于过滤,而只有所选择的具有领域单词和短语的一般数据才形成领域数据集。这里,一般数据可以是n元语法或者完整的一般句子或一般短语,或者两者都是。
过程800接下来可包括“训练领域LM”820,以利用领域数据集来训练领域语言模型。领域语言模型的训练可以是无监督训练,并且可包括如上所述的n元语法计数技术。
过程800可包括“组合一般LM和领域LM”822。按照本文的方法,该方法使用n元语法语言模型插值。这可能涉及线性插值。插值权重可以被设置为一,这导致将来自两个模型的每个相同的n元语法(例如,相同短语或子短语中的相同单词)的概率相加。该权重被用作用于将线性概率合并在一起的缩放因子。n元语法的目标阶数为三(最大n元语法为3),这可被表示为
P(Wi|Wi-1,Wi-2)) (1)
其中,P是指在给定其他两个先前单词的情况下,三个单词中的最后一个存在的线性概率。W是权重,并且i是n元语法中的单词计数。
然后,将通用语言模型与在包含有害单词的语境绑定序列上训练的语言模型进行插值。当对基于n元语法的领域模型进行插值时,这比上面提到的采用完整一般句子和一般短语的方法有优势,因为它减少了用这些领域语言模型插值时引入的偏向。
按照一种选项,应当注意,经训练的n元语法语境感知领域模型,在不与整个一般模型插值的情况下,可以被单独使用,虽然那样领域模型可能是受限的,因为它将有许多可能未描述的n元语法。换句话说,领域模型于是将会缺少语言信息来解释ASR将作出的许多声学观察,通常是以完整句子的更大语境链以及来自一般模型插值的良好假阳性训练的形式。在这种情况下,额外地用1元语法语言模型对领域模型进行插值来平滑缺失的语境可能会有帮助。
否则,当使用n元语法语境感知领域模型而不与一般模型进行插值时,在参数未知时可以使用估计的参数。在这种技术中,当马尔科夫模型上的信息缺失时,使用标记为未知的符号,以迫使维特比搜索至少操作,虽然该符号仍然只是从训练中缺失的语境的近似。
然后,过程800可包括“存储或使用一般感知领域特定LM”824,并且当领域模型被单独使用时,提供类似的操作826。在这种情况下,这些模型可以立即被用于运行时使用,或者可以被存储以供以后运行时使用或者传输到远程设备以供运行时使用。所得到的一般和领域特定语言模型522可被用于连续的ASR。在这种情况下,人所说的任何话都可以被分析,并且单词被识别,以确定是否需要进一步的动作。
还将会明白,本文公开的模型训练方法和系统可被用于其他领域,而不仅仅是有害语言领域。具体而言,该训练可被用于政府对非法活动的音频监控,例如,搜索电话或社交网站视频中的诸如“恐怖分子”或者“炸弹”之类的单词。否则,零售商和有被客户访问的建筑物的企业可以在其商店或业务中执行音频监视,以衡量客户兴趣,这可用于确定正在销售的物品的特定位置或者显示营销素材以增加销售。这可以用关于特定主题的非常大的短语数据库来执行,并且可被用于改善特定环境下的整体WER,因为本方法将语境纳入了领域语言模型中。
本方法也可被公共场所中使用的自动售货机所使用,例如自动柜员机(automaticteller machine,ATM)、食品自动贩卖机或者自动售票机,仅举几例,在这里减少触摸屏上的物理接触量对于减少人与人之间的细菌传播是很重要的。在这些情况下,嘈杂的公共环境中的ASR系统通常很难做到准确。另外,使用这些机器的人可能不知道在使用小词汇量ASR关键字系统时需要的确切关键字,或者在自动售货机附近说出关键字所需要的音量。本方法避免或者减少了这些问题,并且消除了教导如何使用自动售货机的音频识别的需要,因为本方法有能力从包括说出的整个句子的一般语言中提取关键字,从而改善了公共ASR的准确性。
另外,本方法和系统是嵌入式的单个ASR系统,它可以降低存储器容量要求。当用户例如希望同时使用关键字命令(例如调暗灯光)并且转录会议室中的会议内容时,可能只需要所公开的具有单个领域的单个插值语言模型。否则,在这种情形中,传统技术将要求有两个语言模型:ASR模型,以及单独的语音唤醒模型,这进而要求更大的存储器容量。从而,本方法允许了在不恶化WER的情况下,并且在提供高准确性的同时,使用组合的单个模型。
实验结果
下面是使用基于HMM-LSTM链Kaldi系统的ASR系统连同先前最先进的语言模型(表示为图1和图2的方法或系统)和所公开的方法(表示为图5(完整)或图5(n元语法)的方法或系统)对所公开的方法、系统和语言模型进行评估的结果。实验的评估过程使用了来自声学模型的得分网格,并且使用了由语言模型提供权重的WFST解码,其在ASR系统中执行快速在线解码。声学模型,就像链模型本身一样,在DNN的输出端(当前)帧率降低了3倍的情况下与使用的传统DNN-HMM没有区别。DNN的输入特征处于每秒100帧的原始帧率。所使用的DNN可具有递归连接或者内部拼接,这样DNN就不是纯粹的前馈DNN了。表格1显示,用这种语言模型进行的实验取得了非常高的有害单词召回性能,并且识别延时非常低。
表格1:实验结果
在表格1中,实验名称表示使用的方法的类型。传统的基线方法是如图1中的传统ASR,传统的有害短语方法使用领域特定的数据集,比如领域列表,如图2中所示,句子方法,是公开的方法之一,它采用带有领域单词的一般句子,如用图5(完整)的系统所描述,并且语境窗口方法是指图5(n元语法)中公开的系统,它使用n元语法语境窗口来寻找对领域数据集的添加。实验名称后面的比率指的是插值比率。左边的数字是指一般语言模型的插值权重,并且右边的数字是指领域语言模型的插值权重。例如,1:0.3意味着领域语言模型的所有概率降低了3.3(3)倍。
单词错误率(WER)度量衡量三个不同的数据集:(1)discord,这是从游戏频道收集的定制专有数据集,(2)i139,这是来自SpeechOcean的商业数据集,以及(3)librispeech,这是由书籍阅读的录音构成的公开可得的数据集。WER可以被计算为:
其中S是替换的数目,D是删除的数目,I是插入的数目,C是正确单词的数目,并且N是参考中的单词的数目(N=S+D+C)。
召回率是指在一个数据集中对所选择的短语的肯定检测与所有选择的短语的比率。这里的实验中用于召回率的数据集是discord数据集的子集。LAT90是对所需缓冲器容量的度量,或者换句话说,为了转录90%的单词,音频缓冲区需要多长(或者多大)。在在线系统中,当设置音频缓冲区大小时,这个度量被用来平衡质量与延时。
实验表明,本方法和系统显著改善了整个系统的LAT90,而WER的增大却非常微弱。这将转化为更好的用户体验,因为识别的结果可以更快地被消耗和解释。在有害单词检测的情况下,如果期望的结果是给定的有害单词被“用哔声盖过”,那么可以用更短的音频缓冲来识别更多的单词,这将导致用户之间交流的延时减少。此外,与传统系统相比,实现了更高的召回率,这在许多用例中是可取的,例如有害单词检测,其中更多的假阳性比假阴性要好。
此外,可以响应于由一个或多个计算机程序产品提供的指令来从事图7-图8中的过程的任何一个或多个操作。这种程序产品可包括提供指令的信号承载介质,这些指令当被例如处理器执行时,可提供本文描述的功能。可在任何形式的一个或多个机器可读介质中提供计算机程序产品。从而,例如,包括一个或多个处理器核心的处理器可响应于被一个或多个计算机或机器可读介质输送到处理器的程序代码和/或指令或指令集而从事这里的示例过程的一个或多个操作。一般而言,机器可读介质可以以程序代码和/或指令或指令集的形式输送软件,所述程序代码和/或指令或指令集可使得任何设备和/或系统如本文所述那样来运作。机器或计算机可读介质可以是非暂态物品或介质,例如非暂态计算机可读介质,并且可结合上文提及的任何示例或者其他示例被使用,只不过其不包括暂态信号本身。其确实包括除了信号本身以外的可以以“暂态”方式暂时保存数据的那些元素,例如RAM等等。
按照在本文描述的任何实现方式中所使用的,术语“模块”指的是被配置为提供本文描述的功能的软件逻辑、固件逻辑、硬件逻辑和/或电路的任意组合。软件可体现为软件封装、代码和/或指令集或指令,并且如本文描述的任何实现方式中使用的“硬件”例如可单一地或者组合地包括硬连线电路、可编程电路、状态机电路、固定功能电路、执行单元电路、和/或存储被可编程电路执行的指令的固件。模块可集体地或者个体地体现为形成更大系统的一部分的电路,例如集成电路(IC)、片上系统(SoC),等等。
按照在本文描述的任何实现方式中使用的,术语“逻辑单元”指的是被配置为提供本文描述的功能的固件逻辑和/或硬件逻辑的任意组合。按照在本文描述的任何实现方式中使用的,“硬件”可例如单独或者按任意组合包括硬连线电路、可编程电路、状态机电路、和/或存储由可编程电路执行的指令的固件。逻辑单元可集体地或者个体地体现为形成更大系统的一部分的电路,例如集成电路(IC)、片上系统(SoC),等等。例如,逻辑电路可体现在逻辑电路中,以用于经由固件或硬件实现本文论述的编码系统。本领域普通技术人员将会明白,由硬件和/或固件执行的操作或者可经由软件来实现,软件可体现为软件包、代码和/或指令集或指令,并且还将会明白逻辑单元也可利用软件的一部分来实现其功能。
按照本文描述的任何实现方式中使用的,术语“组件”可以指模块或者指逻辑单元,因为这些术语在上文描述了。因此,术语“组件”可以指被配置为提供本文描述的功能的软件逻辑、固件逻辑和/或硬件逻辑的任意组合。例如,本领域普通技术人员将会明白,由硬件和/或固件执行的操作或者可经由软件模块来实现,软件模块可体现为软件包、代码和/或指令集,并且还将会明白,逻辑单元也可利用软件的一部分来实现其功能。
按照在本文的任何实现方式中使用的,术语“电路”可例如单独或者按任意组合包括或形成硬连线的电路、可编程电路(例如包括一个或多个个体指令处理核心的计算机处理器)、状态机电路、和/或存储由可编程电路执行的指令的固件。该电路可包括处理器(“处理器电路”)和/或控制器,该处理器和/或控制器被配置为执行一个或多个指令以执行本文描述的一个或多个操作。指令可体现为例如应用、软件、固件等等,其被配置为使得电路执行上述任何操作。软件可体现为记录在计算机可读存储设备上的软件包、代码、指令、指令集和/或数据。以层次化的方式,软件可体现或实现为包括任意数目的进程,而进程又可体现或实现为包括任意数目的线程,等等。固件可体现为被硬编码(例如,非易失性)在存储器设备中的代码、指令或指令集和/或数据。电路可集体地或者个体地体现为形成更大系统的一部分的电路,例如集成电路(IC)、专用集成电路(application-specific integratedcircuit,ASIC)、片上系统(SoC)、桌面型计算机、膝上型计算机、平板计算机、服务器、智能电话,等等。其他实现方式可被实现为由可编程控制设备执行的软件。在这种情况下,术语“电路”旨在包括软件和硬件的组合,例如可编程控制设备或者能够执行该软件的处理器。如本文所述,可使用形成电路、处理器电路的硬件元素、软件元素或者其任意组合来实现各种实现方式。硬件元素的示例可包括处理器、微处理器、电路、电路元件(例如,晶体管、电阻器、电容器、电感器,等等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(programmable logic device,PLD)、数字信号处理器(digital signal processor,DSP)、现场可编程门阵列(field programmable gate array,FPGA)、逻辑门、寄存器、半导体器件、芯片、微芯片、芯片组,等等。
参考图9,根据本公开的至少一些实现方式布置了示例音频处理系统900。在各种实现方式中,示例音频处理系统900可具有(一个或多个)音频捕捉设备902以形成或接收声学信号数据。这可通过各种方式来实现。从而,在一种形式中,系统900可以是音频捕捉设备,例如麦克风,并且音频捕捉设备902在这种情况下,可以是麦克风硬件和传感器软件、模块或者其他组件。在其他示例中,系统900可具有包括麦克风或者可以是麦克风的音频捕捉设备902,并且逻辑模块904可以与音频捕捉设备902远程通信,或者可以以其他方式通信地耦合到音频捕捉设备902,以便对声学数据进行进一步处理。
在任一情况下,这种技术可包括电话、智能电话、听写机、其他声音记录机、移动设备或者车载设备,或者这些的任意组合,或者具有一个或多个麦克风的任何设备或机器或计算机。从而,在一种形式中,音频捕捉设备902可包括音频捕捉硬件,其中包括一个或多个传感器以及致动器控制。这些控制可以是传感器模块或组件的一部分,用于操作传感器。传感器组件可以是音频捕捉设备902的一部分,或者可以是逻辑模块904的一部分,或者两种情况都存在。这种传感器组件可用于将声波转换成电声信号。音频捕捉设备902也可具有A/D转换器、其他滤波器,等等,以提供数字信号来用于话音识别处理。
在图示的示例中,逻辑模块904可以是本地的,或者可以是远离麦克风902的。在任一这种情况下,系统900或逻辑模块904可以在任何计算设备上,无论是远程或者本地服务器、桌面型电脑、膝上型电脑、平板设备、或者智能电话,任何计算机外围设备,比如打印机、电视、机顶盒、游戏机,等等,任何物联网(internet-of-things,IoT)设备、自动贩卖机或者自动售货机、银行机器、或者任何与用户交互的机器。
逻辑模块904可包括具有ASR单元908的话音识别单元906,该ASR单元908具有ASR系统的那些组件,例如具有语言模型400(图4)的系统300(图3),以在运行时期间执行ASR,如上所述。逻辑单元904还可以具有语境感知领域特定语言模型训练单元910,以根据本文描述的方法训练语言模式,并且训练类似于语言模型400的一般感知领域特定语言模型950。
训练单元910可具有带有一般语言模型914的一般语言模型单元912、领域归档单元916、n元语法生成单元918、带有n元语法添加器单元942和/或一般句子或短语添加器单元944的语境感知领域语言模型训练数据集单元940。训练单元910还可以具有操作领域语言模型948的领域语言模型单元946,以及操作插值或其他模型组合单元952和一般和语境感知领域特定语言模型954的一般和语境感知领域特定语言模型单元950。任何数据集956和原始领域单词列表958可以被存储在存储器924中。逻辑单元904还可包括终端应用960,其可以是或者不是话音识别单元906的一部分。终端应用或设备可以接收ASR和领域检测判决,并且启动对所识别的话音的响应,如上所述。所有这些单元都类似于上面在系统300、400和/或500中提到的单元,并且可以执行类似的任务,如单元的标签所指示。
系统900可具有形成一个或多个处理器的处理器电路920,这些处理器可包括一个或多个CPU和/或专用加速器922,例如英特尔Atom和/或其他GPU,系统900还可具有存储器存储库924,其可保存所提到的训练数据以及ASR相关操作所需要的任何运行时数据。在一个示例实现方式中,音频处理系统900可具有显示器934、形成与显示器通信地耦合的至少一个处理器的处理器电路920、与处理器通信地耦合的存储器924。可以提供天线936,用于将与输入声学信号相匹配的最佳单词序列、领域语言识别或者其他相关命令传输给可根据这种确定结果采取行动的其他设备。否则,话音识别过程的结果可被存储在存储器924中。
如图所示,这些组件中的任何一者可能够与彼此通信和/或与逻辑模块904和/或音频捕捉设备902的一些部分通信。从而,由处理器电路920形成的处理器可以通信地耦合到音频捕捉设备902和逻辑模块904两者以便操作这些组件。按照一种方法,虽然音频处理系统900如图9所示可包括与特定的组件或模块相关联的一组特定的块或动作,但这些块或动作可与不同于这里图示的特定组件或模块的组件或模块相关联。
参考图10,根据本公开的示例系统1000操作本文描述的音频处理系统的一个或多个方面。从下面描述的系统组件的性质可理解,这种组件可与上述的音频处理系统的某个或某些部分相关联,或者用于操作这个或这些部分。在各种实现方式中,系统1000可以是媒体系统,虽然系统1000不限于此情境。例如,系统1000可被包含到以下各项中:麦克风、个人计算机(personal computer,PC)、膝上型计算机、超便携膝上型计算机、平板设备、触摸板、便携计算机、手持计算机、掌上计算机、个人数字助理(personal digital assistant,PDA)、蜂窝电话、组合蜂窝电话/PDA、电视、智能设备(例如,智能电话、智能平板或智能电视)、移动互联网设备(mobile internet device,MID)、消息传递设备、数据通信设备,等等。
在各种实现方式中,系统1000包括与显示器1020耦合的平台1002。平台1002可从内容设备接收内容,其中内容设备例如是(一个或多个)内容服务设备1030或者(一个或多个)内容交付设备1040或者其他类似的内容源。包括一个或多个导航特征的导航控制器1050可被用于与例如平台1002、扬声器子系统1060、麦克风1070和/或显示器1020交互。在下文更详述描述这些组件的每一者。
在各种实现方式中,平台1002可包括芯片组1005、处理器1010、存储器1012、存储装置1014、音频子系统1004、图形子系统1015、应用1016和/或无线电台1018的任意组合。芯片组1005可提供处理器1010、存储器1012、存储装置1014、音频子系统1004、图形子系统1015、应用1016和/或无线电台1018之间的相互通信。例如,芯片组1005可包括能够提供与存储装置1014的相互通信的存储适配器(未描绘)。
处理器1010可被实现为复杂指令集计算机(Complex Instruction SetComputer,CISC)或精简指令集计算机(Reduced Instruction Set Computer,RISC)处理器;x86指令集兼容处理器、多核或者任何其他微处理器或中央处理单元(CPU)。在各种实现方式中,处理器1010可以是(一个或多个)双核处理器、(一个或多个)双核移动处理器,等等。
存储器1012可被实现为易失性存储器设备,例如但不限于随机访问存储器(Random Access Memory,RAM)、动态随机访问存储器(Dynamic Random Access Memory,DRAM)、或者静态RAM(Static RAM,SRAM)。
存储装置1014可被实现为非易失性存储设备,例如但不限于磁盘驱动器、光盘驱动器、磁带驱动器、内部存储设备、附接存储设备、闪存、电池后备SDRAM(同步DRAM)、和/或网络可访问存储设备。在各种实现方式中,例如当包括多个硬盘驱动器时,存储装置1014可包括技术来为有价值的数字媒体增加存储性能增强保护。
音频子系统1004可以执行对诸如声学信号之类的音频的处理,以用于如本文所述的话音识别和领域检测和/或语音识别。音频子系统1004可包括一个或多个处理单元和加速器。这样的音频子系统可以被集成到处理器1010或芯片组1005中。在一些实现方式中,音频子系统1004可以是与芯片组1005通信地耦合的独立卡。接口可用于将音频子系统1004与扬声器1060、麦克风1070和/或显示器1020通信地耦合。或者,可以使用分立的音频处理器。作为另外一种实现方式,音频功能可由包括多核处理器在内的通用处理器提供。在另外的实现方式中,这些功能可被实现在消费电子设备中。
图形子系统1015可以执行诸如静态或视频之类的图像的处理以便显示。图形子系统1015例如可以是图形处理单元(graphics processing unit,GPU)或者视觉处理单元(visual processing unit,VPU)。模拟或数字接口可被用于通信地耦合图形子系统1015和显示器1020。例如,该接口可以是高清晰度多媒体接口、显示端口、无线HDMI和/或无线HD符合技术中的任何一者。图形子系统1015可被集成到处理器1010或芯片组1005中。在一些实现方式中,图形子系统1015可以是与芯片组1005通信地耦合的独立卡。
无线电台1018可包括能够利用各种适当的无线通信技术来发送和接收信号的一个或多个无线电台。这种技术可涉及跨一个或多个无线网络的通信。示例无线网络包括(但不限于)无线局域网(wireless local area network,WLAN)、无线个人区域网(wirelesspersonal area network,WPAN)、无线城域网(wireless metropolitan area network,WMAN)、蜂窝网络、以及卫星网络。在跨这种网络进行通信时,无线电台1018可根据任何版本的一个或多个适用的标准来进行操作。
在各种实现方式中,显示器1020可包括任何电视型监视器或显示器。显示器1020可包括例如计算机显示屏幕、触摸屏显示器、视频监视器、诸如IoT设备之类的任何设备上的屏幕、HMD、智能眼镜、类似电视的设备、和/或电视。显示器1020可以是数字的和/或模拟的。在各种实现方式中,显示器1020可以是全息显示器。另外,显示器1020可以是可接收视觉投影的透明表面。这种投影可以传达各种形式的信息、图像和/或对象。例如,这种投影可以是移动增强现实(mobile augmented reality,MAR)应用的视觉覆盖。在一个或多个软件应用1016的控制下,平台1002可在显示器1020上显示用户界面1022。
在各种实现方式中,(一个或多个)内容服务设备1030可由任何国家的、国际的和/或独立的服务所容宿并且从而例如是平台1002经由互联网可访问的。(一个或多个)内容服务设备1030可以耦合到平台1002和/或显示器1020、扬声器1060和麦克风1070。平台1002和/或(一个或多个)内容服务设备1030可耦合到网络1065以向和从网络1065传输(例如,发送和/或接收)媒体信息。(一个或多个)内容交付设备1040也可耦合到平台1002、扬声器1060、麦克风1070和/或显示器1020。
在各种实现方式中,(一个或多个)内容服务设备1030可包括麦克风、有线电视盒、个人计算机、网络、电话、能够交付数字信息和/或内容的具备互联网能力的设备或电器、以及能够经由网络1065或直接地在内容提供者与平台1002和扬声器子系统1060、麦克风1070和/或显示器1020之间单向或双向地传输内容的任何其他类似设备。将会明白,可经由网络1060单向地和/或双向地向和从系统1000中的组件中的任何一者和内容提供者传输内容。内容的示例可包括任何媒体信息,例如包括视频、音乐、医疗和游戏信息,等等。
(一个或多个)内容服务设备1030可接收内容,例如有线电视节目,包括媒体信息、数字信息和/或其他内容。内容提供者的示例可包括任何有线电视或卫星电视或者无线电或互联网内容提供者。提供的示例并不意图以任何方式限制根据本公开的实现方式。
在各种实现方式中,平台1002可以从具有一个或多个导航特征的导航控制器1050接收控制信号。控制器1050的导航特征例如可用于与用户界面1022进行交互。在实现方式中,导航控制器1050可以是指点设备,该指点设备可以是允许用户将空间(例如,连续的和多维的)数据输入到计算机中的计算机硬件组件(具体而言是人机接口设备)。诸如图形用户界面(graphical user interface,GUI)以及电视机和监视器之类的许多系统允许用户利用物理手势来控制计算机或电视机和向其提供数据。音频子系统1004也可用于控制界面1022上的物品的运动或者命令的选择。
控制器1050的导航特征的移动可被在显示器(例如,显示器1020)上显示的指针、光标、聚焦环或其他视觉指示物的移动或者被音频命令来复制在显示器上。例如,在软件应用1016的控制下,位于导航控制器1050上的导航特征例如可被映射到在用户界面1022上显示的虚拟导航特征。在实施例中,控制器1050可以不是单独的组件,而是可被集成到平台1002、扬声器子系统1060、麦克风1070和/或显示器1020中。然而,本公开并不限于本文示出或描述的元素或者情境。
在各种实现方式中,例如,驱动器(未示出)可包括使得用户能够在初始启动之后通过触摸按钮(当被启用时)或者通过听觉命令来像电视机那样即刻开启和关闭平台1002的技术。程序逻辑可允许平台1002即使在平台被“关闭”时也可将内容流传输到媒体适配器或者(一个或多个)其他内容服务设备1030或(一个或多个)内容交付设备1040。此外,芯片组1005可包括对例如8.1环绕立体声音频和/或高清晰度(7.1)环绕立体声音频的硬件和/或软件支持。驱动器可包括用于集成的听觉或图形平台的听觉或图形驱动器。在实施例中,听觉或图形驱动器可包括外围组件互连(peripheral component interconnect,PCI)快速图形卡。
在各种实现方式中,系统1000中示出的组件中的任何一个或多个可被集成。例如,平台1002和(一个或多个)内容服务设备1030可被集成,或者平台1002和(一个或多个)内容交付设备1040可被集成,或者平台1002、(一个或多个)内容服务设备1030和(一个或多个)内容交付设备1040可被集成。在各种实施例中,平台1002、扬声器1060、麦克风1070和/或显示器1020可以是集成的单元。例如,显示器1020、扬声器1060和/或麦克风1070和(一个或多个)内容服务设备1030可以被集成,或者显示器1020、扬声器1060和/或麦克风1070和(一个或多个)内容交付设备1040可以被集成。这些示例并不意欲限制本公开。
在各种实施例中,系统1000可被实现为无线系统、有线系统、或者两者的组合。当被实现为无线系统时,系统1000可包括适合于通过无线共享介质进行通信的组件和接口,例如一个或多个天线、发送器、接收器、收发器、放大器、滤波器、控制逻辑,等等。无线共享介质的示例可包括无线频谱的一些部分,例如RF频谱等等。当被实现为有线系统时,系统1000可包括适合于通过有线通信介质进行通信的组件和接口,例如输入/输出(I/O)适配器、将I/O适配器与相应的有线通信介质连接的物理连接器、网络接口卡(networkinterface card,NIC)、盘控制器、视频控制器、音频控制器,等等。有线通信介质的示例可包括导线、电缆、金属引线、印刷电路板(printed circuit board,PCB)、背板、交换结构、半导体材料、双绞线、同轴电缆、光纤,等等。
平台1002可建立一个或多个逻辑或物理信道来传输信息。该信息可包括媒体信息和控制信息。媒体信息可以指表示打算给用户的内容的任何数据。内容的示例例如可包括来自语音交谈的数据、视频会议、流视频和音频、电子邮件(“email”)消息、语音邮件消息、字母数字符号、图形、图像、视频、音频、文本,等等。来自语音交谈的数据可例如是话音信息、静默时段、背景噪声、舒适噪声、音调,等等。控制信息可以指表示打算给自动化系统的命令、指令或控制字的任何数据。例如,控制信息可被用于将媒体信息路由过系统,或者指示节点以预定的方式处理媒体信息。然而,实现方式并不限于图10中示出或描述的元素或情境。
参考图11,根据本公开的至少一些实现方式可以布置小外形参数设备。在一些示例中,可经由设备1100来实现系统900或1000。在其他示例中,其他设备或系统或者其一些部分可经由设备1100实现。在各种实现方式中,例如,设备1100可实现为具有无线能力的移动计算设备。移动计算设备例如可以指具有处理系统和移动电源或电力供应(例如一个或多个电池)的任何设备。
移动计算设备的示例可包括:个人计算机(PC)、膝上型计算机、超便携膝上型计算机、平板设备、触摸板、便携计算机、手持计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、智能设备(例如,智能电话、智能平板或智能移动电视)、移动互联网设备(MID)、消息传递设备、数据通信设备、相机,等等。
移动计算设备的示例还可包括被布置为被人穿戴的计算机,例如手腕计算机、手指计算机、戒指计算机、眼镜计算机、皮带扣计算机、臂环计算机、鞋子计算机、衣服计算机、以及其他可穿戴计算机。在各种实现方式中,例如,移动计算设备可被实现为除了语音通信和/或数据通信以外还能够执行计算机应用的智能电话。虽然作为示例可利用被实现为智能电话的移动计算设备来描述一些实现方式,但可明白也可利用其他无线移动计算设备来实现其他实现方式。实现方式不限于此情境中。
如图11所示,设备1100可包括具有正面1101和背面1102的外壳。设备1100包括显示器1104、输入/输出(I/O)设备1106和集成天线1108。设备1100还可包括导航特征1112和一个或多个麦克风1116和一个或多个扬声器1114。I/O设备1106可包括用于将信息输入到移动计算设备中的任何适当的I/O设备。I/O设备1106的示例可包括字母数字键盘、数字小键盘、触摸板、输入键、按钮、开关、如本文所述的音频分析或语音识别设备和软件,等等。信息可通过麦克风1116被输入到设备1100中,或者可被本文描述的方法和系统所数字化。如图所示,设备1100还可包括集成到设备1100的背面1102(或别处)的相机1105(例如,包括镜头、光圈和成像传感器)和闪光灯1110。
可利用硬件元素、软件元素或者两者的组合来实现各种实现方式。硬件元素的示例可包括处理器、微处理器、电路、电路元件(例如,晶体管、电阻器、电容器、电感器,等等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、固定功能硬件、现场可编程门阵列(FPGA)、逻辑门、寄存器、半导体器件、芯片、微芯片、芯片组,等等。软件的示例可包括软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件接口、应用程序接口(application program interface,API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号,或者这些的任意组合。确定一实现方式是否利用硬件元素和/或软件元素来实现可根据任意数目的因素而变化,例如期望的计算速率、功率水平、耐热性、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度以及其他设计或性能约束。
至少一个实现方式的一个或多个方面可由存储在机器可读介质上的表示处理器内的各种逻辑的代表性指令来实现,这些指令当被机器读取时使得该机器制作逻辑来执行本文描述的技术。这种被称为“知识产权(intellectual property,IP)核心”的表现形式可被存储在有形机器可读介质上并且被提供到各种客户或制造设施以加载到实际制作该逻辑或处理器的制作机器中。
虽然已参考各种实现方式来描述了本文记载的某些特征,但此描述并不打算被从限制意义上来解释。因此,对本公开所属领域的技术人员来说显而易见的对本文描述的实现方式的各种修改以及其他实现方式,被认为属于本公开的精神和范围内。
以下示例属于进一步实现方式。
按照一个示例的一个或多个第一实现方式,一种由计算机实现的音频处理的方法包括获得一般句子或一般短语或者两者的自动话音识别一般数据集;生成领域数据集,包括选择带有来自领域列表的一个或多个领域单词或领域短语的一般句子或一般短语或者两者的至少一些部分,并且将所选择的一般句子或一般短语或者两者的至少一些部分添加到所述领域数据集;并且训练领域语言模型,该领域语言模型被布置为识别领域单词、领域短语以及领域句子的至少一些部分,其中包括使用所述领域数据集。
按照一个或多个第二实现方式,关于所述第一实现方式,又及,其中,所述领域是有害语言,所述有害语言在当音频被捕捉来由所训练的领域语言模型分析时存在的环境中被认为是不合需要或者不适当的语言。
按照一个或多个第三实现方式,关于所述第一或第二实现方式,又及,其中,要被添加到所述领域数据集的一般句子或一般短语的至少一些部分是来自所述一般数据集的整个句子或整个短语。
按照一个或多个第四实现方式,关于所述第一至第三实现方式中的任一者,又及,其中,所述方法生成语境n元语法以添加到所述领域数据集包括选择带有所述领域单词或领域短语的所选择的一般句子或一般短语中的n元语法。
按照一个或多个第五实现方式,关于所述第四实现方式,又及,其中,所述方法包括生成多个语境n元语法,其中每一者在所述一般句子或一般短语中具有至少一个领域单词,其中,生成多个语境n元语法包括在带有所述领域单词的一般句子或一般短语上使用滑动窗口。
按照一个或多个第六实现方式,关于所述第四实现方式,又及,其中,生成语境n元语法包括选择多个语境n元语法,所述多个语境n元语法的每一者包括来自单个一般句子或单个一般短语的相同领域单词,其中,在相同一般句子或一般短语中的相同领域单词的每个语境n元语法内,相同领域单词的位置是不同的。
按照一个或多个第七实现方式,关于所述第四至第六实现方式中的任一者,又及,其中,单词总数中的语境n元语法大小保持固定。
按照一个或多个第八实现方式,关于所述第四至第七实现方式中的任一者,又及,其中,所述语境n元语法的每一者是三到五个单词。
按照一个或多个第九实现方式,关于所述第四实现方式,又及,其中,生成语境n元语法包括选择多个语境n元语法,所述多个语境n元语法的每一者包括来自一般句子或一般短语之一中的相同位置的相同领域单词,其中,每个语境n元语法中的来自所述一般句子或一般短语的单词的数目在所述多个语境n元语法中是不同的。
按照一个或多个第十实现方式,关于所述第一至第九实现方式中的任一者,又及,其中,所述方法包括将所述一般句子或一般短语的语境n元语法添加到所述领域数据集,而不是将所选择的一般句子和一般短语添加到与所述语境n元语法相关联的领域数据集。
按照一个或多个第十一实现方式,关于所述第一至第十实现方式的任一者,又及,其中,所述方法包括训练一般语言模型;并且形成经训练的一般和领域特定语言模型,包括组合所述一般语言模型和所述领域语言模型。
按照示例的一个或多个第十二实现方式,一种由计算机实现的自动领域话音识别的系统包括存储器,其存储人类话音的音频信号,以及处理器电路,其形成与所述存储器通信地连接的至少一个处理器,所述至少一个处理器被布置为通过以下步骤来进行操作:获得一般句子或一般短语或者两者的自动话音识别一般数据集;生成领域数据集,包括选择带有来自领域列表的一个或多个领域单词或领域短语的一般句子或一般短语或者两者的至少一些部分,并且将所选择的一般句子或一般短语或者两者的至少一些部分添加到所述领域数据集;并且训练领域语言模型,该领域语言模型被布置为识别领域单词、领域短语以及领域句子的至少一些部分,其中包括使用所述领域数据集。
按照一个或多个第十三实现方式,关于所述第十二实现方式,又及,其中,要被添加到所述领域数据集的一般句子或一般短语的至少一些部分是来自所述一般数据集的整个句子或整个短语。
按照一个或多个第十四实现方式,关于所述第十二或第十三实现方式,又及,其中,所述至少一个处理器被布置为通过以下步骤来进行操作:生成语境n元语法以添加到所述领域数据集,包括选择带有所述领域单词或领域短语的一般句子或一般短语中的n元语法。
按照一个或多个第十五实现方式,关于所述第十二至第十四实现方式中的任一者,又及,其中,所述至少一个处理器被布置为通过以下步骤来进行操作:生成多个语境n元语法,其中每一者在所述一般句子或一般短语中具有至少一个领域单词,其中,所述生成包括在带有所述领域单词的一般句子或一般短语上使用滑动窗口。
按照一个或多个第十六实现方式,关于所述第十四至第十五实现方式中的任一者,又及,其中,生成语境n元语法包括选择多个语境n元语法,所述多个语境n元语法的每一者包括来自单个一般句子或单个一般短语的相同领域单词,其中,在相同一般句子或一般短语中的相同领域单词的每个语境n元语法内,相同领域单词的位置是不同的。
按照一个或多个第十七实现方式,关于所述第十六实现方式,又及,其中,单词总数中的语境n元语法大小保持固定。
按照一个或多个第十八实现方式,关于所述第十二至第十七实现方式中的任一者,又及,其中,所述至少一个处理器被布置为通过以下步骤来进行操作:训练一般语言模型;并且形成经训练的一般和领域特定语言模型,包括组合所述一般语言模型和所述领域语言模型。
按照示例的一个或多个第十九实现方式,至少一个非暂态计算机可读介质包括多个指令,所述多个指令响应于在计算设备上被执行,使得所述计算设备通过以下步骤来进行操作:获得一般句子或一般短语或者两者的自动话音识别一般数据集;生成领域数据集,包括选择带有来自领域列表的一个或多个领域单词或领域短语的一般句子或一般短语或者两者的至少一些部分,并且将所选择的一般句子或一般短语或者两者的至少一些部分添加到所述领域数据集;并且训练领域语言模型,该领域语言模型被布置为识别领域单词、领域短语以及领域句子的至少一些部分,其中包括使用所述领域数据集。
按照一个或多个第二十实现方式,关于所述第十九实现方式,又及,其中,要被添加到所述领域数据集的一般句子或一般短语的至少一些部分是来自所述一般数据集的完整句子或完整短语。
按照一个或多个第二十一实现方式,关于所述第十九或第二十实现方式,又及,其中,所述指令使得所述计算设备通过以下步骤来进行操作:生成语境n元语法以添加到所述领域数据集,包括选择带有所述领域单词或领域短语的所选择的一般句子或一般短语中的n元语法。
按照一个或多个第二十二实现方式,关于所述第二十一实现方式,又及,其中,生成语境n元语法包括选择多个语境n元语法,所述多个语境n元语法的每一者包括来自单个一般句子或单个一般短语的相同位置的相同领域单词,其中,在相同一般句子或一般短语中的相同位置处的相同领域单词的每个语境n元语法内,相同领域单词的位置是不同的。
按照一个或多个第二十三实现方式,关于所述第十九至第二十二实现方式的任一者,又及,其中,固定窗口大小和变化窗口大小都被用于从所选择的一般句子或一般短语生成n元语法以将所述n元语法添加到所述领域数据集。
按照一个或多个第二十四实现方式,关于所述第十九至第二十三实现方式的任一者,又及,其中,所述指令使得所述计算设备通过以下步骤来进行操作:选择并且添加以下两者:(1)将完整一般句子和一般短语添加到所述领域数据集,以及(2)将来自所述一般句子和一般短语内的带有所述领域语言的n元语法添加到所述领域数据集。
按照一个或多个第二十五实现方式,关于所述第十九至第二十四实现方式的任一者,又及,其中,所述指令使得所述计算设备通过以下步骤来进行操作:训练所述一般语言模型;并且形成经训练的领域特定语言模型,包括组合所述一般语言模型和所述领域语言模型。
在另外一个示例中,至少一个机器可读介质可包括多个指令,所述多个指令响应于在计算设备上被执行,使得所述计算设备执行根据上述示例中的任一者所述的方法。
在另外一个示例中,一种装置可包括用于执行根据上述示例中的任一者所述的方法的装置。
上述示例可包括特征的特定组合。然而,上述示例不限于此,并且在各种实现方式中,上述示例可包括仅从事这种特征的子集,从事这种特征的不同顺序,从事这种特征的不同组合,和/或从事除明确列出的那些特征以外的附加特征。例如,对于这里的任何示例方法描述的所有特征可对于任何示例装置、示例系统和/或示例物品实现,反之亦然。
Claims (25)
1.一种由计算机实现的音频处理的方法,包括:
获得一般句子或一般短语或者两者的自动话音识别一般数据集;
生成领域数据集,包括选择带有来自领域列表的一个或多个领域单词或领域短语的一般句子或一般短语或者两者的至少一些部分,并且将所选择的一般句子或一般短语或者两者的至少一些部分添加到所述领域数据集;并且
训练领域语言模型,该领域语言模型被布置为识别领域单词、领域短语以及领域句子的至少一些部分,其中包括使用所述领域数据集。
2.如权利要求1所述的方法,其中,所述领域是有害语言,所述有害语言在当音频被捕捉来由所训练的领域语言模型分析时存在的环境中被认为是不合需要或者不适当的语言。
3.如权利要求1所述的方法,其中,要被添加到所述领域数据集的一般句子或一般短语的至少一些部分是来自所述一般数据集的整个句子或整个短语。
4.如权利要求1-3中任一项所述的方法,包括生成语境n元语法以添加到所述领域数据集,包括选择带有所述领域单词或领域短语的所选择的一般句子或一般短语中的n元语法。
5.如权利要求4所述的方法,包括生成多个语境n元语法,其中每一者在所述一般句子或一般短语中具有至少一个领域单词,其中,生成多个语境n元语法包括在带有所述领域单词的一般句子或一般短语上使用滑动窗口。
6.如权利要求4所述的方法,其中,生成语境n元语法包括选择多个语境n元语法,所述多个语境n元语法的每一者包括来自单个一般句子或单个一般短语的相同领域单词,其中,在相同一般句子或一般短语中的相同领域单词的每个语境n元语法内,相同领域单词的位置是不同的。
7.如权利要求6所述的方法,其中,单词总数中的语境n元语法大小保持固定。
8.如权利要求4所述的方法,其中,所述语境n元语法的每一者是三个或五个单词。
9.如权利要求4所述的方法,其中,生成语境n元语法包括选择多个语境n元语法,所述多个语境n元语法的每一者包括来自一般句子或一般短语之一中的相同位置的相同领域单词,其中,每个语境n元语法中的来自所述一般句子或一般短语的单词的数目在所述多个语境n元语法中是不同的。
10.如权利要求4所述的方法,包括将所述一般句子或一般短语的语境n元语法添加到所述领域数据集,而不是将所选择的一般句子和一般短语添加到与所述语境n元语法相关联的领域数据集。
11.如权利要求1-10中任一项所述的方法,包括训练一般语言模型;并且形成经训练的一般和领域特定语言模型,包括组合所述一般语言模型和所述领域语言模型。
12.一种由计算机实现的自动领域话音识别的系统,包括:
存储器,其存储人类话音的音频信号;以及
处理器电路,其形成与所述存储器通信地连接的至少一个处理器,所述至少一个处理器被布置为通过以下步骤来进行操作:
获得一般句子或一般短语或者两者的自动话音识别一般数据集;
生成领域数据集,包括选择带有来自领域列表的一个或多个领域单词或领域短语的一般句子或一般短语或者两者的至少一些部分,并且将所选择的一般句子或一般短语或者两者的至少一些部分添加到所述领域数据集;并且
训练领域语言模型,该领域语言模型被布置为识别领域单词、领域短语以及领域句子的至少一些部分,其中包括使用所述领域数据集。
13.如权利要求12所述的系统,其中,要被添加到所述领域数据集的一般句子或一般短语的至少一些部分是来自所述一般数据集的整个句子或整个短语。
14.如权利要求12所述的系统,其中,所述至少一个处理器被布置为通过以下步骤来进行操作:生成语境n元语法以添加到所述领域数据集,包括选择带有所述领域单词或领域短语的一般句子或一般短语中的n元语法。
15.如权利要求14所述的系统,其中,所述至少一个处理器被布置为通过以下步骤来进行操作:生成多个语境n元语法,其中每一者在所述一般句子或一般短语中具有至少一个领域单词,其中,所述生成包括在带有所述领域单词的一般句子或一般短语上使用滑动窗口。
16.如权利要求14所述的系统,其中,生成语境n元语法包括选择多个语境n元语法,所述多个语境n元语法的每一者包括来自单个一般句子或单个一般短语的相同领域单词,其中,在相同一般句子或一般短语中的相同领域单词的每个语境n元语法内,相同领域单词的位置是不同的。
17.如权利要求16所述的系统,其中,单词总数中的语境n元语法大小保持固定。
18.如权利要求12-17中任一项所述的系统,其中,所述至少一个处理器被布置为通过以下步骤来进行操作:训练一般语言模型;并且形成经训练的一般和领域特定语言模型,包括组合所述一般语言模型和所述领域语言模型。
19.至少一个非暂态计算机可读介质,包括多个指令,所述多个指令响应于在计算设备上被执行,使得所述计算设备通过以下步骤来进行操作:
获得一般句子或一般短语或者两者的自动话音识别一般数据集;
生成领域数据集,包括选择带有来自领域列表的一个或多个领域单词或领域短语的一般句子或一般短语或者两者的至少一些部分,并且将所选择的一般句子或一般短语或者两者的至少一些部分添加到所述领域数据集;并且
训练领域语言模型,该领域语言模型被布置为识别领域单词、领域短语以及领域句子的至少一些部分,其中包括使用所述领域数据集。
20.如权利要求19所述的介质,其中,要被添加到所述领域数据集的一般句子或一般短语的至少一些部分是来自所述一般数据集的完整句子或完整短语。
21.如权利要求19所述的介质,其中,所述指令使得所述计算设备通过以下步骤来进行操作:生成语境n元语法以添加到所述领域数据集,包括选择带有所述领域单词或领域短语的所选择的一般句子或一般短语中的n元语法。
22.如权利要求21所述的介质,其中,生成语境n元语法包括选择多个语境n元语法,所述多个语境n元语法的每一者包括来自单个一般句子或单个一般短语的相同位置的相同领域单词,其中,在相同一般句子或一般短语中的相同位置处的相同领域单词的每个语境n元语法内,相同领域单词的位置是不同的。
23.如权利要求19-22中任一项所述的介质,其中,固定窗口大小和变化窗口大小都被用于从所选择的一般句子或一般短语生成n元语法以将所述n元语法添加到所述领域数据集。
24.至少一个机器可读介质,包括多个指令,所述多个指令响应于在计算设备上被执行,使得所述计算设备执行如权利要求1-11中任一项所述的方法。
25.一种装置,包括用于执行如权利要求1-11中任一项所述的方法的装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/561,849 | 2021-12-24 | ||
US17/561,849 US20220122596A1 (en) | 2021-12-24 | 2021-12-24 | Method and system of automatic context-bound domain-specific speech recognition |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116343765A true CN116343765A (zh) | 2023-06-27 |
Family
ID=81184870
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211482705.2A Pending CN116343765A (zh) | 2021-12-24 | 2022-11-24 | 自动语境绑定领域特定话音识别的方法和系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220122596A1 (zh) |
CN (1) | CN116343765A (zh) |
DE (1) | DE102022128593A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4085452A1 (en) * | 2020-01-30 | 2022-11-09 | Google LLC | Speech recognition |
-
2021
- 2021-12-24 US US17/561,849 patent/US20220122596A1/en active Pending
-
2022
- 2022-10-27 DE DE102022128593.6A patent/DE102022128593A1/de active Pending
- 2022-11-24 CN CN202211482705.2A patent/CN116343765A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
DE102022128593A1 (de) | 2023-06-29 |
US20220122596A1 (en) | 2022-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3579231B1 (en) | Speech classification of audio for wake on voice | |
CN108352168B (zh) | 用于语音唤醒的低资源关键短语检测 | |
US11423904B2 (en) | Method and system of audio false keyphrase rejection using speaker recognition | |
US10818296B2 (en) | Method and system of robust speaker recognition activation | |
US10984783B2 (en) | Spoken keyword detection based utterance-level wake on intent system | |
US10403268B2 (en) | Method and system of automatic speech recognition using posterior confidence scores | |
US9740678B2 (en) | Method and system of automatic speech recognition with dynamic vocabularies | |
US10043521B2 (en) | User defined key phrase detection by user dependent sequence modeling | |
TWI590227B (zh) | 自動語言辨識之系統及方法以及電腦可讀取媒體 | |
TWI610295B (zh) | 解壓縮及壓縮用於語音辨識之轉換器資料的電腦實施方法及電腦實施之語音辨識系統 | |
US20170287490A1 (en) | Speaker recognition using adaptive thresholding | |
US11127394B2 (en) | Method and system of high accuracy keyphrase detection for low resource devices | |
EP3274989A1 (en) | Method and system of environment sensitive automatic speech recognition | |
EP3424047A1 (en) | Intermediate scoring and rejection loopback for improved key phrase detection | |
EP3886087B1 (en) | Method and system of automatic speech recognition with highly efficient decoding | |
KR20210042523A (ko) | 전자 장치 및 이의 제어 방법 | |
CN116343765A (zh) | 自动语境绑定领域特定话音识别的方法和系统 | |
US20210398535A1 (en) | Method and system of multiple task audio analysis with shared audio processing operations | |
US20240185851A1 (en) | Method and system of audio false keyphrase rejection using speaker recognition | |
KR20210042520A (ko) | 전자 장치 및 이의 제어 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |