使用模糊模式搜索的拼写的制作方法

文档序号:2825658阅读:205来源:国知局
使用模糊模式搜索的拼写的制作方法
【专利摘要】提供了被配置成接收拼写字符序列形式的用户输入的多媒体系统。在一个实现中,启动拼写模式,并且用户拼写字符序列。多媒体系统执行拼写识别,并识别出具有由于任何用户和/或系统差错而产生的可能歧义的字符表示序列。具有可能歧义的字符表示序列产生多个搜索键。多媒体系统通过基于该多个搜索键对来自目标项的有限数据集的每一个目标项进行打分来执行模糊模式搜索。对一个或多个相关项进行排名并将其呈现给用户以供选择,每一个相关项都是超过相关性阈值的目标项。用户从一个或多个相关项中选择所意指的字符序列。
【专利说明】使用模糊模式搜索的拼写
[0001]背景
[0002]许多现代多媒体环境具有有限的用户输入源和显示模态。例如,许多游戏控制台不包括用于容易地输入数据的键盘或其它设备。此外,在现代多媒体环境中具有有限的用户输入源和用户接口向寻求在数据条目的较大有限集合中进行搜索并从中进行选择的用户提出了挑战。
[0003]语音识别使用户能够与多媒体环境对接。然而,在多媒体环境中存在有其中通过常规语音识别技术来输入的数据产生差错的越来越多的上下文。例如,存在其中用户未正确地发出单词的发音或者用户不确定如何发出字符序列的发音的许多上下文。在这类上下文中,用户拼写字符序列可以是有效的。然而,对于多媒体环境和其它语音识别接口而言,正确地识别出拼写出的字符序列是一个挑战。常规的语音识别接口(例如使用无上下文语法)无法有效地适应任何用户差错。此外,许多字符发音相似(例如,包括B、C、D、E、G、P、T、V和Z的E集合字母),从而使得语音识别接口产生误识别差错。因此,多媒体环境缺乏使用户能够输入拼写字符序列以便从大型固定数据库中检索数据的有效用户接口。
[0004]概述
[0005]此处描述且要求保护的实现通过提供一种多媒体系统来解决上述问题,该多媒体系统被配置成接收拼写字符序列形式的用户输入,该拼写字符序列可以是口述的或手写的。在一个实现中,在多媒体系统中启动拼写模式,并且用户拼写字符序列。拼写出的字符序列可能包含用户差错和/或系统差错。用户差错包括但不限于误拼写、省略字符、添加字符或误发音,而系统差错包括但不限于语音或手写识别差错。多媒体系统执行拼写识别,并识别出具有由于任何用户和/或系统差错而产生的可能歧义的字符表示序列。具有可能歧义的字符表示序列产生多个搜索键。多媒体系统通过基于该多个搜索键对来自目标项的有限数据集的一个或多个目标项进行打分来执行模糊模式搜索。对一个或多个相关项进行排名并将其呈现给用户以供选择,每一个相关项都是超过相关性阈值的目标项。用户从一个或多个相关项中选择拼写字符序列。
[0006]在一些实现中,作为计算机程序产品提供了制品。计算机程序产品的一个实现提供了可由计算机系统读取的并且对处理器可执行程序进行编码的有形计算机程序存储介质。此处还描述和列举了其他实现。
[0007]提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的选择的概念。本概述并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。
[0008]附图简述
[0009]图1示出了使用语音搜索的多媒体环境的示例实现。
[0010]图2示出了使用模糊模式搜索的听写系统的示例实现。
[0011]图3示出了使用模糊模式搜索的拼写系统的示例实现。
[0012]图4示出了六个示例列举数据库源的示例实现。
[0013]图5示出了使用模糊模式搜索的拼写的示例操作。[0014]图6示出了可在拼写识别、搜索和分析系统中使用的捕捉设备的示例实现。
[0015]图7示出可用于解释拼写识别、搜索和分析系统中的一个或多个字符序列的计算环境的示例实现。
[0016]图8示出了可以对实现此处所描述的技术有用的示例系统。
[0017]详细描述
[0018]图1示出了使用语音搜索的多媒体环境100的示例实现。多媒体环境100依靠用户接口 104从多媒体系统102延伸出,该用户接口可包括图形显示器、触敏显示器、扫描仪、话筒和/或音频系统。多媒体系统102可以是但不限于游戏控制台、移动电话、导航系统、计算机系统、机顶盒、汽车控制系统或能够响应于来自用户106的口头、手写或其它输入来检索数据的任何其它设备。
[0019]为了捕捉用户106的语音,用户接口 104和/或多媒体系统102包括话筒或话筒阵列,该话筒或话筒阵列使用户106能够提供包括单词、音素或音素片段的一个或多个字符序列形式的口头输入。另外,用户接口 104和/或多媒体系统102可被配置成接收手写作为来自用户106的一种形式的输入。例如,用户106可使用指示笔来在用户接口 104的触敏显示器上书写字符序列,可采用扫描仪来输入具有手写字符序列的文档,或者可利用相机来捕捉手写字符序列的图像。此外,多媒体系统102可采用经由用户接口 104来显示的虚拟键盘,这使用户106能够使用例如控制器来输入一个或多个字符序列。字符序列可包括但不限于字母数字字符(例如,字母A到Z以及数字O到9)、标点字符、控制字符(例如,换行字符)、数学字符、字符子序列(例如,单词和术语)以及其它符号。在一个实现中,字符序列可对应于搜索项、单词或其它数据条目的拼写实例。
[0020]多媒体系统102被配置成例如通过执行如在图1中的虚线框中示出的示例操作108来识别、分析和响应来自用户106的口头或其它输入。在示例实现中,用户106通过说出单词“Cherry Creek”来向多媒体系统102提供口头输入。这些单词可以指玩家标签、电子邮件、联系人、社交网络、文本、搜索项、应用命令、位置、对象或其它数据条目。多媒体系统102接收到该口头输入并通过使用可利用声音模型的自动化语音识别(ASR)组件来将用户106的口头输入转换成查询形式(即文本)来执行语音识别。在一个实现中,针对一个或多个特定用户的语音特性来定制ASR组件。
[0021]ASR组件可使用例如准许用户输入形式方面的灵活性的统计语言模型(SLM),诸如η元模型。例如,用户106可能未正确地发出单词或字符序列的发音。另外,用户106可能省略一个或多个字符或单词。在一个实现中,SLM基于包含固定数据集的列举数据库来训练,该固定数据集包括但不限于词典、社交网络信息、文本消息、游戏信息(例如玩家标签)、应用信息、电子邮件和联系人列表。词典可包括常见误拼写的字符序列、用户添加的字符序列、常用字符序列或首字母缩写(例如,0MG、L0L、BTW、TTYL等)或其它单词或字符序列。此夕卜,列举数据库可包括定位数据,包括但不限于对应于不同区域、国家或语言的信息。
[0022]ASR组件返回一个或多个经解码的语音识别假设,每一个语音识别假设都包括字符表示序列,该字符表示序列是ASR组件将其识别为用户输入的字符或单词。语音识别假设可以是例如对所输入的字符序列或单词的η个最佳概率识别的集合。可通过根据与η个最佳概率识别中的每一个相关联的概率或置信度的最小阈值来固定η,以限制该η个最佳概率识别。这些假设被用来从列举数据库中标识一个或多个可能匹配。[0023]在一个实现中,多媒体系统102从一个或多个可能匹配中选择一个或多个字符表示序列以便呈现给用户106。例如,多媒体系统102可选择具有最高置信度分数的可能匹配。在图1所示的示例实现中,多媒体系统102将用户106 口述的单词识别为“CherryQueen”。多媒体系统102经由用户接口 104向用户106呈现所选字符表示序列(例如,“Cherry Queen,,)。
[0024]可启动拼写模式来执行一遍纠正。在一个实现中,用户106通过命令来启动拼写模式,该命令包括但不限于说出命令(例如,说出“spell (拼写)”)、做出姿势、按压按钮以及选择误识别的字符表示序列(例如,“Queen”)。在另一实现中,用户106通过口头拼写出或手写出经纠正的字符序列(例如,“Creek”)来启动拼写模式。另外,用户106可通过经由虚拟键盘输入经纠正的字符序列来启动拼写模式。在又一实现中,多媒体系统102例如响应于来自用户106或内置处理器的一个或多个字符表示序列包含差错的反馈来提示用户106启动拼写模式。
[0025]在图1所示的示例实现中,用户106说出被多媒体系统102误识别为“Queen”的字符序列“C-R-E-E-K”形式的拼写输入。多媒体系统102接收到该拼写输入并执行语音识另O。在一个实现中,多媒体系统102标识提供拼写输入来进行纠正的字符表示序列(例如,提供拼写输入“C-R-E-E-K”来纠正字符表示序列“Queen”)。在另一实现中,用户106选择提供拼写输入来进行纠正的被误识别的单词。拼写出的字符序列可能包含用户差错和/或系统差错。用户差错包括但不限于误拼写、省略字符、添加字符或误发音,而系统差错包括但不限于语音或手写识别差错。例如,用户106可能省略字符、误拼写字符序列和/或多媒体系统102可能误识别拼写输入中的字符。此外’音素混淆的字母丨例如^^^^^^和C)可被合并到减小的字符集中以提高总体语音识别准确性。
[0026]语音识别产生一个或多个经解码的语音拼写识别假设,这些假设是被识别为用户输入的字符。语音识别假 设可以是例如对拼写输入字符序列的η个最佳概率识别的集合。可通过根据与η个最佳概率识别中的每一个相关联的概率或置信度的最小阈值来固定η,来限制该η个最佳概率识别。这些假设被用来从列举数据库中标识一个或多个可能匹配。从这些可能匹配中识别出拼写输入字符表示序列。拼写字符表示序列可具有可能的歧义。歧义可基于用户和/或系统差错,包括但不限于常见的误拼写字符序列、字符发音相似性、字符替换、字符省略、字符添加、替代的可能拼写。在图1所示的示例实现中,多媒体系统102将拼写字符表示序列识别为具有歧义的“R-E-E-K”。拼写字符表示序列中的歧义产生多个搜索键,每一个搜索键都包括字符序列。
[0027]为了解决可能的歧义,多媒体系统102执行模糊语音搜索以标识超过相关性阈值的一个或多个可能匹配。在一个实现中,模糊语音搜索是动态的,以使得模糊语音搜索在用户106说出每一个字符时实时完成。在另一实现中,模糊语音搜索在用户106说出拼写输入中的所有字符后开始。
[0028]模拟语音搜索将多个搜索键与基于列举数据库来填充的搜索表中所包含的目标项的有限数据集进行比较。列举数据库的数据包括但不限于词典、社交网络信息、文本消息、诸如玩家标签等游戏信息、应用信息、电子邮件和联系人列表。此外,列举数据库可包括定位数据,包括但不限于对应于不同区域、国家或语言的信息。每一个目标项都包括字符序列。在一个实现中,每一个目标项还包括字符子序列的集合。字符子序列的集合包括具有多个相邻字符的子序列,包括二元字符和三元字符。每一个字符子序列开始于目标项的不同字符位置。
[0029]从拼写字符表示序列中生成多个搜索键。可能的字符序列可包括多个相邻字符,包括二元字符和三元字符。模糊语音搜索还可从多个搜索键中移除一个或多个字符。在一个实现中,从多个搜索键中移除诸如标点字符或单词边界等非字母数字字符。在一个实现中,音素混淆的字符(例如,B、P、V、D、E、T和C)可被合并到减小的搜索字符集中以考虑可能的语音误识别。减小的搜索字符集准许语音识别在不分离音素混淆的字符组的情况下执行。在一个实现中,来自减小的搜索字符集的字符被来自该集合的另一字符替换,并且放松对该字符的识别以便进一步包括该集合中的另一字符的发音。例如,一般而言,无法可靠地区分字母“B”和字母“V”。为了将混淆字符合并到减小的搜索字符集中,用“B”来替换“V”,并且放松“V”的预期发音以便也包括“V”的发音。因此,可基于音素相似性来生成多个搜索键,音素相似性表示与说出的字符相关联的声音单元的相似性。或者,在手写实现中,图形混淆的字母可被合并到减小的搜索字符集中以考虑可能的图案误识别。可基于字符或字形相似性来生成多个搜索键,字符或字形相似性表示与书写的字符相关联的外观的相似性。
[0030]多媒体系统通过基于该多个搜索键为每一个目标项打分来执行模糊语音搜索。在一个实现中,每一个目标项是基于该目标项是否匹配多个搜索键中的至少一个来打分。目标项根据增加的相关性来打分和排名,该相关性与每一个目标项与拼写字符表示序列的相似性相关。例如,在固定长度的搜索键出现在目标项中的任何位置范围内或者固定长度的搜索键开始于与目标项相同的初始字符位置的情况下,目标项的相关性值更高。另外,利用可特定于用户106的上下文信息来对目标项进行打分和排名。
[0031]另外,可采用排名算法来基于搜索键在搜索表中的普遍性进一步对目标项进行打分和排名。例如,可使用术语频率一逆文档频率(TF-1DF)排名算法,该算法基于搜索键出现在目标项中的频率来增加目标项的分数,并基于搜索键出现在搜索表数据库中的所有目标项中的频率来减少分数。
[0032]基于目标项的分数,标识满足相关性阈值的一个或多个相关项。在一个实现中,标识一个相关项并将其呈现给用户106。在另一实现中,标识两个或更多相关项并经由用户接口 104将这些相关项呈现给用户106以供选择。相关项可根据每一个相关项的分数来被呈现在用户接口 104上。用户106可以例如通过用户命令来从所呈现的相关项中选择所意指的字符序列,该用户命令包括但不限于说出命令、做出姿势、按压按钮、书写命令和使用选择器工具。
[0033]在图1所示的示例实现中,生成针对拼写字符表示序列“R-E-E-K”的多个搜索键并将其与目标项进行比较。基于目标项的分数,将“Creek”标识为相关项。在一个实现中,多媒体系统102将“Creek”标识为对于“Queen”的替换字符序列并将“Cherry Creek”呈现给用户106。在另一实现中,多媒体系统102将“Creek”标识为对于“Queen”的可能替换字符序列并经由用户接口 104在可能的替换字符序列集中呈现“Cherry Creek”。用户106可以从可能的替换字符序列集中选择“Cherry Creek”。
[0034]图2示出了使用模糊模式搜索的听写系统200的示例实现。听写系统200包括听写引擎204,该听写引擎接收用户输入202。用户输入202可以是包括单词、音素或音素片段的一个或多个字符序列形式的口头输入。另外,用户输入202可以是手写形式的字符序列。此外,用户输入202可以是经由虚拟键盘输入的字符序列。字符序列可包括但不限于字母数字字符(例如,字母A到Z以及数字O到9 )、标点字符、控制字符(例如,换行字符)、数学字符、字符子序列(例如,单词和术语)以及其它符号。在一个实现中,字符序列可对应于搜索项、单词或其它数据条目的拼写实例。在图2所示的示例实现中,用户输入202是单词"Cherry Creek”。这些单词可以指玩家标签、电子邮件、联系人、社交网络、文本、搜索项、应用命令、位置、对象或其它数据条目。
[0035]听写引擎204接收到用户输入202并通过使用例如自动化语音识别(ASR)组件或手写转换组件来将用户输入202转换成查询形式(即文本)来执行模式识别。在一个实现中,针对一个或多个特定用户的语音或手写特性来定制听写引擎204。
[0036]听写引擎204可使用例如准许用户输入形式方面的灵活性的统计语言模型(SLM),诸如η元模型。例如,用户可能未正确地发出单词或字符序列的发音。另外,用户可能省略一个或多个字符或单词。在一个实现中,SLM基于包含固定数据集的列举数据库来训练,该固定数据集包括但不限于词典、社交网络信息、文本消息、游戏信息(例如玩家标签)、应用信息、电子邮件和联系人列表。词典可包括常见误拼写的字符序列、用户添加的字符序列、常用字符序列或首字母缩写(例如,0MG、L0L、BTW、TTYL等)或其它单词或字符序列。此夕卜,列举数据库可包括定位数据,包括但不限于对应于不同区域、国家或语言的信息。
[0037]听写引擎204返回一个或多个经解码的语音识别假设,每一个语音识别假设都包括字符表示序列,该字符表示序列是听写引擎204将其识别为用户输入的字符或单词。语音识别假设可以是例如对所输入的字符序列或单词的η个最佳概率识别的集合。可通过根据与η个最佳概率识别中的每一个相关联的概率或置信度的最小阈值来固定η,以限制该η个最佳概率识别。这些假设被用来从列举数据库中标识一个或多个可能匹配。在图2所示的示例实现中,听写引擎204返回对用户输入202的第一字符序列(S卩“Cherry”)的四个假设以及对用户输入202的第二字符序列(即“Creek”)的六个假设。
[0038]在一个实现中,听写引擎204从一个或多个可能匹配中选择一个或多个字符表示序列并输出听写结果206。例如,听写引擎204可选择具有最高置信度分数的可能匹配。在图2所示的示例实现中,听写引擎204输出“Cherry Queen”作为听写结果206。
[0039]在一个实现中,多媒体系统经由用户接口向用户呈现听写结果206。可执行一遍纠正以解决听写结果206中的任何用户和/或系统差错。用户差错包括但不限于误拼写、省略字符、添加字符或误发音,而系统差错包括但不限于听写引擎204的语音或手写识别差错。在该遍纠正期间,用户提供用户输入208。在一个实现中,用户重新说出、重写或重新键入被误识别的字符序列作为用户输入208(例如“Creek”)。在另一实现中,用户拼写出被误识别的字符序列作为用户输入208 (例如,“C-R-E-E-K”)。在又一实现中,多媒体系统向用户呈现一个或多个字符表示序列以供选择,并且用户选择所意指的字符序列作为用户输入208。例如,在图2所示的示例实现中,用户提供被误识别的单词“Creek”作为用户输入208。基于用户输入208,多媒体系统呈现选择结果210。在该示例实现中,选择结果210呈现匹配用户输入202所提供的单词的单词“Cherry Creek”。
[0040]图3示出了使用模糊模式搜索的拼写系统300的示例实现。拼写系统300包括拼写模型引擎304,该拼写模型引擎接收用户输入302。用户输入302可以是包括单词、音素或音素片段的一个或多个字符序列形式的口头输入。另外,用户输入302可以是手写形式的字符序列。此外,用户输入302可以是经由虚拟键盘输入的字符序列。字符序列可包括但不限于字母数字字符(例如,字母A到Z以及数字O到9)、标点字符、控制字符(例如,换行字符)、数学字符、字符子序列(例如,单词和术语)以及其它符号。在一个实现中,字符序列可对应于搜索项、单词或其它数据条目的拼写实例。在图3所示的示例实现中,用户输入302是拼写字符序列“C-R-E-E-K”。该字符序列可以指玩家标签、电子邮件、联系人、社交网络、文本、搜索项、应用命令、位置、对象或其它数据条目。
[0041]拼写模型引擎304接收到用户输入302并通过使用自动化语音识别(ASR)组件或手写转换组件来将用户输入302转换成查询形式(即文本)来执行模式识别。在一个实现中,针对一个或多个特定用户的语音或手写特性来定制拼写模型引擎304。
[0042]用户输入302可能包含用户差错和/或系统差错。用户差错包括但不限于误拼写、省略字符、添加字符或误发音,而系统差错包括但不限于模式识别(例如,语音或手写识别)差错。例如,用户输入302可包含省略或添加的字符、误拼写的字符序列和/或拼写模型引擎304可能误识别用户输入302中的字符。此外,音素混淆的字母(例如,B、P、V、D、E、T和C)可被合并到减小的字符集中以提高总体模式识别准确性。
[0043]拼写模型引擎304输出包括一个或多个经解码的拼写识别假设的模式识别结果306。模式识别结果306是被拼写模型引擎304识别为用户输入302的字符。模式识别假设可以是例如对用户输入302的η个最佳概率识别的集合。可通过根据与η个最佳概率识别中的每一个相关联的概率或置信度的最小阈值来固定η,以限制该η个最佳概率识别。这些假设被用来从列举数据库中标识一个或多个可能匹配。从可能匹配中识别出可具有可能歧义的拼写字符表示序列。歧义可基于差错,包括但不限于常见的误拼写字符序列、字符或字符序列发音相似性、字符替换、字符省略、字符添加以及替代的可能拼写。在图3所示的示例实现中,模式识别结果306包括具有歧义的拼写字符表示序列“R-E-E-K”。拼写字符表示序列中的歧义产生多个搜索键308,每一个搜索键308都包括字符序列。
[0044]为了解决可能歧义,将从模式识别结果306中生成的多个搜索键308输入到搜索引擎310中,该搜索引擎310执行模糊模式搜索以标识超过相关性阈值的一个或多个可能匹配。在一个实现中,搜索引擎310是动态的,以使得模糊模式搜索在用户提供用户输入302中的每一个字符时实时完成。在另一实现中,搜索引擎310在用户提供用户输入302中的所有字符之后开始模糊模式搜索。
[0045]搜索引擎310将多个搜索键308与基于列举数据库来填充的搜索表中所包含的目标项312的有限数据集进行比较。列举数据库的数据包括但不限于词典、社交网络信息、文本消息、诸如玩家标签等游戏信息、应用信息、电子邮件和联系人列表。此外,列举数据库可包括定位数据,包括但不限于对应于不同区域、国家或语言的信息。每一个目标项312都包括字符序列。在一个实现中,每一个目标项312包括字符子序列的集合。字符子序列的集合包括具有多个相邻字符的子序列,包括二元字符和三元字符。每一个字符子序列开始于目标项的不同字符位置。
[0046]从模式识别结果306中生成多个搜索键308。多个搜索键308可包括多个相邻字符,包括二元字符和三元字符。搜索引擎310还可从多个搜索键308中移除一个或多个字符。在一个实现中,从多个搜索键308中移除诸如标点字符或单词边界等非字母数字字符。在一个实现中,音素混淆的字符(例如,B、P、V、D、E、T和C)可被合并到减小的搜索字符集中以考虑可能的模式误识别。减小的搜索字符集准许模式识别在不分离音素或图形混淆的字符组的情况下执行。在一个实现中,来自减小的搜索字符集的字符被来自该集合的另一字符替换,并且放松对该字符的识别以便进一步包括该集合中的另一字符。例如,一般而言,无法可靠地区分字母“B”和字母“V”。为了将混淆字符合并到减小的搜索字符集中,用“B”来替换“V”,并且放松“V”的预期发音以便也包括“V”的发音。因此,可基于音素相似性来生成多个搜索键,音素相似性表示与说出的字符相关联的声音单元的相似性。或者,在手写实现中,图形混淆的字母可被合并到减小的搜索字符集中以考虑可能的图案误识别。可基于字符或字形来生成多个搜索键,字符或字形相似性表示与书写的字符相关联的外观的相似性。
[0047]搜索引擎310通过基于多个搜索键308对每一个目标项312进行打分来执行模糊模式搜索。在一个实现中,每一个目标项312基于该目标项是否匹配多个搜索键308中的至少一个来打分。目标项312根据增加的相关性来打分和排名,该相关性与每一个目标项312与模式识别结果306中的拼写字符表示序列的相似性相关。例如,在固定长度的搜索键308出现在搜索字符序列312中的任何位置范围内或者固定长度的搜索键308开始于与目标项312相同的初始字符位置的情况下,目标项312的相关性值更高。另外,利用可特定于用户的上下文信息来对目标项312进行打分和排名。
[0048]另外,可采用排名算法来基于搜索键308在目标项312的搜索表数据集中的普遍性进一步对目标项312进行打分和排名。例如,可使用术语频率一逆文档频率(TF-1DF)排名算法,该算法基于搜索键308出现在目标项312中的频率来增加目标项312的分数,并基于搜索键308出现在搜索表数据集中的所有目标项312中的频率来减少分数。
[0049]搜索引擎310输出包括目标项312和对应分数的经打分的搜索结果314。基于经打分的搜索结果314中的目标项312的分数,在相关性结果316中标识满足相关性阈值的一个或多个相关项。在一个实现中,标识一个相关项并将其呈现给用户。在另一实现中,标识两个或更多相关性并将其呈现给用户以供选择。用户可以例如通过用户命令来从所呈现的相关项中选择所意指的字符序列,该用户命令包括但不限于口头命令、姿势、按压按钮和使用选择器工具。在图3所示的示例实现中,将在相关性结果316中的“Creek”标识为相关项。
[0050]图4示出了六个示例列举数据库源的示例实现。在一个实现中,列举数据库402包括从社交网络404、游戏信息406、文本消息408、联系人列表410、电子邮件412和词典414输入的信息。然而,构想诸如应用信息和因特网等其它源。此外,列举数据库402可包括定位数据,包括但不限于对应于不同区域、国家或语言的信息。定位数据可被结合到列举数据库402源中的一个或多个中。在一个实现中,针对一个或多个特定用户定制列举数据库402。例如,来自社交网络404、游戏信息406、文本消息408、联系人列表410和电子邮件412的数据全都可包含一个或多个特定用户的个人信息。因此,列举数据库402中的字符序列是针对一个或多个特定用户定制的。在另一实现中,列举数据库402随着列举数据库402源中的一个或多个中的数据改变而动态更新。
[0051]列举数据库402被用来训练用于语音识别操作的统计语言模型(SLM)并且用目标项和对应的上下文信息来填充搜索表。目标项可包括但不限于字母数字字符(例如,字母A到Z以及数字O到9)、标点字符、控制字符(例如,换行字符)、数学字符、字符子序列(例如,单词和术语)以及其它符号。在一个实现中,目标项可对应于搜索项、单词或其它数据条目的拼写实例。在另一实现中,目标项基于针对特定用户定制的信息。
[0052]每一个目标项都包括字符序列集。在一个实现中,字符序列集包括具有多个相邻字符的子序列,包括二元字符和三元字符。每一个字符子序列开始于字符序列的不同字符位置。每一个目标项根据字符序列集和对应的上下文信息来索引。
[0053]图5示出了使用模糊模式搜索的拼写的示例操作500。在一个实现中,操作500由软件执行。然而,构想其它实现。 [0054]在接收操作502期间,多媒体系统接收拼写查询。在一个实现中,用户经由用户接口向多媒体系统提供输入。用户输入可以是包括单词、音素或音素片段的一个或多个字符序列形式的口头输入。另外,用户输入可以是手写形式的字符序列。此外,用户输入可以是经由虚拟键盘输入的字符序列。字符序列可包括但不限于字母数字字符(例如,字母A到Z以及数字O到9)、标点字符、控制字符(例如,换行字符)、数学字符、字符子序列(例如,单词和术语)以及其它符号。在一个实现中,字符序列可对应于搜索项、单词或其它数据条目的拼与实例。
[0055]在接收操作502期间,多媒体系统接收到用户输入,并使用例如自动化语音识别(ASR)组件或手写转换组件来将该用户输入转换成拼写查询(即文本)。拼写查询可能包含用户差错和/或系统差错。用户差错包括但不限于误拼写、省略字符、添加字符或误发音,而系统差错包括但不限于语音或手写识别差错。
[0056]识别操作504执行对在接收操作502期间接收到的拼写查询的模式识别。识别操作504返回一个或多个经解码的拼写识别假设,该一个或多个经解码的拼写识别假设是被多媒体系统识别为用户输入的拼写输入字符序列的字符。拼写识别假设可以是例如对拼写输入字符序列的η个最佳概率识别的集合。可通过根据与η个最佳概率识别中的每一个相关联的概率或置信度的最小阈值来固定η,以限制该η个最佳概率识别。这些假设被用来从列举数据库中标识一个或多个可能匹配。从这些可能匹配中识别出拼写字符表示序列。拼写字符表示序列可具有可能的歧义。歧义可基于用户和/或系统差错,包括但不限于常见的误拼写字符序列、字符发音相似性、字符替换、字符省略、字符添加、替代的可能拼写。拼写字符表示序列中的歧义产生多个搜索键,每一个搜索键都包括字符序列。
[0057]搜索操作506将多个搜索键与基于列举数据库来填充的搜索表中所包含的目标项的有限数据集进行比较。列举数据库的数据包括但不限于词典、社交网络信息、文本消息、诸如玩家标签等游戏信息、应用信息、电子邮件和联系人列表。此外,列举数据库可包括定位数据,包括但不限于对应于不同区域、国家或语言的信息。每一个目标项都包括字符序列。在一个实现中,每一个目标项包括字符子序列的集合。字符子序列的集合包括具有多个相邻字符的子序列,包括二元字符和三元字符。每一个字符子序列开始于目标项的不同字符位置。
[0058]从识别操作504的结果中生成多个搜索键。搜索键可包括多个相邻字符,包括二元字符和三元字符。可以从多个搜索键中移除一个或多个字符。在一个实现中,从多个搜索键中移除诸如标点字符或单词边界等非字母数字字符。此外,在一个实现中,音素混淆的字母丨例如^^^^^^和C)可被合并到减小的搜索字符集中以考虑搜索操作506期间的可能的模式误识别。减小的搜索字符集准许模式识别在不分离音素或图形混淆的字符组的情况下执行。在一个实现中,来自减小的搜索字符集的字符被来自该集合的另一字符替换,并且放松对该字符的识别以便进一步包括该集合中的另一字符。例如,一般而言,无法可靠地区分字母“B”和字母“V”。为了将混淆字符合并到减小的搜索字符集中,用“B”来替换“V”,并且放松“V”的预期发音以便也包括“V”的发音。因此,可基于音素相似性来生成多个搜索键。
[0059]打分操作508基于多个搜索键来对每一个目标项进行打分和排名。在一个实现中,每一个目标项基于该目标项是否匹配多个搜索键中的至少一个来打分。打分操作508根据增加的相关性来进行打分和排名,该相关性与每一个目标项与拼写字符表示序列的相似性相关。因此,打分操作508可利用可特定于用户的上下文信息来对目标项进行排名。在一个实现中,搜索操作506和打分操作508是同时执行的,以使得在将多个搜索键与每一个目标项进行比较时对目标项进行打分和排名。
[0060]基于目标项的分数,在检索操作510中检索超过相关性阈值的一个或多个相关项。在一个实现中,在呈现操作512期间,经由用户界面向用户呈现一个相关项。在另一实现中,呈现操作512向用户呈现两个或更多相关项以供选择。用户可以例如通过用户命令来从所呈现的相关项中选择所意指的字符序列,该用户命令包括但不限于口头命令、姿势、按压按钮和使用选择器工具。
[0061]在一个实现中,操作500是动态的,以使得操作500在用户在接收操作502期间提供每一个字符时实时完成,并且操作500对每一个字符迭代。在另一实现中,操作500在用户在接收操作502期间提供用户输入中的所有字符之后开始。
[0062]图6示出了可在拼写识别、搜索和分析系统610中使用的捕捉设备618的示例实现。根据一个示例实现,捕捉设备618被配置成捕捉具有包括一个或多个口述单词或字符序列的语言信息的声音。根据另一示例实现,捕捉设备618被配置成捕捉具有包括一个或多个手写单词或字符序列的语言信息的手写样本。
[0063]捕捉设备618可包括话筒630,该话筒包括可以接收声音并将其转换成电信号的换能器或传感器。话筒630被用来减少语言识别、搜索和分析系统610中的捕捉设备618和计算环境612之间的反馈。话筒630被用来接收用户提供以控制诸如游戏场合、非游戏应用等应用或者输入可以在计算环境612中执行的数据的音频信号。
[0064]在一个实现中,捕捉设备618可以在操作上与触敏显示器、扫描仪或其它设备通信以经由手写输入组件620来捕捉手写输入(未示出)。触摸输入组件620被用来接收用户提供的手写输入并将该手写输入转换成电信号以控制应用或输入可以在计算环境612中执行的数据。在另一实现中,捕捉设备618可采用图像相机组件622来捕捉手写样本。
[0065]捕捉设备618还可被配置成经由任何合适的技术(包括例如飞行时间、结构化光、立体图像等)来捕捉带有包括深度图像的深度信息的视频,该深度图像可包括深度值。根据一个实现,捕捉设备618可将计算出的深度信息组织为“Z层”或垂直于从深度相机沿其视线延伸的Z轴的层,但可采用其它实现。
[0066]根据一个示例实现,图像相机组件622包括捕捉场景的深度图像的深度相机。示例深度图像包括捕捉到的场景的二维(2-D)像素区域,其中2-D像素区域中的每一个像素都可以表示捕捉到的场景中的对象离相机的距离。根据另一示例实现,捕捉设备618包括两个或更多物理上分开的相机,这些相机可从不同角度查看场景以获取视觉立体数据,该视觉立体数据可被解析以生成深度信息。
[0067]图像相机组件622包括IR光组件624、三维(3-D)相机626和RGB相机628。例如,在飞行时间分析中,捕捉设备618的IR光组件624可将红外光发射到场景上,并且随后使用传感器(未不出),用例如3-D相机626和/或RGB相机628来检测从场景中的一个或多个目标和物体的表面反向散射的光。在一些实现中,可以使用脉冲红外光,以使得可以测量出射光脉冲与相应入射光脉冲之间的时间,并且将其用于确定从捕捉设备618到场景中的目标或物体上的特定位置的物理距离。另外,在其他示例实现中,可将出射光波的相位与入射光波的相位进行比较来确定相移。然后可以使用该相移来确定从捕捉设备618到场景中的目标或物体上的特定位置的物理距离。
[0068]根据另一示例实现,飞行时间分析可被用来通过经由包括例如快门式光脉冲成像在内的各种技术分析反射光束随时间的强度来直接确定从捕捉设备618到场景中的目标或物体上的特定位置的物理距离。
[0069]在另一示例实现中,捕捉设备618使用结构化光来捕捉深度信息。在此类分析中,图案化光(例如,被投影为诸如网格图案或条纹图案之类的已知图案的光河经由例如IR光组件624投影到场景上。在打到场景中的一个或多个目标或物体的表面上以后,作为响应,图案可以变为变形的。图案的这种变形然后由例如3-D相机626和/或RGB相机628来捕捉并被分析以确定从捕捉设备到场景中的目标或物体上的特定位置的物理距离。
[0070]在一示例实现中,捕捉设备618还包括在操作上与话筒630、触摸输入组件620、图像相机组件622通信的处理器632。处理器632可包括执行处理器可读指令的标准化处理器、专用处理器、微处理器等,处理器可读指令包括但不限于用于接收诸如单词或拼写查询等语言信息或者用于执行语音和/或手写识别的指令。处理器632还可执行用于姿势识别的处理器可读指令,包括但不限于用于接收深度图像、确定合适的目标是否可能被包括在该深度图像中或者用于将合适的目标转换成目标的骨架表示或模型的指令。然而,处理器632可包括任何其它合适的指令。
[0071]捕捉设备618还可包括存储供处理器632执行的指令、声音和/或一系列声音和手写数据的存储器组件634。存储器组件还可存储任何其它合适的信息,包括但不限于由3-D相机626或RGB相机628捕捉的图像和/或图像帧。根据一示例实现,存储器组件634可包括随机存取存储器(RAM)、只读存储器(ROM)、高速缓存存储器、闪存、硬盘、或任何其他合适的存储组件。在一个实现中,存储器组件634可以是与处理器632和话筒630、触摸输入组件620和/或图像捕捉组件622通信的单独组件。根据另一实现,存储器组件634可被集成到处理器632、话筒630、触摸输入组件620和/或图像捕捉组件622中。
[0072]捕捉设备618经由通信链接636来向计算环境612提供话筒630和/或触摸输入组件620捕捉到的语言信息、声音和手写输入。该计算环境使用语言信息和捕捉到的声音和/或手写输入来例如识别用户单词或字符序列,并且作为响应控制诸如游戏或文字处理程序等应用或者从数据库中检索搜索结果。计算环境612包括语言识别器引擎614。在一个实现中,语言识别器引擎614包括字符序列和对应的上下文信息的有限数据库。可将话筒630和/或触摸输入组件620捕捉到的语言信息与语言识别器引擎614中的字符序列的数据库进行比较,以标识用户何时口述和/或手写一个或多个单词或字符序列。这些单词或字符序列可与应用的各种应用的控制相关联。由此,计算环境612使用语言识别器引擎614来解释语言信息并基于该语言信息来控制应用。
[0073]因此,计算环境612还可包括姿势识别器引擎616。姿势识别器引擎616包括姿势过滤器集合,每一姿势过滤器包括关于骨架模型(在用户移动时)可执行的姿势的信息。可将由相机626、628和捕捉设备618捕捉的骨架模型以及与其相关联的移动形式的数据与姿势过滤器和姿势识别器引擎616进行比较,以标识用户(如骨架模型所表示的)何时执行了一个或多个姿势。因此,捕捉设备618通过通信链路636向计算环境612提供深度信息和由例如3-D相机626和/或RGB相机628捕捉到的图像以及由捕捉设备618生成的骨架模型。计算环境612然后使用骨架模型、深度信息和捕捉到的图像来例如识别用户姿势,并且作为响应控制应用或从呈现给用户的一个或多个相关项中选择所意指的字符序列。
[0074]图7示出可用于解释拼写识别、搜索和分析系统中的一个或多个字符序列的计算环境的示例实现。计算环境可被实现为多媒体控制台700。多媒体控制台700包括具有一级高速缓存702、二级高速缓存704和闪存ROM (只读存储器)706的中央处理单元(CPU)701。一级高速缓存702和二级高速缓存704临时存储数据,并且因此减少存储器访问周期的数量,由此改进处理速度和吞吐量。CPU701可被提供为具有一个以上的核,并且由此具有附加的一级高速缓存和二级高速缓存。闪速R0M706可存储在多媒体控制台700通电时在弓I导过程初始化阶段加载的可执行代码。
[0075]图形处理单元(GPU) 708和视频编码器/视频编解码器(编码器/解码器)714形成用于高速和高分辨率图形处理的视频处理流水线。经由总线从GPU708向视频编码器/视频编解码器714运送数据。视频处理流水线向A/V (音频/视频)端口 740输出数据,用于传输至电视机或其他显示器。存储器控制器710连接到GPU708以方便处理器访问各种类型的存储器712,诸如但不局限于RAM (随机存取存储器)。
[0076]多媒体控制台700包括在模块718中实现的I/O控制器720、系统管理控制器722、音频处理单元723、网络接口控制器724、第一 USB主控制器726、第二 USB控制器728和前面板I/O子部件730。USB控制器726和728用作外围控制器742和754、无线适配器748和外置存储器单元746 (例如闪存、外置⑶/DVD ROM驱动器、可移动存储介质等)的主机。网络接口控制器724和/或无线适配器748提供对网络(例如,因特网、家庭网络等)的访问并且可以是包括以太网卡、调制解调器、蓝牙模块、电缆调制解调器等各种不同的有线和无线适配器组件中任一种。
[0077]系统存储器743被配置成存储在引导过程期间加载的应用数据。在一示例实现中,拼写识别器引擎、搜索引擎以及其它引擎和服务可由存储在系统存储器743中的指令来体现并由CPU701来处理。搜索表数据库、捕捉到的语音和/或拼写、手写数据、拼写模型、拼写信息、模式识别结果(例如,语音识别结果和/或手写识别结果)、图像、姿势识别结果和其它数据可被存储在系统存储器743中。
[0078]应用数据可经由媒体驱动器744访问,以供多媒体控制台700执行、回放等。媒体驱动器744可包括CD/DVD驱动器、硬盘驱动器、或其他可移动媒体驱动器等,并且媒体驱动器744可以是对多媒体控制器700内置的或外置的。媒体驱动器744经由诸如串行ATA总线或其他高速连接(例如IEEE1394)等总线连接到I/O控制器720。
[0079]系统管理控制器722提供与确保多媒体控制台700的可用性相关的各种服务功能。音频处理单元723和音频编解码器732形成具有高保真度和立体声处理的相应音频处理流水线。音频数据经由通信链路在音频处理单元723与音频编解码器732之间传输。音频处理流水线将数据输出到A/V端口 740,以供外置音频播放器或具有音频能力的设备再现。
[0080]前面板I/O子部件730支持暴露在多媒体控制台700的外表面上的电源按钮750和弹出按钮752以及任何LED (发光二极管)或其它指示器的功能。系统供电模块736为多媒体控制台700的各个组件供电,而风扇738冷却多媒体控制台700内的电路。
[0081]多媒体控制台700内的CPU701、GPU708、存储器控制器710、以及各种其他组件经由一条或多条总线互连,该总线包括串行和并行总线、存储器总线、外围总线和/或使用各种总线架构中的任一种的处理器或局部总线。作为示例,这些总线架构可以包括但不限于外围部件互连(PCI)总线、PC1-Express总线等。
[0082]当多媒体控制台700通电时,应用数据可从系统存储器743加载到存储器712和/或高速缓存702、704中并在CPU701上执行。应用可在导航到多媒体控制台700上可用的不同媒体类型时呈现提供一致的用户界面的图形用户界面。在操作中,媒体驱动器744中所包含的应用和/或其他媒体可从媒体驱动器744启动和/或播放,以将附加功能提供给多媒体控制台700。
[0083]多媒体控制台700可通过简单地将该系统连接到电视机或其他显示器而作为独立系统来操作。在该独立模式中,多媒体控制台700允许一个或多个用户与该系统交互、看电影、或听音乐。然而,随着通过网络接口控制器724或无线适配器748可用的宽带连接的集成,多媒体控制台700还可作为较大网络社区中的参与者来操作。
[0084]当多媒体控制台700通电时,可以保留限定量的硬件资源以供多媒体控制台操作系统使用。这些资源可以包括存储器保留(例如,16MB)、CPU和GPU周期保留(例如,5% )、网络带宽保留(例如,8kbs)等。因为这些资源是在系统引导时保留的,所以所保留的资源无法供应用使用。存储器保留可以是足够大以包含启动内核、并发系统应用和驱动程序。CPU保留可以是恒定的,从而使得如果所保留的CPU用量不被系统应用返回,则空闲线程将消耗任何未使用的周期。
[0085]对于GPU保留,通过使用调度代码来将弹出窗口呈现为覆盖图的GPU中断来显示由系统应用程序生成的轻量消息(例如,弹出窗口)。覆盖所需的存储器量取决于覆盖区域大小,并且覆盖可随屏幕分辨率而缩放。在并发系统应用使用完整用户界面的情况下,分辨率可以独立于应用分辨率。定标器(scaler)可用于设置该分辨率,从而消除对改变频率并引起TV重新同步的需求。
[0086]在多媒体控制台700引导且系统资源被保留之后,执行并发系统应用来提供系统功能。系统功能被封装在上述所保留的系统资源内执行的一组系统应用中。操作系统内核标识出作为系统应用线程而非游戏应用线程的线程。系统应用可被调度为在预定时间并以预定时间间隔在CPU701上运行,来为应用提供一致的系统资源视图。调度最小化针对在多媒体控制台700上运行的游戏应用的高速缓存中断。
[0087]当并发系统应用需要音频时,由于时间敏感性而将音频处理异步地调度给游戏应用。多媒体控制台应用管理器(如下所描述的)在系统应用活动时控制游戏应用的音频级别(例如,静音、衰减)。
[0088]输入设备(例如,控制器742和754)由游戏应用和系统应用共享。在一实现中,输入设备不是所保留的资源,但却在系统应用和游戏应用之间切换以使其各自具有设备的焦点。应用管理器较佳地控制输入流的切换,且驱动程序维护关于焦点切换的状态信息。话筒、相机和其它捕捉设备可定义用于多媒体控制台700的附加输入设备。
[0089]图8示出了可以对实现所描述的技术有用的示例系统。图8的用于实现所述技术的示例硬件和操作环境包括游戏控制台、多媒体控制台或计算机20形式的一般用途计算设备之类的计算设备、移动电话、个人数据助理(PDA)、机顶盒或其他类型的计算设备。例如,在图8的实现中,计算机20包括处理单元21、系统存储器22,以及将包括系统存储器的各种系统组件连接到处理单元21的系统总线23。可以有只有一个或可以有一个以上的处理单元21,以便计算机20的处理器包括单一中央处理单元(CPU),或常常被称为并行处理环境的多个处理单元。计算机20可以是常规计算机、分布式计算机、或者任何其它类型的计算机,本发明不限于此。
[0090]系统总线23可以是若干类型的总线结构中的任何一种,包括使用各种总线体系结构中的任何一种的存储器总线或存储器控制器、外围总线,切换结构、点到点连接,以及局部总线。系统存储器也可以简称为存储器,并包括只读存储器(ROM) 24和随机存取存储器(RAM)25。基本输入/输出系统(BIOS)26通常存储在R0M24中,包含了诸如在启动过程中帮助在计算机20内的元件之间传输信息的基本例程。计算机20还包括用于对硬盘(未示出)进行读写的硬盘驱动器27、用于对可移动磁盘29进行读写的磁盘驱动器28、以及用于对可移动光盘31,如⑶-ROM、DVD或其它光介质进行读写的光盘驱动器30。
[0091]硬盘驱动器27、磁盘驱动器28,以及光盘驱动器30分别通过硬盘驱动器接口 32、磁盘驱动器接口 33,以及光盘驱动器接口 34连接到系统总线23。驱动器以及它们相关联的计算机可读介质为计算机20提供了计算机可读指令、数据结构、程序引擎,及其他数据的非易失存储器。本领域的技术人员应该理解,诸如磁带盒、闪存卡、数字视盘、随机访问存储器(RAM)、只读存储器(ROM)等等之类的可以存储可被计算机访问的数据的任何类型的计算机可读介质,也可以用于示例操作环境中。
[0092]可以有若干个程序引擎存储在硬盘、磁盘29、光盘31、R0M24,和/或RAM25上,包括操作系统35、一个或多个应用程序36、其他程序引擎37、以及程序数据38。用户可以通过诸如键盘40和定向设备42之类的输入设备向个人计算机20中输入命令和信息。其他输入设备(未示出)可包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些及其他输入设备常常通过耦合到系统总线的串行端口接口 46连接到处理单元21,但是,也可以通过其他接口,如并行端口、游戏端口、通用串行总线(USB )端口、来进行连接。监视器47或其他类型的显示设备也可以通过诸如视频适配器48之类的接口来连接到系统总线23。除了监视器之外,计算机还通常包括其他外围输出设备(未示出),如扬声器和打印机。
[0093]计算机20可以使用到一个或多个远程计算机(如远程计算机49)的逻辑连接,在联网环境中操作。这些逻辑连接由耦合至或者作为计算机20—部分的通信设备来实现;本发明不限于特定类型的通信设备。远程计算机49可以是另一计算机、服务器、路由器、网络PC、客户机、对等设备或其他公共网络节点,并通常包括上文参考计算机20所描述的许多或全部元件,虽然在图8中只示出了存储器存储设备50。图8中所描绘的逻辑连接包括局域网(LAN)51和广域网(WAN)52。这样的网络环境在办公室网络、企业范围的计算机网络、内部网和因特网(它们都是各种网络)中是普遍现象。[0094]当用于LAN网络环境中时,计算机20通过网络接口或适配器53 (这是一种通信设备)连接到局域网51。当用于WAN网络环境中时,计算机20通常包括调制解调器54、网络适配器(一种通信设备),或用于通过广域网52建立通信的任何其他类型的通信设备。或为内置或为外置的调制解调器54经由串行端口接口 46连接到系统总线23。在联网环境中,参考个人计算机20所描述的程序引擎,或其某些部分,可以存储在远程存储器存储设备中。可以理解,所示出的网络连接只是示例,也可以使用用于在计算机之间建立通信链路的其他装置和通信设备。
[0095]在一示例实现中,拼写识别器引擎、搜索引擎以及其它引擎和服务可由存储在存储器22和/或存储设备29或31中并由处理单元21处理的指令来具体化。搜索表数据库、捕捉到的语音和/或拼写、手写数据、拼写模型、拼写信息、模式识别结果(例如,拼写识别结果和/或手写识别结果)、图像、姿势识别结果和其它数据可被存储在存储器22和/或作为持久数据存储的存储设备29或31中。
[0096]在此所述的本发明的实施例可以实现为一个或多个计算机系统中的逻辑步骤。本发明的逻辑操作可被实现为:(I)在一个或多个计算机系统中执行的处理器实现的步骤的序列;以及(2) —个或多个计算机系统内的互连机器或电路引擎。该实现是取决于实现本发明的计算系统的性能要求的选择问题。因此,构成此处所描述的本发明的实施例的逻辑操作被不同地称为操作、步骤、对象或引擎。此外,还应该理解,逻辑操作也可以以任何顺序执行,除非明确地声明,或者由权利要求语言固有地要求特定的顺序。
[0097]上面的说明、示例和数据提供了对本发明的示例性实施例的结构和使用的完整的描述。因为可以在不背离本发明的精神和范围的情况下做出本发明的许多实施例,所以本发明落在所附权利要求的范围内。此外,不同实施例的结构特征可以与另一实施例相组合而不偏离所记载的权利要求书。
【权利要求】
1.一种方法,包括: 识别拼写字符表示序列,所述拼写字符表示序列具有产生多个搜索键的可能歧义;基于所述多个搜索键来对来自目标项的有限数据集的一个或多个目标项进行打分,每一个目标项包括字符序列;以及 从经打分的目标项中的标识一个或多个相关项,每一个相关项满足相关性阈值。
2.如权利要求1所述的方法,其特征在于,所述多个搜索键基于音素相似性来生成。
3.如权利要求1所述的方法,其特征在于,所述目标项基于针对特定用户定制的信息。
4.如权利要求1所述的方法,其特征在于,所述可能歧义基于用户差错。
5.如权利要求1所述的方法,其特征在于,所述多个搜索键中的至少一个中的一个或多个字符被合并到减小的搜索字符集中。
6.如权利要求1所述的方法,其特征在于,所述可能歧义基于系统差错。
7.如权利要求1所述的方法,其特征在于,所述拼写字符表示序列是从口述拼写序列中识别出的。
8.—种或多种存储计算机可执行指令的有形计算机可读存储介质,所述计算机可执行指令用于在计算系统上执行一种计算机过程,所述计算机过程包括: 识别拼写字符表示序列,所述拼写字符表示序列具有产生多个搜索键的可能歧义; 基于所述多个搜索键来对来自目标项的有限数据集的一个或多个目标项进行打分;以及 从经打分的目标项中标识一个或多个相关项,每一个相关项满足相关性阈值。
9.一种拼写搜索系统,包括: 被配置成接收拼写查询的用户接口; 拼写识别器引擎,所述拼写识别器引擎被配置成从所述拼写查询中识别字符表示序列,所述序列具有产生多个搜索键的可能歧义;以及 搜索引擎,所述搜索引擎被配置成基于所述多个搜索键来对来自目标项的有限数据集的一个或多个目标项进行打分,经打分的目标项被用来标识满足相关性阈值的一个或多个相关项。
10.如权利要求9所述的拼写搜索系统,其特征在于,所述多个搜索键基于音素相似性来生成。
【文档编号】G10L15/08GK103608859SQ201280029332
【公开日】2014年2月26日 申请日期:2012年6月10日 优先权日:2011年6月14日
【发明者】Y-C·居, I·J·塔舍夫, X·李, D·霍金斯, T·索米欧, M·H·金 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1