CN1307610C - 用于符号序列的语音识别的方法和系统 - Google Patents

用于符号序列的语音识别的方法和系统 Download PDF

Info

Publication number
CN1307610C
CN1307610C CNB038082136A CN03808213A CN1307610C CN 1307610 C CN1307610 C CN 1307610C CN B038082136 A CNB038082136 A CN B038082136A CN 03808213 A CN03808213 A CN 03808213A CN 1307610 C CN1307610 C CN 1307610C
Authority
CN
China
Prior art keywords
symbol
sebolic addressing
sub
symbol sebolic
addressing
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.)
Expired - Fee Related
Application number
CNB038082136A
Other languages
English (en)
Other versions
CN1647153A (zh
Inventor
R·布雷尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN1647153A publication Critical patent/CN1647153A/zh
Application granted granted Critical
Publication of CN1307610C publication Critical patent/CN1307610C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Machine Translation (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Navigation (AREA)
  • Image Analysis (AREA)

Abstract

描述了符号序列的语音识别方法,更加具体地说描述了数字序列的语音识别方法。首先借助于语音输出设备(5、6、7)输出由用户发出的并由系统识别的第一符号序列以便由用户确认。如果错误地识别第一符号序列,则识别由用户发出的第二符号序列,并且使第二符号序列与第一符号序列比较。然后确定第一符号序列的子符号序列,这个子符号序列部分地对应于第二符号序列并且相对于第二符号序列具有最低数目和/或预先确定数目的偏差。最后,借助于第二符号序列在子符号序列范围内校正第一符号序列。按照所说的方法之一,校正的子符号序列的确定包括比较第二符号序列与比第二符号序列或长或短的第一符号序列的这种子符号序列。按照另一种方法,确定并输出第一符号序列的各种可替换的校正版本以便用户确认,一直到收到可替换的校正版本或异常终止命令的肯定确认时为止,或者一直到达到作为终止标准确定的限值时为止。此外,还描述了用于符号序列的语音识别的对应的系统。

Description

用于符号序列的语音识别的方法和系统
技术领域
本发明涉及符号序列的语音识别的各种方法,其中首先借助于用户确认的语音输出设备输出语音识别的第一符号序列,并且在错误地识别第一符号序列的情况下识别语音的第二符号序列并且使其与第一符号序列进行比较,同时确定第一符号序列的一个子符号序列,所说的子符号序列部分地与第二符号序列相对应并且相对于第二符号序列具有最低数目的和/或预先确定数目的偏差,最后,借助于第二符号序列在所说子符号序列的位置校正第一符号序列。进而,本发明涉及相应的系统,用于通过识别语音符号序列和命令的语音识别设备对于符号序列进行语音识别,所说的系统包括:语音输出设备,用于输出通过用户确认的语音识别的第一符号序列;比较设备,用于在错误识别第一符号序列的情况下比较语音识别的第二符号序列与第一符号序列,并且然后确定第一符号序列的一个子符号序列,所说的子符号序列部分地对应于第二符号序列并且相对于第二符号序列具有最小数目的和/或预先确定的数目的偏差;和校正设备,用于根据第二符号序列在子符号序列的位置校正第一符号序列。
背景技术
在EP0865031A2中,公开了在本文第一段中定义的这种类型的方法。那里描述的方法是一种语音识别数字序列(如电话号码)的方法。为了避免具有错误识别的数字序列的语音应用事项,识别的数字序列首先要输出给这个用户。然后,用户或者可能了解识别的数字序列的校正情况,或者有可能输入第二数字序列来校正第一数字序列。这可能是一个完全新的数字序列,但是还可能有一部分数字序列没有正确识别。由于只输入一部分原始符号序列以此作为第二符号序列,所以首先输入的数字序列的所有子序列都要与第二数字序列比较,第二数字序列即一种校正数字序列,它和第二数字序列具有相同的长度。然后,找到与第二数字序列相比具有最小数目偏差的第一数字序列的子序列,在子数字序列中与第二数字序列不同的数字由第二数字序列的数字代替。这种方法的优点是用户不必再次输入完整的第一数字序列,只输入一部分第一数字序列即可重复被认为是错误的数字。这样一种校正形式对应于用户与其它人谈话时的自然而且熟悉的对话形式。进而,它比再次输入完整的新的数字序列要快。此外,这种校正方法的预期成功结果是较大的,因为只输入一部分数字序列,引入新的识别误差的可能性较小。
然而,利用这种方法,只校正在某个数字位置的被认为是错误数字的误差。更加具体地说,当在大量的环境噪声中进行语音输入时,经常可能发生的是,这个系统完全不能识别数字,或者是识别出不是用户本人输入的附加的错误数字。然而,这样的误差不可能用上述的方法校正。此外,这个系统只能输出初始识别的数字序列的某个校正的版本。如果这不是正确的校正,用户就要重新输入一个数字序列或者子数字序列。在为了校正输入的第二数字序列明显地与初次识别的数字序列的某个子序列不匹配的情况下,必须有来自用户的更多的反馈。这种校正方法可能需要相当长的时间,因而最好重新输入一个完整的第一数字序列。
发明内容
本发明的一个目的是改进在本文开始段中定义的那种类型的方法,它可使对于被认为是错误的符号序列的校正更加简单、快速、使用户更舒服。
按照本发明的一种变形,通过在本文开始段中定义的那种类型的方法实现这个目的,其中确定用于校正的子符号序列包括:比较第二符号序列与这样的第一符号序列的子符号序列,第一符号序列的子符号序列是比第二符号序列或长或短的一系列符号。这应该被理解为要检查在子符号序列中的至少一个符号位置是否定位了不同于第二符号序列的符号,检查不同于第二符号序列的子符号序列是否具有至少一个附加的符号,或者在不同于第二符号序列的子符号序列中是否缺少至少一个符号。这样就可以实现,在一个符号被完全识别或者用户没有说出的符号被错误识别的情况下所说的方法还能够发挥作用。
为了在匹配子符号序列后确定第一符号序列,所说的第一符号序列是要通过第二符号序列校正的,存在下面的可能性:
在优选实施例中,首先寻找与第二符号序列具有相同长度的子符号序列,在此之后要寻找比第二符号序列长的至少一个子符号序列,最后要寻找比第二符号序列短的至少一个子符号序列。选择这个顺序的理由是,一个符号被错误理解的可能性要比一个符号被理解为是多余的或者全然没有被理解的可能性要大些。此外,在大多数语音识别系统中,例如由于背景噪声的结果,不理解附加符号的可能性比不识别发声符号的可能性更大些。
优选的作法还有,首先在准确的一个符号位置寻找相对于第二符号序列有偏差的这种子符号序列,而所说的偏差可能是另一个符号、缺少一个符号、或者多余一个符号。随后,首先在准确的两个符号位置寻找有这种偏差的子符号序列。如果在这次寻找期间没有确定任何合适的子符号序列,这次寻找异常终止,要求用户输入完全新的输入,因为包含超过两个符号变化的校正的几率相当地小。
在特定的优选实施例中,在确定子符号序列时,寻找下述类型的子符号序列的偏差:
1.与第二符号序列具有相同长度并且在一定数目的符号位置与第二符号序列具有不同符号的子符号序列。
2.与第二符号序列相比在一定数目的符号位置具有附加的符号、并且在其它的符号位置与第二符号序列匹配或者在一定数目的符号位置具有与第二符号序列不同符号的子符号序列。
3.与第二符号序列相比在一定数目的符号位置缺少一个符号、并且其它的符号位置与第二符号序列匹配或者在一定数目的符号位置具有与第二符号序列不同的符号。
存在不同符号的符号位置下面称之为“错误填充”,缺少符号或者存在多余符号的符号位置下面称之为“错误位置”。错误填充和/或错误位置以及错误位置的类型(一个符号太多或太少)的数量可以作为寻找的参数预先确定。例如,在第一步,可以针对具有相等长度但不同符号的子符号序列、较短一个符号的子符号序列、以及恰好较长一个符号的子符号序列进行特定的寻找。然后,在下一步,可以寻找具有两个错误填充的子符号序列以及具有一个错误填充和一个错误位置这两者的子符号序列。这意味着在这第二步可以寻找在两个位置具有偏差的一定数量的子符号序列。还可以寻找具有恰好3个预先确定的偏差的子符号序列,如此等等。
优选地,在第一符号序列中,针对这些类型偏差中的每一种偏差,寻找具有期望数目的某些偏差(即,某些数目的错误位置和/或错误填充)的恰好一个子符号序列。然后,比较第二符号序列与第一符号序列中的对应的不同子符号序列,这些子符号序列中的每一个都具有与第二符号序列对应的以及与对应的偏差类型对应的长度。在这种比较中,从形成第一符号序列的一端的子符号序列开始。然后,逐步地在第一符号序列中将要进行比较的子符号序列向前移动一个符号序列,一直到在这一端找到具有期望的偏差类型的子符号序列时为止。然后终止对于对应类型的子符号序列的寻找。如果没有找到任何一个期望的子符号序列,继续寻找,一直到最后将第二符号序列与形成第一符号序列的开始的子符号序列进行比较时为止,即,一直到抵达第一符号序列的开始时为止。
按照这种方法,假定用户在输入第二符号序列时具有再次输入整个符号序列的趋势,所说的整个符号序列从错误位置开始已被错误识别。作为这个比较顺序的结果,从子符号序列定位在第一符号序列的一端开始,最后可实现,有可能正确地识别错误并且极其快速地校正这个错误。
第二符号序列与第一符号序列的较长的子符号序列的比较最好是按照以下的方式实现:在子符号序列的产生变化的符号位置忽略对应的符号并且将对应的其余子符号序列与第二符号序列进行比较。
作为这种情况的一个例子,可以考虑长度为n的第二符号序列,这个长度为n的第二符号序列将要与长度为n+1的子符号序列进行比较。然后,首先将第二符号序列与子符号序列的最后n个字符进行比较,然后忽略子符号序列的第一个符号。随后,在第二符号序列与子符号序列的一个辅助序列进行比较的过程中忽略子符号序列的第二个符号,子符号序列的一个辅助序列是通过子符号序列的第一个符号和最后的n-1个符号形成的。最后要作的事情就是比较子符号序列的头n个符号,并且忽略子符号序列的最后一个符号。
类似地,还是在比较第二符号序列与具有两个附加符号的子符号序列期间,可以忽略两个对应的符号,子符号序列的忽略对应的符号的符号位置在子符号序列中可以逐个地移动。
按照类似的方式,比较第二符号序列与第一符号序列的一个较短的子符号序列。在第二符号序列的对应的产生改变的符号位置,忽略一个符号,并且将第二符号序列的对应的其余序列与这个子符号序列进行比较。
按照本发明的另一种变形,本发明的目的是通过在本文的开始段中定义的那种类型的方法实现的,其中确定第一符号序列的校正版本的多种替换方案,并向用户发出所说的替换方案以便确认,一直到收到发送的校正版本或异常终止命令的肯定应答时为止,或者一直到达到作为终止标准确定的限值时为止。
异常终止命令可以是由用户明确给出的命令。然而,更加具体地说,异常终止命令还可能是可由系统识别的而后系统认为用户打算终止正在运行的校正的一个新的符号序列的输入。
作为异常终止标准的限值例如可以是时间限值。在一个优选实施例中,可以预先确定最大数目的可替换的校正版本,例如6个不同的校正版本,以此作为异常终止标准。然后,只分别确定或发出不同版本的这个数目的最大值。如果这些校正版本都不是真的,该方法异常终止。
在另一个优选实施例中,输出第一符号序列的所有校正版本,以此作为最大值,其中相对于初始识别的第一符号序列的偏差的数目位于预先确定的最大值的下面。例如,在一个特定的优选实施例中,输出唯一的校正版本,其中对于初始识别的第一符号序列的两个符号位置的最大值进行了校正。
确定并输出多个可替换的校正的方法的优点在于,用户在初次试图进行的校正中产生了差错后不需要立即输入新的第二符号序列。这种方法的特殊优点是,由于第一符号序列的类型,并且由于键入了第二符号序列,这种方法具有多个基本上同样好的替换校正可能性。
在一个特别优选的实施例中,按照以上定义的方法确定几个校正版本,其中也要比较第二符号序列与第一符号序列的这种子符号序列,第一符号序列的这种子符号序列是长于和/或短于第二符号序列的一系列符号。在这种方法中,找到可替换的等效的校正版本的几率大于第二符号序列只与第一符号序列的等长度子符号序列进行简单比较的几率。
这样,按照本发明的方法就可形成单个的或组合的性能良好的仪器,用于校正每个发音的任意符号序列输入。这里可以肯定地说,所说的符号序列可以是任何单个发声的符号的任意序列,不仅是以上定义的数字序列,例如可以是电话号码。例如,符号序列还可以是字母数字的不同组合的序列,例如拼音文字、等。类似地,符号还可以是单个的词,或者是图画的小标题,或者是特殊的符号,如星号、菱形、加号、减号,它们在某个序列中都是可以发音的,并且可由系统识别。
按照本发明的方法可以安装在任何一个语音控制的应用中或者语音应用中,例如在自动语音对话系统中、或用于器件或设备的语音控制中。
为了实施开始时提到的方法,用于语音识别以上定义的这种类型的符号序列的系统是必要的,其特征在于:比较器设备包括用于比较第二符号序列与第一符号序列的这种子符号序列的装置,所说的第一符号序列的这种子符号序列是长于或短于第二符号序列的一系列符号。
为了实施最后说明的方法,在本文开始段定义的这种类型的系统需要具有:用于确定多个可替换的第一符号序列的校正版本并将其输出给用户以便确认的装置,以及一个中断设备,所说的中断设备在收到来自用户的输出校正版本的肯定应答或者异常终止命令的肯定应答时,或者达到作为异常终止标准确定的限值时,异常终止进一步查找和/或发出第一符号序列的可替换的校正版本。最好将比较器设备构成为可以比较第二符号序列与较短或较长的子符号序列。
按照本发明的这个系统在本质上可以通过在语音对话系统的计算机上或者在一个设备的语音控制器的计算机上的合适的软件来产生。例如,语音识别设备、比较器设备、校正设备、和中断设备都可全部制作成计算机软件模块。对于系统来说唯一必须作的事情是可以包括语音输出,例如,除带有放大器的扬声器外,还要包括根据计算机可读数据产生语音的装置。例如包括一个TTS转换器(文本-语音转换器),这种转换器还可以借助于合适的软件产生。
根据本发明的另一方面,提供了一种用于符号序列的语音识别的系统,包括:
-语音识别设备,用于识别语音符号序列和命令;
-语音输出设备,用于输出语音识别的第一符号序列以便用户确认;
-比较器设备,用于在错误识别第一符号序列时比较语音识别的第二符号序列与第一符号序列,并且然后确定第一符号序列的一个子符号序列,所说的子符号序列部分地对应于第二符号序列并且相对于第二符号序列具有最小数目的和/或预先确定的数目的偏差;和
-校正设备,用于根据第二符号序列在子符号序列的范围内校正第一符号序列,
其特征在于比较器设备包括用于比较第二符号序列与第一符号序列的子符号序列的装置,所述第一符号序列的子符号序列是多个比第二符号序列或长或短的符号。
上述符号序列的语音识别的系统的特征还在于还包括:用于确定第一符号序列的多个可替换的校正版本并将这些校正版本输出给用户用于确认的装置;以及一个中断设备,用于当收到输出校正版本的肯定确认或来自用户的异常终止命令的肯定确认时、或者当达到作为异常终止标准确定的限值时终止第一符号序列的可替换的校正版本的进一步确定和/或输出。
参照下面描述的附图,本发明的这些和其它的方面都将是显而易见的。
附图说明
图1是语音识别系统的示意方块图;
图2a-2d表示说明校正方法的流程图;
图3a表示用于说明其长度与第二符号序列相同的子符号序列的校正的流程图;
图3b表示用于说明其长度大于第二符号序列的子符号序列的校正的流程图;
图3c表示用于说明其长度小于第二符号序列的子符号序列的校正的流程图;
图4表示用于说明其长度相差一个符号的两个符号序列的比较的流程图。
具体实施方式
如图1所示的符号序列的语音识别系统的实施例包括:一个麦克风1、两个放大器2、6、和扬声器7。此外,该系统还包括一个控制装置10,控制装置10包括语音识别设备3、评估设备4、和TTS转换器5。控制装置10,即语音识别设备3、评估设备4、和TTS转换器5,可以按照在合适的计算机上如在服务器上的软件模块的形式产生。
构成按照本发明的系统的细节的另外的可能性可以从EP0865031中获知,更加具体地,可从那里说明的实施例获知。可以具体参考这篇文献并且可以引用那里提到的另外的文献。
经过麦克风1捕获来自用户的语音输入,这个语音输入由放大器2放大并传递到控制装置10的语音识别模块3。这个语音输入可以是任意的语音输入,但更加具体地说,可以是用于控制这个系统的语音输入,例如符号序列,诸如电话号码之类的数字序列。
为简单起见,起动一个数字序列,例如输入一个符号序列。因此,通常使用术语数字来代替更一般的术语符号。如以上所述,符号序列还可以是任意的其它符号的一个序列。
然后,将由语音识别设备识别的语音输入按照计算机代码的形式(如ASXII代码)传递到评估设备4。当从用户输入的识别语音是一个数字序列时,要经过TTS转换器5和放大器6以及扬声器7向用户输出这个序列,以便再次检查。当输出识别的数字序列以备用户确认时,还可进一步地使用在EP08650831A2中提及的方法,产生成对的韵律特征(prosody)以便输出。
下面参照图2a-2d所示的流程图详细描述借助于按照本发明的两种方法校正错误识别的数字序列的过程。使用两种方法的组合,即,比较输入的第二数字序列与识别的第一符号序列的相等长度的、较长长度的、或者较短长度的子数字序列,以及计算校正的第一符号序列的各种可能变形并将其输出给用户以便确认。
所说的方法在这里在方法步骤11开始,识别第一符号序列a,第一符号序列a可用在任意的语音应用中,在这里没有进一步地表示出所说的语音应用。然后,在方法步骤12,借助于语音输出设备5、6、7向用户输出识别的第一符号序列a以便确认。
下面例如假定:用户已经输入了数字序列“8891219”,在此之后语音系统已理解这个数字序列“88912219”。这个系统然后例如在步骤12输出一个消息,例如“你已经输入了数字88912219,这是正确的吗?”
然后,用户可能会作出反映:或者由于将其识别为正确的数字例如通过输入命令“是”来确认这个数字,或者例如在错误地识别这个数字的当前的情况下作出否定的回答。在图中所示运行的程序中,假定用户像与自然人正常对话那样立即输入一个新的子符号序列以校正错误识别的数字序列。在这个具体的例子中,他可能只输入“1219”作为第二数字序列。
因此,在方法步骤14,首先检查是否得到一个确认,或者是否输入第二数字序列以便校正。如果得到了确认,则终止另外的校正方法,并且在方法步骤15继续进行语音应用,即,输入这样的数字序列。在另外的情况下,使用重新输入的第二数字序列b来校正错误识别的数字序列a。
为此目的,在方法步骤16检查第二数字序列b的长度是否小于初始的第一数字序列a的长度。如果不是这种情况,假定用户简单地再次重复整个第一数字序列a。因此,在这种情况下,在方法步骤17,整个识别的第一数字序列a与识别的第二数字序列b交换,随后,在方法步骤12,这个新输入的第二数字序列b作为数字序列a向用户输出以便进行确认。在方法步骤13,识别用户的回答,并且等待确认或新的数字序列b、等。
在另一方面,如果在方法步骤16期间得出结论:第二数字序列b短于第一数字序列a,则前进至图2b的方法步骤19。
在方法步骤19-51,产生一个表K,它由初始识别的第一数字序列a的各种校正版本ak组成。为此目的,首先在初始化步骤19将具有校正版本ak的表K定义为空的。
然后,在方法步骤20,执行第一例行程序CEL。这个例行程序CEL产生第一识别的数字序列a的一个校正版本ak,其中第二数字序列b已经与第一数字序列a的子序列u进行了交换,这个子序列与第二数字序列b具有相同的长度,二者的差别仅在于第二数字序列b中的单个数字。这个差别由参数“diff”记录表示,参数“diff”代表在子序列中错误位置的数目,在这里参数“diff”设定为1。
在图3a中详细地表示方法步骤20中的方法例行程序,即例行程序CEL。这里,在初始化步骤21,将参数Ia和Ib分别设定为数字序列a和数字序列b的长度。
进而,将运行变量i设定为0。在该初始化步骤21之后,在方法步骤22,第二数字序列b与第一数字序列a的子序列u比较以得到第二数字序列b的长度具有的错误填充。启动这个子序列,这个子序列形成第一数字序列a的端部,这就是说,第一数字序列中在位置1a-1b+1和位置1a之间的数字与数字序列b进行比较。在这里的流程图中所用的记法中,长度为n的符号序列的符号位置从1运行到n。
然后,在方法步骤23中,检查错误填充的数目是否对应于在步骤22中确定这个错误填充的数目的期望数值diff,即对应于在子序列u中而不是在第二数字序列b中存在另一个数字的位置的数目的期望数值diff。在图2b的方法步骤20中,将这个参数diff设定为1,因此这里只在一个位置检查子序列u是否不同于第二数字序列b。
在上述的例子中就是这种情况,因为识别的第一数字序列a是“88912219”,并且用户已经输入了第二数字序列b“1219”以便进行校正。因此,在步骤22中要进行比较的下一个子序列是“2219”。这个子序列与第二数字序列b相差恰好在第一位置。因此,在步骤27,产生第一数字序列a的校正版本ak,其中在第一数字序列a中的确定的子序列u由第二数字序列b替换。在上述的实施例中,随后产生新的校正版本ak“88911219”。
由于在步骤23已经发现,错误填充数不对应于期望的差diff,所以在方法步骤24首先要检查运行的变量i是否小于值1a-1b+1。如果是这种情况,则i加1,并且再次进行步骤22中的比较。作为这种循环的结果,子序列u在第一数字序列a中逐步地向前移动一个位置。一旦i达到值1a-1b+1,就要检查这个子序列u是否由第一数字序列a的位置1到位置Ib的数字组成,即,检查形成第一数字序列a的开始部分的子序列u。在这种情况下,就没有另外的子序列需要检查了,并且当在步骤26中返回作为已确定的校正过的数字序列ak的一个空字符串时子例行程序20结束。
然后,在图2b的下一个方法步骤50,检查通过例行程序CEL返回的数字序列ak是否不是一个空字符串,即,检查是否产生合适的校正的数字序列。如果是这种情况,在步骤51,将返回的数字序列ak加到表K。
接着,在步骤30,调入另一个例行程序CLL。这个例行程序从识别的第一数字序列a和第二数字序列b以及再次预先确定的错误填充的差diff产生出一个新的校正过的数字序列ak,这里所说的这个例行程序CLL将第一数字序列a的子序列u与第二数字序列b进行比较,所说的第一数字序列a的子序列u比第二数字序列b短一个数字。
在图3b中更加详细地表示了这个例行程序CLL。该方法的例行程序在本质上对应于在方法步骤20中的例行程序CEL,如图3a所示。二者的差别只在于,在这里,在方法步骤32中比较的是第二数字序列b与第一数字序列a的一个子序列u,这个子序列从位置1a-1b+2-i运行到位置1a-i。相比之下,在方法步骤22中,按照例行程序CEL,是与这样一个子序列u进行比较,这个子序列从第一数字序列a的位置1a-1b+1-i运行到位置1a-i。这就意味着,在方法步骤32中,这个子序列u比第二数字序列b短一个数字。因此,在方法步骤34中假定i没有达到值1a-1b+2。
在图2b的方法步骤30,代表错误填充数目的参数diff设定为0。这是在图3b所示的按照步骤30的方法中寻找较短的子序列u的结果,因此无论如何已经存在一个错误位置。这样,与方法步骤20类似,要对恰好只有一个偏差的子序列u进行搜寻,只有这个子序列有一个错误位置而不是错误填充。
在图4中进一步对于步骤32进行的比较和例行程序CLL进行说明。这里通常假定,较短的数字序列v与长一个数字的数字序列w进行比较。
在一开始,首先将运行变量s初始化为数值1,并且将另一个变量t设置为较长的数字序列w的长度。这发生在步骤59。随后,在步骤60,对于每个i<s,比较较短的数字序列v的第i个位置与较长的数字序列w的第i个位置;对于所有的i≥s,比较较短的数字序列v的第i个位置与较长的数字序列w的第i+1个位置,这里,i从较短的数字序列v的第一个位置运行到最后一个位置。每次都要确定错误填充的数目。在按照步骤60的这个方法中,忽略较长的数字序列w的第s个位置的数,进行比较的是较短的数字序列v与较长的数字序列w的其余部分。
为了紧密结合以上提及的第一数字序列a和第二数字序列b的具体实例,下面只考虑第二数字序列b“1219”与子序列u”12219”之间的比较,子序列u“12219”对应于已识别的第一数字序列a的一端。开始,忽略子序列u“12219”的第一个数字,这样,第二数字序列b“1219”就与数字序列“2219”进行比较。这里,错误填充的数目等于1,因为所考虑的这两个数字序列彼此相差在第一位。然后,在步骤61,检查已确定的错误填充的数目是否小于在一开始时初始化为长度w的参数f。如果是这种情况,则f设定为已确定的错误填充的数目。在这个具体例子中,参数f因此被设定为1。
随后,在步骤62,检查运行变量s是否小于较短的数字序列v的长度。如果不,在步骤63运行变量s加1,并且再次执行方法步骤60。因此,忽略子序列“12219”的第二个元素,并且比较剩余的序列“1219”与第二数字序列b“1219”。
然后,在步骤61,再次检查在这个第二次检查中的错误填充的数目是否小于参数f,即,在第一轮检查中错误填充的数目。如果是这样,则这个参数f由较小的数代替。这样,这个参数f就可以对应于一个错误填充的数目,这个错误填充的数目就是在比较较短的符号序列与长一个符号的符号序列的所有可能的子序列的过程中的最小数值。
在本例中,要在第二轮中进行比较的数字序列都是相同的,因此错误填充的数目等于0。因此,参数f设置成0。
一旦s已经达到长度v,该方法终止,即,该方法一直前进到最终第二数字序列“1219”与子序列u的端部比较,即与数字“2219”比较。然后,参数f返回。然后,参数f在例行程序CLL中作为最小的错误填充数目与期望的错误填充数目diff比较。如果数值匹配,则找到具有预先确定的长度差的子序列,它的最小错误填充数目恰好对应于期望的错误填充数目diff。
在以上所述的例中,可能就是这种情况,因为在所说的第二轮中,第二数字序列b“1219”对应于第一数字序列a的子序列u“12219”的元素“1219”。最小的错误填充数目因此恰好对应于在步骤30确定的值diff=0。由于因此找到了已识别的第一数字序列a的校正版本ak,所以对于其余部分在以前的实例中的序列“8891219”恰好对应于由用户初始输入的正确的第一数字序列a。
在接下去的方法步骤50`,检查空字符串是否来自方法步骤30,或者第一数字序列a的一个校正版本ak是否返回。如果这个字符串ak不是空的,则检查这个数字序列ak已经在表K中存在。按另一种方式,在步骤51,将一个新的校正版本ak加到表K。
在步骤40,最后调用另一个例行程序CSL,例行程序CSL也要根据输入的第一数字序列a和第二数字序列b以及期望的错误填充数目diff提供校正的数字序列ak。在这里,还是将错误填充数目diff设置为0。在图3c中进一步地说明了这个例行程序CSL。例行程序CSL比较的是第二数字序列b与第一数字序列a的这样一个子序列u,所说的子序列u比第二数字序列b短一个数字。为此目的,要对子序列u进行选择,使其包括第一数字序列a的位置1a-1Ib-i一直到1a-i,如图3c中的方法步骤42所示。在方法步骤44,假定i没有达到值1a-1b。在其它方面,例行程序CSL与例行程序CEL和CLL中的方法步骤本质上一样。在例行程序CSL中按照步骤42的比较对应于如图4所示的例行程序CLL的步骤32中进行的比较,其差别只在于,现在的第一数字序列a的子序列u形成较短的数字序列v,第二数字序列b是长一个数字的序列w。
还是在图2b的方法步骤40之后,在方法步骤50`中,检查返回的符号序列ak是否是空字符串,或者检查返回的符号序列ak是否已经定位在校正的符号序列ak的表K中。否则,新找到的校正版本ak加到表K中。
随后,在方法步骤20`中,再次在第二数字序列b和具有相同长度的第一数字序列a的子序列u之间进行比较,然而,这里寻找的子序列在两个位置具有错误填充。为此目的,使用与方法步骤20中基本上相同的例行程序,但这里的参数diff设置为2。随后,在方法步骤50`和51,再次检查返回的字符串ak是否是空的,然后分别将其加到表K上。
在方法步骤30`,再次比较第二数字序列b与长一个数字的第一数字序列a的子序列u,但是现在寻找的子序列u在一个位置还有一个不同的数字。这是通过调用例行程序CLL再次实现的,但在这里将参数diff设定为1。这就是说,在这里还要寻找寻找子序列u,这个子序列u在两个位置上不同于第二数字序列b,这种情况或者是错误位置的结果或者是错误填充的结果。
在下面的步骤50和51中,再次将在步骤30`中找到的校正版本ak加到表K。
随后是最后一个寻找步骤40`,其中搜寻的是比第二数字序列b少一个数字并且在一个位置还有一个错误填充的第一数字序列a的子序列u。为此目的还要使用按照图3c的例行程序CSL,同时将参数diff设置为1。
在下面的方法步骤50`、51,将在方法步骤40`中找到的第一数字序列a的校正版本ak加到表K中。
结果,由于每一个例行程序20、30、40、20`、30`、40`都已经返回一个不同的非空的字符串,所以在这个方法中,这时的表K恰好包含第一数字序列a的6个不同的校正版本ak。
在下一个方法步骤,通过声学的方法将表K输出给用户。为此目的,在步骤52,将运行变量m设置成表K的长度,并且将运行变量i设置为1。
然后,在步骤53,输出表K的第1项,并且在步骤54检查用户是否已经确认了这个输出。如果是这种情况,则认为这个输出的数字序列是正确的数字序列,并且在步骤57终止这个校正方法,并且返回到语音应用,对于这个语音应用将要实现这个数字序列的输入。
此外,在步骤55,检查运行变量i是否比表K的长度m还小。如果是这种情况,则将运行变量i的值加1,并且在步骤53输出表K的下一项。如果达到表K的端部,运行变量i的值对应于值m,并且对于步骤55中的问题的回答是否定的。随后,在步骤58,返回到实际的语音应用,这时产生一个提示,即向用户的一个输出,借此要求用户重新输入数字序列,因为校正是不可能进行的。
应该再次指出,上述方法的例行程序只是本发明的具体实施例,本领域的普通技术人员有可能在许多方面根据需要变化这个方法。
例如,用第二数字序列b替换不完整的第一数字序列a的已经找到的校正的子序列u,但是只是替换其中彼此不同的那些数字,或者分别在适当的位置插入或省略一些数字。

Claims (16)

1.一种符号序列的语音识别的方法,其中首先借助于用户确认的语音输出设备输出语音的识别的第一符号序列,并且在错误地识别第一符号序列的情况下识别语音的第二符号序列并且使其与第一符号序列进行比较,同时确定第一符号序列的一个子符号序列,所说的子符号序列部分地与第二符号序列相对应并且相对于第二符号序列具有最低数目的和/或预先确定数目的偏差,最后,借助于第二符号序列在所说子符号序列的位置校正第一符号序列,其特征在于:确定校正的子符号序列包括:比较第二符号序列与第一符号序列的子符号序列,第一符号序列的子符号序列是比第二符号序列或长或短的一系列符号。
2.根据权利要求1所述的方法,其特征在于:首先寻找与第二符号序列具有相同长度的子符号序列,在此之后寻找比第二符号序列长的至少一个子符号序列,最后寻找比第二符号序列短的至少一个子符号序列。
3.根据权利要求1或2所述的方法,其特征在于:在确定第一符号序列的子符号序列时,寻找在恰好一个符号位置相对于第二符号序列有偏差的第一子符号序列,最后,寻找在恰好两个符号位置相对于第二符号序列有偏差的子符号序列,而所说的偏差可能是另一个符号、缺少一个符号、或者一个附加的符号。
4.根据权利要求1-2中任何一个所述的方法,其特征在于:在确定第一符号序列的子符号序列时,寻找下述类型的子符号序列的偏差:
-与第二符号序列具有相同长度并且在一定数目的符号位置具有与第二符号序列不同的一个符号的子符号序列,
-与第二符号序列相比在一定数目的符号位置具有一个附加的符号和在其它情况下与第二符号序列匹配一致或者在一定数目的符号位置具有与第二符号序列不同的一个符号的子符号序列,
-与第二符号序列相比在一定数目的符号位置缺少一个符号和在其它情况下与第二符号序列匹配一致或者在一定数目的符号位置具有与第二符号序列不同的一个符号的子符号序列。
5.根据权利要求4所述的方法,其特征在于:对于某种类型的偏差,寻找第一符号序列的刚好一个子符号序列并且总是比较第二符号序列与第一符号序列的各种子符号序列,第一符号序列的各种子符号序列每一个都具有与第二符号序列和偏差类型匹配的长度,这里对应的比较是从形成第一符号序列的端部的子符号序列开始的,然后用于比较的子符号序列在第一符号序列中逐步地向前移动一个符号位置,一直到找到有期望类型偏差的子符号序列时为止,或者一直到第二符号序列最终与形成第一符号序列的开始端的子符号序列比较时为止。
6.根据权利要求1-2中任何一个所述的方法,其特征在于:当第二符号序列与第一符号序列的较长的子符号序列比较时,在比较期间,在对应的子符号序列的产生变化的符号位置忽略一个符号,并且将对应的其余子符号序列与第二符号序列进行比较;并且,当第二符号序列与第一符号序列的较短的子符号序列比较时,在比较期间,在对应的第二符号序列的产生变化的符号位置忽略一个符号,并且将第二符号序列的对应的其余序列与子符号序列进行比较。
7.根据权利要求1所述的方法,其特征在于:确定第一符号序列的多个可替换的校正版本和向用户输出这些校正版本用于确认,一直到收到异常终止命令的输出校正版本的肯定确认时为止,或者直到达到作为异常终止标准确定的限值时为止。
8.根据权利要求7所述的方法,其特征在于:确定并输出第一符号序列的预定数目的可替换的校正版本的最大值。
9.根据权利要求7所述的方法,其特征在于:最多确定并输出所有的第一符号序列的所有校正版本,其中相对于初始确认的第一符号序列的偏差数目位于最大值的下面。
10.根据权利要求7-9之一所述的方法,其特征在于:首先寻找与第二符号序列具有相同长度的子符号序列,在此之后寻找比第二符号序列长的至少一个子符号序列,最后寻找比第二符号序列短的至少一个子符号序列。
11.根据权利要求求7-9之一所述的方法,其特征在于:在确定第一符号序列的子符号序列时,寻找在恰好一个符号位置相对于第二符号序列有偏差的第一子符号序列,最后,寻找在恰好两个符号位置相对于第二符号序列有偏差的于符号序列,而所说的偏差可能是另一个符号、缺少一个符号、或者一个附加的符号。
  12.根据权利要求求7-9之一所述的方法,其特征在于:在确定第一符号序列的子符号序列时,寻找下述类型的子符号序列的偏差:
-与第二符号序列具有相同长度并且在一定数目的符号位置具有与第二符号序列不同的一个符号的子符号序列,
-与第二符号序列相比在一定数目的符号位置具有一个附加的符号和在其它情况下与第二符号序列匹配一致或者在一定数目的符号位置具有与第二符号序列不同的一个符号的子符号序列,
-与第二符号序列相比在一定数目的符号位置缺少一个符号和在其它情况下与第二符号序列匹配一致或者在一定数目的符号位置具有与第二符号序列不同的一个符号的子符号序列。
13.根据权利要求7-9之一所述的方法,其特征在于:对于某种类型的偏差,寻找第一符号序列的刚好一个子符号序列并且总是比较第二符号序列与第一符号序列的各种子符号序列,第一符号序列的各种子符号序列每一个都具有与第二符号序列和偏差类型匹配的长度,这里对应的比较是从形成第一符号序列的端部的子符号序列开始的,然后用于比较的子符号序列在第一符号序列中逐步地向前移动一个符号位置,一直到找到有期望类型偏差的子符号序列时为止,或者一直到第二符号序列最终与形成第一符号序列的开始端的子符号序列比较时为止。
14.根据权利要求7-9之一所述的方法,其特征在于:当第二符号序列与第一符号序列的较长的子符号序列比较时,在比较期间,在对应的子符号序列的产生变化的符号位置忽略一个符号,并且将对应的其余子符号序列与第二符号序列进行比较;并且,当第二符号序列与第一符号序列的较短的子符号序列比较时,在比较期间,在对应的第二符号序列的产生变化的符号位置忽略一个符号,并且将第二符号序列的对应的其余序列与子符号序列进行比较。
15.一种用于符号序列的语音识别的系统,包括:
-语音识别设备(3),用于识别语音符号序列和命令;
-语音输出设备(5、6、7),用于输出语音识别的第一符号序列以便用户确认;
-比较器设备(8),用于在错误识别第一符号序列时比较语音识别的第二符号序列与第一符号序列,并且然后确定第一符号序列的一个子符号序列,所说的子符号序列部分地对应于第二符号序列并且相对于第二符号序列具有最小数目的和/或预先确定的数目的偏差;和
-校正设备(9),用于根据第二符号序列在子符号序列的范围内校正第一符号序列,
其特征在于比较器设备(8)包括用于比较第二符号序列与第一符号序列的子符号序列的装置,所述第一符号序列的子符号序列是多个比第二符号序列或长或短的符号。
16.根据权利要求15所述的系统,
其特征在于还包括:用于确定第一符号序列的多个可替换的校正版本并将这些校正版本输出给用户用于确认的装置;以及一个中断设备,用于当收到输出校正版本的肯定确认或来自用户的异常终止命令的肯定确认时、或者当达到作为异常终止标准确定的限值时终止第一符号序列的可替换的校正版本的进一步确定和/或输出。
CNB038082136A 2002-04-12 2003-04-09 用于符号序列的语音识别的方法和系统 Expired - Fee Related CN1307610C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE10216117A DE10216117A1 (de) 2002-04-12 2002-04-12 Verfahren und System zur Spracherkennung von Symbolfolgen
DE10216117.8 2002-04-12

Publications (2)

Publication Number Publication Date
CN1647153A CN1647153A (zh) 2005-07-27
CN1307610C true CN1307610C (zh) 2007-03-28

Family

ID=28458746

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB038082136A Expired - Fee Related CN1307610C (zh) 2002-04-12 2003-04-09 用于符号序列的语音识别的方法和系统

Country Status (8)

Country Link
US (1) US20050119884A1 (zh)
EP (1) EP1500081B1 (zh)
JP (1) JP4411089B2 (zh)
CN (1) CN1307610C (zh)
AT (1) ATE406649T1 (zh)
AU (1) AU2003216582A1 (zh)
DE (2) DE10216117A1 (zh)
WO (1) WO2003088210A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1376999A1 (en) * 2002-06-21 2004-01-02 BRITISH TELECOMMUNICATIONS public limited company Spoken alpha-numeric sequence entry system with repair mode
JP4843987B2 (ja) * 2005-04-05 2011-12-21 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
US7424431B2 (en) * 2005-07-11 2008-09-09 Stragent, Llc System, method and computer program product for adding voice activation and voice control to a media player
US9070363B2 (en) * 2007-10-26 2015-06-30 Facebook, Inc. Speech translation with back-channeling cues
US11222185B2 (en) 2006-10-26 2022-01-11 Meta Platforms, Inc. Lexicon development via shared translation database
US8972268B2 (en) 2008-04-15 2015-03-03 Facebook, Inc. Enhanced speech-to-speech translation system and methods for adding a new word
US8131458B1 (en) 2008-08-22 2012-03-06 Boadin Technology, LLC System, method, and computer program product for instant messaging utilizing a vehicular assembly
US8265862B1 (en) 2008-08-22 2012-09-11 Boadin Technology, LLC System, method, and computer program product for communicating location-related information
US8073590B1 (en) 2008-08-22 2011-12-06 Boadin Technology, LLC System, method, and computer program product for utilizing a communication channel of a mobile device by a vehicular assembly
US8078397B1 (en) 2008-08-22 2011-12-13 Boadin Technology, LLC System, method, and computer program product for social networking utilizing a vehicular assembly
US8374868B2 (en) * 2009-08-21 2013-02-12 General Motors Llc Method of recognizing speech
US9008308B2 (en) * 2012-02-08 2015-04-14 Vixs Systems, Inc Container agnostic decryption device and methods for use therewith
CN108519966B (zh) * 2018-04-11 2019-03-29 掌阅科技股份有限公司 电子书特定文本元素的替换方法及计算设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5712957A (en) * 1995-09-08 1998-01-27 Carnegie Mellon University Locating and correcting erroneously recognized portions of utterances by rescoring based on two n-best lists
EP0865031A2 (de) * 1997-03-11 1998-09-16 Philips Patentverwaltung GmbH System zur Spracherkennung von Ziffern
US5855000A (en) * 1995-09-08 1998-12-29 Carnegie Mellon University Method and apparatus for correcting and repairing machine-transcribed input using independent or cross-modal secondary input

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4870686A (en) * 1987-10-19 1989-09-26 Motorola, Inc. Method for entering digit sequences by voice command
US5852801A (en) * 1995-10-04 1998-12-22 Apple Computer, Inc. Method and apparatus for automatically invoking a new word module for unrecognized user input

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5712957A (en) * 1995-09-08 1998-01-27 Carnegie Mellon University Locating and correcting erroneously recognized portions of utterances by rescoring based on two n-best lists
US5855000A (en) * 1995-09-08 1998-12-29 Carnegie Mellon University Method and apparatus for correcting and repairing machine-transcribed input using independent or cross-modal secondary input
EP0865031A2 (de) * 1997-03-11 1998-09-16 Philips Patentverwaltung GmbH System zur Spracherkennung von Ziffern
US6078887A (en) * 1997-03-11 2000-06-20 U.S. Philips Corporation Speech recognition system for numeric characters

Also Published As

Publication number Publication date
WO2003088210A1 (en) 2003-10-23
ATE406649T1 (de) 2008-09-15
JP2005522742A (ja) 2005-07-28
EP1500081B1 (en) 2008-08-27
EP1500081A1 (en) 2005-01-26
CN1647153A (zh) 2005-07-27
US20050119884A1 (en) 2005-06-02
DE10216117A1 (de) 2003-10-23
JP4411089B2 (ja) 2010-02-10
AU2003216582A1 (en) 2003-10-27
DE60323220D1 (de) 2008-10-09

Similar Documents

Publication Publication Date Title
CN1307610C (zh) 用于符号序列的语音识别的方法和系统
US7702512B2 (en) Natural error handling in speech recognition
US7228275B1 (en) Speech recognition system having multiple speech recognizers
US6839667B2 (en) Method of speech recognition by presenting N-best word candidates
US4618984A (en) Adaptive automatic discrete utterance recognition
KR101556594B1 (ko) 신호처리장치 및 신호처리장치에서의 음성 인식 방법
JP4241376B2 (ja) 認識されたテキスト中の音声シーケンスと手動入力される補正ワードの音声転写との比較を通した音声認識により認識されたテキストの補正
KR20180064504A (ko) 개인화된 엔티티 발음 학습
CN105468582A (zh) 一种基于人机交互的数字串的纠正方法及装置
JP2008051895A (ja) 音声認識装置および音声認識処理プログラム
US20220399013A1 (en) Response method, terminal, and storage medium
KR20190012419A (ko) 발화 유창성 자동 평가 시스템 및 방법
CN114783424A (zh) 文本语料筛选方法、装置、设备及存储介质
US20020184019A1 (en) Method of using empirical substitution data in speech recognition
JP4216361B2 (ja) 数字用音声認識システム
JP2010164918A (ja) 音声翻訳装置、および方法
CN110895938B (zh) 语音校正系统及语音校正方法
CN101304457A (zh) 一种基于语音电话实现自动口语训练的方法与装置
CN113744718A (zh) 语音文本的输出方法及装置、存储介质、电子装置
CA2597826C (en) Method, software and device for uniquely identifying a desired contact in a contacts database based on a single utterance
JP2007535692A (ja) 任意に話されたキャラクタのコンピュータによる認識及び解釈のためのシステム及び方法
JP2001236091A (ja) 音声認識結果の誤り訂正方法およびその装置
US20100292988A1 (en) System and method for speech recognition
KR102217621B1 (ko) 사용자 발화의 오류를 교정하는 방법 및 장치
WO2007052281A1 (en) Method and system for selection of text for editing

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070328

Termination date: 20110409