CN1329861C - 模式匹配方法和装置 - Google Patents

模式匹配方法和装置 Download PDF

Info

Publication number
CN1329861C
CN1329861C CNB008163537A CN00816353A CN1329861C CN 1329861 C CN1329861 C CN 1329861C CN B008163537 A CNB008163537 A CN B008163537A CN 00816353 A CN00816353 A CN 00816353A CN 1329861 C CN1329861 C CN 1329861C
Authority
CN
China
Prior art keywords
phonetic feature
sequence
score
feature
note
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
CNB008163537A
Other languages
English (en)
Other versions
CN1409842A (zh
Inventor
菲利普·N·加纳
贾森·P·A·查尔斯沃特
樋口麻子
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.)
Canon Inc
Original Assignee
Canon Inc
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
Priority claimed from GBGB9925560.6A external-priority patent/GB9925560D0/en
Priority claimed from GBGB9925561.4A external-priority patent/GB9925561D0/en
Priority claimed from GB0025143A external-priority patent/GB2355836B/en
Application filed by Canon Inc filed Critical Canon Inc
Publication of CN1409842A publication Critical patent/CN1409842A/zh
Application granted granted Critical
Publication of CN1329861C publication Critical patent/CN1329861C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2452Query translation
    • G06F16/24522Translation of natural language queries to structured queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3343Query execution using phonetics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/68Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/683Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/685Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using automatically derived transcript of audio data, e.g. lyrics

Abstract

提供一种用于匹配两个或多个音素序列的系统,其中音素序列是根据文本或语音生成的。最好使用具有约束的动态规划匹配技术,约束取决于以上两个序列是根据文本还是根据语音生成的,并且利用适当的音素混淆得分、音素插入得分和音素删除得分,对动态规划路径的得分进行加权。

Description

模式匹配方法和装置
本发明涉及用于匹配音素序列的装置和方法。本发明用于响应用户的输入查询,搜索具有关联语音注释的数据文件的数据库。输入查询可以为语音查询或打字查询。
信息数据库是众所周知的,其问题是如何快速、有效地从数据库中定位并检索所需的信息。现有数据库搜索工具允许用户使用打字关键字来搜索数据库。虽然上述工具是快速有效的,但此类搜索并不适合不同类型的数据库,如视频或音频数据库。
近来,人们提议用音频和视频文件中语音内容的语音转录,为此类视频和音频数据库作注释,然后通过比较用户的输入查询的语音转录与数据库中的音素注释数据,实现检索。用于匹配音素序列的技术首先定义查询中的一组特征,将每个特征视为来自音素串的重叠的固定大小的碎片,然后标识各特征在查询和注释中的出现频率,最后通过使用上述出现频率的余弦度量,确定查询和注释之间的相似性度量。上述音素比较技术的一个优点在于能够处理以下情况,即查询词序不与注释词序完全匹配的情况。然而,其问题是容易出现错误,特别是当以不同速度说出查询和注释,并且如果从查询中删除了部分单词而并未从注释中删除单词时,反之亦然。
本发明的目的在于提供一种用于搜索数据库的选择系统。
根据一个方面,本发明提供一种特征比较装置,包括:用于接收第一和第二特征序列的装置;使第一特征序列的特征和第二特征序列的特征一致以形成许多调整对的装置;用于比较各调整对的特征以生成比较得分的装置,比较得分表示调整对之间的相似性;以及组合所有调整对的比较得分以提供第一和第二特征序列之间的相似性度量的装置;其特征在于比较装置包括第一比较装置,对于每个调整对,比较调整对中第一特征序列的特征与预定特征集合中取得的众多特征的每个特征,以提供相对应的众多中间比较得分,比较得分表示所述第一特征序列的特征和来自所述集合的各特征之间的相似性;第二比较装置,对于每个调整对,比较调整对中第二特征序列的特征与来自该集合的所述众多特征的每个特征,以提供更多相对应的众多中间比较得分,比较得分表示所述第二特征序列的特征和来自该集合的各特征之间的相似性;以及通过组合所述众多中间比较得分计算调整对的所述比较得分的装置。此类系统的优点在于允许识别系统由于错误识别特征而改变第一和第二特征序列。
根据另一方面,本发明提供用于搜索数据库中的信息条目以标识需要从中检索的信息的装置,数据库中的每个条目包括一个语音特征序列,该装置包括:用于接收输入查询的装置,输入查询包括一个语音特征序列;用于比较所述语音特征之查询序列与所述数据库之各语音特征序列以提供一组比较结果的装置;以及使用所述比较结果标识从所述数据库中检索的所述信息的装置;其特征在于,所述比较装置具有许多不同的比较操作模式,并且该装置还包括:用于确定(i)语音特征的查询序列是否是从音频信号或文本生成的;用于确定(ii)当前数据库的语音特征序列是否是从音频信号或文本生成的,并用于输出确定结果的装置;以及为当前数据库序列,依据比较结果选择所述比较装置的操作模式的装置。最好当确定装置确定输入查询和注释均是根据语音生成的,比较装置起上述装置的作用。
根据另一方面,本发明提供搜索数据库以标识需要从中检索的信息的装置,其中数据库包括许多信息条目,所述许多信息条目中的每个条目具有一个关联注释,注释包括一个语音注释特征序列,该装置包括:
用于接收输入语音查询的许多音频解释的装置;
用于将输入查询的每种解释转换为语音查询特征序列的装置,语音查询特征序列表示解释内的语音;
用于比较每种解释的语音查询序列与每个注释的语音注释特征以提供一组比较结果的装置;
用于组合通过比较每个解释的语音查询特征与同一注释的语音注释特征而获得的比较结果,为每个注释提供输入查询和注释之间的相似性度量的装置;以及
使用所有注释的组合装置提供的相似性度量标识需要从所述数据库中检索的所述信息的装置。
根据另一方面,本发明提供特征比较装置,包括:
用于接收第一和第二查询特征序列的装置,每个序列表示输入查询的一种解释;
用于接收注释特征序列的装置;
用于使每个解释的查询特征与注释的注释特征一致以形成许多调整组的装置,每个调整组包括来自每个解释的一个查询特征和一个注释特征;
用于比较各调整组的特征以生成比较得分的装置,比较得分表示调整组的特征之间的相似性;以及
组合所有调整组的比较得分以提供输入查询的解释和注释之间的相似性度量的装置;
其特征在于所述比较装置包括:
第一特征比较器,对于每个调整组,比较调整组中第一查询序列特征与预定特征集合中取得的众多特征的每个特征,以提供相对应的众多中间比较得分,比较得分表示所述第一查询序列特征和来自该集合的各特征之间的相似性;
第二特征比较器,对于每个调整组,比较调整组中第二查询序列特征与来自该集合的所述众多特征的每个特征,以提供更多相对应的众多中间比较得分,比较得分表示所述第二查询序列特征和来自该集合的各特征之间的相似性;
第三特征比较器,对于每个调整组,比较调整组中的注释特征与来自该集合的所述众多特征的每个特征,以提供更多相对应的众多中间比较得分,比较得分表示所述注释特征和来自该集合的各特征之间的相似性;以及
通过组合所述众多中间比较得分计算调整组的所述比较得分的装置。
以下参照图1至28说明本发明的示例性实施方式,在附图中:
图1是一个示意框图,表示利用用户打字输入或语音输入生成的注释数据为数据文件作注释的用户终端;
图2是音素和字格注释数据的示意图,字格注释数据是为了给数据文件作注释而根据用户的打字输入生成的;
图3是音素和字格注释数据的示意图,字格注释数据是为了给数据文件作注释而根据用户的语音输入生成的;
图4是允许用户利用打字输入或语音查询从数据库中检索信息的用户终端的示意框图;
图5a是一个流程图,表示图4所示的用户终端的控制流程的一部分;
图5b是一个流程图,表示图4所示的用户终端的控制流程的剩余部分;
图6a是一个示意图,表示基础统计模型,采用该模型生成查询和注释;
图6b是一个示意图,表示代表打字输入的第一音素序列和代表用户语音输入的第二音素序列,该图表示相对于打字输入,用户之语音输入中的音素插入和删除的可能性;
图6c是一个示意图,表示分别代表语音输入的第一和第二音素序列,以及代表正则音素序列的第三音素序列,正则音素序列与对应语音输入中实际说的音素序列相对应,该图表示相对于对应的正则音素序列,两种语音输入中的音素插入和删除的可能性;
图7示意表示注释音素序列和查询音素序列创建的搜索空间,以及起始空节点和终止空节点;
图8是一个二维图,水平轴用于注释音素,垂直轴用于查询音素,该图表示许多格点,每个格点与注释音素和查询音素之间的一个可能匹配相对应;
图9a示意表示注释为打字输入并且根据语音输入生成查询时,动态规划匹配过程中采用的动态规划约束;
图9b示意表示当查询为打字输入并且当注释为语音输入时,动态规划匹配过程中采用的动态规划约束;
图10示意表示为示例音素存储的删除和译码概率;
图11示意表示注释和查询均为语音输入时,动态规划匹配过程中采用的动态规划约束;
图12是一个流程图,表示动态规划过程中执行的主要处理步骤;
图13是一个流程图,表示通过从一个空的起点传播到所有可能起点而开始动态规划处理时采用的主要处理步骤;
图14是一个流程图,表示为了将动态规划路径从起点传播到所有可能终点而采用的主要处理步骤;
图15是一个流程图,表示将路径从终止节点传播到一个空的终止节点时采用的主要处理步骤;
图16a是一个流程图,表示使用动态规划约束传播路径时执行的处理步骤的一部分;
图16b是一个流程图,表示使用动态规划约束传播路径时包含的剩余处理步骤;
图17是一个流程图,表示为了从起点到终点传播路径而确定跃迁得分时包含的处理步骤;
图18a是一个流程图,表示为删除和译码注释和查询音素而计算得分时采用的处理步骤的一部分;
图18b是一个流程图,表示为删除和译码注释和查询音素而计算得分时采用的剩余步骤;
图19示意表示一个注释音素序列和两个查询音素序列创建的搜索空间,以及一个起始空节点和一个终止空节点;
图20是一个流程图,表示通过从一个空的起始节点传播到所有可能起始节点而开始动态规划处理时采用的主要处理步骤;
图21是一个流程图,表示为了将动态规划路径从起点传播到所有可能终点而采用的主要处理步骤;
图22是一个流程图,表示将路径从终止节点传播到空的终止节点时采用的主要处理步骤;
图23是一个流程图,表示使用动态规划约束传播路径时执行的处理步骤;
图24是一个流程图,表示为了从起点到终点传播路径而确定跃迁得分时包含的处理步骤;
图25a是一个流程图,表示为删除和译码注释和查询音素而计算得分时采用的处理步骤的第一部分;
图25b是一个流程图,表示为删除和译码注释和查询音素而计算得分时采用的处理步骤的第二部分;
图25c是一个流程图,表示为删除和译码注释和查询音素而计算得分时采用的处理步骤的第三部分;
图25d是一个流程图,表示为删除和译码注释和查询音素而计算得分时采用的处理步骤的第四部分;
图25e是一个流程图,表示为删除和译码注释和查询音素而计算得分时采用的剩余步骤;
图26a示意表示备择实施方式,该实施方式为使查询与各注释一致而采用不同技术;
图26b表示动态规划得分随图26a所示的实施方式中的查询与注释之比较结果的变化方式;
图27是一个示意框图,表示响应输入语音查询从远程服务器上的数据中检索数据文件的备择用户终端的构成;以及
图28表示允许用户响应输入语音查询从远程服务器上的数据库中检索数据的另一种用户终端。
可以使用专用硬件电路实现本发明的实施方式,但是本文使用计算机软件(即,代码)实现所述实施方式,其中计算机软件连同诸如个人计算机、工作站、影印机、传真机、个人数字助理(PDA)等一起运行。
数据文件注释
图1表示用户终端59的组成,用户终端59允许用户通过键盘3或麦克风7输入打字或语音注释数据,以便为数据库29中存储的数据文件91作注释。在本实施方式中,数据文件91包括利用照相机生成的二维图像。用户终端59允许用户39利用适当注释给2D图像作注释,以便随后利用该注释从数据库29中检索2D图像。在本实施方式中,由语音转录部件75将打字输入转换为音素(或类似于音素)和字格注释数据,然后传送到控制部件55。图2表示为打字输入“pictureof Taj Mahal”生成的音素和字格注释数据。正如图2所示,音素和字格为具有一个入口和一个出口的有向无环图。它表示用户输入的不同语法分析。如图所示,语音转录部件75根据内部语音字典(未示出)识别许多不同的可能音素串,后者与打字输入相对应。
同样,自动语音识别部件51将语音输入转换为音素(或类似于音素)和字格注释数据,然后传送到控制部件55。自动语音识别部件51生成音素和字格注释数据,其方法是(i)生成输入发言的音素格;(ii)然后识别音素格内的单词;以及(iii)最后组合二者。图3表示为输入发言“picture of Taj Mahal”生成的音素和字格。如图所示,自动语音识别部件识别许多不同的可能音素串,后者与输入发言相对应。正如语音识别技术人员熟知的那样,不同可能性可以具有语音识别部件51生成的特有权重,权重表示语音识别部件之输出的置信度。然而,在本实施方式中,并不对音素进行加权处理。正如图3所示,将自动语音识别部件51在音素格内识别的单词,插入到音素格数据结构中。对于以上给定的示例短语,自动语音识别部件51识别单词“picture”、“of”、“off”、“the”、“other”、“ta”、“tar”、“jam”、“ah”、“hal”、“ha”和“al”。
如图3所示,自动语音识别部件51生成的音素和字格是一个具有一个入口和一个出口的有向无环图。它表示用户的输入注释发言不同语法分析。它并不仅仅是一个带有选择的单词序列,由于无需用一个选择替换每个单词,所以可以将一个单词替换为两个或多个单词或音素,并且整个结构能够形成一个或多个单词或音素的替换。因此,音素和字格注释数据内的数据密度在注释数据内基本上保持线性,而不会像在生成音频注释输入的N个最佳单词列表的系统中那样呈指数增长。
在本实施方式中,自动语音识别部件51或语音转录部件75生成的注释数据具有以下通式:
标题
-标志,是否混合了单词或音素
-时间索引,将存储器内注释数据块的位置关联到给定的时间点。
-使用的单词集(即,字典)
-使用的音素集
-词汇所属语言
-音素概率数据
块(i)i=0,1,2,......
节点Nj j=0,1,2,......
-节点从块的起始的时间偏移
-音素链表(k)k=0,1,2,......
节点Nj的偏移=Nk-Nj(Nk为链表K扩展到的节点)
与链表(k)关联的音素
-单词链表(l)l=0,1,2,......
节点Nj的偏移=Ni-Nj(Nj为链表l扩展到的节点)
与链表(l)关联的单词
由于并非数据库内的所有数据文件均包含上述组合音素和字格注释数据,所以提供标志,后者标识注释数据是字注释数据,还是音素注释数据,抑或是混合数据,此时,将使用不同的搜索策略来搜索注释数据。
在本实施方式中,将注释数据划分为节点块,以便允许搜索跳到用于给定搜索的注释数据的中间位置。因此,标题包括一个时间索引,时间索引将存储器内注释数据块的位置,关联到起始时间和与块的开始相对应的时间之间的给定时间偏移。
标题还包括定义所用单词集(即,字典)、所有音素集及其概率以及词汇所属语言的数据。同时,标题可以包含用于生成注释数据的自动语音识别系统的详细信息,以及生成注释数据期间使用的任何适当设置。
标题之后是注释数据块,对于块内的每个节点,注释数据块标识该节点从块的起始的时间偏移,利用音素将该节点链接到其他节点的音素链表,以及利用单词将该节点链接到其他节点的单词链表。每个音素链表和单词链表标识与该链表关联的音素或单词。同时标识到当前节点的偏移。例如,如果利用音素链表将节点N50链接到节点N55,则到节点N50的偏移为5。正如本领域的技术人员理解的那样,通过使用上述偏移表示允许将连续注释数据划分为单独块。
在自动语音识别部件输出权重的实施方式中,该数据结构还包括权重或置信度得分,其中权重表示语音识别部件输出的置信度。具体而言,为各节点提供置信度得分,后者表示到达该节点的置信度,并且每个音素和单词链表将包含依赖于相应音素或单词之权重的跃迁得分。通过放弃具有较低置信度得分的匹配,使用上述权重控制数据文件的搜索和检索。
响应用户的输入,控制部件55从数据库29中检索适当的2D文件,然后将生成的音素和单词注释数据附加到数据文件91上。然后将经过扩充的数据文件返回到数据库29。在上述注释处理步骤中,控制部件55能够在显示器57上显示2D图像,从而用户确保该注释数据是与正确的数据文件91关联的。
正如下面详细说明的那样,使用上述音素和字格注释数据允许快速、有效地搜索数据库29,以标识并检索其内存储的所需2D图像数据文件。其实现方法为,首先使用单词数据搜索数据库29,如果该搜索不能提供所需的数据文件,则使用更鲁棒的音素数据执行进一步的搜索。正如语音识别领域内的本领域的技术人员理解的那样,通过使用音素数据更加鲁棒,因为音素是字典独立的,并且允许系统妥善处理词汇之外的单词,如姓名、地点、外来词等。同时,使用音素数据能够使该系统适应未来,因为当利用语音输入原始注释并且原始自动语音识别系统不能理解输入注释的单词时,也能检索数据库29中存储的数据文件。
数据文件检索
图4是一个框图,表示本实施方式中使用的从数据库29中检索带注释的2D图像的用户终端59的组成。例如,用户终端59可以为个人计算机、手持设备等。如图所示,在本实施方式中,用户终端59包括带注释的2D图像数据库29,自动语音识别部件51,语音转录部件75,键盘3,麦克风7,搜索引擎53,控制部件55和显示器57。操作中,用户或者通过麦克风7输入语音查询,或者通过键盘3输入打字查询,然后或者通过自动语音识别部件51或者通过语音转录部件75处理该查询,以生成相应音素和单词数据。该数据可以采取音素和字格的形式,但并非必需。然后将音素和单词数据输入到可操作的控制部件55中,以便使用搜索引擎53初始化数据库29的适当搜索。然后将搜索引擎53生成的搜索结果传回到控制部件55,后者分析该搜索结果,生成并通过显示器57向用户显示适当的显示数据(如检索的2D图像)。
图5a和5b为流程图,表示用户终端59在本实施方式中的运行方式。在步骤S1中,用户终端59处于空闲状态并等待用户39的输入查询。当收到输入查询时,自动语音识别部件51或语音转录部件75在步骤S3中生成输入查询的音素和单词数据。然后在步骤S5中,控制部件55通知搜索引擎53使用根据输入查询生成的单词数据搜索数据库29。本实施方式中采用的单词搜索与打字单词搜索技术中采用的搜索方法相同,因此不再赘述。如果在步骤S7中,控制部件55根据搜索结果确定找到用户的输入查询的匹配,则通过显示器57向用户输出搜索结果。
在本实施方式中,用户终端59允许用户考虑该搜索结果,并等待用户确认该结果是否与用户要求的信息相对应。如果是用户要求的信息,则处理从步骤S11进行到该处理的结束,然后用户终端59返回到其空闲状态并等待下一个输入查询。然而,如果用户指示(例如,通过输入适当语音命令)该搜索结果与所需信息不一致,则该处理从步骤S11进行到步骤S13,在步骤S13中,搜索引擎53对数据库29进行音素搜索。然而,在本实施方式中,并不是在步骤S13中对整个数据库29执行音素搜索,因为取决于数据库的大小,该搜索可能需要几个小时。
在步骤S13中执行的音素搜索使用在步骤S5中执行的单词搜索的结果,确定可能与用户的输入查询相对应的数据库的一个或多个部分。例如,如果查询包括三个单词并且单词搜索仅能确定注释内的一个或两个查询单词,则对围绕所识别单词的注释部分进行音素搜索。稍后将详细说明本实施方式中实现的步骤S13中的音素搜索。
在执行音素搜索后,在步骤S15中,控制部件55确定是否找到匹配。如果找到匹配,则该处理进行到步骤S17,在步骤S17中,控制部件55在显示器57上向用户显示搜索结果。此外,该系统等待用户确认搜索结果是否与所需信息相对应。如果结果正确,则该处理从步骤S19进行到结束,并且用户终端59返回到空闲状态,等待下一个输入查询。然而,如果用户指示该搜索结果与所需信息不一致,则该处理从步骤S19进行到步骤S21,在步骤S21中,控制部件55能够通过显示器57询问用户是否对整个数据库29进行音素搜索。如果响应此查询,用户指示应执行此类搜索,则该处理进行到步骤S23,在步骤S23中,搜索引擎对整个数据库29执行音素搜索。
当完成此搜索时,在步骤S25中,控制部件55确定是否找到用户的输入查询的匹配。如果找到匹配,则该处理进行到步骤S27,在步骤S27中,控制部件55在显示器57上向用户显示搜索结果。如果搜索结果正确,则该处理从步骤S29进行到处理的结束,用户终端59返回到其空闲状态,等待下一个输入查询。另一方面,如果用户指示搜索结果仍然与所需信息不一致,则该处理转到步骤S31,在步骤S31中,控制部件55通过显示器57询问用户是否希望重新定义或修正搜索查询。如果用户希望重新定义或修正搜索查询,则该处理返回到步骤S3,在步骤S3中,以相同方式处理用户的后继输入查询。如果不需要希望重新定义或修正搜索查询,则放弃该搜索结果以及用户的初始输入查询,用户终端59返回到其空闲状态,等待下一个输入查询。
以上概述了用户终端59在本实施方式中执行搜索的方式。以下详细说明搜索引擎53音素搜索的方式,同时简要说明作为搜索策略之基础的动机。
作为分类问题的信息检索
在经典分类情况中,必需将测试数据分类为K类中的一类。通过使用有关已知种类的其他数据的知识实现分类。分类问题假设有一个取值范围为1到K的 “种类”随机变量。通过确定测试数据最可能属于的种类,查找最佳分类。假设训练数据是利用导致种类k的nk个数据的N次生成处理生成的,其中∑k k=1nk=N。利用n表示向量(n1,n2,...,nk),利用D表示训练数据,利用x表示测试数据,则经典分类问题是确定使以下概率取最大值的k的值:
P ( k | x , D , n ) = P ( x | k , D , n ) P ( k | D , n ) P ( x | D ) - - - ( 1 )
分子上的第二项是种类的先验概率,出现频繁的种类其权重较高。在信息检索上下文中,每个种类具有单一训练数据(即,注释数据)。因此,对于信息检索,可以忽略上式右边的第二项。同样,也可以忽略分母,原因在于每个种类的P(x|D)均相同,因此仅仅归一化分母。所以,只需对上式的分子上的第一项进行排序,就能够对种类进行排序。换句话说,确定并排列所有种类的P(x|dk)次序,其中dk是种类k的训练数据。
在本实施方式中,测试数据x代表输入查询,种类k的训练数据(即,dk)代表第k个注释,并且假定存在图6a所示的生成查询和注释的基础统计模型(M)。在一般情况中,该模型有3个未知数:模型结构m,通过该模型用于查询和注释的状态序列sq和sa,以及输出分布C。此时,我们知道输出分布,因为它体现根据输入语音生成音素串的语音识别系统的特性。正如下面说明的那样,通过将一个已知语音的较大数据库应用于语音识别系统,能够获得输出分布,并且以下称为混淆统计。因此,通过将状态序列和模型引入上述概率(并且变量q用于输入查询,变量a用于注释)得到:
P ( q | a ) = Σ m Σ s a Σ s q P ( q | m , s q , s a , C , a ) P ( m , s q , s a | C , a ) - - - ( 2 )
通过使用贝叶斯方法展开,得到:
P ( q | a ) = Σ m Σ s a Σ s q P ( q | m , s q , C ) P ( a | m , s a , C ) P ( s q | m , C ) P ( s a | m , C ) P ( m | C ) Σ m Σ s a Σ s q P ( a | m , s a , C ) P ( s a | m , C ) P ( m | C ) - - - ( 3 )
尽管上式看起来很复杂,但是可以使用标准动态规划算法来计算状态序列集合sq和sa的总和。另外,可以忽略分子和分母上的最后一项,因为可以假定每个模型是相等的,并且可以忽略状态序列项P(s|m,c),因为可以假定每个状态序列是相等的。此外,通过假定基础模型结构是一个大致具有查询长度的正则音素序列(经过插入),可以免除不同模型上的总和计算,尽管利用所有可能音素上总和代替,因为在一般情况中,模型的正则音素序列是未知的。因此,通过忽略状态序列总和,需要在动态规划算法内计算的分子上的项变为:
Σ r = 1 N p P ( a i | p r , C ) P ( q i | p r , C ) P ( p r | C ) - - - ( 4 )
分母上的项为:
Σ r = 1 N p P ( a i | p r , C ) P ( p r | C ) - - - ( 5 )
其中Np为系统已知的音素总数,ai、qj和pr分别为与正在计算的当前格点DP相对应的注释音素、查询音素和模型音素。通过比较公式(4)和(5)得到,分母上需要计算的概率项分子上也需要计算。因此,可以在同一动态规划例程内计算这些概率项。通过详细考虑所确定的概率,P(qj|pr,C)是在给定混淆统计的情况下将正则音素pr译码为查询音素qj的概率;P(ai|pr,C)是在给定混淆统计的情况下将正则音素pr译码为注释音素ai的概率;P(pr|C)是在给定混淆统计的情况下正则音素pr的无条件出现概率。
除上述概率项之外,在动态规划计算过程的每个点上,必需计算另一项,该项处理相对于模型的查询或注释中的插入和删除。正如本领域的技术人员理解的那样,查询中的插入或删除操作与注释中的插入或删除操作独立,反之亦然。因此,单独处理这些附加项。对于公式(5)中的归一化项,必需考虑相对于模型的注释内的插入和删除操作。
根据图4和图5的描述,本领域的技术人员可以理解,在本实施方式中,可以根据文本或语音导出注释音素数据和查询音素数据。因此,必需考虑四种情况:
i)注释和查询都是根据文本生成的;
ii)注释是根据文本生成的但查询是根据语音生成的;
iii)注释是根据语音生成的但查询是根据文本生成的;以及
iv)查询和注释都是根据语音生成的。
第一种情况最简单,无需花费时间压缩/展开注释或查询,并且只需利用各自音素序列的布尔比较实现注释和查询之间的比较。
在第二种情况中,推定注释是正确的,动态规划匹配允许在查询中插入和删除音素,以便查找二者之间的最佳匹配。为了说明此种情况,图6b表示注释音素序列(标记为a0,a1,a2...)和查询音素序列(标记为q0,q1,q2...)之间的可能匹配,其中注释音素是根据文本生成的。正如虚箭头所示,使注释音素a0与查询音素q0结盟,使注释音素a1与查询音素q2结盟,使注释音素a2与查询音素q3结盟,使注释音素a3与查询音素q3结盟,并且使注释音素a4与查询音素q4结盟。对于上述匹配中的每个匹配,动态规划例程计算公式(4)和(5)中的概率项。然而,此时上述公式可以简化,因为模型音素的正则序列是已知的(为注释音素)。具体而言,归一化项为1,因为注释为模型,并且分子简化为P(qi|aj,C)。除上述译码项之外,动态规划例程还计算相对于注释在查询中插入的音素(如查询音素q1)的有关插入和删除概率,以及相对于注释在查询中删除的音素的有关插入和删除概率(利用与两个注释音素a2和a3匹配的查询音素q3表示)。
上面提到的第三种情况与第二种情况类似,只是推定查询音素序
P ( K | x , D , n ) = P ( D | K , x , n ) P ( K | x , n ) P ( D | x ) - - - ( 6 )
列是正确的,并且动态规划匹配允许相对于查询在注释中插入和删除音素。然而,在该情况中,由于查询是已知的,所以不能使用公式(1)到(5)。因此,在该情况中,将公式(1)修订为:
正如公式(1)中的对应项那样,可以忽略分子和分母上的第二项。按照展开公式(1)的分子上的第一项的相同方式,展开公式(6)的分子上的第一项。然而,在该情况中,由于推定查询为模型,所以在动态规划例程中计算的归一化项简化为1,并且分子简化为P(ai|qj,C)。正如上面讨论的第二种情况那样,动态规划例程还计算相对于查询在注释中插入的音素的有关插入和删除概率,以及相对于查询在注释中删除的音素的有关插入和删除概率。
最后,在第四种情况中,注释和查询都是根据语音生成的,两个音素数据序列都可以具有相对于模型音素的未知正则序列的插入和删除操作,其中模型音素的未知正则序列代表实际说出的文本。图6c表示此种情况,该图表示注释音素序列(标记为ai,ai+1,ai+2...)、查询音素序列(标记为qj,qj+1,qj+2...)和音素序列(标记为pn,pn+1,pn+2...)之间的可能匹配,其中音素序列(pn,pn+1,pn+2...)代表查询和注释实际说出的正则音素序列。正如图6c所示,在该情况中,动态规划匹配技术必须提供相对于模型音素的正则序列在注释和查询中插入音素(用插入的音素ai+3和qj+1表示)以及从注释和查询中删除音素(用音素ai+1和qj+2表示,同时使这两个音素于正则音素序列中的两个音素结盟)。
正如本领域的技术人员理解的那样,通过在算法中引入模型音素序列,该算法更适合查询和注释中的发音变化。
上面概要说明了本实施方式通过匹配查询音素序列与注释音素序列而在数据库中执行信息检索的方式。为了进一步理解本实施方式的操作,以下简要说明标准动态规划算法,然后详细说明本实施方式中使用的特定算法。
DP搜索概述
正如本领域的技术人员理解的那样,动态规划是查找特征序列(在本实施方式中为音素)之间的最佳匹配的一种技术。它通过同时传播许多动态规划路径进行查找,每条路径代表注释音素序列和查询音素序列之间的一个可能匹配。所有路径从一个起始空节点开始,然后传播直至到达一个终止空节点,其中起始空节点位于注释和查询的开始,终止空节点位于注释和查询的结束。图7和图8示意表示执行的匹配和路径传播。具体而言,图7表示一个直角坐标图,其水平轴用于注释,垂直轴用于查询。在左上角提供起始空节点φs,在右下角提供终止空节点φe。如图8所示,沿水平轴提供注释音素,沿垂直轴提供查询音素。同时,图8表示许多格点,每个格点代表注释音素和查询音素之间的一个可能匹配。例如,格点21代表注释音素a3和查询音素q1之间的一个可能匹配。同时,图8表示3条动态规划路径m1、m2和m3,这些路径表示代表注释和查询的音素序列之间的3个可能匹配,这些路径从起始空节点φs开始,通过格点传播到终止空节点φe。回到公式(2)和(3),上述动态规划路径表示以上讨论的不同状态序列sq和Sa
正如图7中的水平轴和垂直轴的不同长度表示的那样,输入查询无需包括注释的所有单词。例如,如果注释为“picture of the TajMahal”,则用户通过输入查询 “Taj Mabal”就能够在数据库29中搜索该图片。在该情况中,最佳匹配路径通过顶部的水平轴,直至该查询开始匹配注释。然后开始通过格点到达较低的水平轴,并且在终点结束。在图7中用路径23表示。然而,正如本领域的技术人员理解的那样,查询中的单词的出现次序必须与注释中的单词的出现次序相同,否则动态规划匹配不起作用。
为了确定注释音素序列和查询音素序列之间的相似性,动态规划处理记录传播的每条动态规划路径的得分,得分依赖于沿该路径排列的音素的总体相似性。为了限制正在匹配的序列中的音素的删除和插入次数,动态规划处理对动态规划路径传播的方式施加某些限制。正如本领域的技术人员理解的那样,上述四种情况的动态规划约束互不相同。
DP约束
注释和查询都是文本。
在查询音素数据和注释音素数据都是根据文本生成的情况中,动态规划匹配退化为两个音素序列之间的布尔匹配,并且不允许音素删除或插入操作。
注释是文本而查询是语音。
在注释音素数据是根据文本生成的而查询音素数据是根据语音生成的情况中,注释中不能有音素删除或插入,但是相对于注释,查询中可以有音素删除和插入。图9a表示本实施方式中使用的动态规划约束,其中注释是根据文本生成的而查询是根据语音生成的。如图所示,如果动态规划路径在格点(i,j)结束,则该动态规划路径能够传播到格点(i+1,j)、(i+1,j+1)和(i+1,j+2),其中(i,j)表示注释音素ai和查询音素qj之间的匹配。传播到点(i+1,j)表示与打字注释相比,从口头查询中删除一个音素的情况;传播到点(i+1,j+1)表示注释中的下一个音素和查询中的下一个音素之间有一个简单译码的情况;传播到点(i+1,j+2)表示与打字注释相比,在口头查询中插入音素qj+1,并且注释音素ai+1和查询音素qj+2之间存在译码的情况。
注释是语音而查询是文本。
在注释是根据语音生成的而查询是根据文本生成的情况中,查询中不能有音素插入或删除,但是相对于查询,注释中可以有插入和删除。图9b表示本实施方式中使用的动态规划约束,其中注释是根据语音生成的而查询是根据文本生成的。如图所示,如果动态规划路径在格点(i,j)结束,则该动态规划路径能够传播到格点(i,j+1)、(i+1,j+1)和(i+2,j+1),其中(i,j)表示注释音素ai和查询音素qj之间的匹配。传播到点(i,j+1)表示与打字查询相比,从口头注释中删除一个音素的情况;传播到点(i+1,j+1)表示注释中的下一个音素和查询中的下一个音素之间有一个简单译码的情况;传播到点(i+2,j+1)表示与打字查询相比,在口头注释中插入音素ai+1,并且注释音素ai+2和查询音素qj+1之间存在译码的情况。
注释是语音且查询也是语音。
在注释和查询都是根据语音生成的情况中,相对于另一方,可以在注释和查询中插入和删除音素。图11表示本实施方式中使用的动态规划约束,其中注释音素和查询音素都是根据语音生成的。具体而言,如果动态规划路径在格点(i,j)结束,则该动态规划路径能够传播到格点(i+1,j)、(i+2,j)、(i+3,j)、(i,j+1)、(i+1,j+1)、(i+2,j+1)、(i,j+2)、(i+1,j+2)和(i,j+3),其中(i,j)表示注释音素ai和查询音素qj之间的匹配。因此,上述传播允许相对于与实际说出的文本相对应的模型音素的未知正则序列,在注释和查询中插入和删除音素。
开始和结束DP约束
在本实施方式中,动态规划匹配操作允许动态规划路径从任意注释音素开始和结束。因此,查询无需包含注释的所有单词,但是查询单词的出现次序必须与注释中的单词的出现次序相同。
DP得分传播
如上所述,动态规划处理记录每条动态规划路径的得分,得分依赖于沿该路径排列的音素的相似性。因此,当将在点(i,j)结束的路径传播到其他点时,动态规划处理将此类处理的相应“耗费”添加到在点(i,j)结束的路径的累加得分中,在与该点关联的存储器(SCORE(i,j))中存储。正如本领域的技术人员理解的那样,此耗费包括上述插入概率、删除概率和译码概率。具体而言,当有插入时,将累加得分乘以插入给定音素的概率;当有删除时,将累加得分乘以删除该音素的概率;以及当有译码时,将累加得分乘以对两个音素进行译码的概率。
为了能够计算上述概率,该系统存储所有可能音素组合概率。在本实施方式中,以类似于译码的方式,处理注释或查询中的音素删除。只需把删除作为另一个音素来处理就能实现。因此,如果该系统了解43个音素,则该系统将存储1892(1892=43×44)个译码/删除概率,每个可能的音素译码和删除一个概率。图10表示此种情况,该图以概率方式表示为音素/ax/存储的可能音素译码,并且包括删除音素(φ)。正如本领域的技术人员理解的那样,给定音素的所有译码概率之和为1,因为不存在其他概率。除上述译码/删除概率之外,该系统还存储43个插入概率,每个可能音素插入一个概率。正如后面说明的那样,预先根据训练数据确定这些概率。
为了说明得分传播,现在考虑许多示例。在注释为文本但查询为语音的情况中,对于从点(i,j)传播到点(i+1,j+2)的路径,相对于注释插入音素qj+1,并利用注释音素ai+1对查询音素qj+2进行译码。因此,由下式提供传播到点(i+1,j+2)的得分:
S(i+1,j+2)=S(i,j)PI(qj+1|C)P(qj+2|ai+1,C)   (7)
其中PI(qj+1|C)为在口头查询中插入音素qj+1的概率,P(qj+2|ai+1,C)代表将注释音素ai+1译码为查询音素qj+2的概率。
当注释和查询都是根据语音生成的,并且从点(i,j)传播到点(i+2,j+1)时,相对于查询插入注释音素ai+1,并且注释音素ai+2和查询音素qj+1之间有一个译码。因此,由下式提供传播到点(i+2,j+1)的得分:
S ( i + 2 , j + 1 ) = S ( i , j ) PI ( a i + 1 | C ) Σ r = 1 N p P ( a i + 2 | p r , C ) P ( q j + 1 | p r , C ) P ( p r | C ) - - - ( 8 )
正如本领域的技术人员理解的那样,在上述路径传播期间,几条路径会在同一格点相遇。在本实施方式中,仅仅累加与相遇路径关联的得分。作为选择,可以比较这些得分,然后具有最高得分的路径继续,而放弃其他路径。然而,在本实施方式中上述处理并不是必要的,因为动态规划处理只对查找得分感兴趣,其中得分表示查询音素数据和注释音素数据之间的相似性。它并不对了解二者之间的最佳匹配感兴趣。
如果查询和注释都的根据语音生成的,则当所有路径传播到终止节点φe并且在确定查询和当前注释之间的相似性的总得分后,该系统使用DP处理期间累积的归一化项,对该得分进行归一化。然后,该系统以类似方式比较该查询与下一个注释。当该查询与所有注释匹配时,对注释的归一化得分进行排序,并且根据此排序,该系统向用户输出与输入查询最相似的注释。
DP搜索的详细说明
以下详细说明匹配查询音素序列与注释音素序列时,执行动态规划搜索的方式。参照图12,在步骤S101中,该系统初始化动态规划得分。接着在步骤S103中,该系统将路径从空的起始节点(φs)传播到所有可能的起点。然后在步骤S105中,该系统通过使用上述动态规划约束,将动态规划路径从所有起点传播到所有可能的终点。最后在步骤S107中,该系统将在终点结束的路径传播到空的终止节点(φe)。
图13以更详细的方式表示步骤S103包含的处理步骤,步骤S103将动态规划路径从空的起始节点(φs)传播到所有可能的起点,其中由动态规划约束定义起点。一个约束是动态规划路径可以从任意注释音素开始,而定义查询音素序列中所允许之跳数的其他约束依赖于该查询是文本还是语音。具体而言,如果查询是根据文本生成的,则起点包括搜索空间中的第一行格点,即点(i,0),i=0到Nann-1;如果查询是根据语音生成的,则起点包括搜索空间中的前四行格点,即点(i,0)、(i,1)、(i,2)和(i,3),i=0到Nann-1。
以下参照图13所示的步骤说明实现上述处理的方式。如图所示,在步骤S111中,系统确定输入查询是否是文本查询。若是,则处理进行到步骤S113,在步骤S113中,系统将变量mx的值设置为1,当查询为文本时,该值定义查询音素序列中允许的最大“跳”数。然后该处理进行到步骤S115、S117和S119,这些步骤是可操作的,以便在搜索空间的第一行中的每个格点开始动态规划路径,其方法是将从空的起始节点转到格点(i,0)的跃迁得分,添加到与点(i,0)关联的得分(SCORE(i,0))中,i=0到Nann-1。当查询是文本时,在图12所示的步骤S103中结束处理,然后处理进行到步骤S105。
如果该系统在步骤S111中确定查询不是文本而是根据口头输入生成的,则该系统进行到步骤S121,在步骤S121中,将mx设置为mxhops,后者为一个常数,其值比动态规划约束允许的最大“跳”数大1。正如图9和图10所示,当查询是语音时,一条路径最多可以跳到沿查询音素序列方向三个音素之外的查询音素。因此,在本实施方式中,mxhops的值为4,并且将变量mx设置为4,如果查询中有四个以上的音素,否则,将mx设置为查询中的音素数。然后该处理进行到步骤S123、S1245、S127、S129和S131,这些步骤是可操作的,以便在搜索空间的前四行中的每个格点开始动态规划路径,其方法是将相应的跃迁概率添加到与相应格点关联的得分上。如果查询是根据口头输入生成的,则图12所示的步骤S103中结束处理,然后处理进行到步骤S105。
在本实施方式中,该系统在步骤S105中将动态规划路径从起点传播到终点,其方法是以诸如光栅之类的技术,逐列处理搜索空间中的格点。图14表示用来控制上述光栅处理操作的控制算法。在步骤S151中,该系统比较注释音素循环指针i与该注释中的音素数(Nann)。最初将注释音素循环指针i设置为0,该处理最初进行到步骤S153,在步骤S153中,类似比较查询音素循环指针j与查询中的音素总数(Nquery)。最初将循环指针j也设置为0,并且该处理进行到步骤S155,在步骤S155中,该系统通过使用上述动态规划约束传播在点(i,j)结束的路径。稍后会详细说明该系统在步骤S155中传播路径的方式。在步骤S155后,在步骤S157中将循环指针加1,然后该处理返回到步骤S153。在处理完查询中的所有音素后(从而处理当前一列格点后),该处理进行到步骤S159,在步骤S159中,将查询音素循环指针j复位到0,并且将注释音素循环指针i加1。接着,该处理返回到步骤S151,在步骤S151中,对下一列格点进行类似处理。在处理了最后一列格点后,该处理进行到步骤S161,在步骤S16中,将注释音素循环指针i复位到0,并且图12所示的步骤S105中的处理结束。
图15详细表示将位于终点的路径传播到终止空节点φe时,图12所示的步骤S107包含的处理步骤。正如从起始空节点φs开始传播一样,由动态规划约束定义作为“终点”的格点,动态规划约束取决于查询是文本还是语音。另外,在本实施方式中,动态规划约束允许动态规划路径在沿注释音素序列的任意点退出该注释。因此,如果查询为文本,则该系统允许在最后一行格点结束的动态规划路径传播到终止空节点φe,其中最后一行格点指点(i,Nquery-1),i=0到Nann-1。然而,如果查询是根据语音生成的,则该系统允许在最后四行格点中传播的路径传播到终止空节点φe,其中最后四行格点指点(i,Nquery-4)、(i,Nquery-3)、(i,Nquery-2)和(i,Nquery-1),i=0到Nann-1。
如图15所示,该过程从步骤S171开始,在步骤S171中,该系统确定查询是否是文本。若是,则该处理进行到步骤S173,在步骤S173中,将查询音素循环指针j设置为Nquery-1。接着,该处理进行到步骤S175,在步骤S175中,比较注释音素循环指针i与该注释中的音素数(Nann)。最初将注释音素循环指针i设置为0,从而处理进行到步骤S177,在步骤S177中,该系统计算从点(i,Nquery-1)到空的终止节点φe的跃迁得分。然后,组合该跃迁得分与SCORE(i,Nquery-1)中存储的在点(i,Nquery-1)结束的路径的累积得分。如上所述,在本实施方式中,跃迁和累积得分是基于概率的,并且通过乘以概率组合它们。然而,在本实施方式中,为了避免执行乘法并且为了避免使用高浮点精度,该系统使用跃迁和累积得分的对数概率。因此,在步骤S179中,该系统将在点(i,Nquery-1)结束的路径的累积得分添加到在步骤S177中计算的跃迁得分中,然后将其结果复制到临时存储器TEMPENDSCORE中。
如上所述,如果两个以上的动态规划路径在同一点相遇,则累加每条路径的累积得分。因此,由于使用对数概率,所以能够有效地将相遇路径关联的得分转换回概率值,进行累加,然后再转换为对数概率。在本实施方式中,此操作称为“对数加法”操作。这是一种公知技术,并且在以下著作中说明,书名“自动语音识别-(Sphinx)系统开发”,作者李开复,Kluwer Academic出版,1989,第28-29页。
由于从点(i,Nquery-1)传播到空的终止节点的路径会遇到其他动态规划路径,所以该系统对TEMPENDSCORE和终止节点中存储的得分(ENDSCORE)进行对数加法,并将结果存储到ENDSCORE中。接着该处理进行到步骤S183,在步骤S183中,将注释音素循环指针i加1。然后,该处理返回到步骤S175,在步骤S175中,对下一行格点中的下一个格点进行类似处理。在按上述方式处理了最后一行中的所有格点后,在图12所示的步骤S107中执行的处理结束。
如果该系统在步骤S171中确定该查询不是文本,则该处理进行到步骤S185,在步骤S185中,将查询音素循环指针j设置为查询中的音素数减mxhops,即Nquery-4。然后该处理进行到步骤S187,在步骤S187中,该系统检查注释音素循环指针i是否小于该注释中的音素数(Nann)。最初将注释音素循环指针i设置为0,从而该处理进行到步骤S189,在步骤S189中,该系统检查查询音素循环指针j是否小于查询中的音素数(Nquery)。最初成立,该处理进行到步骤S191,在步骤S191中,该系统计算从格点(i,j)到空的终止节点φe的跃迁得分。然后在步骤S193中,将该跃迁得分添加到在点(i,j)结束的路径的累积得分中,并将结果复制到临时存储器TEMPENDSCORE中。接着,该处理进行到步骤S195,在步骤S195中,该系统对TEMPENDSCORE和ENDSCORE进行对数加法,并将结果存储到ENDSCORE中。然后该处理进行到步骤S197,在步骤S197中,将查询音素循环指针j加1,然后该处理返回到步骤S189。重复上述处理步骤,直至增加后的查询音素循环指针j等于该查询中的音素数(Nquery)。然后该处理进行到步骤S199,在步骤S199中,将查询音素循环指针j复位为Nquery-4,并且将注释音素循环指针i加1。接着该处理返回到步骤S187。重复上述处理步骤,直至按上述方式处理了搜索空间的最后四行中的所有格点,此后在图12显示的步骤S107中执行的处理结束。
传播
在图14所示步骤S155中,该系统通过使用上述动态规划约束传播在格点(i,j)结束的路径。图16是一个流程图,表示执行上述传播步骤时包含的处理步骤。如图所示,在步骤S211中,该系统设置两个变量mxi和mxj的值,并且初始化注释音素循环指针i2和查询音素循环指针j2。提供循环指针i2和j2的目的是遍历在点(i,j)结束的路径能够传播到的所有格点,变量mxi和mxj用于确保i2和j2只取动态规划约束允许的值。具体而言,将mxi设置为i+mxhops,如果i+mxhops小于等于注释中的音素数,否则,将mxi设置为注释中的音素数(Nann)。同样,将mxj设置为j+mxhops,如果j+mxhops小于等于查询中的音素数,否则,将mxj设置为查询中的音素数(Nquery)。最后在步骤S211中,该系统将注释音素循环指针i2初始化为等于注释音素循环指针i的当前值,将查询音素循环指针j2初始化为等于查询音素循环指针j的当前值。
由于该系统采用的动态规划约束依赖于注释和查询是文本还是语音,所以下一步骤确定注释和查询的生成方式。由判定块S213、S215和S217进行判定。如果注释和查询都是根据语音生成的,则在格点(i,j)结束的动态规划路径能够传播到图11所示的其他格点,并且处理步骤S219到S235运行,以便将该路径传播到其他格点。具体而言,在步骤S219中,该系统比较注释音素循环指针i2与变量mxi。由于在步骤S211中将注释音素循环指针i2设置为i,将mxi设置为i+4,所以该处理进行到步骤S221,在步骤S221中,以类似方式比较查询音素循环指针j2。接着该处理进行到步骤S223,该步骤确保路径不会停留在相同格点(i,j),原因在于最初i2等于i,j2等于j。因此,该处理最初进行到步骤S225,在步骤S225中将查询音素循环指针j2加1。
接着,该处理返回到步骤S221,在步骤S221中,比较已增加其值的j2与mxj。如果j2小于mxj,则该处理返回到步骤S223,然后该处理进行到步骤S227,步骤S227是可操作的,目的是避免沿注释音素和查询音素序列的跳数太大。实现方法为,确保只有在i2+j2小于i+j+mxhops时才传播路径。从而确保只处理图11所示的三角形点集。假设满足上述条件,则该处理进行到步骤S229,在步骤S229中,该系统计算从格点(i,j)到格点(i2,j2)的跃迁得分(TRANSCORE)。然后该处理进行到步骤S231,在步骤S231中,该系统将在步骤S229中确定的跃迁得分,添加到为点(i,j)存储的累积得分中,并复制到临时存储器TEMPSCORE中。如上所述,在本实施方式中,如果两条或多条动态规划路径在同一格点相遇,则累加与各条路径关联的累积得分。因此,在步骤S233中,该系统对TEMPSCORE和已经为格点(i2,j2)存储的累积得分进行对数加法,并且在SCORE(i2,j2)中存储其结果。然后该处理返回到步骤S225,在步骤S225中,将查询音素循环指针j2加1,然后该处理返回到步骤S221。如果查询音素循环指针j2等于mxj的值,则该处理进行到步骤S235,在步骤S235中,将查询音素循环指针j2复位为初始值j,并且将注释音素循环指针i2加1。然后,该处理进行到步骤S219,在步骤S219中,开始处理图11所示的下一列格点。在将该路径从点(i,j)传播到图11所示的所有其他点之后,处理结束。
如果判定块S213和S215确定注释为文本而查询为语音,则该处理进行到步骤S241到S251,这些步骤是可操作的,以便将在点(i,j)结束的路径传播到图9a所示的格点。具体而言,在步骤S241中,该系统确定注释音素循环指针i是否指向注释中的最后一个音素。若是,则注释中不再有音素,处理结束。如果注释音素循环指针i小于Nann-1,则该处理进行到步骤S243,在步骤S243中,比较查询音素循环指针j2与mxj。最初,j2小于mxj,因此该处理进行到步骤S245,在步骤S245中,该系统计算从点(i,j)到点(i+1,j2)的跃迁得分(TRANSCORE)。将该跃迁得分添加到与在点(i,j)结束的路径关联的累积得分中,并将结果复制到临时存储器TEMPSCORE中。然后在步骤S249中,该系统对TEMPSCORE和与点(i+1,j2)关联的累积得分进行对数加法,并且在SCORE(i+1,j2)中存储其结果,从而确保组合在格点(i+1,j2)相遇的路径的路径得分。接着该处理进行到步骤S251,在步骤S251中,将查询音素循环指针j2加1,然后该处理返回到步骤S243。将在点(i,j)结束的路径传播到图9a所示的其他点后,j2将等于mxj,在点(i,j)结束的路径的传播结束。
如果判定块S213和S217确定注释为语音而查询为文本,则该处理进行到图16b所示的步骤S255到S265,这些步骤是可操作的,以便将在点(i,j)结束的路径传播到图9b所示的其他格点。其实现方法为,首先在步骤S255中,检查查询音素循环指针j是否指向表示查询的音素序列中的最后一个音素。若不是,则该处理进行到步骤S257,在步骤S257中,比较注释音素循环指针i2与mxi。最初,i2等于mxi,并且假定注释音素i不在表示注释的音素序列的结束位置,该处理进行到步骤S259,在步骤S259中,计算从点(i,j)移动到点(i2,j+1)的跃迁得分。然后该处理进行到步骤S261,在步骤S261中,将该跃迁得分添加到在点(i,j)结束的路径的累积得分中,并将结果复制到临时存储器TEMPSCORE中。接着该处理进行到步骤S263,在步骤S263中,对TEMPSCORE和已经为点(i2,j+1)存储的累积得分进行对数加法,并且在SCORE(i2,j+1)中存储其结果。然后该处理进行到步骤S265,在步骤S265中,将注释音素循环指针i2加1,并且该处理返回到步骤S257。重复上述处理步骤,直至将在点(i,j)结束的路径传播到图9b所示的每一个其他格点。此时,结束在点(i,j)的路径的传播,处理结束。
最后,如果判定块S213和S215确定注释和查询均为文本,则该处理进行到图16b所示的步骤S271到S279,这些步骤是可操作的,以便将在点(i,j)结束的路径传播点(i+1,j+1),其前提是还有其他注释音素和其他查询音素。具体而言,在步骤S271中,该系统检查注释音素循环指针i是否指向最后一个注释音素。若不是,则该处理进行到步骤S273,在步骤S273中,相对于查询音素序列,以类似方式检查查询音素循环指针j。如果不再有注释音素或者如果不再有查询音素,则处理结束。然而,如果还有其他注释音素和其他查询音素,则该处理进行到步骤S275,在步骤S275中,该系统计算从点(i,j)到点(i+1,j+1)的跃迁得分。然后在步骤S277中,将该跃迁得分添加到为点(i,j)存储的累积得分中,并将结果存储到临时存储器TEMPSCORE中。接着该处理进行到步骤S279,在步骤S279中,该系统对TEMPSCORE和已经为点(i+1,j+1)存储的累积得分进行对数加法,并且在SCORE(i+1,j+1)中存储其结果。正如本领域的技术人员理解的那样,在本实施方式中步骤S277和S279是必需的,因为动态规划约束允许路径从表示注释的音素序列内的任意音素开始,因此,点(i+1,j+1)可能已经具有与其关联的得分。在步骤S279之后,结束点(i,j)的传播,并且处理结束。
跃迁得分
在图12所示的步骤S103、S105和S107中,传播动态规划路径,并且在此传播期间,在步骤S127、S117、S177、S191、S229、S245、S259和S275中计算跃迁得分。在这些步骤中,该系统计算适当的插入概率、删除概率以及相对于跃迁之起点和终点的译码概率。以下参照图17和18说明本实施方式中实现的计算方式。
具体而言,图17是一个流程图,表示在计算从格点(i,j)传播到格点(i2,j2)的路径的跃迁得分时包含的一般处理步骤。在步骤S291中,对于在点(i,j)和点(i2,j2)之间插入的每个注释音素,该系统计算插入所插入音素的得分(即以上讨论的概率PI( )的对数),并将该得分添加到适当存储器INSERTSCORE中。然后该处理进行到步骤S293,在步骤S293中,该系统以类似方式计算在点(i,j)和点(i2,j2)之间插入的每个查询音素的得分,并将其添加到INSERTSCORE中。请注意,如果(i,j)是起始空节点φs或者如果(i2,j2)是终止空节点φe,则该系统不计算所有插入的注释音素的插入概率(由于不惩罚从任意注释音素开始或结束路径),尽管计算所有插入的查询音素的插入概率。如上所述,计算的得分是基于对数的概率,因此,在INSERTSCORE中添加得分相当于乘以相应的插入概率。接着该处理进行到步骤S295,在步骤S295中,该系统计算从点(i,j)传播到点(i2,j2)时的删除和/或译码得分,累加这些得分,并存储在适当存储器DELSCORE中。然后该处理进行到步骤S297,在步骤S297中,该系统累加INSERTSCORE和DELSCORE,并将结果复制到TRANSCORE。
以下参照图18,详细说明步骤S295包含的确定从点(i,j)传播到点(i2,j2)时的删除和/或译码得分的处理。由于可能的删除和译码取决于注释是否是根据文本生成的以及查询是否是根据文本生成的,所以判定块S301、S303和S305确定注释是文本还是语音,以及查询是文本还是语音。如果这些判定块确定注释和查询均是文本,则没有删除操作,并且在步骤S307中利用布尔匹配对两个音素进行译码。如果注释音素ai2与查询音素qj2相同,则该处理进行到步骤S309,在步骤S309中,将TRANSCORE设置为log(1)(即,0),并且处理结束。然而,如果注释音素ai2与查询音素qj2不同,则该处理进行到步骤S311,在步骤S311中,将TRANSCORE设置为一个非常大的负数,即log(0),并且处理结束。
如果判定块S301和S305确定注释是语音而查询是文本,则通过使用以上讨论的公式(4)的简化形式确定跃迁得分。此时,该处理从步骤S303转到步骤S313,在步骤S313中,该系统确定注释循环指针i2是否等于注释循环指针i。若是,则意味着该路径已经从点(i,j)传播到点(i,j+1)。因此,已经相对于查询音素序列从注释音素序列中删除了查询音素qj+1。因此,在步骤S317中,该系统将删除音素qj+1的对数概率(即,logP(φ|qj+1,C)),复制到DELSCORE中,并且处理结束。如果在步骤S313中该系统确定i2不等于i,则该系统考虑将在点(i,j)结束的路径传播到点(i+1,j+1)、(i+2,j+1)或(i+3,j+1)之一。无论在哪种情况中,均不存在删除,注释音素ai2和查询音素qj+1之间只有插入和译码。因此,在步骤S315中,该系统将把查询音素qj+1译码为注释音素ai2的对数概率(即,logP(ai2|qj+1,C)),复制到DELSCORE中,并且处理结束。
如果判定块S301和S305确定注释是文本而查询是语音,则通过使用以上讨论的公式(4)的其他简化形式确定跃迁得分。此时,该处理从步骤S305转到步骤S319,在步骤S319中,该系统确定查询音素循环指针j2是否等于查询音素循环指针j。若是,则该系统计算从点(i,j)到点(i+1,j)的跃迁得分。此时,已经相对于注释音素序列从查询音素序列中删除了注释音素ai+1。因此,在步骤S321中,该系统确定并将删除注释音素ai+1的对数概率(即,logP(φ|ai+1,C)),复制到DELSCORE中,并且处理结束。如果在步骤S319中,该系统确定查询音素循环指针j2不等于查询音素循环指针j,则该系统确定从点(i,j)到点(i+1,j+1)、(i+1,j+2)或(i+1,j+3)之一的跃迁得分。此时,不存在删除,注释音素ai+1和查询音素qj2之间只有插入和译码。因此,在步骤S323中,该系统确定并将把注释音素ai+1译码为查询音素qj2的对数概率(即,logP(qj2|ai+1,C)),复制到DELSCORE中,并且处理结束。
如果判定块S301和S303确定注释和查询均是根据语音生成的,则通过使用以上公式(4)确定跃迁得分。此时,该处理从步骤S303转到步骤S325,在步骤S325中,该系统确定注释循环指针i2是否等于注释循环指针i。若是,则该处理进行到步骤S327,在步骤S327中,将音素循环指针r初始化为1。在计算公式(4)期间,音素指针r用于遍历系统已知的每个可能音素。然后该处理进行到步骤S329,在步骤S329中,该系统比较音素指针r与该系统已知的音素数Nphonemes(在本实施方式中等于43)。最初,在步骤S327中将r设置为1,因此该处理进行到步骤S331,在步骤S331中,该系统确定音素pr出现的对数概率(即,logP(pr|C)),并将其复制到临时存储器TEMPDELSCORE中。如果注释音素循环指针i2等于注释音素i,则该系统正在将在点(i,j)结束的路径传播到点(i,j+1)、(i,j+2)或(i,j+3)之一。因此,查询中有一个注释中没有的音素。从而在步骤S333中,该系统将从注释中删除音素pr的对数概率(即,logP(φ|pr,C)),添加到TEMPDELSCORE中。接着该处理进行到步骤S335,在步骤S335中,该系统将把音素pr译码为查询音素qj2的对数概率(即,logP(qj2|pr,C)),添加到TEMPDELSCORE中。然后该处理进行到步骤S337,在步骤S337中,对TEMPDELSCORE和DELSCORE执行对数加法,并将结果存储到DELSCORE中。接着该处理进行到步骤S339,在步骤S339中,将音素循环指针r加1,然后该处理返回到步骤S329,在步骤S329中,以类似方式处理该系统已知的下一个音素。在对该系统已知的43音素中的每个音素执行上述计算后,处理结束。
在步骤S325中,如果该系统确定i2不等于i,则该处理进行到步骤S341,在步骤S341中,该系统确定查询音素循环指针j2是否等于查询音素循环指针j。若是,则该处理进行到步骤S343,在步骤S343中,将音素循环指针r初始化为1。然后该处理进行到步骤S345,在步骤S345中,比较音素循环指针r与该系统已知的音素总数(Nphonemes)。最初在步骤S343中将r设置为1,因此该处理进行到步骤S347,在步骤S347中,该系统确定音素pr出现的对数概率,并将其复制到临时存储器TEMPDELSCORE中。接着,该处理进行到步骤S349,在步骤S349中,该系统确定把音素pr译码为注释音素ai2的对数概率,并将其添加到TEMPDELSCORE中。如果查询音素循环指针j2等于查询音素循环指针j,则该系统正在将在点(i,j)结束的路径传播到点(i+1,j)、(i+2,j)或(i+3,j)之一。因此,注释中有一个查询中没有的音素。从而在步骤S351中,该系统确定从查询中删除音素pr的对数概率,并将其添加到TEMPDELSCORE中。接着该处理进行到步骤S353,在步骤S353中,该系统对TEMPDELSCORE和DELSCORE执行对数加法,并将结果存储到DELSCORE中。然后在步骤S355中,将音素循环指针r加1,并且该处理返回到步骤S345。在对该系统已知的所有音素执行步骤S347到S353的处理后,处理结束。
在步骤S341中,如果该系统确定查询音素循环指针j2不等于查询音素循环指针j,则该处理进行到步骤S357,在步骤S357中,将音素循环指针r初始化为1。然后该处理进行到步骤S359,在步骤S359中,该系统比较音素计数器r与该系统已知的音素数(Nphonemes)。最初在步骤S357中将r设置为1,因此该处理进行到步骤S361,在步骤S361中,该系统确定音素pr出现的对数概率,并将其复制到临时存储器TEMPDELSCORE中。如果查询音素循环指针j2不等于查询音素循环指针j,则该系统正在将在点(i,j)结束的路径传播到点(i+1,j+1)、(i+1,j+2)和(i+2,j+1)之一。因此,没有删除,只有插入和译码。所以该处理进行到步骤S363,在步骤S363中,将把音素pr译码为注释音素ai2的对数概率,添加到TEMPDELSCORE中。然后该处理进行到步骤S365,在步骤S365中,确定把音素pr译码为查询音素qj2的对数概率,并添加到TEMPDELSCORE中。接着在步骤S367中,该系统对TEMPDELSCORE和DELSCORE执行对数加法,并将结果存储到DELSCORE中。然后在步骤S369中,将音素计数器r加1,并且该处理返回到步骤S359。在对该系统已知的所有音素执行步骤S361到S367的处理后,处理结束。
归一化
动态规划处理的上述说明仅仅处理了公式(3)的分子部分。因此,在输入查询已经与数据库中的注释音素序列匹配后,必须通过归一化公式(3)的分母定义的项,归一化该匹配的得分(在ENDSCORE中存储)。如上所述,在计算分子时,即在上述动态规划例程中,计算分母。其原因在于,通过比较分子和分母可以发现,分母上的各项已经在分子上进行了计算。然而,请注意,如果注释或查询是根据文本生成的,则不执行归一化。在本实施方式中,执行归一化的目的在于使较长注释的权重不大于较短注释的权重,并且使包含常见音素的注释的权重不大于包含罕见音素的权重。通过利用一个依赖于该注释与基础模型匹配程度的项来归一化该得分,实现上述处理。
训练
在上述实施方式中,该系统使用1892个译码/删除概率和43个插入概率(称为混淆统计),上述概率用于计算音素匹配操作中动态规划路径的得分。在本实施方式中,预先在训练期间确定上述概率,并存储在存储器(未示出)中。具体而言,在训练期间,以两种方式使用语音识别系统提供语音的音素译码。在第一种方式中,给语音识别系统提供语音和实际说出的单词。从而语音识别部件能够使用该信息生成所说单词的正则音素序列,以获得语音的理想译码。然后利用语音识别系统对相同语音进行译码,但此时并不使用实际说出的单词的知识(以下称为自由译码)。自由译码生成的音素序列与正则音素序列的区别在于:
i)自由译码会出现错误,并在译码中插入正则序列中未出现的音素,或者,在译码中遗漏正则序列中出现的音素;
ii)可能混淆一个音素与另一个音素;以及
iii)即使语音识别系统能够正确对该语音进行译码,自由译码仍然与正则译码不同,其原因在于交谈发音与正则发音之间的区别,例如,在交谈语言中,通常将单词“and”(其正则形式为/ae//n//d/和/ax//n//d/)缩减为/ax//n/,甚至缩减为/n/。
因此,如果将大量发言译码为其正则形式或其自由译码形式,则可以使用动态规划方法匹配二者。当音素应为p时,以上处理提供译码为d的计数。根据上述训练结果,可以按下述方式逼近以上译码、删除和插入概率。
由下式给出音素d是一个插入的概率:
PI ( d | C ) = I d n o d - - - ( 9 )
其中Id是自动语音识别系统插入音素d的次数,no d是相对于正则序列插入译码音素的总次数。
由下式给出将音素p译码为音素d的概率:
P ( d | p , C ) = c dp n p - - - ( 10 )
其中cdp是音素为p时自动语音识别系统译码为d的次数,np是音素为p时自动语音识别系统译码为任意音素(包括删除)的次数。
由下式给出应该对音素p进行译码时未译码(即,删除)的概率:
P ( Φ | p , C ) = O p n p - - - ( 11 )
其中Op是应该对p译码时自动语音识别系统未译码的次数,np同上。
第二实施方式
在第一实施方式中,比较一个输入查询与许多存储的注释。在本实施方式中,比较两个输入的语音查询与存储的注释。本实施方式适合在噪声环境中进行输入查询的应用,或要求较高准确性的应用。并不适合查询为文本的情况,因为这使得其他查询是多余的。因此,该系统能够处理以下两种情况:
(i)输入查询是根据语音生成的并且注释也是根据语音生成的;以及
(ii)输入查询是根据语音生成的但注释是根据文本生成的。
本实施方式使用的动态规划算法与第一实施方式中使用的算法类似,但使其适应同时匹配两个查询与注释。图19表示一个三维坐标图,其中给两个查询中的每个提供一维,给注释提供另一维。图19表示本实施方式的动态规划算法处理的三维格点。该算法使用第一实施方式中使用的相同跃迁得分、动态规划约束和混淆统计(即,音素概率),以便在图19所示的三维格点网络中传播路径,并计算每条路径的得分。
以下详细说明上述三维动态规划处理。通过比较图20至25与图13至18,本领域的技术人员可以理解,本质上,三维动态规划算法与第一实施方式中采用的二维动态规划算法是相同的,只是为了考虑额外查询,需要添加几个控制循环。
三维动态规划算法按照图12所示的所有步骤,比较两个查询与注释。图20详细表示步骤S103中包含的处理步骤,其中在步骤S103中,将动态规划路径从空的起始节点φs,传播到动态规划约束定义的所有可能起点。在这点上,约束指动态规划路径可以从任何一个注释音素开始,并且一条路径可以从每个查询的任何前四个音素开始。因此,参照图20,在步骤S401中,该系统将变量mxj和mxk的值设置为mxhops,后者与第一实施方式中使用的常数相同。因此,在本实施方式中,同时将mxj和mxk设置为4,前提是每个输入查询包含四个以上的音素。否则,将mxj和/或mxk设置为相应查询中的音素数。接着该处理进行到步骤S403到S417,这些步骤是可操作的,以开始位于点(i,j,k)的动态规划路径,其中i=0到Nann,j=1到3,k=0到3。从而结束图12所示的步骤S103中的处理,然后该处理进行到步骤S105,在步骤S105中,将上述动态规划路径传播到终点。
正如在第一实施方式中那样,在本实施方式中,该系统通过以光栅方式处理搜索空间中的格点,将动态规划路径从起点传播到终点。图21表示控制上述光栅处理操作所使用的控制算法。通过比较图21和图14可以看出,本控制算法与第一实施方式中使用的控制算法具有相同的通式。其唯一区别在于更复杂的传播步骤S419,以及提供查询块S421、S423和S425,以便处理第二输入查询引起的附加点。为了更好地理解图21所示控制算法的操作方式,请读者参考有关图14的说明。
图22以详细方式表示将位于终点的路径传播到终止空节点φe时,本实施方式使用的图12所示的步骤S107中的处理步骤。通过比较图22和图15可以看出,本实施方式中采用的步骤S107中的处理步骤,与第一实施方式中采用的相应处理步骤类似。其区别在于,更复杂的跃迁得分计算块443和附加块(S439、S441和S443),并且需要变量(k)以处理由于第二查询而引起的附加格点。因此,为了理解步骤S431到S449中包含的处理,请读者参考有关图15的说明。
图23是一个流程图,表示图21所示的传播步骤S419中包括的处理步骤。图16表示用于二维实施方式的相应流程图。通过比较图23和图16可以看出,两种实施方式之间的主要区别在于附加变量(mxk和k2)以及处理由于第二查询引起的附加格点所需要的处理块(S451、S453、S455和S457)。图23稍微复杂一些,因为两个查询必须为语音,因此该流程只有两个主要分支,一个用于注释为文本,另一个用于注释为语音。为了更好地理解图23所示的流程图包含的处理步骤,请读者参考有关图16的说明。
图24是一个流程图,表示在图23所示的处理步骤期间,计算从点(i,j,k)传播到(i2,j2,k2)的动态规划路径的跃迁得分时包含的处理步骤。图17表示用于二维实施方式的相应流程图。通过比较图24和图17可以看出,本实施方式与第一实施方式之间的主要区别在于附加处理步骤S461,该步骤用于第二查询中插入音素的插入概率。因此,为了更好地理解图24所示流程图中包含的处理步骤,请读者参考有关图17的说明。
以下参照图25详细说明图24的步骤S463包含的处理步骤,该步骤用于确定从点(i,j,k)到(i2,j2,k2)的路径传播的删除和/或译码得分。由于可能的删除和译码依赖于注释是根据文本还是根据语音生成的,所以判定块S501确定注释是文本还是语音。如果注释是根据文本生成的,则音素循环指针i2必须指向注释音素ai+1。接着该处理进行到步骤S503、S505和S507,这些步骤是可操作的,以确定第一和第二查询中是否有音素删除(相对于注释)。如果有音素删除,则j2等于j,k2等于k。
-如果j2不等于j并且k2不等于k,则相对于注释查询中没有删除,并且该处理进行到步骤S509,在步骤S509中,将把注释音素ai+1译码为第一查询音素qj2的对数概率,复制到DELSCORE中。然后该处理进行到步骤S511,在步骤S511中,将把注释音素ai+1译码为第二查询音素qk2的对数概率,添加到DELSCORE中。
-如果该系统确定j2不等于j但k2等于k,则该处理进行到步骤S513和S515,在步骤S513中,确定删除注释音素ai+1的概率,并复制到DELSCORE中,并且在步骤S515中,将把注释音素ai+1译码为第一查询音素qj2的对数概率,添加到DELSCORE中。
-如果该系统确定j2等于j并且k2等于k,则该处理进行到步骤S517和S519,在这些步骤中,该系统确定从第一和第二查询中删除注释音素ai+1的对数概率,并将其结果存储到DELSCORE中。
-如果该系统确定j2等于j但k2不等于k,则该处理进行到步骤S521和S523,这些步骤是可操作的,以便在步骤S521中,将删除注释音素ai+1的对数概率,复制到DELSCORE中,并且在步骤S523中,将把注释音素ai+1译码为第二查询音素qk2的对数概率,添加到DELSCORE中。
在步骤S501中,如果该系统确定注释是根据语音生成的,则该系统通过分别比较i2与i、j2与j以及k2与k,确定(在步骤S525到S537中)该注释或两个查询中是否有音素删除。正如图25b到25e所示,如果注释是根据语音生成的,则有8个主要分支,这些分支用于确定8种可能情况的适当译码和删除概率。由于在每种情况中执行的处理非常相似,所以仅给出一种情况的说明。
具体而言,在步骤S525、S527和S531中,如果该系统确定注释中有音素删除(因为i2=i)但两个查询中没有音素删除(因为j2≠j且k2≠k),则处理进行到步骤S541,在步骤S541中,将音素循环指针r初始化为1。在计算与第一实施方式中所述公式(4)类似的公式时,音素循环指针r用于遍历该系统已知的每个音素。接着,该处理进行到步骤S543,在步骤S543中,该系统比较音素指针r与该系统已知的音素数N phonemes(在本实施方式中等于43)。最初在步骤S541中将r设置为1。因此,该处理进行到步骤S545,在步骤S545中,该系统确定音素pr出现的对数概率,并将其复制到临时存储器TEMPDELSCORE中。然后,该处理进行到步骤S547,在步骤S547中,该系统确定在注释中删除音素pr的对数概率,并将其添加到TEMPDELSCORE中。接着该处理进行到步骤S549,在步骤S549中,该系统确定把音素pr译码为第一查询音素q1 j2的对数概率,并将其添加到TEMPDELSCORE中。然后,该处理进行到步骤S551,在步骤S551中,该系统确定把音素pr译码为第二查询音素q2 k2的对数概率,并将其添加到TEMPDELSCORE中。接着,该处理进行到步骤S553,在步骤S553中,该系统对TEMPDELSCORE和DELSCORE进行对数加法,并将结果存储到DELSCORE中。然后该处理进行到步骤S555,在步骤S555中,将音素指针r加1。接着该处理返回到步骤S543,在步骤S543中,对该系统已知的下一音素执行类似处理。在计算了该系统已知的43个音素后,处理结束。
如通过比较在图25中执行的处理步骤和在图18中执行的处理步骤可以看出,在用于译码和删除的动态规划算法内计算的概率项,类似于公式(4),但具有用于第二查询的附加概率项。具体而言,该算法具有以下形式:
Σ r = 0 N p P ( a i | p r , C ) P ( q j 1 | p r , C ) P ( q k 2 | p r , C ) P ( p r | C ) - - - ( 12 )
这正是我们期望的,因为两个查询是彼此条件独立的。
在将所有动态规划路径传播到终止节点φe后,利用第一实施方式中计算的相同归一化项(由公式(5)给出),归一化该匹配的总得分。这是因为归一化项仅仅依赖于注释模型的相似性。在匹配两个查询与所有注释后,对注释的归一化得分进行排序,然后基于此排序,该系统向用户输出注释或与输入查询最相似的注释。
在上述第二实施方式中,比较两个输入查询与存储的注释。正如本领域的技术人员理解的那样,可以使该算法适合任意数目的输入查询。正如在两个查询中说明的那样,添加其他查询只需在该算法中添加许多循环,以解决附加查询。然而,在比较三个以上的输入查询与所存储注释的实施方式中,必须采用使用剪枝的动态规划例程,以满足速度或存储约束。此时,只传播相遇路径的最佳得分,而不是累加所有路径的所有概率,并且终止较差得分的路径。
替代实施方式
正如本领域的技术人员理解的那样,可以将用于匹配一个音素序列与另一个音素序列的技术,应用于除数据检索之外的其他应用。另外,正如本领域的技术人员理解的那样,尽管上述系统以音素和字格为单位使用音素,但是也可以使用其他诸如音素之类的单位,如音节或片假名(日文字母表)。
正如本领域的技术人员理解的那样,仅仅利用示例说明动态规划匹配和两个音素序列的匹配,并且可以做出各种变更。例如,虽然采用通过格点传播路径的光栅扫描技术,但是也可以采用通过格点逐步传播路径的其他技术。另外,正如本领域的技术人员理解的那样,可以使用除上述约束之外的其他动态规划约束来控制匹配处理。
在上述实施方式中,注释通常比查询长,并且动态规划匹配算法使查询与整个注释一致。在备择实施方式中,通过在每个步骤中使查询从头到尾越过注释,并且通过比较该查询和与该查询具有大致相同长度的注释部分,匹配算法也可以比较查询与注释。在此类实施方式中,在每个步骤中,通过使用与上述技术类似的动态规划技术,使该查询与注释的相应部分一致。图26a表示此种技术,该图表示将查询越过图26b表示的注释时,该查询与当前注释之间的匹配的动态规划得分的变化方式。图26b所示的图中的峰值代表与该查询最匹配的注释部分。通过比较在比较查询与各注释期间获得的峰值DP得分,确定与该查询最相似的注释。
在上述实施方式中,通过使用音素和字格注释数据给图片作注释。正如本领域的技术人员理解的那样,可以使用音素和字格数据给许多不同种类的数据文件作注释。例如,可以在医疗应用中使用此类注释数据,给病人的x射线、诸如NMR扫描之类的3D视频、超声扫描等作注释。也可以对诸如音频数据或地震数据之类的1D数据作注释。
在上述实施方式中,使用根据输入语音信号生成音素序列的语音识别系统。正如本领域的技术人员理解的那样,也可以与其他类型的语音识别系统一起使用上述系统,此类语音识别系统生成输出单词或字格序列,可以将该序列分解成具有选择的对应音素串,以便模拟生成音素串的识别程序。
在上述实施方式中,通过使用最大似然概率估计,根据语音识别系统的混淆统计,计算插入、删除和译码概率。正如本领域的技术人员理解的那样,也可以使用诸如最大熵之类的其他技术来估计上述概率。可以在Kluwer Academic出版的、作者为John Skilling、书名为“最大熵和贝叶斯方法”的著作的第45页到52页中,找到最大熵技术的详细说明,这里引用其内容作为参考。
在上述实施方式中,数据库29和自动语音识别部件51均位于用户终端59内。正如本领域的技术人员理解的那样,这并不是必须的。图27表示数据库29和搜索引擎53位于远程服务器60的实施方式,其中用户终端59通过通过网络接口部件67和69以及数据网络68(如因特网),访问数据库29。在本实施方式中,用户终端59只能接收来自麦克风7的语音查询。通过自动语音识别部件51,将这些查询转换为音素和单词数据。然后将这些数据传送到控制部件55,后者控制通过数据网络68到位于远程服务器60内的搜索引擎53的数据传输。然后搜索引擎53以在上述实施方式中执行搜索的方式,执行搜索。通过数据网络68,将搜索结果从搜索引擎53传回到控制部件55。接着控制部件55考虑从网络中接收的搜索结果,并在显示器57上显示适当数据供用户39查看。
除把数据库29和搜索引擎53设置在远程服务器60内之外,还可以把自动语音识别部件51设置在远程服务器60内。图28表示此类实施方式。如图所示,在本实施方式中,通过输入线路61,将来自用户的输入语音查询传送到语音编码部件73,后者能够对语音进行编码,以便通过数据网络68进行有效传输。将经过编码的数据传送到控制部件55,控制部件55通过网络68将该数据传送到远程服务器60,然后由自动语音识别部件51进行处理。接着,将语音识别部件51生成的输入查询的音素和单词数据,传送到搜索引擎53,以便在搜索数据库29时使用。通过网络接口69和网络68,将搜索引擎53生成的搜索结果,传回到用户终端59。然后通过网络接口部件67,将从远程服务器接收的搜索结果,传送到控制部件55,后者对该结果进行分析,生成并在显示器57上显示适当数据供用户39查看。
类似地,可以提供用户终端59,该终端仅允许来自用户的打字输入,并且具有搜索引擎,而数据库位于远程服务器中。在此类实施方式中,语音转录部件75也可以位于远程服务器60中。
在上述实施方式中,动态规划算法用于使查询音素序列与注释音素序列匹配。正如本领域的技术人员理解的那样,可以使用任何匹配技术。例如,可以使用自然技术,该技术以相同方式处理所有可能的匹配。然而,优先使用动态规划,因为很容易使用标准处理硬件实现该技术。
以上说明了使用动态规划技术比较两个或多个正则音素序列的方式。然而,正如图2和图3所示,最好以格点的方式存储注释。正如本领域的技术人员理解的那样,为了使上述比较技术对格点起作用,必须将格点定义的音素序列“扁平化”为一个没有分支的音素序列。实现上述处理的自然方法是标识以上格点定义的所有不同的可能音素序列,然后比较每个音素序列与各查询序列。然而,这并不是最佳方式,因为格点的公共部分要与每个查询序列比较许多次。因此,最好通过根据格点内每个音素的可用时戳信息,顺序标记格点内的每个音素,对格点进行“扁平化”处理。在动态规划匹配期间,在每个DP格点上使用互不相同的动态规划约束,以确保路径根据格点结构传播。
下表说明图2所示的部分音素格点使用的DP约束。具体而言,第一列表示为格点内的每个音素分配的音素好(p1到p9);第二列对应于格点中的实际音素;最后一列表示在下一个动态规划时间点时,在该音素结束的路径能够传播到的音素。尽管该图未示出,但是第二列包含该音素链接到的节点的详细信息,以及对应的音素链表。
音素号 音素  动态规划约束
P1 /p/  P1;P2;P3;P4
P2 /ih/  P2;P3;P4;P5
P3 /k/  P6P3;P4;P5;P7P8
P4 /ch/  P6;P10
P4;P5;P7;P9P8;P11
 P5 /ax/ P6;P10;P12P5;P7;P9;P12P8;P11;P13P14
 P6 /ax/ P6;P10;P12;P15P16
 P7 /ao/ P7;P9;P12;P15P16
 P8 /ah/ P8;P11;P13;P18P14;P17
 P9 /f/ P9;P12;P15;P18P16;P18
例如,如果动态规划路径在按时间排序的音素p4结束,则该动态规划路径可以停留在音素p4,或者传播到任一按时间排序的音素p5到P11。正如从该表中看到的那样,在某些点,路径能够扩展到音素并不是按时间排序的音素序列连续排列的。例如,对于在按时间排序的音素p6结束的动态规划路径而言,该路径或者停留在该音素,或者传播到音素P10、p12、P15、p16。通过按上述方式对格点中的音素进行连续编号,并且通过依靠格点改变所使用动态规划约束,能够实现输入查询与注释格点之间的有效动态规划匹配。另外,正如本领域的技术人员理解的那样,如果输入查询也生成一个格点,则以类似方式对该格点进行“扁平化”处理,并且相应调整动态规划约束。
在上述实施方式中,注释和查询使用相同的音素混淆概率。正如本领域的技术人员理解的那样,如果使用不同识别系统生成上述概率,在可以对注释和查询使用不同的音素混淆概率。原因在于混淆概率依赖于生成音素序列所使用的识别系统。
在上述实施方式中,如果注释或查询是根据文本生成的,则假定与键入字文本相对应的正则音素序列是正确的。实际情况并非如此,因为以上假设键入的单词没有拼写错误或输入错误。因此,在备择实施方式中,也可以对键入查询和/或注释使用混淆概率。换句话说,即使注释或者查询抑或二者均为文本,也要使用公式(4)和(12)。所使用的混淆概率试图将拼写错误和输入错误编成法典。正如本领域的技术人员理解的那样,用于输入错误的混淆概率依赖于所用的键盘的种类。具体而言,错误输入单词的混淆概率依赖于键盘的布局。例如,如果输入字母“d”,则字母“d”键周围的按键具有较高的错误输入概率,而远离“d”键的按键具有较低的错误输入概率。如上所述,可以与单词的拼写错误的混淆概率一起使用上述输入错误概率,或者用前者代替后者。通过分析大量用户输入的文档并监视通常出现的拼写错误的类型,确定拼写错误概率。拼写错误概率可以考虑输入错误引起的转录错误。在此类实施方式中,使用的动态规划约束应支持打字输入中的插入和/或删除。例如,可以使用图11所示的约束。
另一种选择是该文本是否是利用每个按键分配了多个字母的键盘(如移动电话的键盘)输入的,此时用户必须重复按某个按键以转到分配给该按键的字母。在此类实施方式中,可以调整混淆概率,以便作为输入字母而分配给同一按键的字母,比与其他按键关联的字母的错误输入混淆概率要高。正如使用移动电话发送文本信息的人员能够理解的那样,由于在输入所需字母时的按键次数不正确,所以经常出现输入错误。
在上述实施方式中,控制部件使用公式(4)或(12)来计算各跃迁的译码得分。除根据上述公式计算该系统已知的所有可能音素的总和之外,还可以将控制部件调整为,确定使以上总和内之概率项取最大值的未知音素pr,然后使用最大概率作为注释和查询之对应音素的译码概率。然而,此方式并不是最佳方式,因为它需要附加计算来确定使上述总和内的概率项取最大值的音素(pr)。
在第一实施方式中,在动态规划算法中,为每个调整音素对计算公式(4)。在计算公式(4)时,与系统已知的每个音素比较注释音素和查询音素。正如本领域的技术人员理解的那样,对于给定的注释音素和查询音素对,公式(4)中的许多概率等于或近似等于零。因此,在备择实施方式中,只比较所有已知音素的子集,该子集是预先根据混淆统计确定的。为了实现此类实施方式,可以使用注释音素和查询音素构建一个查找表,后者标识使用公式(4)时需要与注释和查询音素进行比较的模型音素。
在上述实施方式中,被调整并且匹配注释和查询特征代表语音单位。正如本领域的技术人员理解的那样,也可以在由于生成特征序列的识别系统之误差而造成查询和注释特征混淆的其他应用中,使用上述技术。例如,可以在光学字符或手写识别系统中使用以上技术,其中在光学字符或手写识别系统中,识别系统有可能将一个输入字符误认为另一个字符。
以上说明了许多实施方式和修改。正如本领域的技术人员理解的那样,显然还有许多其他实施方式和修改。

Claims (76)

1.一种用于搜索一个数据库(29)的设备,该数据库包括多个信息项(41)以识别要从中取得的信息,所述的多个信息项(41)的每一个均具有一个相关的注解,该注解包括一个语音特征序列,该装置包括:
用于接收包括一个语音特征序列的输入查询的装置(55);
用于将所述的语音特征的查询序列与每一个注解的语音特征进行比较以提供比较结果集合的装置(53);以及
用于利用所述的比较结果而识别要从所述的数据库(29)获取的信息的装置(55);
其特征在于所述的比较装置(53)具有多个不同比较操作模式且该设备进一步包括:
用于判定(i)语音特征的查询序列是从一个音频信号产生还是从文本产生和(ii)一个当前注解的语音特征序列是从一个音频信号产生还是从文本产生并用于输出一个判定结果的装置(53,s213,s215,s217);和
用于对于当前的注解根据所述的判定结果选择所述的比较装置(53)的操作模式的装置(53,s213,s215,s217)。
2.根据权利要求1的设备,其中所述的比较装置(53)包括,如果确定语音特征的查询序列是从一个音频信号产生,并且确定当前注解的语音特征序列是从一个音频信号产生时,比较装置使用的第一比较器,还包括如果确定语音特征的查询序列和/或当前注解的语音特征序列是从文本产生时,使用的第二比较器。
3.根据权利要求2的设备,其中所述第一比较器包括:
用于利用当前注解的语音特征校准输入查询的语音特征,以形成语音特征的多个校准对的装置(s153);
第一子比较装置(s335,s365),对于语音特征的每一个校准对,用于将校准对中的查询语音特征与从预定义的语音特征集合中取得的多个语音特征中的每一个作比较,以产生相应的多个中间比较得分,所述得分表示所述查询语音特征和来自集合的各自的语音特征之间的相似性;
第二子比较装置(s349,s363),对于语音特征的每一个校准对,用于将校准对中的注解语音特征与从集合中取得的所述多个特征中的每一个进行比较,来产生进一步的相应的多个中间比较得分,所述得分表示所述注解语音特征和来自集合的各自的语音特征之间的相似性;
用于通过结合所述多个为校准对产生的中间比较得分而计算一个表示语音特征校准对之间的相似性的比较得分的装置(s337,s353,s367);以及
用于结合一个输入查询和一个注解的语音特征的所有校准对的比较得分来提供一个表示输入查询和当前注解的相似性的比较结果的装置(s233)。
4.根据权利要求3的设备,其中所述的第一和第二子比较装置(s335,s365,s349,s363)用于分别比较查询语音特征和注解语音特征与所述预定语音特征集合中的每个语音特征。
5.根据权利要求3或4的设备,其中所述的计算装置(s337,s353,s367)用于计算一个语音特征校准对的比较得分,所述得分表示将校准对的注解语音特征混淆为校准对的查询语音特征的概率。
6.根据权利要求5的设备,其中所述第一和第二子比较装置(s335,s365,s349,s363)用于产生中间比较得分,所述得分表示把从预定特征集合中取得的相应语音特征混淆为校准对中的语音特征的概率。
7.根据权利要求6的设备,其中所述计算装置(s337,s353,s367)能够:(i)将校准对中的查询和注解语音特征与该集合中的相同语音特征相比较时获得的中间得分进行相乘,以提供多个经过相乘的中间比较得分;以及(ii)累加以上生成的经过相乘的中间比较得分,以计算语音特征校准对的所述比较得分。
8.根据权利要求7的设备,其中所述预定语音特征集合中的每个所述语音特征具有在语音特征序列内出现的预定概率,其中所述的计算装置能够利用用于生成经过相乘的中间比较得分的集合中的语音特征各自的出现概率对每个所述经过相乘的中间比较得分进行加权。
9.根据权利要求8的设备,其中所述计算装置能够计算:
Σ r = 1 n P ( q j | p r ) P ( a i | p r ) P ( p r )
其中qj和ai分别是查询和注解语音特征的校准对;p(qj|pr)为把集合语音特征pr混淆为查询语音特征qj的概率;p(ai|pr)为把集合语音特征pr混淆为注解语音特征ai的概率;以及p(pr)表示集合语音特征pr在语音特征序列中的出现概率。
10.根据权利要求9的设备,其中查询和注解语音特征的混淆概率是预先确定的,并且依赖于用于生成各自的查询和注解序列的识别系统。
11.根据权利要求7到10任一个的设备,其中所述中间得分表示对数概率,其中所述计算装置能够通过累加各自的中间比较得分来执行所述乘法,并且能够通过执行对数加法计算,执行所述经过相乘的得分的所述加法。
12.根据权利要求11的设备,其中所述结合装置能够累加所有查询序列和当前注解序列的校准对的比较得分,以确定对于输入查询和当前注解的所述比较结果。
13.根据权利要求3或4的所述设备,其中所述校准装置能够标识在所述的语音特征的查询和注解序列中的特征删除(s295)和插入(s293),其中所述计算装置能够根据所述校准装置标识的特征删除和插入,计算所述的语音特征校准对的比较得分,所述特征删除和插入出现在校准对中语音特征的附近。
14.根据权利要求3或4的所述设备,其中所述校准装置包括动态编程装置,该装置使用动态编程技术校准所述特征的查询和注解序列。
15.根据权利要求14的设备,其中所述动态编程装置能够逐渐确定所述语音特征的查询和注解序列之间的多个可能校准,其中所述计算装置(s337,s353,s367)能够确定由所述动态编程装置确定的每个可能的语音特征校准对的比较得分。
16.根据权利要求15的设备,其中所述计算装置(s337,s353,s367)能够在逐渐确定所述的可能校准的期间,计算所述的比较得分。
17.根据权利要求14的设备,其中所述动态编程装置能够确定所述语音特征的查询和注解序列之间的最佳校准,其中所述结合装置能够通过仅仅结合最佳语音特征校准对的比较得分,来提供所述的比较结果。
18.根据权利要求15的设备,其中所述结合装置(s233)能够通过结合语音特征的所有可能的校准对的所有比较得分,来提供所述的比较结果。
19.根据权利要求3或4的设备,其中所述语音特征的查询和注解序列中的每个语音特征均属于所述预定语音特征集合,其中所述第一和第二子比较装置(s335,s365,s349,s363)能够使用预定数据生成所述中间比较得分,所述预定数据使所述集合中的语音特征相互关联。
20.根据权利要求19的设备,其中由所述第一子比较装置使用的预定数据随用于生成语音特征查询序列的系统而定,其中所述第二子比较装置使用的预定数据与所述的第一比较装置使用的预定数据不同,并且随用于生成语音特征注解序列的系统而定。
21.根据权利要求19的设备,其中对于语音特征集合中的每个语音特征,所述或每个预定数据包括把该语音特征混淆为语音特征集合的每个其他语音特征混淆的概率。
22.根据权利要求21的设备,其中对于语音特征集合中的每个语音特征,所述或每个预定数据还包括在语音特征序列中插入语音特征的概率。
23.根据权利要求21的设备,其中对于语音特征集合中的每个语音特征,所述或每个预定数据还包括从语音特征序列中删除语音特征的概率。
24.根据权利要求2-4中任一个的设备,其中每个所述的语音特征表示一个音素。
25.根据权利要求3或4的设备,其中所述的结合装置包括归一化每个比较结果的归一化装置。
26.根据权利要求25的设备,其中所述的归一化装置能够通过将比较结果除以各自的归一化得分来归一化每个比较结果,这个归一化得分根据语音特征的相应注解序列的长度而变化。
27.根据权利要求26的设备,其中各自的归一化得分根据语音特征的相应注解序列中的语音特征的序列而变化。
28.根据权利要求26的设备,其中所述的各自的归一化得分随由所述的第二子比较装置计算的相应的中间比较得分而变化。
29.根据权利要求25的设备,其中所述的校准装置包括使用一种动态编程技术校准所述语音特征的查询和注解序列的动态编程装置,其中所述的归一化装置能够在所述动态编程装置逐渐计算所述可能的校准期间,计算各自的归一化得分。
30.根据权利要求29的设备,其中对于语音特征的每个可能的校准对,所述归一化装置能够计算以下归一化项:
Σ r = 1 n P ( a i | p r ) P ( p r )
其中P(ai|pr)表示将集合特征pr混淆为注解序列特征ai的概率,P(pr)表示集合特征pr在特征序列中出现的概率。
31.根据权利要求30的设备,其中所述归一化装置能够通过乘以为各自的特征校准对计算的归一化项,计算所述各自的归一化得分。
32.根据权利要求2-4任一个的设备,其中所述的第二比较器能够将所述语音特征的查询序列与语音特征的当前注解序列作比较,以提供一个使用错误键入概率和/或错误拼写概率的比较结果。
33.根据权利要求2-4任一个的设备,其中所述的标识装置能够比较通过将语音特征查询序列与每个语音特征注解序列作比较而得到的比较结果,以标识与语音特征查询序列最相似的语音特征注解序列。
34.根据权利要求2-4任一个的设备,其中所述的信息项的一个或者多个是相关的注解。
35.根据权利要求2-4任一个的设备,其中所述的接收装置能够接收一个输入查询的多次重现,每次重现包括一个语音特征序列,其中所述的比较装置能够将每次重现的语音查询特征与每个注解的语音注解特征作比较,以在每个输入查询和每个注解之间提供一个相似性的测量;其中所述的标识装置能够使用所述的比较装置提供的相似性测量来标识从所述的数据库检索的信息。
36.根据权利要求2-4任一个的设备,还包括一个自动语音识别单元(51),用于接收一个口头输入查询和提供所述的语音特征输入查询序列到所述的接收装置。
37.根据权利要求2-4任一个的设备,还包括一个键盘(3)和一个标音单元(75),用于接收一个键入的输入查询和提供所述的语音特征输入查询序列给所述的接收装置。
38.一种用于搜索一个包括多个信息项(41)的数据库(29)以标识要从中检索的信息的方法,所述多个信息项(41)的每一项都具有一个相关注解,该相关注解包括一个语音特征序列,该方法包括:
接收一个包括一个语音特征序列的输入查询;
将所述的语音特征查询序列与每个注解的语音特征作比较,以提供一个比较结果集合;以及
使用所述的比较结果识别要从所述的数据库(29)获取的所述信息;
其特征在于所述的比较步骤可以使用多个不同的比较技术来执行所述的比较,且所述方法还包括:
确定(i)语音特征的查询序列是从一个音频信号产生还是从文本产生(s215,s217)和(ii)一个当前注解的语音特征序列是从一个音频信号产生还是从文本产生(s213),并输出一个确定结果;以及
对于当前的注解,根据所述的确定结果选择在所述的比较步骤中(s213,s215,s217)用来执行所述比较的技术。
39.根据权利要求38的方法,其中如果确定语音特征查询序列从一个音频信号产生并且如果确定当前注解的语音特征序列从一个音频信号产生,所述的比较步骤使用第一比较技术,如果确定语音特征的查询序列和/或当前注解的语音特征序列从文本产生,那么使用第二比较技术。
40.根据权利要求39的方法,其中所述的第一比较技术包括:
利用当前注解的语音特征校准输入查询的语音特征,以形成语音特征的多个校准对;
对于语音特征的每个校准对,第一子比较步骤(s335,s365)将校准对中的查询语音特征与从预定语音特征集合中取得的多个语音特征的每一个作比较,来产生相应的多个中间比较得分,所述得分表示所述查询语音特征与集合中各自的语音特征之间的相似性;
对于语音特征的每个校准对,第二子比较步骤(s349,s363)将校准对中的注解语音特征与从集合中取得的所述多个特征中的每一个作比较,来产生进一步相应的多个中间比较得分,所述得分表示所述的注解语音特征和集合中各自的语音特征之间的相似性;
通过结合所述的为校准对产生的多个中间比较得分,计算(s337,s353,s367)一个表示语音特征校准对之间的相似性的比较得分;以及
结合(s233)一个输入查询和一个注解的语音特征的所有校准对的比较得分,以提供一个比较结果,该结果表示在输入查询与当前注解之间的相似性。
41.根据权利要求40的方法,其中所述的第一和第二子比较步骤(s335,s365;s349,s363)分别将查询语音特征和注解语音特征与在所述的预定语音特征集合中的每个语音特征作比较。
42.根据权利要求40或41的方法,其中所述的计算步骤(s337,s353,s367)计算一个对于一个语音特征校准对的比较得分,其表示将校准对中的注解语音特征混淆为校准对中的查询语音特征的概率。
43.根据权利要求42的方法,其中所述的第一和第二子比较步骤(s335,s365,s349,s363)产生中间比较得分,该得分表示将从预定特征集合中取得的相应语音特征混淆为校准对中的语音特征的概率。
44.根据权利要求43的方法,其中所述的计算步骤(s337,s353,s367)(i)将校准对中的查询和注解语音特征与该集合中的相同语音特征比较时获得的中间得分进行相乘,以提供多个经过相乘的中间比较得分,以及(ii)累加以上生成的经过相乘的中间比较得分,以计算所述的语音特征的校准对的比较得分。
45.根据权利要求44的方法,其中所述预定语音特征集合中的每个所述语音特征具有在语音特征序列内出现的预定概率,并且所述计算步骤利用集合中语音特征各自的出现概率给每个所述经过相乘的中间比较得分加权,以上集合用于生成经过相乘的中间比较得分。
46.根据权利要求45的方法,其中所述的计算步骤计算:
Σ r = 1 n P ( q j | p r ) P ( a i | p r ) P ( p r )
其中qj和ai分别是查询和注解语音特征的校准对;P(qj|pr)是将集合语音特征pr混淆为查询语音特征qj的概率;P(ai|pr)是将集合语音特征pr混淆为注解语音特征ai的概率;以及P(pr)表示集合语音特征pr在一个语音特征序列中出现的概率。
47.根据权利要求46的方法,其中查询和注解语音特征的混淆概率是预先确定的,并且取决于用来产生各自的查询和注解序列的识别系统。
48.根据权利要求44的方法,其中所述中间比较得分表示对数概率,所述计算步骤通过累加各自的中间比较得分执行所述的乘法,并且通过执行对数加法计算,执行所述经过相乘的得分的所述加法。
49.根据权利要求48的方法,其中所述结合步骤累加查询序列和当前注解序列的所有校准对的比较得分,以确定输入查询和当前注解的所述比较结果。
50.根据权利要求40或41的方法,其中所述校准步骤标识在所述语音特征的查询和注解序列中的特征删除(s295)和插入(s293),其中所述计算步骤根据所述校准步骤标识的特征删除和插入,计算一个语音特征校准对的所述比较得分,特征删除和插入出现在校准对中语音特征的附近。
51.根据权利要求40或41的方法,其中所述的校准步骤使用动态编程技术校准所述特征的查询和注解序列。
52.根据权利要求51的方法,其中所述动态编程步骤逐渐确定所述语音特征的查询和注解序列之间的多个可能校准,其中所述计算步骤(s337,s353,s367)确定所述动态编程步骤确定的语音特征的每个可能校准对的比较得分。
53.根据权利要求52的方法,其中所述的计算步骤(s337,s353,s367)在逐渐确定所述的可能校准的期间,计算所述比较得分。
54.根据权利要求51的方法,其中所述的动态编程步骤确定所述语音特征的查询和注解序列之间的最佳校准,所述结合步骤通过仅仅结合语音特征最佳校准对的比较得分,来提供所述的比较结果。
55.根据权利要求52的方法,其中所述的结合步骤(s223)通过结合语音特征的所有可能校准对的所有比较得分,来提供所述的比较结果。
56.根据权利要求40或41的方法,其中所述语音特征的查询和注解序列中的每个语音特征均属于所述预定语音特征集合,其中所述的第一和第二子比较步骤(s335,s365;s349,s363)使用预定数据来产生所述中间比较得分,所述预定数据使所述集合中的语音特征相互关联。
57.根据权利要求56的方法,其中所述第一子比较步骤中使用的预定数据取决于用来产生语音特征查询序列的系统,其中所述的第二子比较步骤中使用的预定数据与在所述第一比较步骤中使用的预定数据不同,并且取决于用来产生语音特征注解序列的系统。
58.根据权利要求56的方法,其中对于语音特征集合中的每个语音特征,所述或每个预定数据包括将该语音特征与语音特征集合中的每个其他语音特征混淆的概率。
59.根据权利要求58的方法,其中对于语音特征集合中的每个语音特征,所述或每个预定数据还包括在语音特征序列中插入语音特征的概率。
60.根据权利要求58的方法,其中对于语音特征集合中的每个语音特征,所述或每个预定数据还包括从语音特征序列中删除语音特征的概率。
61.根据权利要求38到41任一个的方法,其中每个所述语音特征表示一个音素。
62.根据权利要求40或41的方法,其中所述的结合步骤归一化每个比较结果。
63.根据权利要求62的方法,其中所述的结合步骤通过将比较结果除以各自的归一化得分来归一化每个比较结果,归一化得分依据相应的语音特征注解序列的长度而变化。
64.根据权利要求63的方法,其中各自的归一化得分根据相应的语音特征的注解序列中的语音特征序列而变化。
65.根据权利要求63的方法,其中所述各自的归一化得分随由所述第二子比较装置计算的相应的中间比较得分而变化。
66.根据权利要求62的方法,其中所述校准步骤使用一个动态编程步骤来校准所述语音特征的查询和注解序列,其中所述的结合步骤在由所述的动态编程步骤逐渐计算所述可能校准的期间计算各自的归一化得分。
67.根据权利要求66的方法,其中对于语音特征的每个可能校准对,所述的结合步骤计算下面的归一化项:
Σ r = 1 n P ( a i | p r ) P ( p r )
其中P(ai|pr)表示将集合特征Pr混淆为注解序列特征ai的概率,P(pr)表示集合特征pr在特征序列中的出现概率。
68.根据权利要求67的方法,其中所述的结合步骤通过乘以为各自的特征校准对计算的归一化项,计算所述各自的归一化得分。
69.根据权利要求39到41任一个的方法,其中所述的第二比较技术将所述的语音特征查询序列与语音特征的当前注解序列作比较,以提供一个使用错误键入概率和/或错误拼写概率的比较结果。
70.根据权利要求38到41任一个的方法,其中所述的识别步骤比较通过将语音特征查询序列与每个语音特征注解序列比较而得到的比较结果,以标识与语音特征查询序列最相似的语音特征注解序列。
71.根据权利要求38到41任一个的方法,其中所述信息项的一个或多个是相关的注解。
72.根据权利要求38到41任一个的方法,其中所述的接收步骤接收一个输入查询的多次重现,每次重现包括一个语音特征序列,其中所述的比较步骤将每次重现的语音查询特征与每次重现的语音注解特征进行比较,以提供每个输入查询和每个注解之间的相似性的测量;其中所述的标识步骤使用由所述比较步骤提供的相似性测量,来识别从所述数据库检索的信息。
73.根据权利要求38到41任一个的方法,还包括使用一个自动语音识别单元(51)来处理口头输入查询,以及提供所述语音特征输入查询序列到所述的接收步骤的步骤。
74.根据权利要求38到41任一个的方法,还包括使用一个标音单元(75)来处理一个键入输入查询,以及提供所述的语音特征输入查询序列到所述的接收步骤的步骤。
75.一种用于搜索一个包括多个信息的数据库的设备,多个信息具有注解数据,该设备包括:
一种能够接收一个输入查询的接收器;
一个能够比较输入查询和注解数据的比较器,该比较器具有多种不同的比较操作模式;
一个确定器,能够确定查询或者注解数据是从一个音频信号还是从文本产生的;以及
一个选择器,能够根据所述的确定结果来选择所述比较器的操作模式。
76.一种用于搜索一个包括多个信息的数据库的方法,多个信息具有注解数据,该方法包括:
接收一个输入查询;
比较输入查询和注解数据;
其中比较步骤可以使用多个不同的比较技术来执行所述的比较;
确定查询或者注解数据是从一个音频信号还是从文本产生的;以及
根据在所述确定步骤中所做的确定,选择在所述的比较步骤中用来执行所述比较的技术。
CNB008163537A 1999-10-28 2000-10-25 模式匹配方法和装置 Expired - Fee Related CN1329861C (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
GB9925560.6 1999-10-28
GBGB9925560.6A GB9925560D0 (en) 1999-10-28 1999-10-28 Pattern matching method and apparatus
GB9925561.4 1999-10-28
GBGB9925561.4A GB9925561D0 (en) 1999-10-28 1999-10-28 Pattern matching method and apparatus
GB0025143A GB2355836B (en) 1999-10-28 2000-10-13 Pattern matching method and apparatus
GB0025143.9 2000-10-13

Publications (2)

Publication Number Publication Date
CN1409842A CN1409842A (zh) 2003-04-09
CN1329861C true CN1329861C (zh) 2007-08-01

Family

ID=27255934

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB008163537A Expired - Fee Related CN1329861C (zh) 1999-10-28 2000-10-25 模式匹配方法和装置

Country Status (6)

Country Link
US (2) US7212968B1 (zh)
EP (1) EP1228452B1 (zh)
JP (1) JP3689670B2 (zh)
CN (1) CN1329861C (zh)
DE (1) DE60036486T2 (zh)
WO (1) WO2001031627A2 (zh)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7310600B1 (en) 1999-10-28 2007-12-18 Canon Kabushiki Kaisha Language recognition using a similarity measure
US6882970B1 (en) 1999-10-28 2005-04-19 Canon Kabushiki Kaisha Language recognition using sequence frequency
GB0011798D0 (en) 2000-05-16 2000-07-05 Canon Kk Database annotation and retrieval
GB0023930D0 (en) 2000-09-29 2000-11-15 Canon Kk Database annotation and retrieval
FR2837969A1 (fr) * 2002-03-29 2003-10-03 France Telecom Procede de traduction de donnees autorisant une gestion de memoire simplifiee
US8793127B2 (en) 2002-10-31 2014-07-29 Promptu Systems Corporation Method and apparatus for automatically determining speaker characteristics for speech-directed advertising or other enhancement of speech-controlled devices or services
GB2399983A (en) * 2003-03-24 2004-09-29 Canon Kk Picture storage and retrieval system for telecommunication system
GB2404040A (en) * 2003-07-16 2005-01-19 Canon Kk Lattice matching
WO2005010866A1 (en) * 2003-07-23 2005-02-03 Nexidia Inc. Spoken word spotting queries
US7676739B2 (en) * 2003-11-26 2010-03-09 International Business Machines Corporation Methods and apparatus for knowledge base assisted annotation
US7401019B2 (en) * 2004-01-15 2008-07-15 Microsoft Corporation Phonetic fragment search in speech data
US8694317B2 (en) * 2005-02-05 2014-04-08 Aurix Limited Methods and apparatus relating to searching of spoken audio data
US7293022B2 (en) * 2005-04-14 2007-11-06 International Business Machines Corporation List update employing neutral sort keys
US7941316B2 (en) * 2005-10-28 2011-05-10 Microsoft Corporation Combined speech and alternate input modality to a mobile device
CN102176310B (zh) 2005-12-08 2013-08-21 纽昂斯奥地利通讯有限公司 具有巨大词汇量的语音识别系统
US7877256B2 (en) * 2006-02-17 2011-01-25 Microsoft Corporation Time synchronous decoding for long-span hidden trajectory model
US8510109B2 (en) 2007-08-22 2013-08-13 Canyon Ip Holdings Llc Continuous speech transcription performance indication
US7640161B2 (en) * 2006-05-12 2009-12-29 Nexidia Inc. Wordspotting system
US8255216B2 (en) * 2006-10-30 2012-08-28 Nuance Communications, Inc. Speech recognition of character sequences
US7912724B1 (en) * 2007-01-18 2011-03-22 Adobe Systems Incorporated Audio comparison using phoneme matching
KR100897554B1 (ko) * 2007-02-21 2009-05-15 삼성전자주식회사 분산 음성인식시스템 및 방법과 분산 음성인식을 위한 단말기
WO2008106655A1 (en) * 2007-03-01 2008-09-04 Apapx, Inc. System and method for dynamic learning
GB0704772D0 (en) * 2007-03-12 2007-04-18 Mongoose Ventures Ltd Aural similarity measuring system for text
US20090299731A1 (en) * 2007-03-12 2009-12-03 Mongoose Ventures Limited Aural similarity measuring system for text
US8069044B1 (en) * 2007-03-16 2011-11-29 Adobe Systems Incorporated Content matching using phoneme comparison and scoring
US9973450B2 (en) 2007-09-17 2018-05-15 Amazon Technologies, Inc. Methods and systems for dynamically updating web service profile information by parsing transcribed message strings
US8436815B2 (en) 2007-05-25 2013-05-07 Microsoft Corporation Selective enabling of multi-input controls
US7788095B2 (en) * 2007-11-18 2010-08-31 Nice Systems, Ltd. Method and apparatus for fast search in call-center monitoring
US20100153112A1 (en) * 2008-12-16 2010-06-17 Motorola, Inc. Progressively refining a speech-based search
US20120036155A1 (en) * 2009-04-03 2012-02-09 Netcycler Oy On-line searching systems
US8719016B1 (en) 2009-04-07 2014-05-06 Verint Americas Inc. Speech analytics system and system and method for determining structured speech
US8321218B2 (en) * 2009-06-19 2012-11-27 L.N.T.S. Linguistech Solutions Ltd Searching in audio speech
US8494852B2 (en) 2010-01-05 2013-07-23 Google Inc. Word-level correction of speech input
CN102314876B (zh) * 2010-06-29 2013-04-10 株式会社理光 语音检索的方法和系统
CN102411563B (zh) 2010-09-26 2015-06-17 阿里巴巴集团控股有限公司 一种识别目标词的方法、装置及系统
US20120209606A1 (en) * 2011-02-14 2012-08-16 Nice Systems Ltd. Method and apparatus for information extraction from interactions
US9093061B1 (en) 2011-04-14 2015-07-28 Canyon IP Holdings, LLC. Speech recognition with hierarchical networks
US8827710B2 (en) 2011-05-19 2014-09-09 Microsoft Corporation Realtime user guidance for freehand drawing
JP5404726B2 (ja) * 2011-09-26 2014-02-05 株式会社東芝 情報処理装置、情報処理方法およびプログラム
US9135912B1 (en) * 2012-08-15 2015-09-15 Google Inc. Updating phonetic dictionaries
US9311914B2 (en) * 2012-09-03 2016-04-12 Nice-Systems Ltd Method and apparatus for enhanced phonetic indexing and search
US9734151B2 (en) * 2012-10-31 2017-08-15 Tivo Solutions Inc. Method and system for voice based media search
US9378733B1 (en) * 2012-12-19 2016-06-28 Google Inc. Keyword detection without decoding
US9529907B2 (en) * 2012-12-31 2016-12-27 Google Inc. Hold back and real time ranking of results in a streaming matching system
US9880990B2 (en) 2013-03-14 2018-01-30 Microsoft Technology Licensing, Llc Leveraging previous instances of handwriting for handwriting beautification and other applications
CN104157285B (zh) * 2013-05-14 2016-01-20 腾讯科技(深圳)有限公司 语音识别方法、装置及电子设备
US9384731B2 (en) * 2013-11-06 2016-07-05 Microsoft Technology Licensing, Llc Detecting speech input phrase confusion risk
US9536180B2 (en) 2013-12-30 2017-01-03 Google Inc. Text recognition based on recognition units
JP6400936B2 (ja) * 2014-04-21 2018-10-03 シノイースト・コンセプト・リミテッド 音声検索方法、音声検索装置、並びに、音声検索装置用のプログラム
CN105210147B (zh) * 2014-04-22 2020-02-07 纳宝株式会社 用于改进至少一个语义单元集合的方法、设备及计算机可读记录介质
KR20160056548A (ko) * 2014-11-12 2016-05-20 삼성전자주식회사 질의 응답을 위한 디스플레이 장치 및 방법
US10558926B2 (en) * 2014-11-20 2020-02-11 Academia Sinica Statistical pattern generation for information extraction
EP3958255A1 (en) 2015-01-16 2022-02-23 Samsung Electronics Co., Ltd. Method and device for performing voice recognition
EP3089159B1 (en) 2015-04-28 2019-08-28 Google LLC Correcting voice recognition using selective re-speak
US10192555B2 (en) * 2016-04-28 2019-01-29 Microsoft Technology Licensing, Llc Dynamic speech recognition data evaluation
US10269353B2 (en) * 2016-08-30 2019-04-23 Tata Consultancy Services Limited System and method for transcription of spoken words using multilingual mismatched crowd unfamiliar with a spoken language
BR112020023552A2 (pt) * 2018-05-18 2021-02-09 Greeneden U.S. Holdings Ii, Llc métodos para treinar um modelo de confiança em um sistema de reconhecimento automático de fala e para converter entrada de fala em texto usando modelagem de confiança com uma abordagem multiclasse, e, sistema destinado a converter fala de entrada em texto.
CN109299223B (zh) * 2018-10-15 2020-05-15 百度在线网络技术(北京)有限公司 用于查询指令的方法及装置
CN113192501B (zh) * 2021-04-12 2022-04-22 青岛信芯微电子科技股份有限公司 一种指令词识别方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0597798A1 (en) * 1992-11-13 1994-05-18 International Business Machines Corporation Method and system for utilizing audible search patterns within a multimedia presentation
EP0649144A1 (en) * 1993-10-18 1995-04-19 International Business Machines Corporation Automatic indexing of audio using speech recognition
CN1136356A (zh) * 1993-11-29 1996-11-20 迈克尔·T·罗西德斯 用于文本检索的输入系统

Family Cites Families (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4227176A (en) 1978-04-27 1980-10-07 Dialog Systems, Inc. Continuous speech recognition method
JPS59226400A (ja) 1983-06-07 1984-12-19 松下電器産業株式会社 音声認識装置
US5131043A (en) 1983-09-05 1992-07-14 Matsushita Electric Industrial Co., Ltd. Method of and apparatus for speech recognition wherein decisions are made based on phonemes
FR2554623B1 (fr) 1983-11-08 1986-08-14 Texas Instruments France Procede d'analyse de la parole independant du locuteur
US4980918A (en) 1985-05-09 1990-12-25 International Business Machines Corporation Speech recognition system with efficient storage and rapid assembly of phonological graphs
US4783803A (en) * 1985-11-12 1988-11-08 Dragon Systems, Inc. Speech recognition apparatus and method
US4903305A (en) 1986-05-12 1990-02-20 Dragon Systems, Inc. Method for representing word models for use in speech recognition
JP2739945B2 (ja) 1987-12-24 1998-04-15 株式会社東芝 音声認識方法
US5075896A (en) 1989-10-25 1991-12-24 Xerox Corporation Character and phoneme recognition based on probability clustering
US6236964B1 (en) 1990-02-01 2001-05-22 Canon Kabushiki Kaisha Speech recognition apparatus and method for matching inputted speech and a word generated from stored referenced phoneme data
US5136655A (en) 1990-03-26 1992-08-04 Hewlett-Pacard Company Method and apparatus for indexing and retrieving audio-video data
US5202952A (en) 1990-06-22 1993-04-13 Dragon Systems, Inc. Large-vocabulary continuous speech prefiltering and processing system
US5390278A (en) 1991-10-08 1995-02-14 Bell Canada Phoneme based speech recognition
WO1993018505A1 (en) * 1992-03-02 1993-09-16 The Walt Disney Company Voice transformation system
US5333275A (en) 1992-06-23 1994-07-26 Wheatley Barbara J System and method for time aligning speech
US5625554A (en) 1992-07-20 1997-04-29 Xerox Corporation Finite-state transduction of related word forms for text indexing and retrieval
ATE260486T1 (de) * 1992-07-31 2004-03-15 Ibm Auffindung von zeichenketten in einer datenbank von zeichenketten
AU5803394A (en) 1992-12-17 1994-07-04 Bell Atlantic Network Services, Inc. Mechanized directory assistance
US5467425A (en) 1993-02-26 1995-11-14 International Business Machines Corporation Building scalable N-gram language models using maximum likelihood maximum entropy N-gram models
US5787414A (en) 1993-06-03 1998-07-28 Kabushiki Kaisha Toshiba Data retrieval system using secondary information of primary data to be retrieved as retrieval key
EP0645757B1 (en) 1993-09-23 2000-04-05 Xerox Corporation Semantic co-occurrence filtering for speech recognition and signal transcription applications
SE513456C2 (sv) 1994-05-10 2000-09-18 Telia Ab Metod och anordning vid tal- till textomvandling
IT1272259B (it) 1994-05-30 1997-06-16 Texas Instruments Italia Spa Procedimento ed apparecchio per il riconoscimento dei caratteri
JP3260979B2 (ja) 1994-07-15 2002-02-25 株式会社リコー 文字認識方法
US5799267A (en) * 1994-07-22 1998-08-25 Siegel; Steven H. Phonic engine
US5737723A (en) 1994-08-29 1998-04-07 Lucent Technologies Inc. Confusable word detection in speech recognition
US5835667A (en) 1994-10-14 1998-11-10 Carnegie Mellon University Method and apparatus for creating a searchable digital video library and a system and method of using such a library
JPH10507536A (ja) 1994-11-01 1998-07-21 ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー 言語認識
US5680605A (en) 1995-02-07 1997-10-21 Torres; Robert J. Method and apparatus for searching a large volume of data with a pointer-based device in a data processing system
WO1996027872A1 (en) 1995-03-07 1996-09-12 British Telecommunications Public Limited Company Speech recognition
CA2170669A1 (en) 1995-03-24 1996-09-25 Fernando Carlos Neves Pereira Grapheme-to phoneme conversion with weighted finite-state transducers
US5675706A (en) 1995-03-31 1997-10-07 Lucent Technologies Inc. Vocabulary independent discriminative utterance verification for non-keyword rejection in subword based speech recognition
US5729741A (en) 1995-04-10 1998-03-17 Golden Enterprises, Inc. System for storage and retrieval of diverse types of information obtained from different media sources which includes video, audio, and text transcriptions
EP0769184B1 (en) 1995-05-03 2000-04-26 Koninklijke Philips Electronics N.V. Speech recognition methods and apparatus on the basis of the modelling of new words
US6070140A (en) 1995-06-05 2000-05-30 Tran; Bao Q. Speech recognizer
JPH0916598A (ja) 1995-07-03 1997-01-17 Fujitsu Ltd エラー・パターンを用いた文字列修正システムおよび方法
US5721939A (en) 1995-08-03 1998-02-24 Xerox Corporation Method and apparatus for tokenizing text
US5684925A (en) 1995-09-08 1997-11-04 Matsushita Electric Industrial Co., Ltd. Speech representation by feature-based word prototypes comprising phoneme targets having reliable high similarity
US5737489A (en) 1995-09-15 1998-04-07 Lucent Technologies Inc. Discriminative utterance verification for connected digits recognition
JPH09128396A (ja) 1995-11-06 1997-05-16 Hitachi Ltd 対訳辞書作成方法
US6567778B1 (en) 1995-12-21 2003-05-20 Nuance Communications Natural language speech recognition using slot semantic confidence scores related to their word recognition confidence scores
US5960395A (en) 1996-02-09 1999-09-28 Canon Kabushiki Kaisha Pattern matching method, apparatus and computer readable memory medium for speech recognition using dynamic programming
GB2302199B (en) 1996-09-24 1997-05-14 Allvoice Computing Plc Data processing method and apparatus
US5870740A (en) 1996-09-30 1999-02-09 Apple Computer, Inc. System and method for improving the ranking of information retrieval results for short queries
US5708759A (en) 1996-11-19 1998-01-13 Kemeny; Emanuel S. Speech recognition using phoneme waveform parameters
US6172675B1 (en) 1996-12-05 2001-01-09 Interval Research Corporation Indirect manipulation of data using temporally related data, with particular application to manipulation of audio or audiovisual data
US5852822A (en) 1996-12-09 1998-12-22 Oracle Corporation Index-only tables with nested group keys
EP0849723A3 (en) 1996-12-20 1998-12-30 ATR Interpreting Telecommunications Research Laboratories Speech recognition apparatus equipped with means for removing erroneous candidate of speech recognition
US6122613A (en) * 1997-01-30 2000-09-19 Dragon Systems, Inc. Speech recognition using multiple recognizers (selectively) applied to the same input sample
WO1998047084A1 (en) 1997-04-17 1998-10-22 Sharp Kabushiki Kaisha A method and system for object-based video description and linking
WO1999005681A1 (de) * 1997-07-23 1999-02-04 Siemens Aktiengesellschaft Verfahren zum abspeichern von suchmerkmalen einer bildsequenz und zugriff auf eine bildfolge in der bildsequenz
US6006182A (en) * 1997-09-22 1999-12-21 Northern Telecom Limited Speech recognition rejection method using generalized additive models
EP1018109B1 (en) 1997-09-24 2003-03-05 Lernout & Hauspie Speech Products N.V. Apparatus and method for distinguishing similar-sounding utterances in speech recognition
US6026398A (en) 1997-10-16 2000-02-15 Imarket, Incorporated System and methods for searching and matching databases
US6061679A (en) 1997-11-25 2000-05-09 International Business Machines Corporation Creating and searching a data structure ordered by ranges of key masks associated with the data structure
US5983177A (en) 1997-12-18 1999-11-09 Nortel Networks Corporation Method and apparatus for obtaining transcriptions from multiple training utterances
US6289140B1 (en) 1998-02-19 2001-09-11 Hewlett-Packard Company Voice control input for portable capture devices
US6182039B1 (en) 1998-03-24 2001-01-30 Matsushita Electric Industrial Co., Ltd. Method and apparatus using probabilistic language model based on confusable sets for speech recognition
US6243680B1 (en) 1998-06-15 2001-06-05 Nortel Networks Limited Method and apparatus for obtaining a transcription of phrases through text and spoken utterances
US6321226B1 (en) 1998-06-30 2001-11-20 Microsoft Corporation Flexible keyboard searching
US6192337B1 (en) 1998-08-14 2001-02-20 International Business Machines Corporation Apparatus and methods for rejecting confusible words during training associated with a speech recognition system
US6490563B2 (en) 1998-08-17 2002-12-03 Microsoft Corporation Proofreading with text to speech feedback
DE19842404A1 (de) 1998-09-16 2000-03-23 Philips Corp Intellectual Pty Verfahren zur Schätzung von Auftrittswahrscheinlichkeiten für Sprachvokabularelemente
FR2786600B1 (fr) * 1998-11-16 2001-04-20 France Telecom Procede de recherche par le contenu de documents textuels utilisant la reconnaissance vocale
WO2000031723A1 (en) 1998-11-25 2000-06-02 Sony Electronics, Inc. Method and apparatus for very large vocabulary isolated word recognition in a parameter sharing speech recognition system
US6243676B1 (en) * 1998-12-23 2001-06-05 Openwave Systems Inc. Searching and retrieving multimedia information
EP1159688A2 (en) 1999-03-05 2001-12-05 Canon Kabushiki Kaisha Database annotation and retrieval
US6463413B1 (en) 1999-04-20 2002-10-08 Matsushita Electrical Industrial Co., Ltd. Speech recognition training for small hardware devices
GB2349260B (en) 1999-04-23 2003-05-28 Canon Kk Training apparatus and method
US6662180B1 (en) 1999-05-12 2003-12-09 Matsushita Electric Industrial Co., Ltd. Method for searching in large databases of automatically recognized text
US6535849B1 (en) * 2000-01-18 2003-03-18 Scansoft, Inc. Method and system for generating semi-literal transcripts for speech recognition systems
US6567816B1 (en) 2000-03-07 2003-05-20 Paramesh Sampatrai Desai Method, system, and program for extracting data from database records using dynamic code
US6535850B1 (en) 2000-03-09 2003-03-18 Conexant Systems, Inc. Smart training and smart scoring in SD speech recognition system with user defined vocabulary
GB0011798D0 (en) 2000-05-16 2000-07-05 Canon Kk Database annotation and retrieval
GB0023930D0 (en) 2000-09-29 2000-11-15 Canon Kk Database annotation and retrieval

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0597798A1 (en) * 1992-11-13 1994-05-18 International Business Machines Corporation Method and system for utilizing audible search patterns within a multimedia presentation
EP0649144A1 (en) * 1993-10-18 1995-04-19 International Business Machines Corporation Automatic indexing of audio using speech recognition
CN1136356A (zh) * 1993-11-29 1996-11-20 迈克尔·T·罗西德斯 用于文本检索的输入系统

Also Published As

Publication number Publication date
US20070150275A1 (en) 2007-06-28
JP2003513383A (ja) 2003-04-08
DE60036486T2 (de) 2008-06-12
EP1228452B1 (en) 2007-09-19
US7295980B2 (en) 2007-11-13
JP3689670B2 (ja) 2005-08-31
DE60036486D1 (de) 2007-10-31
CN1409842A (zh) 2003-04-09
EP1228452A2 (en) 2002-08-07
WO2001031627A2 (en) 2001-05-03
WO2001031627A3 (en) 2002-05-23
US7212968B1 (en) 2007-05-01

Similar Documents

Publication Publication Date Title
CN1329861C (zh) 模式匹配方法和装置
US7054812B2 (en) Database annotation and retrieval
US7310600B1 (en) Language recognition using a similarity measure
US6882970B1 (en) Language recognition using sequence frequency
US6873993B2 (en) Indexing method and apparatus
US7590605B2 (en) Lattice matching
US9396186B2 (en) Customizable and low-latency interactive computer-aided translation
CN1343337B (zh) 用于产生包括音素数据和解码的字的注释数据的方法和设备
US5832428A (en) Search engine for phrase recognition based on prefix/body/suffix architecture
CN101183281B (zh) 一种输入法中候选词的相关词输入的方法及系统
JP2020518861A (ja) 音声認識方法、装置、デバイス、及び記憶媒体
CN101981566A (zh) 语言内统计机器翻译
KR20030072327A (ko) 데이터베이스 주석 처리 및 검색
CN107408107A (zh) 文本预测整合
CN111666764B (zh) 一种基于XLNet的自动摘要方法与装置
CN116662502A (zh) 基于检索增强的金融问答文本生成方法、设备及存储介质
GB2355837A (en) Pattern matching
GB2355836A (en) Pattern matching
GB2355835A (en) Pattern matching
KR20020052196A (ko) 패턴 매칭 방법 및 장치
Chien et al. A spoken‐access approach for chinese text and speech information retrieval
Seide et al. Word-lattice based spoken-document indexing with standard text indexers
CN116956859A (zh) 文本改写方法、语音交互方法、装置及电子设备
CN117827886A (zh) 一种基于大语言模型的自然语句转sql语句的方法
CN117056480A (zh) 知识问答方法、系统及计算机可存储介质

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070801

Termination date: 20151025

EXPY Termination of patent right or utility model