CN101816000A - 用于部分输入的搜索查询的自动完成和自动输入法校正 - Google Patents
用于部分输入的搜索查询的自动完成和自动输入法校正 Download PDFInfo
- Publication number
- CN101816000A CN101816000A CN200880110208A CN200880110208A CN101816000A CN 101816000 A CN101816000 A CN 101816000A CN 200880110208 A CN200880110208 A CN 200880110208A CN 200880110208 A CN200880110208 A CN 200880110208A CN 101816000 A CN101816000 A CN 101816000A
- Authority
- CN
- China
- Prior art keywords
- inquiry
- language
- complete
- search
- query
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/274—Converting codes to words; Guess-ahead of partial word inputs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3322—Query formulation using system suggestions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
用于处理查询信息的方法包括从搜索请求者接收部分搜索查询,以及从多个先前提交的完整查询获取与部分搜索查询相对应的预测的完整查询的集合,先前提交的完整查询由用户群体提交。预测的完整查询的集合包括英语和朝鲜语完整搜索查询两者。根据排名标准对预测的完整查询的集合进行排序,并且将排序的集合的至少一个子集发送给搜索请求者。部分搜索查询可以是部分朝鲜语搜索查询的罗马化表示形式。
Description
技术领域
所公开的实施例一般涉及用于定位在计算机网络(例如计算机***的分布式***)中的文档的搜索引擎,具体地,涉及用于通过预测用户的请求而使期望的搜索加速的***和方法。
背景技术
搜索引擎提供了用于定位在大型文档数据库中的文档的强大工具,所述文档诸如在万维网(WWW)上的文档或存储在内联网的计算机上的文档。响应于由用户提交的搜索查询而定位文档。搜索查询可以由一个或多个搜索词语组成。
在输入查询的一个方法中,用户通过添加连续的搜索词语直至输入了所有搜索词语来输入查询。一旦用户发信号已输入了查询的所有搜索词语,则将查询发送给搜索引擎。在下面描述的本发明的实施例使用输入查询的另一个方法。在这个新方法中,在用户指示完成查询之前将部分查询传送给搜索引擎。搜索引擎生成向用户展示的预测的查询的列表。用户可以从预测的查询的排序列表选择,或者可以继续输入用户指定的查询。
发明内容
根据在下面描述的一些实施例,在服务器处执行、用于处理查询信息的方法包括从搜索请求者接收部分搜索查询,该搜索请求者位于远离服务器的位置。方法进一步包括从多个先前提交的完整查询获取与部分搜索查询相对应的预测的完整查询的集合,其中先前提交的完整查询由用户群体提交。预测的完整查询的集合包括第一语言和第二语言完整搜索查询两者。另外,方法包括根据排名标准对预测的完整查询的集合进行排序,并且将排序的集合的至少一个子集递送给搜索请求者。
根据一些实施例,在客户端处执行、用于处理查询信息的方法包括从搜索请求者接收部分搜索查询。方法进一步包括从多个先前提交的完整查询获取与部分搜索查询相对应的预测的完整查询的集合,其中先前提交的完整查询由用户群体提交。预测的完整查询的集合包括第一语言和第二语言完整搜索查询两者,并且根据排名标准被排序。另外,方法包括向搜索请求者显示排序的集合的至少一个子集。
根据一些实施例,用于构建用于处理查询信息的数据结构的方法包括获取先前提交的完整第一语言查询的集合,其中完整第一语言查询由用户群体先前提交。方法进一步包括获取先前提交的完整第二语言查询的集合,其中完整第二语言查询由用户群体先前提交。另外,方法包括将完整第一语言查询的集合转换为以使用第二语言的字符的表示形式的完整第一语言查询的集合,并且将完整第二语言查询的集合和转换的完整第一语言查询的集合存储在一个或多个查询完成数据表中。一个或多个查询完成数据表形成能够被用来预测与部分第一语言查询或部分第二语言查询相对应的完整第一语言查询和完整第二语言查询两者的一个或多个数据结构。
在一些实施例中,用于处理查询信息的***包括用于执行程序的一个或多个中央处理单元,以及用来存储数据以及存储由一个或多个中央处理单元执行的程序的存储器。程序包括用于从搜索请求者接收部分搜索查询的指令,搜索请求者位于远离服务器的位置。程序进一步包括用于从多个先前提交的完整查询获取与部分搜索查询相对应的预测的完整查询的集合的指令,其中先前提交的完整查询由用户群体提交。预测的完整查询的集合包括第一语言和第二语言完整搜索查询两者。另外,程序进一步包括用于根据排名标准对预测的完整查询的集合进行排序,并且将排序的集合的至少一个子集递送给搜索请求者的指令。
在一些实施例中,客户端***包括用于执行程序的一个或多个中央处理单元,以及用来存储数据以及存储由一个或多个中央处理单元执行的程序的存储器,程序包括用于从搜索请求者接收部分搜索查询的指令。程序进一步包括用于从多个先前提交的完整查询获取与部分搜索查询相对应的预测的完整查询的集合的指令,其中先前提交的完整查询由用户群体提交。预测的完整查询的集合包括第一语言和第二语言完整搜索查询两者,并且根据排名标准被排序。另外,程序进一步包括用于向搜索请求者显示排序的集合的至少一个子集的指令。
在一些实施例中,计算机可读存储介质存储用于由各个服务器***的一个或多个处理器执行的一个或多个程序。一个或多个程序包括用于从搜索请求者接收部分搜索查询的指令,搜索请求者位于远离服务器的位置。一个或多个程序进一步包括用于从多个先前提交的完整查询获取与部分搜索查询相对应的预测的完整查询的集合的指令,先前提交的完整查询由用户群体提交。预测的完整查询的集合包括第一语言和第二语言完整搜索查询两者。另外,一个或多个程序包括用于根据排名标准对预测的完整查询的集合进行排序,并且将排序的集合的至少一个子集递送给搜索请求者的指令。
在一些实施例中,计算机可读存储介质存储用于由各个客户端设备或***的一个或多个处理器执行的一个或多个程序。一个或多个程序包括用于从搜索请求者接收部分搜索查询的指令。一个或多个程序进一步包括用于从多个先前提交的完整查询获取与部分搜索查询相对应的预测的完整查询的集合的指令,先前提交的完整查询由用户群体提交。预测的完整查询的集合包括第一语言和第二语言完整搜索查询两者,并且根据排名标准被排序。另外,一个或多个程序包括用于向搜索请求者显示排序的集合的子集的指令。
由于统一的解决方案在自动提供输入法校正时支持不完整的朝鲜语字符输入,故其具有对朝鲜语查询预测的特定应用。
附图说明
作为结合附图的本发明的各个方面的下列详细描述的结果,将更清楚地理解本发明的前述实施例以及额外的实施例。在附图的全部多个视图中相同的参考数字指代对应的部分。
图1是根据一些实施例的搜索***的框图。
图2是描述了根据一些实施例的与创建并使用数据结构相关联的信息流的概念图。
图3A是根据一些实施例的部分查询的处理的方法的流程图。
图3B是根据一些实施例的由在客户端***或设备处的搜索助手执行的过程的流程图。
图4A和4B描述了用于在朝鲜语字符和朝鲜语字符的罗马化表示形式之间的转换的字符映射表。
图5是根据一些实施例的用于将一串朝鲜语字符转换为罗马化表示形式的过程的流程图。
图6描述了根据一些实施例的与输入字符串相对应的预测的完整查询的示例。
图7描述了根据一些实施例的用于处理历史查询的过程。
图8描述了根据一些实施例的与在历史搜索查询的集合中的完整搜索查询的两个示例相对应的部分搜索查询。
图9是根据一些实施例的用于识别与所接收的部分查询相对应的查询完成表的过程的概念表示。
图10描述了根据一些实施例的两个示例查询完成表的部分。
图11是根据一些实施例的客户端***的框图。
图12是根据一些实施例的服务器***的框图。
图13描述了根据一些实施例的列出与用户提供的部分查询相对应的英语和朝鲜语预测的完整查询的web浏览器、在web浏览器中显示的网页或其它用户界面的示意截屏。
具体实施方式
图1图示了适于本发明的实施例的实践的***100。在于2004年11月11日提交的“Method and System for Autocompletion Using RankedResults(用于使用排名结果的自动完成的方法和***)”的共同未决、普通转让的美国专利申请序列号No.10/987,295,以及于2004年11月12日提交的“Method and System for Autocompletion for LanguagesHaving Ideographs and Phonetic Characters(用于具有象形和语音字符的语言的自动完成的方法和***)”的共同未决、普通转让的美国专利申请序列号No.10/987,769中提供了与分布式***和其各种功能组件有关的额外详情,在此通过引用将所述申请的内容整体合并。***100可以包括位于远离搜索引擎108的位置的一个或多个客户端***或设备102。有时被称为客户端或客户端设备的各个客户端***102可以是台式计算机、膝上型计算机、信息站、蜂窝电话、个人数字助理等。通信网络106将客户端***或设备102连接到搜索引擎108。当用户(在此也被称为搜索请求者)在客户端***102处输入查询时,在该用户完成输入完整查询之前搜索助手104将该用户的部分查询的至少部分传送到搜索引擎108。搜索引擎108使用部分查询的传送部分来预测用户的最终完整查询。这些预测被传送回该用户。如果预测中的一个是该用户的预期查询,则该用户可以在不必完成查询的输入的情况下选择预测的查询。
如在此进一步描述的,搜索***100和其功能组件已被调整,以便以统一的方式处理多种语言的部分查询。搜索***100已被调整,以便在不考虑由搜索助手104传送到搜索引擎108的部分查询的语言编码的情况下,基于在客户端***102处的用户的实际输入来提供预测的查询。例如在用户使用在客户端***102处的不正确输入法编辑器设置输入了部分查询的情况下这尤其有用。
搜索引擎108包括查询服务器110,其具有接收并处理部分查询以及将部分查询转送到预测服务器112的模块120。预测服务器112负责生成与所接收的部分查询相对应的预测的完整查询的列表。预测服务器112依赖于由排序集合构建器142在预处理阶段构造的数据结构。排序集合构建器142使用不同语言的查询日志124、126来构造数据结构。图2图示了由排序集合构建器142执行的预处理的一个实施例。图3A图示了由预测服务器112执行的处理的一个实施例。另外,在一些实施例中,查询服务器110接收完整搜索查询并且将完整搜索查询转送到查询处理模块114。
参见图2,说明性地展示了两个查询日志:第一语言的查询日志201和第二语言的查询日志202。查询日志201、202包含由搜索引擎在一段时间内从用户群体接收的各自语言的先前提交的查询的日志。可选地,提交在查询日志201中的查询的用户群体可以与提交在查询日志202中的查询的用户群体不同,在这种情况下前述“用户群体”包括两个或多个用户群体。在查询日志201、202中的每一个查询条目可以包括元信息,诸如指示查询被提交的次数的频率信息。查询日志201、202中的每一个可以由一个或多个特定语言过滤器204、205过滤,例如以排除与词语的一个或多个预定集合相匹配的查询,所述预定集合诸如可能被认为是令人反感的、文化敏感的等单词。在第二语言的查询日志202中的查询以其现存形式被利用。然而,在250处将在第一语言的查询日志201中的查询转换为第二语言的表示形式。第二语言的表示形式与由用户在使用设置为第二语言的输入法时试图输入第一语言的查询而生成的第二语言的字符相对应。例如,如在下面进一步描述的,一种语言诸如朝鲜语的查询可以由在字母数字键盘上的键击来表示,所述键击与使用被不正确地设置为英语的输入法编辑器来输入朝鲜语查询相对应。然而,在其它实施例中,第一语言不必是朝鲜语,而替代地可以是日语、中文或大量其它语言中的任何语言。类似地,第二语言不必是英语,而替代地可以是法语、德语、西班牙语、俄语或大量其它语言中的任何语言。过滤的查询日志202和过滤的查询日志201的转换的输出由排序集合构建器208组合在一起并同时利用。排序集合构建器208创建一个或多个组合数据结构,组合数据结构能够被用来处理两种语言的部分查询。
排序集合构建器208构造一个或多个查询完成表212。如在下面进一步说明的,一个或多个查询完成表212被用于生成用于第一和第二语言两者的预测。在查询完成表212中的每一个条目存储查询字符串和额外信息。额外信息包括可以基于在查询日志中的查询的频率的排名分值、查询由用户群体中的用户提交时的日期/时间值、和/或其它因素。关于查询的额外信息可选地包括指示完整搜索查询的语言的值。在各个查询完成表212中的每一个条目表示与部分查询相关联的预测的完整查询。如在下面参考图9所描述的,在一些实施例中,被接收的部分查询被分成两部分:前缀部分和后缀部分。此外,在一些实施例中,与同一前缀相关联的一组预测的完整查询被存储在按频率或分值排序的查询完成表212中。可选地,查询完成表212由对应的部分搜索查询的查询指纹进行索引,其中每一个部分搜索查询的查询指纹通过将哈希函数(或其它指纹函数)应用于部分搜索查询或部分搜索查询的前缀来生成。可选地,查询指纹被存储在指纹到表的映射表210中用于快速查找。
在一些实施例中,将第一语言(例如朝鲜语、日语、中文等)的预测的完整查询以使用第二语言(例如英语、西班牙语、法语、德语、俄语等)的字符的转换的表示形式(例如罗马化表示形式)存储在一个或多个查询完成表212中。因此,在这些实施例中,排序集合构建器208将完整第二语言(例如英语)查询的集合和以其转换的表示形式的完整第一语言(例如朝鲜语)查询的集合存储在一个或多个查询完成表212中。然而,将在查询完成表212中的预测的完整查询以在查询日志201中的原始查询的语言向用户表示并显示。然而,在其它实施例中,尽管第一语言的查询被存储在通过将哈希函数(或其它指纹函数)应用于对应的部分搜索查询的转换的表示形式来识别的查询完成表中,但是预测的完整查询以其原始语言被存储在一个或多个查询完成表212中。
参见图3A,在用户输入搜索查询时,客户端***102监视用户的输入(308)。在用户(有时被称为请求者)发信号完成搜索查询之前,将用户的查询的至少部分从客户端***发送到搜索引擎304(310)。查询的部分可以是几个字符、一个搜索词语或多于一个搜索词语。注意到,可以以第一语言或第二语言输入部分查询。
搜索引擎304接收部分搜索查询用于处理(312)并且前进到对关于用户的预期的完整查询进行预测(313)。首先,搜索引擎304确定部分查询是以第一语言还是以第二语言编码(314)。如果部分查询以第一语言编码,则搜索引擎304在前进之前将部分查询转换为第二语言的上述表示形式(316)。如果部分查询以第二语言编码,则搜索引擎304可以直接前进到处理部分查询。搜索引擎304然后应用哈希函数(或其它指纹函数)(318)来创建指纹320。搜索引擎304使用指纹320和指纹到表的映射表210来定位与部分查询相对应的查询完成表212来执行查找操作(322)。查找操作包括对指纹到表的映射表210搜索与部分查询的指纹320相匹配的指纹。当找到匹配时,指纹到表的映射表210的对应条目识别查询完成表(或替选地,在具有关于多个部分查询的条目的查询完成表中的条目的集合)。如在下面更详细地描述的,查询完成表212可以包括与部分查询相匹配或相对应的多个条目,以及指纹到表的映射表210被用来定位查询完成表或这些条目的第一个(或最后一个)。查找操作(322)产生与所接收的部分搜索查询相对应的预测的完整查询的集合。
在查询完成表中的每一个条目包括预测的完整查询和诸如关于预测的完整查询的频率或分值的其它信息。搜索引擎304使用信息来构造完整查询预测的排序集合(326)。在一些实施例中,将集合按频率或分值排序。搜索引擎304然后将预测的完整查询的至少一个子集(328)返回给接收排序的预测的完整查询(329)的客户端。客户端前进到显示排序的预测的完整查询的至少一个子集(330)。
注意到,由于部分查询可以与在查询完成表212中的任一语言的查询条目潜在匹配,故完整查询预测的排序集合可以以任一语言。搜索引擎304可以被配置为返回混合语言预测的完整查询或者可以被配置为选择更可能预测部分查询的那种语言。在搜索引擎304生成以除在部分查询中编码的语言外的语言形式的预测的完整查询的情况下,预测的完整查询表示自动输入法校正建议。
如在上面参考图2所注意的,在构建查询完成表时,可以对来自用户群体的历史查询日志的查询进行过滤。然而,额外的过滤可以由各种用户组(例如,请求了这样的过滤的用户)请求或者代表各种用户组而被应用。因此,在一些实施例中,在对预测的完整查询进行排序(326)之前或者在将预测的完整查询递送给客户端(328)之前,对预测的完整查询的集合进行过滤以移除与在一个或多个预定词语集合中的一个或多个词语相匹配的查询,如果存在这样的查询的话。例如,一个或多个预定词语集合可以包括被认为是令人反感的或文化敏感的等英语词语和朝鲜语词语。执行该方法的***可以包括存储在存储器中的识别一个或多个预定词语集合的一个或多个表(或其它数据结构)。在一些其它实施例中,递送给客户端(328)的预测的完整查询的集合在客户端处被过滤以移除与在一个或多个预定词语集合中的一个或多个词语相匹配的查询,如果存在这样的查询的话。可选地,多个不同的过滤器可以被用于多个不同的用户组。在一些实施例中,使用运行期间过滤(响应于部分搜索查询而执行)替代在查询完成表的构建期间过滤。
图3B图示了可以在客户端***102的搜索助手104中实现的实施例。搜索助手104监视用户将搜索查询输入到客户端***102上的文本输入框中(352)。用户的输入可以是一个或多个字符或者一个或多个单词(例如短语的第一个单词或前两个单词、或者第一个单词和开头字母、复合词语的短语的新单词的字符或标志)。搜索助手104可以识别两种不同类型的查询。第一种,先于在用户指示完成输入字符串时,搜索助手104在输入被识别时接收或识别部分搜索查询(如下所述)。第二种,搜索助手104在用户选择了展示的预测或指示完成输入字符串时接收或识别用户输入。
当用户输入或选择被识别为完整的用户输入时,该完整的用户输入被传送到服务器用于处理(354)。服务器返回搜索结果的集合,该集合由搜索助手104或由诸如浏览器应用的客户端应用接收(356)。在一些实施例中,浏览器应用将搜索结果至少作为网页的一部分显示。在一些其它实施例中,搜索助手104显示搜索结果。替选地,完整的用户输入的传送(354)和对搜索结果的接收(356)可以由除搜索助手104外的机制来执行。例如,这些操作可以由使用标准请求和响应协议的浏览器应用来执行。
以多种方式,诸如当用户在搜索查询的输入期间输入了回车或等价字符、选择了在向用户展示的图形用户界面(GUI)中的“查找”或“搜索”按钮时,或者通过在搜索查询的输入期间选择向用户展示的预测的查询的集合中的一个,搜索助手104(或浏览器或其它应用)可以将用户输入识别为完整的用户输入。本领域的技术人员将认识发信号搜索查询的最终输入的多种方式。
在用户发信号完整的用户输入之前,部分搜索查询可以被识别。例如,部分搜索查询通过检测对在文本输入框中的字符的输入或删除来识别。一旦部分搜索查询被识别,该部分搜索查询即被传送给服务器(358)。响应于该部分搜索查询,服务器返回包括预测的完整搜索查询的预测。搜索助手104接收(360)并展示(例如显示、表达等)预测(362)。
在向用户展示了预测的完整查询(362)后,如果用户确定预测中的一个与预期输入相匹配,则用户可以选择预测的完整搜索查询中的一个。在一些情况中,预测可以向用户提供未被考虑的额外信息。例如,用户可以心里以一个查询作为搜索策略的一部分,但是看见预测的完整查询促使用户改变了输入策略。一旦展示了集合(362),再次监视用户的输入(352)。如果用户选择了预测中的一个,则将用户输入作为完整查询(在此也被称为完整的用户输入)传送给服务器(354)。在传送请求后,再次监视用户的输入活动(352)。
在一些实施例中,搜索助手104可以从服务器预载额外的预测结果(额外的预测结果中的每一个是预测的完整查询的集合)(364)。预载的预测结果可以被用来提高对用户输入作出响应的速度。例如,在用户输入<ban>时,搜索助手104可以预载除关于<ban>的预测结果外的关于<bana>、……、以及<bank>的预测结果。如果用户再输入一个字符,例如<k>,来生成(部分搜索查询)输入<bank>,则可以在未将部分搜索查询传送到服务器或接收预测的情况下显示关于<bank>的预测结果。
在一些实施例中,在客户端处本地地缓存预测结果的一个或多个集合。在搜索请求者修改当前查询以反映以前的部分输入(例如通过退格以移除一些字符)时,替代将部分输入发送给服务器,从客户端缓存检索与以前的部分输入相关联的预测结果的集合并且再次向用户展示该集合。
在一些实施例中,在接收关于最终输入的搜索结果或文档(356)后,或者在显示预测的完整搜索查询(362)后,并且可选地预载了预测结果(364),搜索助手104继续监视用户输入(352)直至用户例如通过关闭包含搜索助手104的网页来终止搜索助手104。在一些其它实施例中,搜索助手104仅在文本输入框1320(在下面参考图13所论述的)被激活时继续监视用户输入(352),以及在文本输入框1320被失活时暂停监视。在一些实施例中,当在用户界面中的文本输入框在浏览器应用的当前活动窗口或工具栏中显示时,该文本输入框被激活,以及当文本输入框不被显示或者文本输入框不在浏览器应用的活动窗口或工具栏中时,该文本输入框被失活。
所描述的***和技术具有关于解决以诸如朝鲜语、日语、中文以及许多其它语言的语言形式的部分查询的特定应用。或被称为谚文的书面朝鲜语利用被组织成音节块的字符的音标字母。每一个音节块由一个首部辅音、一个中部元音以及可选的尾部辅音组成。存在19种可能的首部辅音,21种可能的元音以及27种可能的尾部辅音。在图4A和4B中示出了音节块的可能的首部、中部以及尾部元素的列表。可以以不同的方式对朝鲜语文本进行编码,但是其常规以Unicode传输格式来表示,该Unicode传输格式使用不同的字符码来表示每一个音节块组合:即从AC00到D7AF的11,172个预定的朝鲜语字符。常规使用西方字母数字键盘布置来输入朝鲜语文本,其中朝鲜语辅音和元音被映射到键盘上的字母键。由于首部辅音需要一次键击、中部元音和尾部辅音每一个需要一次或两次键击并且尾部辅音是可选的,故单个朝鲜语音节块字符需要在键盘上的两次到五次之间的键击。
因此,在将部分查询传送到搜索引擎304时用户输入朝鲜语查询可能正在输入不完整的朝鲜语字符的中途。此外,用户可能正使用不正确的输入法设置来试图输入朝鲜语或英语查询。
所描述的***和技术提供了用于以下的统一的解决方案:通过将部分朝鲜语查询转换为罗马化表示形式来提供朝鲜语和英语的预测的完整查询。这些朝鲜语查询的罗马化表示形式与通过用户使用英语输入法来试图输入朝鲜语查询而生成的在罗马化字母表中的字符相对应。例如,朝鲜语查询日志可以包括诸如下列的朝鲜语单词:
这些朝鲜语查询的罗马化表示形式将是以下:
换句话说,用户在被设置为朝鲜语输入法的键盘上键入″ahqkdlf″将输入朝鲜语的单词“mobile”。
图4A、4B和5图示了在查询中的朝鲜语字符串到罗马化表示形式的转换。为了实现该转换,为形成每一个音节块字符的组分的每一个辅音或元音计算索引。对于以Unicode表示的朝鲜语字符,所述字符被安排为:
Unicode=(首部辅音*21*28)+(中部元音*28)+可选的尾部+0xAC00
该计算可以由数个调节和分割来完成。一旦为每一个朝鲜语字符确定了索引,可以缓存与辅音和元音索引相对应的英语字母。图4A和4B示出了不同的朝鲜语辅音和元音可以如何被映射到给定Unicode编码的对应的罗马化字符。图5图示了转换可以如何被处理。参见图5,检索在字符串(例如,完整或部分搜索查询)中的下一个字符(502)。初始,在字符串中的第一个字符表示最初的“下一个字符”。确定字符是否被编码在朝鲜语字符的音节块表示形式的范围内(504)。如果是(504-是),则如上所述从该字符导出首部和中部和尾部值(506)。然后根据图4A和4B将所述值映射到罗马化字符(508)。然后将罗马化字符附加到结果字符串(509)。另一方面,如果该字符不是作为音节块字符(504-否)而是作为单个辅音或元音(510-是)来编码,则辅音或元音(被编码为字母码)再次根据在图4A和4B中阐明的映射被直接转换为罗马化表示形式(512),以及然后被附加到结果字符串的末尾(514)。如果该字符不以朝鲜语编码(510-否),由于假设该字符已经以罗马化表示形式,则可以将该字符直接附加到结果字符串(516)。过程迭代(518)直至到达字符串的末尾。
如上所述,将朝鲜语查询在预处理阶段转换为罗马化表示形式并且根据朝鲜语查询的罗马化表示形式将其组织在数据结构中。通过将朝鲜语查询转换为罗马化表示形式,朝鲜语和英语预测的完整查询均可以被一起存储在用于预测服务器的统一数据结构中。由于英语查询和朝鲜语查询均使用罗马化字母表来表示,所以相同的预测逻辑可以被利用来生成英语预测和朝鲜语预测。
在用户将朝鲜语的部分查询输入到***中时,朝鲜语部分查询被转换为其罗马化表示形式。然后如同任何英语部分查询,对照关于部分查询的数据结构核查该罗马化表示形式。由于朝鲜语字符由具有与在键盘上的原始键击相同的顺序的罗马化字母表示,所以不完整的朝鲜语查询被正确地处理。基于该部分查询来生成预测(即完整查询)的列表。显而易见地,预测的完整查询可以以朝鲜语或英语。因此,在一些情况下,与部分查询相对应的预测的完整查询包括朝鲜语和英语完整查询两者。在用户使用朝鲜语输入法来不正确地输入了英语部分查询的情况下,***将认为罗马化表示形式潜在地为英语查询。例如,用户可能输入下列查询或下列的部分查询:
由于该查询未形成任何正确的音节块,所以该查询不会生成任何朝鲜语预测。然而,关于该查询的罗马化表示形式为“mobile”,其将与包括英语单词“mobile”的预测的完整查询相匹配,尽管用于部分查询的语言编码不正确。
在用户将英语的部分查询输入到***中时,***将常规地处理该部分查询。将对照数据结构核查该英语查询并且生成预测的列表。此外,由于数据结构包括以罗马化表示形式的朝鲜语查询,所以***将自动识别由输入法错误产生的朝鲜语预测。
图6示出了与部分查询“ho”602相对应的预测的完整查询的集合604的示例。在该示例中,在完整查询的集合604中的第一位置包括具有最高频率值的查询(例如“hotmail”),在该集合中的第二位置由具有下一最高频率值的查询(例如“hot dogs”)占据,等等。在该示例中,在给定的部分查询和完整查询之间的对应性由部分查询在完整查询的开头部分的存在来确定(例如,字符“ho”在完整查询“hotmail”和“hotels in San Francisco”的开头部分找到)。在其它实施例中,在给定的部分查询和完整查询之间的对应性由部分查询在位于完整查询中的任何位置的搜索词语的开头部分的存在来确定,如由完整查询的集合606所图示(例如,字符“ho”在“hotmail”的开头部分以及在“cheap hotels in Cape Town”中的第二搜索词语的开头部分找到)。
为了创建查询完成表212的集合,从历史查询日志201、202选择查询(图7,702)。在一些实施例中,只有具有期望的元信息的查询(例如,语言为英语的查询)被处理。从所选择的查询识别第一个部分查询(704)。在一个实施例中,第一个部分查询是所选择的查询的第一个字符(即,对于查询字符串“hot dog ingredients”来说为“h”)。在一些实施例中,在识别部分查询之前应用预处理(例如,将大写字母转换为小写字母)。在表中生成指示部分查询、与部分查询相对应的完整查询和其频率的条目。在其它实施例中,被用于排名的其它信息(例如,基于完整查询由用户群体提交时的日期/时间值和/或其它因素来计算的排名分值)被存储。如果所识别的部分查询未表示整个查询,则查询处理未完成(708-否)。因此,识别下一个部分查询(710)。在一些实施例中,下一个部分查询通过将下一个额外的字符添加到先前识别的部分查询来识别(即,对于查询字符串“hot dog ingredients”来说为“ho”)。继续识别(710)和对查询完成表的更新(706)的过程直至整个查询被处理(708-是)。如果尚未处理完所有的查询(712-否),则从历史查询日志选择下一个查询(702)并且对该查询进行处理直至所有的查询被处理(712-是)。在一些实施例中,当将记录项添加到查询完成表时,记录项被***使得在表中的记录项根据排名或分值被排序。在另一个实施例中,所有查询完成表在表构建过程的末尾被排序使得在每一个查询完成表中的记录项根据在查询完成表中的记录项的排名或分值被排序。另外,一个或多个查询完成表可以被删简,使得表包含不超过预定数量的条目。
如上所述,在一些实施例中,在将完整查询***查询完成表中之前从历史查询日志201、202过滤完整查询(714)以排除与词语的一个或多个预定集合相匹配的查询,所述预定集合诸如可能被认为是令人反感的、文化敏感的等单词。可选地,提交在查询日志201中的查询的用户群体可以与提交在查询日志202中的查询的用户群体不同,在这种情况下前述“用户群体”包括两个或多个用户群体。如果查询被过滤并且因此从为用于***到查询完成表中的候选的查询的集合被移除,则从历史查询日志201、202选择下一个查询(如果存在的话)(702)。
参见图8,在表802中的804至812处图示了查询字符串“hot dogingredients”的前五个字符的示例处理。在814至820处图示了查询字符串“hotmail”的前四个字符的示例处理。
在一些实施例中,关于给定的部分查询的查询完成表通过下述来创建:从表识别与给定的部分查询相对应的n个最经常被提交的查询并且将其以排名次序放置使得具有最高排名(例如最高排名分值或频率)的查询位于列表的顶部。例如,关于部分查询“hot”的查询完成表将包括完整查询字符串808和818两者。在排名基于频率时,由于在818中的查询字符串的频率(即300,000)大于在808中的查询字符串的频率(即100,000),所以对于“hotmail”的查询字符串将出现在对于“hot dog ingredients”的查询字符串的上方。因此,在将预测的排序的集合返回给用户时,首先展示具有被选择的更高可能性的查询。如上所述,其它值可以被用于对预测的完整查询进行排名。在一些实施例中,来自用户的简档的个性化信息可以被用于对预测的完整查询进行排名。
参见图9和10,在一些实施例中,通过将历史查询字符串分成诸如四(4)个字符的预定大小C的“组块(chunk)”来减少查询完成表212的数量。关于长度小于C的部分查询的查询完成表212保留不变。对于长度为至少C的部分查询,将部分查询分成两个部分:前缀部分和后缀部分。后缀部分的长度S等于部分查询的长度(L)以C取模:
S=L modulo C。
其中L为部分查询的长度。前缀部分的长度P为部分查询的长度减去后缀的长度:P=L-S。因此,例如,具有十(10)个字符的长度的部分查询(例如“hot potato”)在组块大小C为四(4)时将具有后缀长度S=2以及前缀长度P=8。
在执行在图7的步骤706中所示出的过程时,在图9中概念地图示了识别或创建与部分查询相对应的查询完成表。图9示意性地图示了用于生成查询完成表以及用于在处理用户输入的部分查询时进行查找两者的过程。在部分查询的长度小于一个“组块”C的大小时,例如通过使用哈希函数(或其它指纹函数)318将部分查询映射到查询指纹320(图3A)。通过指纹到表的映射表210将指纹320映射到查询完成表212。
在部分查询的长度为至少一个组块C的大小时,将部分查询902分解成前缀904和后缀906,其长度如上所解释的由组块大小规制。例如通过将哈希函数318应用于前缀904来为前缀904生成指纹908,并且然后通过指纹到表的映射表210将该指纹908映射到“组块化的”查询完成表212。在一些实施例中,每一个组块化的查询完成表212是在更大的查询完成表中的条目的集合,而在其它实施例中,每一个组块化的查询完成表是分立的数据结构。各个查询完成表的每一个条目911包括为完整查询的文本的查询字符串,并且还可以可选地包括用于对在查询完成表212中的条目进行排序的分值916。组块化的查询完成表的每一个条目包括对应的部分查询的后缀914。在各个条目911中的后缀914具有可以为从零至C-1的任何值的长度S,并且包括部分查询的未被包括在前缀904中的零或多个字符。在一些实施例中,在生成用于历史查询的查询完成表条目911时,在每一个组块化的查询完成表212中仅仅生成一个与该历史查询相对应的条目。特别地,该一个条目911包含关于该历史查询的最长的可能的后缀,直至C-1个字符长。在其它实施例中,在每一个组块化的查询完成表212中生成关于特定历史查询的直至C个条目,每一个条目用于每一个不同的后缀。
可选地,在各个查询完成表212中的每一个条目包括指示与完整查询913相关联的语言的语言值或指示符912。然而,在所有的查询字符串913以其原始语言被存储在查询完成表212中的实施例中可以省略语言值912。
可选地,在各个查询完成表212中的每一个条目包括用于将表条目与部分查询前缀的指纹进行匹配的查询指纹918。然而,在一些实施例(例如,具有关于每一个不同的部分查询前缀的单独的查询完成表212的实施例)中,可以从查询完成表212的条目省略指纹918。
图10示出了包含与历史查询“hot potato”相对应的条目911的一组查询完成表。该示例假设组块大小C等于四。在其它实施例中,组块大小可以是2、3、5、6、7、8或任何其它适当的值。组块大小C可以基于经验信息来选择。在图10中示出的前三个查询完成表212-1至212-3分别关于部分查询“h”、“ho”和“hot”。下两个查询完成表212-4和212-5分别与具有7和10的部分查询长度的部分查询“hot pot”(以“hot”为其前缀部分,并且“pot”为其后缀部分)和“hot potato”(以“hot pota”为其前缀部分,并且“to”为其后缀部分)相对应。以另一种方式叙述,查询完成表212-4与以“hot”开始并且具有在4和7之间的长度的所有部分查询相对应;而查询完成表212-5与以“hotpota”开始并且具有在8和11之间的长度的所有部分查询相对应。
返回参见图7,对于由操作710部分地形成的循环的每一次迭代,部分查询的长度最初增加了一个字符的步长,直至达到C-1的长度,并且然后部分查询的长度增加了C个字符的步长,直至达到历史查询的全长。结果,在C=4时,历史查询“hot potato”产生在分别与具有1、2、3、4-7以及8-10个字符的长度的部分搜索查询相对应的五个这样的表(212-1至212-5)中的查询完成表条目(在图10中示出)。
根据在条目911中的查询字符串913的排名值(由分值916表示)对每一个组块化的查询完成表的条目911进行排序。对于具有小于C个字符的部分查询,在查询完成表212中的查询的数量是第一值(例如,10、20或在4和20之间的任何适当的值),其可以表示作为预测返回的查询的数量。在一些实施例中,在每一个组块化的查询完成表910中的条目911的最大数量(例如在1000和10,000之间的数量)显著地大于第一值。每一个组块化的查询完成表212可以替代数十或数百个普通的查询完成表。因此,每一个组块化的查询完成表212的大小被设置,以便包含与具有与组块化的查询完成表相对应的前缀部分的所有或几乎所有的核准的历史查询相对应的多(P)个条目,而不会达到在生成关于用户指定的部分查询的预测的完整查询的列表时产生过度时延的那样的长度。
在从历史查询的集合生成了查询完成表212和指纹到表的映射表210之后,这些相同的数据结构(或其副本)被用于识别与用户输入的部分查询相对应的查询的预测的集合。如在图9中所示,如由部分查询的长度所确定的,首先通过将哈希函数(或其它指纹函数)318应用于整个部分查询902或部分查询的前缀部分904,将用户输入的部分查询映射到查询指纹320。然后通过在指纹到表的映射表210中执行对查询指纹的查找,将查询指纹320映射到查询完成表212。最后,从所识别的查询完成表提取直至N个预测的查询的排序的集合。在部分查询的长度小于组块大小时,预测的查询的排序的集合是在所识别的查询完成表中的前N个查询。在部分查询的长度等于或长于组块大小时,在所识别的查询完成表中搜索与部分查询的后缀相匹配的前N个项。由于在查询完成表212中的条目以降低的排名来排序,所以搜索匹配的条目的过程从顶部开始并且继续直到获取了待返回的期望数量(N)(例如10)的预测,或者直到到达了查询完成表212的末尾。在部分查询的后缀906与在条目911中的后缀914的对应部分相同时,存在“匹配”。例如,参见图10,一个字母后缀<p>分别与具有后缀<pot>和<pla>的条目911-3和911-4相匹配。具有长度零的空后缀(也被称为空字符串)与在查询完成表中的所有条目相匹配,并且因此在部分查询的后缀部分为空字符串时,将在表中的前N个项作为预测的查询返回。
参见图11,实现上述方法的客户端***102的实施例包括一个或多个处理单元(CPU)1102、一个或多个网络或其它通信接口1104、存储器1106以及用于互连这些组件的一个或多个通信总线1108。在一些实施例中,在客户端***102中包括更少和/或额外的组件、模块或功能。通信总线1108可以包括互连并控制***组件间的通信的电路(有时被称为芯片集)。客户端102可以可选地包括用户接口1110。在一些实施例中,用户接口1110包括显示设备1112和/或键盘1114,而用户接口设备的其它配置也可以被使用。存储器1106可以包括高速随机存取存储器并且还可以包括非易失性存储器,诸如一个或多个磁或光存储盘、闪存设备或其它非易失性固态存储设备。高速随机存取存储器可以包括诸如DRAM、SRAM、DDR RAM或其它随机存取固态存储设备的存储设备。存储器1106可以可选地包括位于远离CPU 1102的位置的海量存储器。存储器1106或替选地在存储器1106内的非易失性存储设备包括计算机可读存储介质。存储器1106存储以下要素或这些要素的子集,并且还可以包括额外的要素:
·操作***1116,其包括用于处理各种基本***服务和用于执行依赖硬件的任务的程序;
·网络通信模块(或指令)1118,其被用于经由一个或多个通信网络接口1104和诸如因特网、其它广域网、局域网、城域网等的一个或多个通信网络将客户端***102连接到其它计算机;
·客户端应用1120(例如因特网浏览器应用);客户端应用可以包括用于以下的指令:与用户进行交互以接收搜索查询;将搜索查询提交给服务器或在线服务;以及显示或展示搜索结果;
·网页1122,其包括待在客户端102上显示或展示的网页内容1124;与客户端应用1120协同的网页实现用于展示网页内容1124以及用于与客户端102的用户进行交互的图形用户界面;
·数据1136,其包括预测的完整搜索查询;以及
·搜索助手104。
至少,搜索助手104将部分搜索查询信息传送给服务器。搜索助手还可以使包括预测的完整查询的预测数据能够被显示,以及用户能够选择所显示的预测的完整搜索查询。在一些实施例中,搜索助手104包括以下要素或这样的要素的子集:输入和选择监视模块(或指令)1128,其用于监视对搜索查询的输入以及选择部分搜索查询用于传送给服务器;部分/完整输入传送模块(或指令)1130,其用于将部分搜索查询和(可选)完整搜索查询传送给服务器;预测数据接收模块(或指令)1132,其用于接收预测的完整查询;以及预测数据显示模块(或指令)1134,其用于显示预测的完整查询的至少一个子集和任何额外的信息。对最终(即完整)查询的传送、接收关于完整查询的搜索结果以及显示这样的结果可以由客户端应用/浏览器1120、搜索助手104或其组合来处理。搜索助手104可以以多种方式来实现。
在一些实施例中,用于输入查询以及用于展示对查询的响应的网页1122还包括例如Macromedia Flash对象或Microsoft Silverlight对象(两者均与各自的浏览器插件共同工作)的JavaScript或其它嵌入式代码或者指令,所述代码或指令用于帮助将部分搜索查询传送给服务器、用于接收并显示预测的搜索查询以及用于对预测的搜索查询中的任何查询的用户选择作出响应。特别地,在一些实施例中,搜索助手104例如作为可执行的功能被嵌入在网页1122中、使用由客户端102可执行的JavaScript(Sun Microsystems的商标)或其它指令来实现。替选地,搜索助手104作为客户端应用1120的一部分或作为由客户端102与客户端应用1120协同来执行的客户端应用1120的扩展、插件或工具栏来实现。在又其它实施例中,搜索助手104作为与客户端应用1120分离的程序来实现。
在一些实施例中,用于处理查询信息的***包括用于执行程序的一个或多个中央处理单元以及用于存储数据和用于存储待由一个或多个中央处理单元执行的程序的存储器。存储器存储根据排名函数排序的由用户群体先前提交的完整查询的集合,该集合与部分搜索查询相对应并且包括英语和朝鲜语完整搜索查询两者。存储器进一步存储:接收模块,其用于从搜索请求者接收部分搜索查询;预测模块,其用于将预测的完整查询的集合与部分搜索查询相关联;以及传送模块,其用于将集合的至少部分传送给搜索请求者。
图12描述了实现上述方法的服务器***1200的示例。服务器***1200与图1中的搜索引擎108和图3A中的搜索引擎304相对应。服务器***1200包括一个或多个处理单元(CPU)1202、一个或多个网络或其它通信接口1204、存储器1206以及用于互连这些组件的一个或多个通信总线1208。通信总线1208可以包括互连并控制***组件间的通信的电路(有时被称为芯片集)。应当理解,在一些其它实施例中,服务器***1200可以使用多个服务器来实现以便提高其吞吐量和可靠性。例如,查询日志124和126可以在与在服务器***1200中的服务器中的其它服务器相通信并且与之协同工作的不同的服务器上来实现。作为另一个示例,排序集合构建器208可以在分立的服务器或计算设备中来实现。因此,与作为在此所描述的实施例的结构性示意相比,图12更意在作为对可以在一组服务器中展示的各种特征的功能性描述。被用来实现服务器***1200的服务器的实际数量以及如何在这些服务器之间分配特征将因实施方式而异,并且部分地取决于***在高峰使用期间以及在平均使用期间必须处理的数据业务量。
存储器1206可以包括高速随机存取存储器并且还可以包括非易失性存储器,诸如一个或多个磁或光存储盘、闪存设备或其它非易失性固态存储设备。高速随机存取存储器可以包括诸如DRAM、SRAM、DDR RAM或其它随机存取固态存储设备的存储设备。存储器1206可以可选地包括位于远离CPU 1202的位置的海量存储器。存储器1206或替选地在存储器1206内的非易失性存储设备包括计算机可读存储介质。存储器1206存储以下要素或这些要素的子集,并且还可以包括额外的要素:
·操作***1216,其包括用于处理各种基本***服务和用于执行依赖硬件的任务的程序;
·网络通信模块(或指令)1218,其被用于经由一个或多个通信网络接口1204和诸如因特网、其它广域网、局域网、城域网等的一个或多个通信网络将服务器***1200连接到其它计算机;
·查询服务器110,其用于从客户端接收部分搜索查询和完整搜索查询以及递送响应;以及
·预测服务器112,其用于从查询服务器110接收部分搜索查询以及用于产生并递送响应。
查询服务器110可以包括以下要素或这些要素的子集,并且还可以包括额外的要素:
·客户端通信模块(或指令)116,其被用于与客户端通信查询和响应;
·部分查询接收、处理和响应模块(或指令)120;以及
·一个或多个查询日志124和126,其包含与由用户群体提交的查询有关的信息。
查询处理模块(或指令)114从查询服务器110接收完整搜索查询以及产生并递送响应。在一些实施例中,查询处理模块(或指令)包括包含信息的数据库,该信息包括查询结果和例如与查询结果相关联的广告的可选地额外的信息。
预测服务器112可以包括以下要素、这些要素的子集,并且还可以包括额外的要素:
·部分查询接收模块(或指令)1222;
·语言确定模块(或指令)1224;
·语言转换模块(或指令)1226;
·哈希函数(或其它指纹函数)1228;
·用于查询完成表查找的模块(或指令)1230;
·结果排序模块(或指令)1232;
·结果传送模块(或指令)1234;以及
·预测数据库1220,其可以包括一个或多个查询完成表212以及一个或多个指纹到表的映射表210(在上面参考图2所描述的)。
排序集合构建器208可以可选地包括一个或多个过滤器204、205和/或语言转换模块(或指令)250。
尽管在此关于被设计为与位于远离搜索请求者的位置的预测数据库一起使用的服务器进行了论述,应当理解在此公开的概念同样适用于其它搜索环境。例如,在此描述的相同技术可以应用于针对任何类型的信息库的查询,其中针对所述信息库运行查询或搜索。因此,应当宽泛地解释术语“服务器”以包括所有这样的使用。
尽管在图11和12中被图示为不同的模块或组件,各种模块或组件可以位于或共同位于服务器或客户端内。例如,在一些实施例中,预测服务器112和/或预测数据库1220的部分驻留于客户端***102上或者形成搜索助手104的一部分。例如,在一些实施例中,可以将关于最受欢迎的搜索的哈希函数1228和一个或多个查询完成表212和一个或多个指纹到表的映射表210定期地下载到客户端***102,从而为至少一些部分搜索查询提供完全基于客户端的处理。
在另一个实施例中,搜索助手104可以包括预测服务器112的本地版本,其用于至少部分地基于经由用户的在先查询来进行完整搜索查询预测。替选地或另外地,本地预测服务器可以基于从服务器或远程预测服务器下载的数据来生成预测。此外,搜索助手104可以将本地生成和远程生成的预测集合合并来向用户展示。可以以多种方式中的任何方式来合并结果,例如通过交错两个集合或者通过合并集合同时偏向用户先前提交的查询使得这些查询易于接近预测的查询的组合列表的顶部被放置或***。在一些实施例中,搜索助手104将认为对用户重要的查询***预测的集合中。例如,可以将用户经常提交但并未包括在从服务器获取的集合中的查询***预测中。
在诸如图3A、3B、5、7和9中的流程图中示出的操作和在本文档中被描述为由客户端***、服务器、搜索引擎等执行的其它操作与存储在各个客户端***、服务器或其它计算机***的计算机可读存储介质中的指令相对应。在图11(存储器1106)和图12(存储器1206)中示出了这样的计算机可读存储介质的示例。在本文档中描述的软件模块、程序和/或可执行功能中的每一个与存储在各个计算机可读存储介质中的指令相对应,并且与用于执行上述功能的指令集相对应。所识别的模块、程序和/或功能(即指令集)不必作为独立的软件程序、过程或模块来实现,并且因此这些模块的各种子集可以在各种实施例中被组合或重新布置。
图13图示了说明性客户端***的用户界面。在该示例中,浏览器应用的窗口1310包括描述对部分查询<ah>的输入的文本输入框1320。响应于检测到部分查询并且从预测服务器或搜索引擎接收预测的完整查询,在显示区域1330中显示预测的完整查询的至少一个子集以可能由客户端***的用户选择。如所述,在从文本输入框1320伸出的下拉框(对应于显示区域1330)中展示预测的完整查询。注意到,对部分查询<ah>的输入生成了英语结果(预测的完整查询),即<aha>和<ahead>,以及朝鲜语结果。这是由于如上所述该朝鲜语结果与罗马化表示形式<ahqkdlf>相对应。因此,如果就用户而言部分查询由于输入法错误(例如,使用英语字符输入而不是朝鲜语或谚文文本输入)而被错误地输入,并且预测结果包括用户感兴趣的朝鲜语查询,则用户可以通过选择期望的朝鲜语查询来避免对部分查询的重新输入。
尽管各个附图中的某些附图以特定顺序图示了多个逻辑阶段,但是不依赖顺序的阶段可以被重新排序以及其它阶段可以被组合或分解。虽然特定提及了一些重新排序或其它聚组,但是其它重新排序或聚组对本领域技术人员将是显而易见的并且因此并未展示替选方案的穷尽列表。此外,应当认识到,阶段可以在硬件、固件、软件或其任何组合中来实现。
为了解释的目的,关于特定实施例描述了在前的描述。然而,在上面的说明性论述并不意在穷举或将本发明限制在所公开的精确形式。鉴于上述教导许多修改和变化是可能的。选择并描述了实施例以便最佳地解释本发明的原理以及其实际应用,从而使本领域技术人员能够以适合于预期的特定用途的各种修改来最佳地利用本发明和各种实施例。
Claims (31)
1.一种用于处理查询信息的方法,包括:
在服务器处,
从搜索请求者接收部分搜索查询,所述搜索请求者位于远离所述服务器的位置;
从多个先前提交的完整查询获取与所述部分搜索查询相对应的预测的完整查询的集合,所述先前提交的完整查询由用户群体提交;所述预测的完整查询的集合包括第一语言和第二语言完整搜索查询两者;
根据排名标准对所述预测的完整查询的集合进行排序;以及
将所排序的集合的至少一个子集递送给所述搜索请求者。
2.如权利要求1所述的方法,其中所述第一语言是朝鲜语以及所述第二语言是英语。
3.如权利要求1所述的方法,其中,在所述部分搜索查询包括部分输入的第一语言搜索查询时,所述方法包括生成所述部分搜索查询的罗马化表示形式。
4.如权利要求1所述的方法,其中,在所接收的部分搜索查询包括一个或多个第一语言字符时,获取预测的完整查询的集合包括:
将所述部分搜索查询转换为所述部分搜索查询的以所述第二语言的字符的表示形式;
将哈希函数应用于所述部分搜索查询的所述表示形式以产生哈希值;以及
使用所述哈希值来执行查找操作以获取所述预测的完整查询。
5.如权利要求1所述的方法,其中,在所接收的部分搜索查询包括一个或多个完整的第一语言字符和一个不完整的第一语言字符时,获取预测的完整查询的集合包括:
将所述部分搜索查询转换为所述部分搜索查询的罗马化表示形式;
将哈希函数应用于所述部分搜索查询的所述罗马化表示形式以产生哈希值;以及
使用所述哈希值来执行查找操作以获取所述预测的完整查询。
6.如权利要求1所述的方法,其中所接收的部分搜索查询包括一个或多个完整的第一语言字符和一个不完整的第一语言字符。
7.如权利要求1所述的方法,包括:在所述递送之前,对所述预测的完整查询的集合进行过滤,以如果存在与在一个或多个预定词语集合中的一个或多个词语相匹配的查询,则移除所述查询。
8.一种用于处理查询信息的方法,包括:
在客户端处,
从搜索请求者接收部分搜索查询;
从多个先前提交的完整查询获取与所述部分搜索查询相对应的预测的完整查询的集合,所述先前提交的完整查询由用户群体提交,其中所述预测的完整查询的集合包括第一语言和第二语言完整搜索查询两者,并且根据排名标准被排序;以及
向所述搜索请求者显示所排序的集合的至少一个子集。
9.如权利要求8所述的方法,其中所述第一语言是朝鲜语以及所述第二语言是英语。
10.如权利要求8所述的方法,其中,在所述部分搜索查询包括部分输入的第一语言搜索查询时,所述方法包括生成所述部分第一语言搜索查询的罗马化表示形式。
11.如权利要求8所述的方法,其中所述获取包括在所接收的部分搜索查询包括一个或多个第一语言字符时:
将所述部分搜索查询转换为所述部分搜索查询的以所述第二语言的字符的表示形式;
将哈希函数应用于所述部分搜索查询的所述表示形式以产生哈希值;以及
使用所述哈希值来执行查找操作以获取所述预测的完整查询。
12.如权利要求8所述的方法,其中所述获取包括
在所接收的部分搜索查询包括一个或多个完整的第一语言字符和一个不完整的第一语言字符时,将所述部分搜索查询转换为所述部分搜索查询的罗马化表示形式,将哈希函数应用于所述部分搜索查询的所述罗马化表示形式以产生哈希值,以及使用所述哈希值来执行查找操作以获取所述预测的完整查询。
13.如权利要求8所述的方法,其中所接收的部分搜索查询包括一个或多个完整的第一语言字符和一个不完整的第一语言字符。
14.一种用于处理查询信息的***,包括:
一个或多个中央处理单元,所述一个或多个中央处理单元用于执行程序;以及
存储器,所述存储器用来存储数据以及存储由所述一个或多个中央处理单元执行的一个或多个程序,所述一个或多个程序包括指令,所述指令用于:
从搜索请求者接收部分搜索查询,所述搜索请求者位于远离服务器的位置;
从多个先前提交的完整查询获取与所述部分搜索查询相对应的预测的完整查询的集合,所述先前提交的完整查询由用户群体提交;所述预测的完整查询的集合包括第一语言和与所述第一语言不同的第二语言两者的完整搜索查询;
根据排名标准对所述预测的完整查询的集合进行排序;以及
将所排序的集合的至少一个子集递送给所述搜索请求者。
15.如权利要求14所述的***,其中所述一个或多个程序包括用于生成包括部分输入的第一语言搜索查询的各个部分搜索查询的罗马化表示形式的指令。
16.如权利要求14所述的***,其中所述用于获取预测的完整查询的集合的指令包括用于以下的指令:
将包括一个或多个第一语言字符的各个部分搜索查询转换为所述各个部分搜索查询的以所述第二语言的字符的表示形式;
将哈希函数应用于所述部分搜索查询的所述表示形式以产生哈希值;以及
使用所述哈希值来执行查找操作以获取所述预测的完整查询。
17.如权利要求14所述的***,其中所述用于获取预测的完整查询的集合的指令包括用于以下的指令:
将包括一个或多个完整的第一语言字符和一个不完整的第一语言字符的各个部分搜索查询转换为所述各个部分搜索查询的罗马化表示形式;
将哈希函数应用于所述各个部分搜索查询的所述罗马化表示形式以产生哈希值;以及
使用所述哈希值来执行查找操作以获取所述预测的完整查询。
18.如权利要求14所述的***,其中所接收的部分搜索查询包括一个或多个完整的第一语言字符和一个不完整的第一语言字符。
19.如权利要求14所述的***,其中所述用于获取预测的完整查询的集合的指令包括用于以下的指令:对所述预测的完整查询的集合进行过滤,以如果存在与在一个或多个预定词语集合中的一个或多个词语相匹配的查询,则移除所述查询。
20.如权利要求14所述的***,其中所述用于获取预测的完整查询的集合的指令包括用于以下的指令:
将包括一个或多个朝鲜语字符的各个部分搜索查询转换为所述各个部分搜索查询的罗马化表示形式;
将哈希函数应用于所述部分搜索查询的所述罗马化表示形式以产生哈希值;以及
使用所述哈希值来执行查找操作以获取所述预测的完整查询。
21.如权利要求14所述的***,其中所述用于获取预测的完整查询的集合的指令包括用于以下的指令:
将包括一个或多个完整的朝鲜语字符和一个不完整的朝鲜语字符的各个部分搜索查询转换为所述各个部分搜索查询的罗马化表示形式;
将哈希函数应用于所述各个部分搜索查询的所述罗马化表示形式以产生哈希值;以及
使用所述哈希值来执行查找操作以获取所述预测的完整查询。
22.如权利要求14所述的***,其中所接收的部分搜索查询包括一个或多个完整的朝鲜语字符和一个不完整的朝鲜语字符。
23.一种用于构建用于处理查询信息的数据结构的方法,包括:
获取先前提交的完整第一语言查询的集合,所述完整第一语言查询由用户群体先前提交;
获取先前提交的完整第二语言查询的集合,所述完整第二语言查询由用户群体先前提交;
将所述完整第一语言查询的集合转换为以罗马化表示形式的完整第二语言查询的集合;以及
将所述完整第一语言查询的集合和罗马化的完整第二语言查询的集合存储在一个或多个查询完成数据表中;
其中所述一个或多个查询完成数据表形成能够被用来预测与部分第一语言查询或部分第二语言查询相对应的完整第一语言查询和完整第二语言查询两者的一个或多个数据结构。
24.如权利要求23所述的方法,包括对所述先前提交的完整第一语言查询的集合和所述先前提交的第二语言查询的集合进行过滤以排除与预定词语的一个或多个集合相匹配的查询。
25.如权利要求23所述的方法,其中所述第一语言是朝鲜语以及所述第二语言是英语。
26.一种客户端***,包括:
一个或多个中央处理单元,所述一个或多个中央处理单元用于执行程序;以及
存储器,所述存储器用来存储数据以及存储由所述一个或多个中央处理单元执行的一个或多个程序,所述一个或多个程序包括指令,所述指令用于:
从搜索请求者接收部分搜索查询;
从多个先前提交的完整查询获取与所述部分搜索查询相对应的预测的完整查询的集合,所述先前提交的完整查询由用户群体提交,其中所述预测的完整查询的集合包括第一语言和第二语言完整搜索查询两者,并且根据排名标准被排序;以及
向所述搜索请求者显示所排序的集合的至少一个子集。
27.如权利要求26所述的客户端***,其中所述第一语言是朝鲜语以及所述第二语言是英语。
28.一种存储用于由各个服务器***的一个或多个处理器执行的一个或多个程序的计算机可读存储介质,所述一个或多个程序包括用于以下的指令:
从搜索请求者接收部分搜索查询,所述搜索请求者位于远离服务器的位置;
从多个先前提交的完整查询获取与所述部分搜索查询相对应的预测的完整查询的集合,所述先前提交的完整查询由用户群体提交;所述预测的完整查询的集合包括第一语言和第二语言完整搜索查询两者;
根据排名标准对所述预测的完整查询的集合进行排序;以及
将所排序的集合的至少一个子集递送给所述搜索请求者。
29.如权利要求28所述的计算机可读存储介质,其中所述第一语言是朝鲜语以及所述第二语言是英语。
30.一种存储用于由各个客户端设备或***的一个或多个处理器执行的一个或多个程序的计算机可读存储介质,所述一个或多个程序包括用于以下的指令:
从搜索请求者接收部分搜索查询;
从多个先前提交的完整查询获取与所述部分搜索查询相对应的预测的完整查询的集合,所述先前提交的完整查询由用户群体提交,其中所述预测的完整查询的集合包括第一语言和第二语言完整搜索查询两者,并且根据排名标准被排序;以及
向所述搜索请求者显示所排序的集合的至少一个子集。
31.如权利要求30所述的计算机可读存储介质,其中所述第一语言是朝鲜语以及所述第二语言是英语。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US95489807P | 2007-08-09 | 2007-08-09 | |
US60/954,898 | 2007-08-09 | ||
US12/188,163 US20090043741A1 (en) | 2007-08-09 | 2008-08-07 | Autocompletion and Automatic Input Method Correction for Partially Entered Search Query |
US12/188,163 | 2008-08-07 | ||
PCT/US2008/072678 WO2009021204A2 (en) | 2007-08-09 | 2008-08-08 | Autocompletion and automatic input method correction for partially entered search query |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101816000A true CN101816000A (zh) | 2010-08-25 |
CN101816000B CN101816000B (zh) | 2012-08-08 |
Family
ID=40342066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008801102081A Active CN101816000B (zh) | 2007-08-09 | 2008-08-08 | 用于部分输入的搜索查询的自动完成和自动输入法校正 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20090043741A1 (zh) |
KR (1) | KR101533570B1 (zh) |
CN (1) | CN101816000B (zh) |
WO (1) | WO2009021204A2 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103703456A (zh) * | 2011-07-14 | 2014-04-02 | 谷歌公司 | 预载网页移动网浏览器 |
CN104011712A (zh) * | 2011-06-24 | 2014-08-27 | 谷歌公司 | 对跨语言查询建议的查询翻译进行评价 |
CN112041835A (zh) * | 2018-04-19 | 2020-12-04 | 艾玛迪斯简易股份公司 | 控制多输入搜索结果的生成 |
Families Citing this family (75)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090006543A1 (en) * | 2001-08-20 | 2009-01-01 | Masterobjects | System and method for asynchronous retrieval of information based on incremental user input |
WO2003058483A1 (en) | 2002-01-08 | 2003-07-17 | Seven Networks, Inc. | Connection architecture for a mobile network |
US7487145B1 (en) | 2004-06-22 | 2009-02-03 | Google Inc. | Method and system for autocompletion using ranked results |
US7836044B2 (en) | 2004-06-22 | 2010-11-16 | Google Inc. | Anticipated query generation and processing in a search engine |
US20060106769A1 (en) | 2004-11-12 | 2006-05-18 | Gibbs Kevin A | Method and system for autocompletion for languages having ideographs and phonetic characters |
US8438633B1 (en) | 2005-04-21 | 2013-05-07 | Seven Networks, Inc. | Flexible real-time inbox access |
WO2006136660A1 (en) | 2005-06-21 | 2006-12-28 | Seven Networks International Oy | Maintaining an ip connection in a mobile network |
US8229942B1 (en) * | 2007-04-17 | 2012-07-24 | Google Inc. | Identifying negative keywords associated with advertisements |
US8086624B1 (en) | 2007-04-17 | 2011-12-27 | Google Inc. | Determining proximity to topics of advertisements |
US8805425B2 (en) | 2007-06-01 | 2014-08-12 | Seven Networks, Inc. | Integrated messaging |
US9002828B2 (en) | 2007-12-13 | 2015-04-07 | Seven Networks, Inc. | Predictive content delivery |
US8862657B2 (en) | 2008-01-25 | 2014-10-14 | Seven Networks, Inc. | Policy based content service |
US20090193338A1 (en) | 2008-01-28 | 2009-07-30 | Trevor Fiatal | Reducing network and battery consumption during content delivery and playback |
US8312032B2 (en) | 2008-07-10 | 2012-11-13 | Google Inc. | Dictionary suggestions for partial user entries |
US8909759B2 (en) | 2008-10-10 | 2014-12-09 | Seven Networks, Inc. | Bandwidth measurement |
JP2010102456A (ja) * | 2008-10-22 | 2010-05-06 | Sony Computer Entertainment Inc | コンテンツ提供装置、コンテンツ提供システム、コンテンツ提供方法およびユーザインタフェースプログラム |
WO2010139277A1 (en) * | 2009-06-03 | 2010-12-09 | Google Inc. | Autocompletion for partially entered query |
CA2772638C (en) | 2009-08-31 | 2018-02-13 | Google Inc. | Framework for selecting and presenting answer boxes relevant to user input as query suggestions |
US8676828B1 (en) | 2009-11-04 | 2014-03-18 | Google Inc. | Selecting and presenting content relevant to user input |
US20120254216A1 (en) * | 2009-12-14 | 2012-10-04 | Mitsubishi Electric Corporation | Input support device |
US8631004B2 (en) * | 2009-12-28 | 2014-01-14 | Yahoo! Inc. | Search suggestion clustering and presentation |
CN102298582B (zh) * | 2010-06-23 | 2016-09-21 | 商业对象软件有限公司 | 数据搜索和匹配方法和*** |
US8560562B2 (en) * | 2010-07-22 | 2013-10-15 | Google Inc. | Predictive query suggestion caching |
US8838783B2 (en) | 2010-07-26 | 2014-09-16 | Seven Networks, Inc. | Distributed caching for resource and mobile network traffic management |
CA2806527A1 (en) | 2010-07-26 | 2012-02-09 | Seven Networks, Inc. | Mobile network traffic coordination across multiple applications |
US20120047025A1 (en) | 2010-08-19 | 2012-02-23 | Google Inc. | Query stem advertising |
US8812733B1 (en) | 2010-08-19 | 2014-08-19 | Google Inc. | Transport protocol independent communications library |
US8843153B2 (en) | 2010-11-01 | 2014-09-23 | Seven Networks, Inc. | Mobile traffic categorization and policy for network use optimization while preserving user experience |
WO2012060995A2 (en) | 2010-11-01 | 2012-05-10 | Michael Luna | Distributed caching in a wireless network of content delivered for a mobile application over a long-held request |
US20120124072A1 (en) * | 2010-11-16 | 2012-05-17 | Microsoft Corporation | System level search user interface |
US10346479B2 (en) | 2010-11-16 | 2019-07-09 | Microsoft Technology Licensing, Llc | Facilitating interaction with system level search user interface |
US8515984B2 (en) | 2010-11-16 | 2013-08-20 | Microsoft Corporation | Extensible search term suggestion engine |
US10073927B2 (en) | 2010-11-16 | 2018-09-11 | Microsoft Technology Licensing, Llc | Registration for system level search user interface |
US8364709B1 (en) | 2010-11-22 | 2013-01-29 | Google Inc. | Determining word boundary likelihoods in potentially incomplete text |
US8930391B2 (en) | 2010-12-29 | 2015-01-06 | Microsoft Corporation | Progressive spatial searching using augmented structures |
US9031970B1 (en) | 2011-01-26 | 2015-05-12 | Google Inc. | Query autocompletions |
GB2517815A (en) | 2011-04-19 | 2015-03-04 | Seven Networks Inc | Shared resource and virtual resource management in a networked environment |
WO2012149221A2 (en) | 2011-04-27 | 2012-11-01 | Seven Networks, Inc. | System and method for making requests on behalf of a mobile device based on atomic processes for mobile network traffic relief |
US8762356B1 (en) | 2011-07-15 | 2014-06-24 | Google Inc. | Detecting change in rate of input reception |
US8645825B1 (en) | 2011-08-31 | 2014-02-04 | Google Inc. | Providing autocomplete suggestions |
US9043350B2 (en) * | 2011-09-22 | 2015-05-26 | Microsoft Technology Licensing, Llc | Providing topic based search guidance |
US9251126B1 (en) | 2011-11-16 | 2016-02-02 | Google Inc. | System and method for using pre-defined character ranges to denote document features |
US8612414B2 (en) | 2011-11-21 | 2013-12-17 | Google Inc. | Grouped search query refinements |
EP2789137A4 (en) | 2011-12-06 | 2015-12-02 | Seven Networks Inc | SYSTEM OF REDUNDANTLY CLUSTERED MACHINES FOR PROVIDING TILTING MECHANISMS IN MOBILE TRAFFIC MANAGEMENT AND NETWORK RESOURCE PRESERVATION |
US8934414B2 (en) | 2011-12-06 | 2015-01-13 | Seven Networks, Inc. | Cellular or WiFi mobile traffic optimization based on public or private network destination |
WO2013086455A1 (en) | 2011-12-07 | 2013-06-13 | Seven Networks, Inc. | Flexible and dynamic integration schemas of a traffic management system with various network operators for network traffic alleviation |
US9277443B2 (en) | 2011-12-07 | 2016-03-01 | Seven Networks, Llc | Radio-awareness of mobile device for sending server-side control signals using a wireless network optimized transport protocol |
US9348479B2 (en) | 2011-12-08 | 2016-05-24 | Microsoft Technology Licensing, Llc | Sentiment aware user interface customization |
EP2792188B1 (en) | 2011-12-14 | 2019-03-20 | Seven Networks, LLC | Mobile network reporting and usage analytics system and method using aggregation of data in a distributed traffic optimization system |
US9378290B2 (en) | 2011-12-20 | 2016-06-28 | Microsoft Technology Licensing, Llc | Scenario-adaptive input method editor |
US9285954B2 (en) * | 2012-02-29 | 2016-03-15 | Google Inc. | Dynamically-generated selectable option icons |
US10078672B2 (en) * | 2012-03-21 | 2018-09-18 | Toshiba Solutions Corporation | Search device, search method, and computer program product |
US8812695B2 (en) | 2012-04-09 | 2014-08-19 | Seven Networks, Inc. | Method and system for management of a virtual network connection without heartbeat messages |
CN104428734A (zh) | 2012-06-25 | 2015-03-18 | 微软公司 | 输入法编辑器应用平台 |
WO2014000251A1 (en) * | 2012-06-29 | 2014-01-03 | Microsoft Corporation | Input method editor |
WO2014011216A1 (en) | 2012-07-13 | 2014-01-16 | Seven Networks, Inc. | Dynamic bandwidth adjustment for browsing or streaming activity in a wireless network based on prediction of user behavior when interacting with mobile applications |
EP2891078A4 (en) | 2012-08-30 | 2016-03-23 | Microsoft Technology Licensing Llc | CHOICE OF CANDIDATE BASED ON CHARACTERISTICS |
US9384279B2 (en) | 2012-12-07 | 2016-07-05 | Charles Reed | Method and system for previewing search results |
US9268759B2 (en) | 2012-12-17 | 2016-02-23 | Amadeus S.A.S. | Recommendation engine for interactive search forms |
US9201856B2 (en) | 2012-12-17 | 2015-12-01 | Amadeus S.A.S. | Recommendation engine for interactive search forms |
US8874761B2 (en) | 2013-01-25 | 2014-10-28 | Seven Networks, Inc. | Signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols |
US9195716B2 (en) * | 2013-02-28 | 2015-11-24 | Facebook, Inc. | Techniques for ranking character searches |
US8750123B1 (en) | 2013-03-11 | 2014-06-10 | Seven Networks, Inc. | Mobile device equipped with mobile network congestion recognition to make intelligent decisions regarding connecting to an operator network |
US9065765B2 (en) | 2013-07-22 | 2015-06-23 | Seven Networks, Inc. | Proxy server associated with a mobile carrier for enhancing mobile traffic management in a mobile network |
EP3030982A4 (en) | 2013-08-09 | 2016-08-03 | Microsoft Technology Licensing Llc | INPUT PROCESSORS EDITOR WITH LANGUAGE SUPPORT |
US20170134819A9 (en) * | 2013-11-19 | 2017-05-11 | Sap Se | Apparatus and Method for Context-based Storage and Retrieval of Multimedia Content |
US9727663B2 (en) * | 2014-04-30 | 2017-08-08 | Entit Software Llc | Data store query prediction |
US9727666B2 (en) | 2014-04-30 | 2017-08-08 | Entit Software Llc | Data store query |
US10134067B2 (en) * | 2015-07-27 | 2018-11-20 | Ariba, Inc. | Autocomplete of searches for data stored in multi-tenant architecture |
RU2015156695A (ru) | 2015-12-29 | 2017-07-05 | Общество С Ограниченной Ответственностью "Яндекс" | Способ и система обработки префикса, связанного с поисковым запросом |
US10936945B2 (en) | 2016-06-06 | 2021-03-02 | Microsoft Technology Licensing, Llc | Query classification for appropriateness |
US10698931B1 (en) * | 2016-12-07 | 2020-06-30 | Parallels International Gmbh | Input prediction for document text search |
US10803123B2 (en) | 2018-01-26 | 2020-10-13 | Verizon Patent And Licensing Inc. | Automatic generation of variations of search criteria for use in a predictive search engine |
US11556707B2 (en) | 2020-06-18 | 2023-01-17 | Google Llc | Fulfillment of actionable requests ahead of a user selecting a particular autocomplete suggestion for completing a current user input |
WO2022040621A1 (en) * | 2020-08-21 | 2022-02-24 | Cyborg Inc. | System and method for encrypted search using hash vectorization models |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6564213B1 (en) * | 2000-04-18 | 2003-05-13 | Amazon.Com, Inc. | Search query autocompletion |
US7219090B2 (en) * | 2003-04-25 | 2007-05-15 | Overture Services, Inc. | Method and system for blending search engine results from disparate sources into one search result |
US7836044B2 (en) * | 2004-06-22 | 2010-11-16 | Google Inc. | Anticipated query generation and processing in a search engine |
US20060106769A1 (en) * | 2004-11-12 | 2006-05-18 | Gibbs Kevin A | Method and system for autocompletion for languages having ideographs and phonetic characters |
KR20070024771A (ko) * | 2005-08-30 | 2007-03-08 | 엔에이치엔(주) | 질의어 자동변환을 이용한 자동완성 질의어 제공 시스템 및방법 |
KR100643801B1 (ko) * | 2005-10-26 | 2006-11-10 | 엔에이치엔(주) | 복수의 언어를 연동하는 자동완성 추천어 제공 시스템 및방법 |
-
2008
- 2008-08-07 US US12/188,163 patent/US20090043741A1/en not_active Abandoned
- 2008-08-08 KR KR1020107005258A patent/KR101533570B1/ko active IP Right Grant
- 2008-08-08 WO PCT/US2008/072678 patent/WO2009021204A2/en active Application Filing
- 2008-08-08 CN CN2008801102081A patent/CN101816000B/zh active Active
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104011712A (zh) * | 2011-06-24 | 2014-08-27 | 谷歌公司 | 对跨语言查询建议的查询翻译进行评价 |
CN103703456A (zh) * | 2011-07-14 | 2014-04-02 | 谷歌公司 | 预载网页移动网浏览器 |
CN103703456B (zh) * | 2011-07-14 | 2016-02-10 | 谷歌公司 | 预载网页移动网浏览器 |
CN112041835A (zh) * | 2018-04-19 | 2020-12-04 | 艾玛迪斯简易股份公司 | 控制多输入搜索结果的生成 |
Also Published As
Publication number | Publication date |
---|---|
US20090043741A1 (en) | 2009-02-12 |
WO2009021204A2 (en) | 2009-02-12 |
CN101816000B (zh) | 2012-08-08 |
KR101533570B1 (ko) | 2015-07-06 |
WO2009021204A3 (en) | 2009-05-28 |
KR20100068382A (ko) | 2010-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101816000B (zh) | 用于部分输入的搜索查询的自动完成和自动输入法校正 | |
EP2024880B1 (en) | Demographic based classification for local word wheeling/web search | |
CN100483416C (zh) | 一种字符输入的方法、输入法***及词库更新的方法 | |
US7606700B2 (en) | Adaptive task framework | |
CN101194256B (zh) | 具有表意文字和音标字符的语言的自动输入完成的方法和*** | |
CN106959994B (zh) | 服务器侧的匹配 | |
CN102439542B (zh) | 电子设备的文本输入***及文本输入方法 | |
US8996550B2 (en) | Autocompletion for partially entered query | |
CN107408107B (zh) | 文本预测整合 | |
US8335787B2 (en) | Topic word generation method and system | |
CN102138142A (zh) | 对部分用户输入的词典建议 | |
US20070168469A1 (en) | Server side search with multi-word word wheeling and wildcard expansion | |
CN102725759A (zh) | 用于搜索结果的语义目录 | |
US20070106496A1 (en) | Adaptive task framework | |
US20200233927A1 (en) | Context-based translation retrieval via multilingual space | |
US11086866B2 (en) | Method and system for rewriting a query | |
AU2004200638A1 (en) | Methods and systems for language translation | |
CN102163198A (zh) | 提供新词或热词的方法及*** | |
CN102622450A (zh) | 用户的浏览器历史的相关性排序 | |
CN102144228A (zh) | 根据输入字符序列的资源定位符建议 | |
CN103927329A (zh) | 一种即时搜索方法和*** | |
US20070164782A1 (en) | Multi-word word wheeling | |
JP2010537286A (ja) | 領域辞書の作成 | |
JPWO2004111876A1 (ja) | 検索条件を再利用する検索システムおよび方法 | |
KR102615973B1 (ko) | 개인 사전 구축 서비스 제공 시스템 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: American California Patentee after: Google limited liability company Address before: American California Patentee before: Google Inc. |
|
CP01 | Change in the name or title of a patent holder |