专利名称:作为语音识别错误预测器的用于语法适合度评估的方法和系统的制作方法
技术领域:
本发明总体上涉及一种语音识别系统的方法,更具体地涉及用于评估要在语音识别系统中使用的语法的适合度的方法和系统。
背景技术:
系统设计者和制造商将用于系统用户与电子装置连接所实现的强壮和有效的技术作为重要考虑。电子装置的语音控制的操作常常可以提供用于系统用户控制电子装置和与电子装置交互的期望的接口。例如,电子装置的语音控制的操作可以允许用户同时执行其他任务,或在特定类型的操作环境中会是有益的。另外,具有身体限制或特殊要求的用户可能也期望电子装置的免提操作。可以通过各种语音激活的电子装置来实现电子装置的免提操作。语音激活的电子装置有益地允许在使用传统的输入装置不方便或可能危险的情况下用户与电子装置连接。 然而,有效地实现语音识别系统对于系统设计者设立了相当大的挑战。在语音识别系统的领域中,语音识别系统输入音频流,该音频流被过滤以提取和分出作为语音的声音片段。语音识别引擎然后通过下述方式来分析语音声音片段将它们与定义的发音词典、语法识别网络和声音模型作比较。子词汇语音识别系统通常配备了一种用于从模型化语音波形的更基本的单元来构成词和语句的方式。例如,在基于音素模型的语音识别系统中,可以将发音词典作为查找表,以从它们的音标建立词。而且,用于词组合的明确规则被提供来由词建立句子。句子构造的规则被看作“识别语法”。识别语法的复杂度取决于要识别的应用的特性。例如,一些简单的命令类的应用要求词分开的语法,而一些对话类应用要求更复杂的句子的构造。不管应用的复杂度如何, 应用开发者需要小心地指定语法,并且需要对该语法进行改善以便保证完整性(即,该语法覆盖应用所需要的所有句子)并避免过度产生(即,保证语法不允许产生应用所不能理解的预料之外的句子)。即使对于更有经验的应用开发者而言,这样做也很耗时。不管开发者为致力来建立语法付出多少努力,语法都会包括语音识别系统可能在其中产生错误的几个区域。这是由于具有不同的含义并且与不同的行为相关联的不同词在声音上类似,或是由于词的特定组合非常接近于表示不同的含义或行为的另一个词组合。 这使得语音识别系统难以将词彼此区分开,由此引发识别错误。因此,应用开发者的任务是考虑与语法的可能混淆源,并且通过尝试避免在语法的可互换的位置中布置可引起混淆的词来试图消除可能的混淆源。然而,当在语法内的一组可能的词组合对于开发者以足够的细节和精度来手动探索而言太长时,这会是特别有挑战性的。因此,期望有系统的方式来自动地评估语法以识别可混淆词在语法内的可互换的位置中的布置。
发明内容
在一个实施例中,公开了一种计算机实现的方法,用于在计算事件期间评估在要在语音识别中使用的一组语句的语法结构内的可能混淆。所述方法包括用于从语法结构内接收多个语句的操作。多个语句的每一个由多个词集形成。所述方法还包括通过在词集的基础上对齐所述多个语句来识别在所述多个语句上的多个对齐区域的操作。每一个对齐的词集表示一个对齐区域。所述方法还包括用于在所述多个语句上识别多个可能的混淆区域的操作。通过来自在所述多个对齐区域外部的对应位置处的所述多个语句中的两个或更多的语句的词来定义每一个可能的混淆区域。对于每个所述识别的可能混淆区域,执行操作以分析在所述可能的混淆区域内的词的音标发音,以确定在所述计算事件期间在被语音识别系统可听地处理时的所述词之间的混淆概率的度量。所述方法还包括用于产生报告以传达在所述多个语句上的所述可能混淆区域的标识和它们对应的混淆概率的度量。在另一个实施例中,公开了一种用于在计算事件期间评估在要在语音识别中使用的一组语句的语法结构内的可能混淆的系统。所述系统包括输入模块,所述输入模块被定义来从语法结构内接收多个语句。所述多个语句的每一个由多个子集形成。所述系统还包括词级对齐模块,所述词级对齐模块被定义来识别在由所述输入模块接收的所述多个语句上的多个对齐区域。对齐区域对应于在所述多个语句上对齐的相同的词集。所述系统还包括混淆区域识别模块,所述混淆区域识别模块被定义来识别在所述多个语句上的多个可能混淆区域。通过来自在由所述词级对齐模块识别的所述多个对齐区域外的对应位置处的所述多个语句中的两个或更多语句的词来定义每一个可能的混淆区域。所述系统还包括混淆概率分析模块,所述混淆概率分析模块被定义来分析在由所述混淆区域识别模块识别的给定可能混淆区域内的词的音标发音。所述词的所述音标发音的分析确定了在所述计算事件期间在被语音识别系统可听地处理时的、在给定的可能混淆区域内的词之间的混淆概率的度量。在另一个实施例中,公开了一种计算机可读介质,其包括用于在计算事件期间评估在要在语音识别中使用的一组语句的语法结构内的可能混淆的程序指令。提供了用于从语法结构内接收多个语句的程序指令。所述多个语句的每一个由多个词集形成。还提供了通过以在词集的基础上对齐所述多个语句来识别在所述多个语句上的多个对齐区域的程序指令。每一个对齐的词集表示一个对齐区域。还提供了用于识别所述多个语句上多个可能的混淆区域的指令。通过来自在所述多个对齐区域外的对应位置处的所述多个语句中的两个或更多语句的词来定义每一个可能的混淆区域。还提供用于下述的程序指令分析在每一个可能的混淆区域内的词的音标发音,以确定在所述计算事件期间在被语音识别系统可听地处理时的、在每一个可能的混淆区域内的所述词之间的混淆概率的度量。通过下面结合附图的详细描述,本发明的其他方面将变得更清楚,其中,附图通过示例图示本发明。
图IA示出根据本发明的一个实施例的输入文本文件的示例;图IB示出根据本发明的一个实施例的、使用可替代和可变的表示来指定语句而定义的图IA的输入文本文件;
图2示出根据本发明的一个实施例的、与图IA和IB的输入文本文件对应的GnD 文件;图3示出根据本发明的一个实施例的、通过在图2的&iD文件中定义的两个语句的语法的路径网络;图4示出根据本发明的一个实施例的语法适合度评估(GFE)过程的操作图;图5示出根据本发明的一个实施例的、对通过对于图2的示例输入语法执行GFE 而生成的语法适合度报告的示例摘录;图6示出根据本发明的一个实施例的、GnD文件的构造及其对应的其语法适合度评估的步骤流程图;图7示出根据本发明的一个实施例的、一种用于在计算事件期间评估在要在语音识别中使用的一组语句的语法结构内的可能混淆的计算机实现的方法的流程图;以及图8示出根据本发明的一个实施例的、一种用于在计算事件期间评估在要在语音识别中使用的一组语句的语法结构内的可能混淆的系统的框图。
具体实施例方式在下面的描述中,给出了多个具体细节,以便透彻地理解本发明。然而,很显然本领域内的技术人员可以在没有这些具体细节的一些或全部的情况下实施本发明。在其他情况下,未详细描述公知的过程操作,使得不会不必要地模糊本发明。在一个实施例中,在此公开的方法和系统被实现在索尼PlayStation 语音响应 (PSVR)工具内。PSVR工具被定义来允许应用(即,计算机程序)开发者将在应用执行期间输入的可听的语音处理为可以被应用实时识别和根据其起作用的格式。然而,应当明白,在其他实施例中,在此公开的方法和系统可以被实现于在PSVR工具外部的环境中。因此,在此公开的方法和系统不应被解释为限于在PSVR工具内的使用。语音识别是使得人向计算机说话并且使得计算机识别所说的内容的过程。语音回复软件可以被定义来提供关于在语音识别期间的过程的恒定信息,使得应用能够使用该信息来给出其用户实时的反馈或显示,诸如动画的谈话的脸部或用户语音的可视指示。可以通过将有限的词汇(即,词典)和语法指定给应用来简化语音识别。该语法是词汇的有效组合的集合。换句话说,该语法是应用的一组有效语句(文本句子/短语)。可以在语法和辞典(&Λ)文件中定义语法,该文件包括应用的词汇的表示,包括词及其发音;该文件还包括词之间的关联,以形成应用的一组有效语句。通过在&iD文件中的有效词汇的可能路径被称为语法网络。在一个实施例中,诸如PSVR的语音识别系统可以接收作为输入的、用于指定要用于应用的有效语句的文本文件。应用开发者可以基于需要被语音识别系统识别以便应用适当地响应的语句而建立这个输入文本文件。图IA示出根据本发明的一个实施例的输入文本文件的示例。如图IA中所示,输入文本文件可以包括语句的简单列表。可替代地,输入文本文件可以使用可替代和可变的表示来指定语句。在一个实施例中,可以在输入文本文件内提供诸如“ I ”的符号来界定可替代的词/短语。而且,在一个实施例中,可以使用可变标签来表示在输入文本文件内的词/短语。例如,这种表示${可变标签} = {词/短语} 可以用于向可变标签分配词/短语。而且,在一个实施例中,输入文本文件可以使用括号表示用于词/短语的相关联的组。图IB示出根据本发明的一个实施例的、使用替代和可变的表示定义来指定语句的图IA的输入文本文件。图2示出根据本发明的一个实施例的、与图IA和IB的输入文本文件对应的GnD 文件。&iD文件定义了在输入文本文件中的语句的语法。&iD文件包括在语法中的词集、词集的发音和用于形成有效语句的词集的关联。在图2的示例中,每一个词集被包括在引号 (“”)中。词集被汇集为组,并且在组之间的关联被(== >符号)指定来定义可能的语句。在组之间的链接定义了通过在&iD文件中的语法的可能路径。例如,图3示出根据本发明的一个实施例的、通过在图2的&iD文件中定义的两个语句的语法的路径网络。在语音识别过程中,语法和词典组合地工作以提供语法网络。语音识别工具在识别处理期间穿过这个语法网络。当语法网络变得更复杂和/或产生混淆时,这个语音识别处理变得更困难和/或不准确。期望将文件的语法网络的混淆减小或消除到最大的可能程度,以保证在应用执行期间的适当的语音识别结果。为此,有必要识别在&iD文件内的语法的可能混淆的部分。语法的可能混淆的部分的识别和测量被称为语法适合度评估或语法质量评估。在自动语音识别中,识别假设是当声音信号穿过由语法或语音模型允许的路径时一组分数累积的结果。在子词汇的语音识别(基于比词更短的单元诸如音素的语音识别) 中,通过表示词和句子的语音序列来建立由语法允许的这些路径。很“接近”的一组路径比在其之间具有清楚和明显差别的一组路径更容易被混淆。在图3中描述的路径示出通过语法的接近的路径的示例。更具体地,通过单个词的差别来使图3的两个路径分开,其中,构成路径之间的差别的词具有类似的音素,即,类似的语音发音。在语法内的一条路径和另一条路径之间的接近度可以根据在路径之间的音差的数量、位置和幅度而改变。即,在语法内的路径之间的识别距离随构成路径的方式和在每条路径的分量之间的声音类似度而变化。通过测量在语法内的路径之间的识别距离,可以对可能彼此冲突并且引起语音识别错误的语音序列它们之间的“接近度”进行估计。语法适合度评估是对应用的语法内的所有语句(和基本的语音路径)的识别距离的评估。这个语法适合度评估可以为应用的语法设计过程中反馈机制的一部分,旨在减少应用的执行期间的语音识别错误出现的数量和频率。图4示出根据本发明的一个实施例的、语法适合度评估(GFE)过程的操作图。在该GFE过程,输入语法401被产生并且作为输入被提供到GFE模块403。在一个实施例中, 以诸如在图2中示例的&iD文件的形式来提供输入语法401。在其他实施例中,可以以其他格式提供输入语法401,只要GFE模块403理解输入语法401的格式,并且只要输入语法 401指定词/词集的有效组合以形成旨在被诸如PSVR系统的语音识别系统识别的语句。一旦GFE模块403接收到输入语法401,执行语句扩展过程405以从输入语法401 提取所有的有效语句。换句话说,语句扩展处理405明确地产生由输入语法401允许的所有语句。通过定义,语法是对于给定的应用有效的一组语句的合成的表示。语句扩展处理 405被执行来使得能够分析每一个语句的构成,并且使得能够估计在语句之间的识别距离。 应当明白,输入语法401被完全地扩展到其有效的语句集内,以避免忽略可能在全文考虑时看起来不同但是在语音上类似的词或语句之间出现的可能的混淆。从语句扩展过程405 得到的有效语句集是随后的GFE的基础。
通过将每一个词替换为来自输入语法401的词典的其对应的发音,语句中的词可以被转换为语音序列。一些词可能具有不止一个发音。因此,一个单个词语句可以产生多个语音序列。根据在给定语句中的词的特性和发音的数量,将每一个词替换为其对应的发音的操作可以产生多个语音序列。应当注意,语句的语音序列是与自动语音识别器将使用来与语音输入作比较以便区别在语音信号中包括的音素相同的语音序列。在对于在语句中的一个或多个词可获得多个语音序列的情况下,可以以树结构来组织多个语音序列。在一个实施例中,树结构也可以用于为探索不同的语音序列提供更多的结构。但是为了简单和清楚,在此的描述假定所有的语音序列被明确地表示。因此,在语句扩展过程405中,当在给定的语句中的一个或多个词具有不止一个发音时,可能产生给定的语句的多种情况,给定的语句的每一种情况对应于给定语句的唯一语音发音。在GFE中,确定哪些语句可能被混淆可能是不够的。还需要确定这种混淆的原因, 并且如果要采取行动来避免混淆,还要确定对哪些内容采取这些行动。为此,GFE包括词级对齐过程(Word-Level Alignment Process)407和语音类似度评估409。对于从语句扩展过程405产生的有效语句集执行词级对齐过程407。词级对齐过程407识别在输入语法401 中的可能容易混淆的语句。语音类似度评估409识别在由词级对齐过程407识别的可能容易混淆的语句内的可能混淆的源。因此,词级对齐过程407可以被看作混淆检测操作,并且语音类似度评估409可以被看作对由混淆检测操作阐明的容易混淆的区域内的变焦(zooming)操作。在下面,图4 示出语音类似度评估409,语音类似度评估409取决于词级对齐处理407,即被图形地布置在词级对齐过程407内。应当明白,作为用于随后的语音类似度评估409的聚焦机制的词级对齐过程407的实现减少了比较在全部语句上大量语音序列的计算负担,其中每个语句可以包括多个音素。词级对齐过程407包括将从输入语法401提取的每一个语句与从输入语法401 提取的所有其他语句作比较。词级对齐过程407将两个不同的符号序列、即两个不同的语句作比较,并且根据某种预定义的距离度量来匹配它们。在一个实施例中,所比较的符号对应于在所比较的语句内的词集。在一个实施例中,用于语句的比较的词集是在输入语法401 内的分组中定义的词集。应当明白,在该情况下的词集可以包括一个或多个词。当一个词集包括多个词时,该多个词在输入语法401中一致地一起出现。在一个实施例中,词级对齐过程407被实现为动态编程过程。在这个实施例中,以下述代价来驱动词级对齐过程407 将一个语句的一个符号、即词集替换为来自另一个语句的符号,即词集。根据语句的构造,可以有在两个或更多的语句上对齐词集(符号)的多种方式。在一个实施例中,词级对齐过程407确定语句的“最佳”对齐,其中,语句的最佳对齐对应于在对齐语句中的最低总替换代价。在一个实施例中,对输入语法401中的所有语句执行词级对齐过程407,一次两个语句。对于给定的一对语句执行词级对齐过程407将产生该给定的一对语句的对齐序列。 该对齐序列对所考虑的两个语句的元素(词集)进行组合,并且报告在语句的元素之间发现的那类匹配。对齐序列特征在于HIT(匹配元素)、SUBS(元素的替代)、INS(元素的插入)和DEL(元素的删除)的单元。再一次,在词级对齐过程407中,仅考虑词集对齐序列。 词集对齐序列示出两个语句中的词集在其中相同或不同的区域。
通过下面的示例来图示词级对齐过程407和结果产生的词集对齐序列。第一语句_BEGIN_You Like to Dress up_END_第二语句_BEGIN_You Love to Dress up_END_结果产生的词集对齐序列You:HIT,Loveto — Like to:SUBS, Dress up:HIT在上面的示例中的结果产生的词集对齐序列可以以对齐区域和可能的混淆区域为特征。具体地说,每一个HIT (匹配元素)表示对齐区域,并且除了 HIT之外的任何单元, 即SUBS、INS、DEL,表示可能的混淆区域。上面的对齐序列可以被划分为三个区。第一区是在每一个语句中包括词集的对齐区域。第二地区是包括在第一语句中的词集like to 和在第二语句中的词集love to的可能混淆区域。第三区是包括在每一个语句中的词集 Dress up的对齐区域。两个语句之间的距离随语句中的词彼此对齐的方式而变化。因此,两个相同的语句具有0的分隔距离,并且结果产生的对齐序列仅包括一个对齐区域。而且,远离的两个语句将不包括任何对齐区域,并且结果产生的对齐序列包括一个长的可能混淆区域。优化的语法应尽可能避免包括接近的语句路径,而是应包括充分地分开的语句路径以避免在其被用于语音识别时产生错误。为了语音识别的目的,两个相同的词语句不会造成识别错误。用于相同,它们之间没有混淆。因此,确定识别错误可能出现在输入语法401中何处的过程,S卩,GFE,不限于识别在语句之间的对齐区域。而是,GFE涉及确定在输入语法401中的语句是否太接近但却不同,并且如果它们太接近,则确定在语句之间的可能混淆区域中的词有多大可能会产生语音识别错误。因此,对于在词级对齐过程407中在语句之间识别的可能的混淆区域执行语音类似度评估409,以提供语句在可能的混淆区域内接近度的度量,由此告知关于语句是否可能引发语音识别错误的确定。在语音类似度评估409中,通过将在可能混淆区域中的词替换为它们的对应的音标,从词级对齐处理407产生的每一个可能混淆区域被转换为语音序列。对于每一个可能混淆区域,语音类似度评估409包括1)将在可能混淆区域中的每一个语句的词扩展到它们的对应的音素,幻确定在可能混淆区域内的语句之间的音素的最佳对齐,以及,幻基于音素的最佳对齐,计算在可能混淆区域内的相应语句中的、词即其音素之间的混淆概率的度量。与词级对齐过程407 —样,在一个实施例中,语音类似度评估409的音素级对齐被实现为动态编程过程。在这个实施例中,以下述代价来驱动音素级对齐将(在可能混淆区域内的)一个语句的一个音素替换为来自(在同一可能混淆区域内的)另一个语句的音素。音素级对齐确定在可能混淆区域内的音素的“最佳”对齐,其中,音素的最佳对齐对应于在可能混淆区域内对齐音素中的最低的总替换成本。参考如上所述的前一个示例,考虑可能混淆区域,该可能混淆区域包括在第一语句内的词集like和在第二语句中的词集love to。在可能混淆区域内的两个语句中的词的音素扩展如下第一语句/第一可能混淆区域1 ay k—t uw第二语句/第一可能混淆区域1 ah ν—t uw在可能混淆区域内的语句之间的音素的最佳对齐的特征由下述结果产生的音素级对齐序列表示1:HIT, ah — ay:SUBS, ν — k:SUBS, t:HIT, uw:HIT在一个实施例中,在两个语音对齐之间的混淆的概率的度量,即距离,被表示为根
据等式1计算的加权语音对齐精度(WPA)值。
TTrnA# HIT—# INS j\ Hiax(Z1J2))
「00541 WPA=XQO*-* 1--茑式 1
隣4」#HIT+#SUBS+#DEL Iv max(Z15Z2)丄如在等式1中所示,加权语音对齐精度(WPA)是上界为100的度量(完美的精度表示音素序列是相同的)。而且,如果音素插入的数量(#INS)大于音素匹配的数量(#HIT), 则加权语音对齐精度(WPA)的下界可以是负的。在等式1中,1- HlJ;)、是基于其中进行分析的词序列的字符长度来将加权
语音对齐精度(WPA)向上或向下加权的比例因子。参数L1指的是在分析中的整个第一语句的字符长度。参数L2指的是在分析中的整个第二语句的字符长度。参数I1指的是在第一语句内所考虑的可能混淆区域内的字符长度。参数I2指的是在第二语句内的所考虑的可能混淆区域内的字符长度。在一个实施例中,字符长度包括在语句区域的词内的文本字符的数量和在语句区域内的词之间的空格。而且,在一个实施例中,当语句扩展过程405封装在诸如_BEGIN_和_END的_开始和结束标记中每一个语句时,整个语句的字符长度包括在开始和结束标记内的文本字符的数量和在语句文本的方向上的它们各自的相邻空格。因为语音类似度评估409至少涉及两个语句,所以使用相应的字符长度参数 (Maxd1, I2) ^P max (L1, L2))的最大值来计算比例因子。应当明白,比例因子用于基于相对于整个语句的大小的可能混淆区域的大小来向加权语音对齐精度(WPA)提供加权。当可能混淆区域的大小相对于语句的大小减小时,比例因子增大。因此,当可能混淆区域的大小相对于语句的大小减小时,加权语音对齐精度(WPA)值变大。而且,应当明白,较大的加权语音对齐精度(WPA)值对应于在可能混淆区域内的语句部分之间的较高类似度,即,增大的接近度/缩小的距离。参考如上所述的示例,音素级对齐序列(1 HIT,ah — ay SUBS, ν — k: SUBS,t:HIT, uw:HIT)提供了下述用于加权语音对齐精度(WPA)计算的参数#HIT = 3,#INS = 0,#SUBS =2,#DEL = 0,max (I1, I2) = 7,max (L1, L2) = 34。相应的加权语音对齐精度(WPA)被计算为47. 65。可以对加权语音对齐精度(WPA)值进行阈值操作以便专注于具有较高类似性并且相应的在语音识别处理期间具有更大可能性引起错误的可能混淆区域。具有比预定义的阈值高的加权语音对齐精度(WPA)值的可能混淆区域可以被选择性地报告为在输入语法 401中的修改或抑制的候选者,以便减小在输入语法401中的整体容易混淆度,并且相应地减小语音识别错误的风险。在其他实施例中,与由等式1所提供的不同的技术可以用于评估混淆概率的度量,即在可能混淆区域内的两个语音对齐之间的距离。然而,任何不同的技术应当提供在所识别的可能混淆区域内的语句部分之间的类似度的量化评估,从而能够有在语法内的可能混淆区域的就其在语音识别处理期间引起混淆或错误而言相对分类。
应当注意,在给定的输入语法401中,由词级对齐处理407识别的可能混淆区域可能不与唯一的一对语句相关。换句话说,以其词集内容为特征的给定的可能混淆区域可能在输入语法401内的不同对的语句上出现多次。因此,在输入语法401内的不同语句的词集对齐可以产生相同的可能混淆区域,并且因此产生相同的语音对齐。不必重复对相同的可能混淆区域的分析。而是可以存储这些复发的可能混淆区域的加权语音对齐精度(WPA) 值,仅在每次可能混淆区域在输入语法401内的任何一对语句上重发时,检索这些值即可。应当明白,仅因为词是类似的,并不一定表示词将在语音识别处理期间引起混淆。 类似的词如果它们出现在类似的上下文中或出现在输入语法401内的同一分支点内则可能引起混淆。然而,如果类似的词出现在十分不同的上下文中或输入语法401内的不同分支点内,则类似的词可以在语音识别处理期间不引起任何混淆。例如,考虑下面的两个语句第一语句_BEGIN_Boy,I am a smart robot_END_第二语句_BEGIN_I am a smart toy_END_结果产生的词级对齐序列Boy,:DEL,I:HIT, am:HIT, a:HIT, smart:HIT, robot — toy: SUBS在这个示例中,词Boy和toy类似,但是不会引起混淆,因为它们出现在不同的上下文中并且没有出现在语法中的同一分支点处。在这个示例中,有两个可能混淆区域,一个在对齐序列的开始处,一个在对齐序列的结尾处。从这个结果得出应当在robot和toy之间进行音级的比较,因为它们出现在类似的上下文中并且它们共享在语法中的相同词干。如上所述,在一个实施例中,可以基于在可能混淆区域内的不同语句内的音素是否是相同的或不同的来执行语音类似度评估409。在另一个实施例中,语音类似度评估409 可以考虑关于被比较的音素的特性的更多信息。例如,可以向在音素/m/和/n/之间的可能混淆提供比在/m/和/i/之间的可能混淆更大的加权。可以向更经常地被混淆的音素分配更高的加权,更经常被混淆的音素例如是可以是在两个词之间的唯一区分者的相似的声音音素。例如,考虑在一对词“norm”和“morn”中的音素/m/和M0参考回图4,语音距离矩阵411可以被提供为用于执行语音类似度评估409的输入源。在一个实施例中,语音距离矩阵411基于混淆矩阵(识别后的距离度量)或基于在每个音素的声音模型之间的相对距离(识别前的距离度量)。混淆矩阵的内容取决于用于进行现场语音识别测试的数据和识别设置。基于声音模型的音素距离度量在现场语音识别之前被计算,并且表示替换基于符号的音素比较,以使得能够进一步改善在词之间考虑的语音距离。进一步参考图4,可以将GFE的结果传达到语法适合度报告413中。语法适合度报告413可以被格式化以传送在输入语法401的语句上的可能混淆区域的标识(identity) 和它们对应的混淆概率的度量,即它们的所计算的加权语音对齐精度(WPA)值。可以根据加权语音对齐精度(WPA)整理出语法适合度报告413中的可能混淆区域的标识。图5示出根据本发明的一个实施例的、来自通过对于图2的示例输入语法执行GFE而产生的语法适合度报告的示例摘录。在语法适合度报告中,可以有被标记为倾向于引起识别错误的若干个词,因为所有那些词都是可能混淆区域内词集的一部分,正如在图5中的第一对like to 对love to的情况。
较高的加权语音对齐精度(WPA)值可以表示在对应的可能混淆区域中的词的发音彼此很接近,尽管它们可以是不同的词,并且这可以指示可能的语音识别错误。为此,在语法适合度报告413中具有较高加权语音对齐精度(WPA)值的可能混淆区域被列为头条。 可能混淆区域的上下文也被包括在语法适合度报告413中,以使得语法适合度报告413的查看者能够更容易地定位在语法中的可能语音识别错误的来源。由在此公开的语法适合度评估(GFE)产生的语法适合度结果可以用于修改语音识别语法以便减少语音识别错误。在一个实施例中,语法适合度结果可以用于自动地校正语法,而不用没有语法开发者的监督。在另一个实施例中,语法适合度结果被用于手动地校正语法。更具体地,参考图4,语法适合度报告413被提供来用于输入语法401的手动或自动校正过程415中。基于语法适合度报告413,手动或自动校正处理415产生语法417的优化版本,其中,在输入语法401内的语句引起混淆的部分被消除或抑制。应当明白和理解,在此描述的语法适合度评估的执行不使用任何语音信号(表示可听的声音/语音的数字数据)。也应当明白和理解,在此描述的语法适合度评估的执行是基于语法的结构。上述几点有益在于语法适合度评估允许语法编辑和校正的处理更接近语法的生成过程,而不需要实际的语音识别试验。还应当明白,语法适合度评估可以被用作过程中的反馈机制,以产生&iD文件。图6示出根据本发明的一个实施例的、构造&iD文件及其对应的语法适合度评估的的流程图。可以通过下述方式来开始该处理向被表示为psvr&iD可执行文件601的语法构造/评估工具提供纯文本文件605 (例如,图1A-1B)或&iD文件603 (例如,图2)作为输入。纯文本文件605和&iD文件603的每一个被定义来指定在语法内的语句。向语法构造/评估工具601提供辅助文件,以支持发音产生。具体地说,一个或多个字母至音素(G2P)数据文件607被提供到语法构造/评估工具601。G2P数据文件607 将字的字母(字符)与它们的发音的音素匹配。这使得语法构造/评估工具601能够基于词的拼写来产生词的发音。而且,一个或多个发音词典609被提供到语法构造/评估工具 601。发音词典609包括特定的一组词的发音,诸如难以使用G2P数据文件607处理的常用词。语法构造/评估工具601通过从文本采样自动地提取词之间构成语句的关系来执行语法的产生。语法构造/评估工具601可以以下述作为输入的纯文本语句或以特殊方式格式化、以允许通过可变的陈述和词的替换来实现句子的合成的表示的语句。语法构造 /评估工具601也可以通过使用在发音词典609中的查找表或通过使用G2P数据文件607 执行字母向音素转换来执行发音产生。在G2P转换过程中,语法构造/评估工具601以词作为输入并且自动地产生在目标语言中的其发音。在完成语法和发音的产生后,语法构造/评估工具601将语法和发音汇编在一起, 并且将该结果格式化为&iD文件611。这个输出也可以包括其他信息,诸如转换概率和语言标识符。语法构造/评估工具601也被定义来执行参考图4上述的语法适合度评估。语法适合度评估的结果被写入适合度报告613。在适合度报告613内的信息可以用于编辑/ 改善原来输入的文本文件605或新产生的&iD文件611。然后,可以重复该处理以看编辑/ 改善是否已经提高了语法的适合度。可以重复地运行该处理,直到语法和词典适合于用在语音识别过程中。
图7示出根据本发明的一个实施例的、一种计算机实现的方法的流程图,该方法用于在计算事件期间评估在要在语音识别中使用的一组语句的语法结构内的可能混淆。该方法包括用于从在语法结构内接收多个语句的操作701。多个语句的每一个由多个词集形成。每一个词集可以包括一个或多个词。该方法也包括用于通过在词集的基础上对齐多个语句来识别在多个语句上的多个对齐区域的操作703。每一个对齐的词集表示一个对齐区域。在一个实施例中,操作703包括确定对多个语句上相同词集的最佳的整体对齐。在一个实施例中,当在多个语句上识别的对齐区域的数量是0时,结束在该计算机实现的方法内的多个语句的处理。而且,在一个实施例中,当多个语句彼此相同时,结束在计算机实现的方法内的多个语句的处理。该方法进一步包括用于识别多个语句上的多个可能混淆区域的操作705。通过来自在多个对齐区域之外的对应的位置处的多个语句中的两个或更多的语句的词定义每一个可能混淆区域。对于每一个识别的可能混淆区域,执行操作707来分析在可能混淆区域内的词的语音发音,以确定在当在计算事件期间被语音识别系统可听地处理的词之间的混淆概率的度量。在一个实施例中,操作707包括在可能混淆区域内的多个语句的词的音素间执行音素级对齐。音素是语言的声音系统的最小区分单位。在一个实例中,执行音素级对齐包括确定在多个语句上的可能混淆区域内的词的相同音素的最佳整体对齐。而且,在这个实施例中,操作707包括基于音素级对齐来计算可能混淆区域的语音精度值。语音精度值对应于在当在计算事件期间被语音识别系统可听地处理的、在可能混淆区域内的多个语句的词之间的混淆概率的度量。所述方法也包括操作709,用于产生报告以传达在多个语句上的可能混淆区域的标识和它们的混淆概率的对应的度量。在一个实施例中,在产生报告时应用混淆概率阈值, 使得仅那些其混淆概率的度量大于或等于混淆概率阈值的可能混淆区域才会在报告中标识。应当明白,图7的计算机实现的方法的执行没有听觉的输入。图8示出根据本发明的一个实施例的、一种用于在计算事件期间评估在要在语音识别中使用的一组语句的语法结构内的可能混淆的系统。系统800包括输入模块801,输入模块801被定义来从语法结构内接收多个语句。多个语句的每一个由多个词集形成。每一个词集包括一个或多个词。系统800也包括词集对齐模块803,词集对齐模块803被定义来识别在由输入模块 801接收的多个语句上的多个对齐区域。对齐区域对应于在多个语句上对齐的相同词集。 在一个实施例中,词级对齐模块803被定义来确定在多个语句上的相同的词集的最佳的整体对齐。系统800还包括混淆区域识别模块805,混淆区域识别模块805被定义来识别在多个语句上的多个可能混淆区域。通过来自在由词级对齐模块803识别的多个对齐区域外部的对应的位置处的多个语句的两个或更多的语句中的词来定义每一个可能混淆区域。系统800还包括混淆概率分析模块807,以确定当在计算事件期间被语音识别系统可听地处理时的、在给定可能混淆区域内的词之间的混淆概率的度量,其中,混淆概率分析模块807被定义来分析在由混淆区域识别模块805识别的给定可能混淆区域内的词的语音发音。在一个实施例中,混淆概率分析模块807被定义来在给定的可能混淆区域内的多个语句的词的音素上执行音素级对齐。在这个实施例的一个实例中,混淆概率分析模块 807被定义来确定当执行音素级对齐时在多个语句上的给定可能混淆区域内的词的相同音素的最佳整体对齐。而且,在这个实施例中,混淆概率分析模块807被定义来基于音素级对齐来计算语音精度。语音精度值对应于当在计算事件期间被语音识别系统可听地处理时的、在给定的可能混淆区域内的词之间的混淆概率的度量。系统800还包括输出模块809,输出模块809被定义来产生报告以传达在多个语句上的可能混淆区域的标识和它们的混淆概率的对应的度量。在一个实施例中,输出模块809 被定义来应用混淆概率阈值以产生报告,使得仅那些其混淆概率的度量大于或等于混淆阈值的可能混淆区域才会被在报告中标出。可以使用各种计算机系统配置来实施本发明的实施例,该各种计算机系统配置包括手持装置、微处理器系统、基于微处理器或可编程的消费者电子装置、微计算机和大型计算机等。也可以在其中由通过网络链接的远程处理装置执行任务的分布式计算环境中实施本发明。基于上面的实施例,应当明白,本发明可以使用涉及存储在在计算机系统中的数据的各种计算机实现的操作。这些操作是要求物理量的物理操纵的那些。形成本发明的一部分的在此所述的任何操作为有用的的机器操作。本发明也涉及用于执行这些操作的装置或设备。所述设备可以被特殊构造来用于所要求的目的,诸如专用计算机。当被定义为专用计算机时,计算机也可以执行不作为专用目的的一部分的其他处理、程序执行或例程,同时仍然能够操作来用于专用目的。替代地,可以通过由在计算机存储器、高速缓存中存储的或通过网络获得的一个或多个计算机程序选择性地启动或配置的通用计算机来处理该操作。 当通过网络来获得数据时,该数据可以被诸如计算资源的云这类在网络上的其他计算机处理。本发明的实施例也可以被定义为将数据从一个状态向另一个状态转换的机器。所转换的数据可以被存储到存储器,然后被处理器操纵。处理器因此执行将数据从一个事物向另一个事物转换。而且,可以通过经由网络连接的一个或多个机器或处理器来处理该方法。每一个机器可以将数据从一个状态或事物向另一个转换,并且还可以处理数据、向存储器存储数据、通过网络发送数据、显示结果或向另一个机器发送结果。本发明也可以被体现为在计算机可读介质上的计算机可读代码。计算机可读介质是可以存储数据的任何数据存储装置,该数据其后可以被计算机系统读取。计算机可读介质的示例包括硬盘驱动器、网络附接的存储器(NAQ、只读存储器、随机存取存储器、 ⑶-ROM、⑶-R、⑶-RW、磁带和其他光学和非光学数据存储器。计算机可读介质可以包括分布在网络耦合的计算机系统上的计算机可读有形介质,使得以分布的方式来存储和执行计算机可读代码。虽然以特定的顺序描述了方法操作,但是应当明白,可以在操作之间执行其他内务操作,或可以调整操作使得它们在略微不同的时间发生,或可以被分布在允许处理操作在与该处理相关联的各个间隔处发生的系统上,只要以期望的方式来执行覆盖操作的处理。虽然已经为了理解清楚而以一定的细节描述了上面的发明,但是显然,可以在所附的权利要求的范围内实施特定的改变和修改。因此,本实施例应当被当作说明性和非限定性的,并且本发明不限于在此给出的细节,而是可以在所附的权利要求的范围和等同内容内被修改。
权利要求
1.一种计算机实现的方法,用于在计算事件期间评估在要在语音识别中使用的一组语句的语法结构内的可能混淆,包括从语法结构内接收多个语句,所述多个语句的每一个由多个词集形成; 通过在词集的基础上对齐所述多个语句来识别在所述多个语句上的多个对齐区域,其中,每一个对齐的词集表示一个对齐区域;识别所述多个语句上的多个可能的混淆区域,其中,通过来自在所述多个对齐区域外的对应位置处的所述多个语句中的两个或更多语句的词来定义每一个可能的混淆区域;对于每个所述识别的可能混淆区域,分析在所述可能的混淆区域内的词的音标发音, 以确定在所述计算事件期间在被语音识别系统可听地处理时的所述词之间的混淆概率的度量;以及产生报告以传达在所述多个语句上的所述可能混淆区域的标识和它们对应的混淆概率的度量。
2.根据权利要求1所述的计算机实现的方法,其中,执行所述计算机实现的方法而没有可听的输入。
3.根据权利要求1所述的计算机实现的方法,其中,每一个词集包括一个或多个词。
4.根据权利要求1所述的计算机实现的方法,其中,识别在所述多个语句上的所述多个对齐区域包括确定在所述多个语句上的相同词集的最佳整体对齐。
5.根据权利要求1所述的计算机实现的方法,其中,分析在所述可能混淆区域内的所述词的语音发音包括在所述可能混淆区域内的所述多个语句的所述词的音素上执行音素级对齐,以及基于所述音素级对齐来计算所述可能混淆区域的语音精度值,其中,所述音素精度值对应于当在所述计算事件期间被所述语音识别系统可听地处理时的、在所述可能混淆区域内的所述多个语句的所述词之间的混淆概率的所述度量。
6.根据权利要求5所述的计算机实现的方法,其中,音素是语言的声音系统的最小区分单位。
7.根据权利要求6所述的计算机实现的方法,其中,执行所述音素级对齐包括确定在所述多个语句上的所述可能混淆区域内的所述词的相同音素的所述最佳整体对齐。
8.根据权利要求1所述的计算机实现的方法,进一步包括当产生所述报告时应用混淆概率阈值,使得仅在所述报告中标识出其混淆概率的度量大于或等于所述混淆概率阈值的可能混淆区域。
9.根据权利要求1所述的计算机实现的方法,进一步包括当在所述多个语句上识别的对齐区域的数量是0时,结束在所述计算机实现的方法中的所述多个语句的处理。
10.根据权利要求1所述的计算机实现的方法,进一步包括当所述多个语句彼此相同时,结束在所述计算机实现的方法内的所述多个语句的处理。
11.一种用于在计算事件期间评估在要在语音识别中使用的一组语句的语法结构内的可能混淆的系统,包括输入模块,所述输入模块被定义来从语法结构内接收多个语句,所述多个语句的每一个由多个词集形成;词级对齐模块,所述词级对齐模块被定义来识别在由所述输入模块接收的所述多个语句上的多个对齐区域,其中,对齐区域对应于在所述多个语句上对齐的相同的词集;混淆区域识别模块,所述混淆区域识别模块被定义来识别在所述多个语句上的多个可能混淆区域,其中,通过来自在由所述词级对齐模块识别的所述多个对齐区域外的对应位置处的所述多个语句中的两个或更多语句的词来定义每一个可能的混淆区域;以及混淆概率分析模块,所述混淆概率分析模块被定义来分析在由所述混淆区域识别模块识别的给定可能混淆区域内的词的音标发音,以确定在所述计算事件期间在被语音识别系统可听地处理时的、在给定的可能混淆区域内的词之间的混淆概率的度量。
12.根据权利要求11所述的系统,其中,每一个词集包括一个或多个词。
13.根据权利要求11所述的系统,其中,所述词集对齐模块被定义来确定在所述多个语句上的相同的词集的最佳整体对齐。
14.根据权利要求11所述的系统,其中,所述混淆概率分析模块被定义来执行在所述给定的可能混淆区域内的所述多个语句的所述词的音素上的音素级对齐,以及基于所述音素级对齐来计算所述可能混淆区域的语音精度值,其中,所述音素精度值对应于当在所述计算事件期间被所述语音识别系统可听地处理时的、在所述给定可能混淆区域内的所述多个语句的所述词之间的混淆概率的所述度量。
15.根据权利要求14所述的系统,其中,音素是语言的声音系统的最小区分单位。
16.根据权利要求15所述的系统,其中,所述混淆概率分析模块被定义来当执行所述音素级对齐时确定在所述多个语句上的所述给定可能混淆区域内的所述词的相同音素的所述最佳整体对齐。
17.根据权利要求11所述的系统,进一步包括输出模块,其被定义来产生报告以传达在所述多个语句上的所述可能混淆区域的标识和它们对应的混淆概率的度量。
18.根据权利要求17所述的系统,其中,所述输出模块被定义来应用混淆概率阈值以产生所述报告,使得仅在所述报告中标识出其混淆概率的度量大于或等于所述混淆概率阈值的可能混淆区域。
19.一种计算机可读介质,其包括用于在计算事件期间评估在要在语音识别中使用的一组语句的语法结构内的可能混淆的程序指令,包括用于从语法结构内接收多个语句的程序指令,其中,所述多个语句的每一个由多个词集形成;用于通过在词集的基础上对齐所述多个语句来识别在所述多个语句上的多个对齐区域的程序指令,其中,每一个对齐的词集表示一个对齐区域;用于识别所述多个语句上的多个可能的混淆区域的程序指令,其中,通过来自在所述多个对齐区域外的对应位置处的所述多个语句中的两个或更多语句的词来定义每一个可能的混淆区域;用于下述动作的程序指令分析在每一个可能的混淆区域内的词的音标发音,以确定在所述计算事件期间在被语音识别系统可听地处理时的、在每一个可能的混淆区域内的所述词之间的混淆概率的度量。
20.根据权利要求19所述的计算机可读介质,还包括用于产生报告以传达在所述多个语句上的所述可能混淆区域的标识和它们对应的混淆概率的度量的程序指令。
全文摘要
作为语音识别错误预测器的用于语法适合度评估的方法和系统,从语法结构内接收多个语句。多个语句的每一个由多个词集形成。通过在词集的基础上对齐多个语句来识别在多个语句上的多个对齐区域。每一个对齐的词集表示一个对齐区域。在多个语句上识别多个可能的混淆区域。通过来自在对齐区域外部的对应位置处的语句的两个或更多的词来定义每一个可能的混淆区域。对于每个识别的可能混淆区域,分析在可能的混淆区域内的词的语音发音,以确定在计算事件期间在被语音识别系统可听地处理时的词之间的混淆概率的度量。报告在多个语句上的可能混淆区域的标识和它们对应的混淆概率的度量,以方便语法结构改善。
文档编号G10L15/26GK102243871SQ20111012592
公开日2011年11月16日 申请日期2011年5月16日 优先权日2010年5月14日
发明者G·A·赫纳德兹-阿伯莱格 申请人:索尼计算机娱乐公司