跨语言输入法编辑器.pdf

上传人:b*** 文档编号:1308889 上传时间:2018-04-14 格式:PDF 页数:28 大小:3.61MB
返回 下载 相关 举报
摘要
申请专利号:

CN201280074382.1

申请日:

2012.06.29

公开号:

CN104412203A

公开日:

2015.03.11

当前法律状态:

实审

有效性:

审中

法律详情:

专利申请权的转移IPC(主分类):G06F 3/023登记生效日:20171017变更事项:申请人变更前权利人:微软公司变更后权利人:微软技术许可有限责任公司变更事项:地址变更前权利人:美国华盛顿州变更后权利人:美国华盛顿州|||实质审查的生效IPC(主分类):G06F3/023申请日:20120629|||公开

IPC分类号:

G06F3/023

主分类号:

G06F3/023

申请人:

微软公司

发明人:

M·R·斯科特; J·K·纳加里; J-Y·李; W·刘; R·赖; X·陈; H·候

地址:

美国华盛顿州

优先权:

专利代理机构:

上海专利商标事务所有限公司31100

代理人:

陈斌

PDF下载: PDF下载
内容摘要

一些实现提供用于跨语言候选建议的技术和安排。例如,一些显示包括文本输入区域的主机应用的用户界面。输入法编辑器(IME)接收一个或多个字符作为输入。作为响应,显示一个或多个完成候选,这些完成候选中的至少一个是采用与一个或多个字符不同语言的跨语言完成候选。

权利要求书

1.  一种计算系统,包括:
一个或多个处理器;
一个或多个存储指令的计算机可读介质,当所述指令被一个或多个处理器执行时,致使所述一个或多个处理器以执行包括以下的动作:
显示包括文本输入区域的主机应用的用户界面;
由输入法编辑器(IME)接收一个或多个字符,所述IME将一个或多个完成候选中的完成候选插入所述主机应用的所述文本输入区域中;以及
显示所述一个或多个完成候选,所述完成候选中的至少一个是采用与所述一个或多个字符不同语言的跨语言完成候选。

2.
  如权利要求1所述的计算系统,其特征在于,还包括:
接收对一个或多个显示的完成候选中的至少一个的选择;以及
将至少一个所选完成候选插入到所述主机应用的所述文本输入区域中。

3.
  如权利要求1所述的计算系统,其特征在于,显示所述一个或多个完成候选包括:
对于至少一个跨语言完成候选,显示与所述跨语言完成候选相对应的候选信息,所述候选信息包括跨语言完成候选中采用与所述跨语言完成候选不同语言的版本。

4.
  如权利要求3所述的计算系统,其特征在于,与所述跨语言完成候选不同的语言是所述一个或多个字符的语言。

5.
  如权利要求4所述的计算系统,其特征在于,包括在所述候选信息中的所述跨语言完成候选的版本采用与所述一个或多个字符不同的书写系统。

6.
  如权利要求1所述的计算系统,其特征在于,所述一个或多个完成候选按 照基于所述完成候选的排名的次序而显示。

7.
  如权利要求6所述的计算系统,其特征在于,对所述一个或多个完成候选的排名至少部分地基于关于要在该处插入所述完成候选中的一个或多个的插入点的上下文信息。

8.
  如权利要求1所述的计算系统,其特征在于,显示所述一个或多个完成候选包括:
对于采用所述一个或多个字符的语言的至少一个完成候选,显示与采用所述一个或多个字符的语言的完成候选相对应的候选信息,所述候选信息包括对应的完成候选中采用与所述完成候选不同语言的版本。

9.
  一种方法,包括:
接收词语的至少一部分;以及
由处理器标识或生成一个或多个完成候选,所述完成候选中的至少一个采用与所述词语不同的语言。

10.
  如权利要求1所述的方法,其特征在于,还包括:
接收所述词语的上下文信息;以及
至少部分地基于所述上下文信息来排名所述一个或多个完成候选。

11.
  如权利要求10所述的方法,其特征在于,所述上下文信息包括关于要在该处将所述完成候选中的一个或多个插入到计算机应用中的插入点的信息。

12.
  如权利要求11所述的方法,其特征在于,关于插入点的信息至少包括n-元并且所述排名至少部分地基于搭配。

13.
  如权利要求10所述的方法,其特征在于,所述上下文信息包括关于要将所述完成候选插入其中的计算机应用和环境的场景信息。

14.
  如权利要求13所述的方法,其特征在于,所述场景信息包括过程名称、输入范围、计算机应用版本、以及操作系统中的至少一个。

15.
  如权利要求9所述的方法,其特征在于,还包括:
对所述一个或多个完成候选排名,其中当多个完成候选被标识或生成时,对至少一个完成候选的排名至少部分地基于所述完成候选是否采用与所述词语不同的语言。

16.
  一个或多个维护指令的计算机可读介质,当所述指令被一个或多个处理器执行时,配置所述一个或多个处理器以执行包括以下的动作:
由输入法编辑器(IME)接收一个或多个字符,所述IME将一个或多个完成候选中的完成候选插入主机应用的文本输入区域中;
向包括至少一个计算设备的远程服务请求一个或多个完成候选;以及
从所述远程服务接收所述一个或多个完成候选,所述完成候选中的至少一个是采用与所述一个或多个字符不同语言的跨语言完成候选;
显示所述一个或多个完成候选。

17.
  如权利要求16所述的一个或多个种计算机可读介质,其特征在于,所述动作进一步包括:
接收对一个或多个显示的完成候选中的至少一个的选择;以及
将至少一个所选完成候选插入到所述主机应用的所述文本输入区域中。

18.
  如权利要求16所述的一个或多个种计算机可读介质,其特征在于,所述动作进一步包括:
确定所述一个或多个字符中的字符数目;以及
其中当所述一个或多个字符中的字符数目大于预定义数目时执行所述请求。

19.
  如权利要求16所述的一个或多个种计算机可读介质,其特征在于,所述动作进一步包括:
在所述请求之前,标识或生成采用与所述一个或多个字符相同语言的一个或多个完成候选;
确定采用与所述一个或多个字符相同语言的完成候选的数目;以及
其中当采用与所述一个或多个字符相同语言的完成候选的数目小于预定义数目时执行所述请求。

20.
  如权利要求16所述的一个或多个计算机可读介质,其特征在于,当在所述IME或所述主机应用之一中启用外语模式时执行所述请求。

说明书

跨语言输入法编辑器
技术领域
本公开涉及计算机输入的技术领域
背景
计算设备的持续增长已经导致在这些设备上使用的应用和其它内容可用性的增长。例如,用户在各种各样的计算设备上采用各种应用,诸如游戏、数字媒体播放器、浏览器等。随着计算设备的数目以及在这些设备上使用的应用的数目持续增加,用户越来越感兴趣在使用这些计算设备和应用的同时增强他们的体验。
概述
提供本概述是为了以简化的形式介绍将在以下具体实施方式中进一步描述的概念选择。本概述并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。
一些实现提供用于跨语言候选建议的技术和安排。例如,一些实现显示包括文本输入区域的主机应用的用户界面。输入法编辑器(IME)接收一个或多个字符作为输入。作为响应,显示一个或多个完成候选,这些完成候选中的至少一个是采用与一个或多个字符不同语言的跨语言完成候选。
附图说明
参考附图来描述具体实施方式。在不同附图中使用相同的附图标记指示相似或相同的项。
图1示出根据某些实现的示例系统。
图2示出根据某些实现的示例系统。
图3示出根据某些实现的示例流程图。
图4示出根据某些实现的示例显示。
图5示出根据某些实现的示例显示。
图6示出根据某些实现的示例系统。
图7示出根据某些实现的示例流程图。
图8示出根据某些实现的示例流程图。
图9示出根据某些实现的示例显示。
图10示出根据某些实现的示例显示。
图11示出某些实现可以在其中操作的示例系统。
具体实施方式
概览
本公开包括用于跨语言输入法的技术和安排,并且在一些实现中,包括用于向用户提供完成候选以供插入计算机应用的跨语言输入法编辑器(IME)的技术和安排。在一些实现中,跨语言IME至少部分地基于与用户输入有关的上下文信息来提供完成候选。
在涉及IME的一些实现中,系统通过允许用户以第二语言输入对应的文本并且接着以第一语言提供建议候选以供插入计算机应用来协助用户以第一语言输入文本。考虑以下场景:用户正在用西班牙文向IME输入文本,但用户的第一语言是英文。在此场景中,用户可能在构思恰适的西班牙文词语时有困难,但用户知道恰适的英文词语。一些实现通过使得用户能够向IME输入恰适的英文词语,接着向用户呈现建议西班牙文候选词语列表以供用户选择并插入到IME主存的程序中来向用户提供协助。
其它实现可不涉及IME,而是执行其它程序中的跨语言协助的功能,诸如在文字处理器程序中的拼写检查功能、移动计算设备的文本消息收发程序之类的应用的自动完成功能、手写识别应用的字符/文字识别功能、以及语音识别/听写应用的文字识别功能。这一列表并不意味着是穷尽性的,并且示例实现仅仅是示例而不应被认为是限制。因而,应当理解,尽管本公开可能出于易于理解的目的而在IME的上下文中描述系统和方法,但本文描述的系统和方法不限于这些用途并且可以在许多其它情景中使用。
本文所述的跨语言协助功能可在计算系统的软件和硬件中的各种级别来实现。这些级别包括操作系统(OS)级,如带有或不带有应用支持的OS中,应用 级,或者与OS分开(即独立)或者作为OS的插件或者作为另一应用的插件,等等。此外,跨语言协助功能可以通用地针对所有应用中的所有文本输入区域来实现(诸如在仅OS实现中),或者该功能可以仅在选择文本输入区域中、或者在具体程序(例如,OS级别IME)、程序类(例如,个体程序的专用IME)、指定文本输入区域、文本输入区域类等等中活动。此外,一些实现可以允许用户设置跨语言协助功能的各个参数,诸如实现该功能的程序类或文本输入区域、要用于该功能的语言和书写系统等等。
如上所述,输入法编辑器(IME)是协助用户向计算设备输入文本的计算机应用。IME可以基于从用户接收的输入提供若干完成候选。在本文描述的跨语言IME的一些实现中,输入文本和所提供的候选文本可以是相同语言和/或书写系统,或者是不同的语言和/或书写系统,或者其某种组合。
例如,用户可以输入英文单词或短语的一个或多个初始拉丁字符,并且IME基于初始字符提供一个或多个完整英文单词或短语,用户能够从中选择一个合适的单词或短语。该功能被称为自动完成功能,或者可以被称为相同语言完成候选建议。在一些实现中,自动完成功能可以被实现为客户端侧基于二进制搜索的数据结构。
在另一示例中,IME还可以通过音译直译(transliteration)协助用户输入非拉丁字符,诸如东亚字符(例如汉字)。IME的该功能可以允许用户在其键盘通常仅支持输入拉丁字符的大众操作系统中输入非拉丁字符。例如,用户可以通过键盘输入拉丁字符以形成中文汉字字符的语音拼写。IME基于该拼写向用户返回一个或多个中文字符以供用户选择合适的一个字符。用于中文的一个这样的语音书写系统是拼音,其可以被正确地描述为中文至拉丁字符(也称为中文的古罗马化)的音译直译。
在另一示例中,IME将刚刚描述的音译直译功能与翻译功能相组合以在用户无法回忆起第一语言的恰适词语但是能够回忆起用非拉丁字符的第二语言书写系统的对应文字时协助用户用第一语言进行书写。这与所提供的英文和西班牙文的示例类似。然而,在该情形中,使用中文作为示例,IME执行对拼音词语的识别,确定拼音词语到中文汉字字符的候选音译直译,确定该候选汉字词语的英文翻译,然后向用户提供候选汉字词语及其对应的英文等价物。用户随后选择所选候选词语。由用户选择的英文等价物完成候选随后可以被插入到各个其他计算机应用中, 比如聊天应用、文档编辑应用、游戏应用等等。
在一些实现中,完成候选列表可包括相同语言完成候选和跨语言完成候选两者。
在讨论涉及两种语言时,本文的讨论出于易于理解的考虑可以使用具体的语言。例如,若干附图使用英文和中文作为示例,而其它附图使用英文和西班牙文。在这些讨论中,这些示例可以被概括为任何第一语言和第二语言。具体地,在这些讨论中英文可以被概括为任何第一语言,而中文和西班牙文可以被概括为任何第二语言。
示例实现
图1示出根据一些实现的系统100的示例框架。系统100包括被示为由当前正在显示主机应用106和输入法编辑器108的触摸屏显示器104组成的逻辑系统的计算设备102。主机应用包括文本输入区域110,而输入法编辑器(IME)108包括撰写窗口112和候选窗口114。尽管未在图1中示出,但在一些实现中,计算设备102包括一个或多个处理器和存储器,其中存储器包括主机应用106和IME 108的程序指令。然而,其它实现不限于这样的安排。如上所提及的,尽管这一示例实现出于易于理解而使用英文和中文,但在任何特定实现合适的情况下可以替换任何第一和第二语言。
在图1所示的示例中,用户使用了IME 108的撰写窗口112来向主机应用输入“When we met I said,”。在一些示例实施例中,用户可能结合触摸屏显示器104来使用屏幕上键盘(未示出)。在输入了上述短语之后,用户随后可能无法回忆起恰适的英文单词,而向IME 108输入“nihao”。响应于确定“nihao”形成或部分地形成拼音词语,计算设备102作出上述音译直译和翻译以确定和致使IME 108在候选窗口114中向用户呈现针对“nihao”的三个建议英文完成候选(即,“hello”、“how are you?”和“drawn up”)。
在一些实现中,诸如图1中示出的实现,IME 108还包括(在括号中)每个英文候选的汉字等价物。将中文汉字等价物包括在内可能是由于各种原因中的任一个导致的。两个可能的原因是:1)在拼音和汉字之间不存在一对一关系以及2)将汉字等价物包括在内可以向用户提供更高置信和/或增加用户选择的准确性。在一些实现中,汉字字符可以通过斜体或不同字体色彩的手段从视觉上衬托以区别于英 文词语。这一视觉衬托物开可充当汉字字符是用作参考并且将不会被包括在插入到主机应用106中的文本中的指示符。尽管示出和讨论了具体的视觉衬托物,但各实现不限于任何特定的视觉衬托物或甚至对任何视觉衬托物的使用。
图2示出在用户从输入法编辑器(IME)108的候选窗口114中选择词语一“hello”之后的系统100的示例框架。具体地,在接收到选择之际,IME 108致使词语“hello”在图1中示出的插入点光标符号处被插入到主机应用106的文本输入区域110中。在将所选候选插入到主机应用106之后或与其并发地,IME 108清除或重置撰写窗口112和候选窗口114以供继续输入文本。
出于易于讨论和理解,图1和2被示为包括触摸屏显示器104,一般通过对屏幕上键盘的触摸选择来完成对文本的输入。然而,各实现不限于此。可通过各种输入法来完成用户输入,诸如键盘输入、语音输入以及触摸屏姿势输入(例如手写识别)。例如,在一些实现中,计算设备102可包括鼠标和键盘,并且文本输入通过在键盘上打字或者通过鼠标来使用屏幕上键盘来完成。在该实现中对完成候选的选择可以通过输入数字标识符(例如,输入“1”以选择图1中的“hello”)或者通过鼠标输入(例如,在候选窗口114上点击“hello”)。在另一示例实现中,具有语音输入的系统(例如,听写系统)可以允许用英文听写的用户(碰到了该用户无法回忆起的英文词语)说出该用户无法回忆起的英文词语的中文等价物。说出的词语可以被识别为非英文词语,此时系统可以呈现英文语言完成候选及其汉字等价物以供用户选择,如上文参考图1所讨论的。鉴于本文的公开,关于可用于所公开的技术和安排的输入法的细节的实现的这些和其他变型对于本领域技术人员来说将显而易见。
图3示出根据一些实现的示例过程流300。在图3的流程图中,每一个框表示可以用硬件、软件、或其组合实现的一个或多个操作。在软件的上下文中,各个框表示当由一个或多个处理器执行时使处理器执行既定操作的计算机可执行指令。一般而言,计算机可执行指令包括执行特定功能或实现特定抽象数据类型的例程、程序、对象、模块、组件、数据结构等。描述各个框的次序并不旨在被解释为限制,并且任何数量的所述框可以按任何次序和/或并行地组合以实现该过程。出于讨论的目的,过程300参考以上描述的系统100来描述,但其他模型、框架、系统和环境可实现所例示的过程。
在框302,计算设备102在触摸屏显示器104上显示主机应用106和输入法编辑器(IME)108。
在框304,计算设备102接收字符输入。如上所讨论的,本文公开的技术和安排的实现可以利用各种各样的输入法和设备。然而,出于简明的目的,图3-5和9-10的讨论将在使用触摸屏显示器104来显示和致动的屏幕上键盘的触摸输入的上下文中讨论。
在框306,IME 108分析接收到的字符输入,并且基于其来分别确定第一语言和第二语言(英文和中文)的建议完成候选。应当注意,IME 108可以在作出其确定时将其它信息纳入考虑。将在以下讨论其它信息中的一些示例。该过程流接着继续到框308。
在框308,IME 108在候选窗口114中显示任何建议完成候选。该流程随后前进至框310。
在框310,IME 108等待三个事件之一。第一,如果IME 108接收到一个或多个附加字符312(除了选择要被插入的候选词语的字符输入之外的)的输入,则该流程返回至框306并且执行对建议完成候选的新的确定。
第二,如果在框310,IME 108接收到对建议完成候选314的选择以供插入到主机应用106中,则该流程移动至框316。在框316,所选完成候选按照可与上文关于将单词“hello”插入到主机应用106所讨论的以及在图2中所示的类似的方式被插入到主机应用106的文本输入区域110中。该流程随后前进至框318。
第三,如果在框310,IME 108接收到指定单词完成而不使用完成候选320的输入(例如,插入空格等以指示移位至新的单词的指令),则该流程移动至框322。在框322,撰写窗口112的内容被插入到主机应用106的文本输入区域110中。作为示例,这种情形可能在用户希望将非英文词语插入到文本中时发生。该流程随后移至框318。
在框318,IME 108已经要么将建议完成候选要么将撰写窗口112的内容插入到主机应用106的文本输入区域110中。IME 108接着清除撰写窗口112和候选窗口114,以使得IME准备好后续输入。尽管未示出,但过程流300可以接着在接收到进一步的字符输入之际移动回到框304。
如上所提及的,IME 108在确定建议完成候选时可以将除了接收到的字符输入 之外的信息考虑在内。在一些实现中,这一附加信息包括上下文信息。可被使用的两个示例类型的上下文信息是N-元和场景信息。N-元的示例是光标左侧的N个单词以及光标右侧的M个单词的序列。场景信息的示例是包括各个项的信息,诸如过程名、输入范围(字段类型/名称)、应用版本、以及操作系统版本。在一些实现中,接收到的字符输入(即,撰写窗口112的内容)可用于生成可在候选窗口114中显示的任何数目的完成候选。上下文信息(诸如N-元和场景信息)可以在一些实现中被用来对所生成的完成候选进行排名以向用户显示。在其中所生成的完成候选的数目大于可以在候选窗口中显示的数目的情形中,附加信息可用来选择要显示哪些完成候选。
在一些实现中,N-元可以在文档的内容级别处有用,并且场景信息可以提供关于文档本身和环境上下文的信息。
通过N-元,系统可以检测不同的“触发单词”,像例如与经翻译的中文等价物(如在web上在统计学上所见的单词如“hello”)高度并发的“said”。因此,在包括N-元信息的实现中,如果N-元附近文本包含与候选词语相关联的触发词语,则该候选词语可以出现在候选排名列表中的较高位置。触发单词及其对应的搭配词语的发现是一种被称为“搭配提取”的计算语言方法。概括来说,一些实现可以构建语言模型,该语言模型随后被用来基于上下文在概率上影响候选的排名。各实现还可在跨语言上下文中应用N-元分析,以使得分析用不同语言书写的词语之间的上下文并且进一步在这些语言的非拉丁书写系统中,执行一种语言与另一语言的词语之间的音译直译的分析。
场景信息可用作排名中的另一特征。在一些实现中,IME 108使用输入范围和应用名称来提供暗示不同的书写样式的信号。例如,在微软公司内的电子邮件中与他们的经理对话时可能采用的书写样式可能不同于在Windows Live Messenger、Hotmail或Gmail上与家庭成员通信时使用的书写样式。作为示例,场景信息可包括输入范围是电子邮件消息正文而应用名称是Outlook的信息。
这一分析的示例可以在图1中看到,其中词语“nihao”或更具体地其翻译“hello”可以使用n-元和场景信息来分析。为了到达图1中示出的点(其中“hello”被排名为第一候选),计算设备102使用上述上下文信息来提升词语“hello”。即,IME 108观察到1)作为“hello”的公知搭配的触发词语“said”紧接在当前插入 点之前出现,2)输入范围是文档并且应用是微软公司的这两者均会暗示更正式的书写样式,其中再一次“hello”将在候选列表中排名更高。鉴于这一上下文分析,“hello”被排名为第一候选(除非另一词语被给予更高的“相关性分数”)。
图4示出输入法编辑器(IME)400的功能。IME 400类似于输入法编辑器108,但包括其功能性方面的一些变型,并且包括不同于IME 108的候选窗口402。图4用两种状态示出输入法编辑器(IME)400的建议候选的示例,一种状态是“nih”已经被输入到项目404处的撰写窗口,而另一状态是“niha”已经被输入到项目406处的撰写窗口。如上所述,输入法编辑器400的功能与上文针对IME 108所描述的功能不同。下面讨论两处变型。
第一处变型可以在项目404中IME 400的候选窗口402中看到。具体地,IME400已经在项目404中提供了直接英文到英文的完成的完成候选,但是在建议完成候选旁边示出了对应中文单词的汉字字符。这示出了在候选窗口402中显示汉字字符可以但并不要求限于跨语言候选建议(诸如参照图1所讨论的那些)。其中仅跨语言完成候选包括汉字等价物的实现出现在下文讨论的图5中。取决于实现,这一差别可以是IME 400被具体地设计成总是示出针对包括在候选窗口402中的任何英文语言建议完成候选的汉字字符的结果,或者IME 400可包括可调整用户设置以允许用户启用、禁用或定制何时将这些汉字等价物包括在候选窗口402中。应当再次注意,在适当时,对英文的引用可以被修改为任何其它第一语言,而对中文和汉字的引用可以被修改为任何其它第二语言。
第二处变型在于图4中示出的实现的IME 400并非总是执行跨语言候选建议功能。相反,当IME 400确定满足一个或多个条件时,IME 400执行跨语言候选建议功能。在图4中示出的示例中,IME 400确定是否满足三个条件。第一个条件是IME 400检查IME 400的语言模式是否是或者是否已经改变成“外语输入模式”(例如,“英文模式”)。在一些实现中,当用户例如按压Shift键或使用用户界面内的菜单选项时,输入模式在“外语输入模式”中来回切换。除非另外指出,针对本文的讨论假定用户在每一过程中都进入了“外语模式”。其余的两个条件在下文中参考项目404来讨论。
在项目404,用户已经向输入法编辑器108的撰写窗口输入了“When we met I said,nih”。短语“When we met I said,”已经按照诸如图1所示的方式被插入主机 应用中。IME 400处理输入的字符,并且返回两个英文单词“nihilism”和“nihilistic”作为完成候选。如上所提及的,在一些实现中,IME可以由于一个或多个条件而不执行跨语言候选建议。具体地,当撰写窗口中的字符计数大于字符数N但小于字符数M时,诸如图4所示的一些实现可以执行跨语言候选建议。在一示例实现中,N可以>=4而M可以<=16。在一些这样的实现中,可以这么做,因为在少于4个字符的情况下,单词不太可能形成完全,而在超过16个字符的情况下,输入变得越基于句子的机器翻译,而这可能不太准确。作为检查字符计数方面的条件的补充或者替换,IME可以确定将可用的第一语言(此处为英文)的候选数目,并且如果候选数目大于或等于数目K,则IME 400可以放弃跨语言候选建议。另一方面,当候选窗口中的候选数目小于K时,IME 400执行跨语言候选建议。作为示例,在一些实现中,当可被示出的候选的最大数目是5时,K可能<=3。一般地,一些实现可以基于这样的假定来设计,如果IME可以产生针对给定输入的自动完成建议的完整列表(即,相同语言完成候选),则用户可能不会用第二语言来输入词语(或第二语言的词语的音译直译)。
在404,用户现在向输入法编辑器400的撰写窗口输入了“niha”。在此时,字符数目大于4(上文讨论的示例)而具有此开头的英文语言单词的数目限于城市名“Nihau”的一个正确名词。因而,在项目404中,IME 400确定应当执行跨语言候选建议。作为跨语言候选建议分析的结果,IME 400确定“nihao”是“niha”的可能拼音完成。接着,IME 400执行上文讨论的上下文分析,包括搭配确定。据此确定在对应于拼音单词“nihao”的汉字词语中,翻译成英文“hello”或“how areyou?”的词语是排名最高的。接着至少部分地基于“said”与“hello”的搭配来确定英文等价物“hello”具有被选中的较高统计学概率。在图4中示出的示例实现中,从被包括在候选窗口中的角度来看,维护针对相同语言完成候选的优先级。换言之,尽管其它跨语言完成候选可能具有较高的上下文分析“得分”,但在选择要将哪些完成候选包括在候选窗口402中时相同语言完成候选“Nihau”被给予优先级。然而,这一优先级不延及排名。简言之,一些实现使用充分利用诸如上文讨论的上下文信息的统计学模型来对照词语“Nihau”排名翻译等价物。由于Nihau被确定为具有较低的上下文“得分”,“hello”和“how are you?”被给予较高排名并且在项目406中所示的候选窗口402中被呈现地较高。
出于简化的目的,应当理解,这一排名过程或与其类似的过程可以应用于任何各定实现中的完成候选以确定要在候选窗口中呈现哪些候选词语以及这些完成候选将被呈现的次序。因而,除非另外表明,应当假定在本说明书中描述的类似过程也可实现这样的排名/选择技术,并且这不应当被认为是限制。
在406示出的状态之后,如果用户完成了将词语“nihao”输入到撰写窗口402,则IME 400将镜像图1中的IME 108的表现,因为没有任何进一步的相同语言完成候选可用。
图5示出输入法编辑器(IME)500的功能。IME 500类似于IME 108和IME400,但在其功能性方面具有一些变型,并且包括不同于IME 108和IME 400的候选窗口502。输入到IME 500的文本被插入到作为项目504来指示的主机应用106中。在图5中示出的IME 500的状态506、508和510之前并且尤其在状态506之前,短语“There were many men and”已经被输入到IME 500并且IME 500已经将该短语插入到主机应用106中。图5示出了当1)在项目504处,“wom”接着被插入到撰写窗口中时,2)在项目508处,“e”被输入以使得项目508处的撰写窗口包括字符“wome”时,以及3)在项目510处,“n”被输入以使得项目510处的撰写窗口包括字符“women”时,IME 500的建议候选的示例。如上所述,如下所述的输入法编辑器500的功能与上文针对IME 108和IME 400所描述的功能不同。
在项目506,IME 500接收到输入字符“wom”,处理输入的字符,并且返回英文单词“women”、“woman”和“womenswear”。不像IME 400那样包括在候选窗口402中示出的任何英文词语的汉字等价物,IME 500不示出相同语言完成候选的汉字等价物(即,直接英文到英文的候选)。例如,在506,英文词语“women”、“woman”和“womenswear”不伴随它们的汉字等价物,因为它们是基于对英文词根“wom”的使用而提出的相同语言完成候选。缺少针对相同语言完成候选的汉字等价物可能是由于各种因素导致的,诸如IME 500被设计成不包括针对相同语言完成候选的等价物,或者IME 500可以具有允许启用或禁用显示针对相同语言完成候选的汉字等价物的用户设置。
此外,在图5示出的实现中,在506,IME 500不执行跨语言候选建议功能,因为字符计数条件确定的结果与上文参考项目404所讨论的结果相同。具体地,在 506,少于4个的字符被输入到IME 500中。然而,IME 500的另一功能变型缩窄了执行跨语言候选建议功能的范围(即便输入了4个字符)。这在下文参照项目508来讨论。
在项目508,IME 500接收到字符输入“e”,处理撰写窗口112中的文本(即“wome”),并且返回两个英文单词“women”和“woman”。如上所提及的,在图5示出的示例实现中,尽管撰写窗口包含至少4个字符并且不存在超过3个的英文候选,但候选窗口502中并未包括跨语言候选。这是因为在图5示出的实现中IME 500已经缩减了要从中建议候选的跨语言候选完成范围。具体地,IME 500仅基于撰写窗口的内容来执行跨语言检查以供完成拼音词语。因此,尽管women既是英文单词的拼写又是中文单词“we”或“our”的音译直译,但IME 500将跨匹配限于不具有拼音中的中文等价物的字符串“wome”。
在项目510,IME 500接收到字符输入“n”,处理撰写窗口112中的文本(即“women”),并且返回两个英文单词“women”和“woman”。在处理词语“women”期间,IME 500还确定“women”是至少一个中文单词的音译直译。相应地,IME500获得关于针对拼音中文词语“women”的跨语言完成候选的信息以供可能地显示在候选窗口502中。在一些实现中,IME 500确定英文词语“we”、“our”和“ourselves”各自是拼音音译直译“women”的可能翻译。IME 500对这些词语以及英文完成建议“women”和“womenswear”执行排名/选择以获得和呈现在项目510处的候选窗口502中示出的列表。在510处示出的非限制性实现中,词语“women”排名在列表顶部,因为其通常与单词/短语“men and”搭配作为短语“men and women”的一部分。尽管并未具有与women一样高的上下文“得分”,但发现womenswear具有比“we”和“our”更高的得分。排名在列表中继续向下。这得到了最低排名的完成候选,由于不能纳入可用空间,“ourselves”并未在候选窗口502中示出。
在510处示出的状态之后,用户可以通过选择要插入的候选之一、输入恰适的命令以插入撰写窗口的内容而不管任何建议完成候选、或者通过输入进一步的字符来继续。
图6示出包括客户端设备602和一个或多个服务器设备604的替换实现的逻辑框架600。客户端设备602和一个或多个服务器设备604跨网络606通信以执行 上文关于图1-5所讨论的类似的完成候选建议。此外,尽管服务器设备604被示为单个实体,但应当理解,一些实现可包括许多个体服务器设备。例如,一些实现可以“在云中”实现服务器设备604,这是由于在如此安排中可用的冗余存储器和处理能力。
客户端设备602包括主机应用608和客户端侧输入法编辑器(IME)应用610。客户端侧IME应用610包括用户界面612、上下文组件614、分析组件616和呈现组件。
主机应用608类似于上文参照图1-5所讨论的主机应用106。客户端侧IME应用610的用户界面612从用户接收输入,并且在图形用户界面(GUI)(类似于图1、2、5、9和10中示出的GUI)中向用户显示建议文本候选。用户界面612还接收其它用户输入和/或命令,诸如选择完成候选以供插入到主机应用608中的输入。上下文组件614收集关于用户输入的上下文的数据。分析组件616至少部分地基于收集的上下文数据来分析用户输入,并且基于接收到的输入来确定第一语言的任何建议完成候选。分析组件616接着确定是否应当查询一个或多个服务器设备604关于附加信息,诸如基于第二语言的跨语言完成候选以及取决于特定实现的对要被呈现的完成候选以及用于呈现的次序的选择。通信组件618执行客户端设备602的组件与其它设备(诸如一个或多个服务器设备604)之间跨网络606的通信。
客户端侧IME应用610的一些模块可被实现为单独的系统,且它们的处理结果可由IME 610使用。出于方便描述起见,以上IME在功能上被划分成分开描述的各个模块。当实现所公开的系统时,各个模块的功能可在软件和/或硬件的一个或多个示例中实现。
一个或多个服务器设备604可以各自包括服务器侧输入法编辑器应用620。服务器侧IME应用620包括统计分析和存储组件622、分析组件624和通信组件626。
统计分析和存储组件622创建和维护统计信息、索引音译直译和翻译的表、以及一个或多个服务器设备604回答来自客户端设备602的查询所使用的其它信息。
分析组件624使用来自客户端设备的查询中的接收到的字符和上下文信息以及由统计分析和存储组件622存储的信息来确定基于第二语言的跨语言完成候选以及取决于特定实现的第一语言的完成候选。分析组件624还可使用排名技术(诸 如上文参照图4和5所描述的技术)来选择要作为完成候选呈现的词语以及用于其呈现的次序。
通信组件626执行一个或多个服务器设备604的组件与其它设备(诸如客户端设备602)之间跨网络606的通信。
在客户端-服务器架构中可存在IME系统的其他配置。在另一示例中,分析组件616可以位于一个或多个服务器设备中而非客户端设备110中。在又一示例中,一个或多个服务器设备604的分析组件624可以合并到客户端设备602。
图7示出根据一些实现的示例过程流700。出于讨论的目的,参考以上描述的框架600(尤其是客户端设备602)来描述过程700,但其他模型、框架、系统和环境也可实现所例示的过程。
在框302,客户端侧输入法编辑器应用610的用户界面612致使客户端侧输入法编辑器(IME)610的图形用户界面(GUI)在触摸屏显示器(诸如触摸屏显示器104)上例如通过主机应用608来显示。在框304,客户端设备602的用户界面612接收字符输入。
在框702,上下文组件614收集有关接收到的字符输入的上下文的数据。分析组件616分析接收到的字符输入并且基于接收到的输入来确定第一语言的任何建议完成候选。该流程随后前进至框704。
在框704,分析组件616确定是否要向一个或多个服务器设备604查询关于基于第二语言的建议完成候选。如果分析组件616确定不应当查询服务器,则过程流接着继续至框308。如果分析组件616确定应当查询服务器,则过程流接着继续至框706。
在框706,通信组件618向一个或多个服务器604发送查询。查询包括信息,诸如接收到的输入字符、上下文信息等。取决于特定实现,也可查询除了基于第二语言的建议完成候选之外的信息。例如,查询可请求对要呈现的建议完成候选以及用于呈现的次序的选择。该流程随后前进至框708。
在框708,通信组件618从一个或多个服务器604接收对查询的响应。该流程随后前进至框308。
图7中示出的框308-318的操作与先前关于图3讨论的操作相同。相应地,此处不重复对这些框的操作的讨论。
一旦流程到达框318,客户端侧IME应用610要么将建议完成候选要么将撰写窗口112的内容插入到主机应用608中。客户端侧IME应用610接着清除其撰写窗口和候选窗口,以使得客户端侧IME准备好用于后续输入。尽管未示出,但过程流700可以接着在接收到进一步的字符输入之际移动回到框302。
图8示出根据一些实现的示例过程流800。出于讨论的目的,参考上述的框架600(尤其是一个或多个服务器设备604)来描述过程800,但其他模型、框架、系统和环境也可实现所例示的过程。
在框802,初始化一个或多个服务器设备604。因为在图8中示出的示例实现中,服务器设备基于在接收到请求之前在初始化时一个或多个服务器设备604创建、更新和加载信息到存储器中时所生成的音译直译和翻译的大型索引表来确定来自客户端设备602的查询的结果。
在一些实现中,这允许服务器设备604利用大量的存储器。这些索引在特定服务器初始化时被加载到存储器中以允许查询的快速完成。索引和表可以根据从先前跨语言完成请求的日志中收集的统计信息来生成以便使用与过去查询的词语的流行度大致匹配的概率来对它们进行预先排名。在一些实现中,用于遍历这些表的解码器可以将上述上下文参数考虑在内并且充分利用受监管的学习算法用于产生随着时间越来越好的结果。即,对来自候选群的特定候选的用户选择在全局规模被“学习”,并且通过充分利用日志数据,最终提供在特定上下文中可更好地匹配用户需求的结果。
在框804,服务器设备604从客户端侧IME应用610接收查询,该查询包括与客户端侧IME应用610的撰写窗口的内容相对应的一个或多个字符以及上下文信息(诸如场景和n-元信息)。该流程随后前进至框806。
在框806,服务器设备604确定基于不同于一个或多个字符的语言(即第一语言)的语言(即第二语言)的完成候选以及取决于特定实现的一个或多个字符的语言(即第一语言)的建议完成候选。该流程随后前进至框808。
在808,分析组件624使用排名技术(如上文参考图4和5所描述的技术)选择所确定的完成候选中要返回至客户端设备602的、作为要在客户端侧IME应用610中显示的完成候选的一个或多个以及用于它们呈现的排名次序。选择和排名可以基于来自客户端设备602的查询中包括的上下文信息以及在框802中生成和/或 预先加载的信息。该流程随后前进至框810。
在810,通信组件626跨网络606将所生成和经排名的完成候选(如果有)发送给客户端设备602。尽管任何数目的通信格式可用于服务器响应,但在一些实现中,服务器响应格式是XML。示例XML响应在下文中的表1中示出,其可用于返回如图5的项目510中所示的候选窗口502的内容,除了在表1中还包括针对英文完成候选的汉字字符。具体地,在表1中,R元素对应于响应。在每一R元素中,可能存在各自与建议完成候选相对应的一个或多个C元素。每一C元素包含一对元素,完成候选(T元素)和汉字等价物(H元素)。C元素基于指派给候选的排名来排序。应当注意,可能存在具有相同H内容的多个C元素,但T值应该是不同的。
表1.示例XML响应


尽管出于讨论的目的已经示出若干示例,但是可使用许多其他配置,且因此本文的各实现不限于任何具体的配置或安排。例如,如先前所提及的,所公开的技术和安排所提供的功能不限于输入法编辑器。图9和10提供其中缺少输入法编辑器的示例。
图9示出其中跨语言候选建议功能可被合并到应用902(诸如具有自动完成功能的文字处理器应用)中的示例实现900。如本文所例示的,应用902接收到到文本输入区域904的输入“There were many men and women”。此处,应用902的跨语言候选建议功能按照与上文针对图5所描述的类似方式来运行以提供相同语言完成候选(即“women”和“womenswear”)以及跨语言完成候选(即“we”和“our”)两者。应当理解,图9中示出的用户界面的样式不限于具有内置跨语言 候选建议功能的应用。例如,所示的用户界面的外表还可应用于包括主机应用和单独的输入法编辑器的系统。
图10示出其中跨语言候选建议功能可被合并到应用1002(诸如文字处理器应用)的“拼写检查功能”中的示例实现1000。图10还示出了跨语言候选建议功能对不同的一对第一和第二语言(即英文和西班牙文)的应用。应用1002接收到向文本输入区域1004的输入“Hop,skip and a salto”。应用1002的拼写检查功能确定词语“salto”不是英文词语。然而,代替建议诸如“salt”之类的英文词语来纠正明显的拼写错误,拼写检查功能使用跨语言候选建议功能来提供西班牙文词语“salto”到英文的建议翻译。具体地,拼写检查功能建议将词语“salto”纠正为英文词语“jump”。此外,拼写检查功能还可提供关于其建议的纠正的附加信息,诸如英语同义词,“leap,hop,skip,diving,dive,gambol,buck,rise,”以及用西班牙文和英文书写的示例句子。一些实现可以将对要提供跨语言建议还是正常拼写纠正的确定基于应用1002内的设置或执行应用1002的计算机的操作系统。其它实现可具有学习功能,该学习功能可以学习到应用1002的用户使用西班牙文和英文两者。
在此的讨论涉及由特定组件或模块系统来发送和接收的数据。这不应被作为限制,因为这样的通信并不需要是直接的,并且该特定组件或模块并不需要必须是单个功能单元。例如,统计分析和存储组件622和分析组件628作为执行系统中执行独立功能且彼此通信的独立逻辑组件被分开讨论。这不应作为仅针对其中各组件直接向另一组件发送数据并从其接收数据的限制实现。这些信号可改为由分开的组件在接收到数据后来中继。此外,这些组件可以结合在一起,或者功能可以以不限于以上讨论的那些方式的各种方式而分散在各组件中。鉴于本文提供的公开,各种实现的逻辑和实际结构和框架的其他变型将对于本领域的普通技术人员显而易见。
本文所讨论的过程仅仅是为讨论的目的而提供的示例。许多其他变化鉴于本发明将对于本领域的技术人员显而易见。此外,尽管本文的公开阐述了用于执行本文的技术和过程的合适的框架、架构和环境的若干示例,但是本文的实现不限于所示和所讨论的具体示例。本文所示的过程被示为逻辑流程图中的操作的集合,这表示一系列操作,这些操作的某些或全部可用硬件、软件或其组合实现。在软件的上下文中,这些框表示存储在一个或多个计算机可读介质上的计算机可执行指令,这些指令在由一个或多个处理器执行时执行既定操作。一般而言,计算机可执行指令 包括执行特定功能或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。描述操作的次序并不旨在被解释为限制。任何数量的所述框可以任何顺序被组合和/或并行来实现所述过程,且不是所有的框都需要被执行。
示例计算设备和环境
图11示出了可用于实现此处所描述的模块和功能的计算设备1100和环境的示例配置。如图11所示,计算设备1100与客户端设备602相对应,但应当理解,计算设备102和服务器设备604可以按照所例示的类似方式来配置。
计算设备1100可包括至少一个处理器1102、存储器1104、通信接口1106、显示设备1108(例如,触摸屏显示器)、其他输入/输出(I/O)设备1110(例如,触摸屏显示器或鼠标和键盘)、以及一个或多个大容量存储设备1112,它们能够诸如经由系统总线1114或其他合适的连接彼此通信。
处理器1102可以是单个处理单元或多个处理单元,它们都可包括单个或多个计算单元或多个核。处理器1102可被实现为一个或多个微处理器、微型计算机、微控制器、数字信号处理器、中央处理单元、状态机、逻辑电路和/或基于操作指令来操纵信号的任何设备。处理器1102可被配置成取出并执行存储在存储器1104、大容量存储设备1112或其他计算机可读介质中的计算机可读指令,以及其他能力。
存储器1104和大容量存储设备1112是用于存储由处理器1102执行来执行上述各种功能的指令的计算机存储介质的示例。例如,存储器1104一般包括易失性存储器和非易失性存储器(例如,RAM、ROM等)。此外,大容量存储设备1112一般可包括硬盘驱动器、固态驱动器、包括外部和可移动驱动器在内的可移动介质、存储卡、闪存、软盘、光盘(例如,CD、DVD)、存储阵列、网络附连存储、存储区域网络等等。存储器1104和大容量存储设备1112在本文中统称为存储器或计算机存储介质,并且能够存储计算机可读、处理器可执行程序指令作为计算机程序代码,计算机程序代码可由作为被配置成执行在本文中的实现中描述的操作和功能的特定机器的处理器1102执行。
计算设备1100还可包括用于诸如经由网络、直接连接等与其他设备交换数据的一个或多个通信接口1106,如以上所讨论的。通信接口1106可便于各种各样网络和协议类型内的通信,包括有线网络(例如,LAN、电缆等)和无线网络(例如,WLAN、蜂窝、卫星等)、因特网等等。通信接口1106也可提供与诸如存储 阵列、网络附连存储、存储区域网络等中的外部存储(未示出)的通信。
诸如触摸屏显示器104或其他显示设备之类的显示设备1108可被包括在某些实现中。其他I/O设备1110可以是从用户接收各种输入并向用户提供各种输出的设备,并且可包括触摸屏(诸如,触摸屏显示器104)、键盘、遥控器、鼠标、打印机、音频输入/输出设备等等。
存储器1104可包括根据本文中讨论的实现的用于计算设备1100的模块和组件。在所示示例中,存储器1104包括客户端侧IME应用610和主机应用608,如上文参考图6所描述的。存储器1104还可包括一个或多个其他模块1116,如操作系统、驱动器、应用软件、通信软件等等。存储器1104还可包括其他数据1118,如在执行上述功能时存储的数据以及其他模块1116所使用的数据。存储器1104还可以包括这里描述或提及的其他数据和数据结构。例如,存储器1104可包括在确定跨语言完成候选的过程中使用的信息,诸如如上所述的用于排名完成候选的搭配信息。
此处所描述的示例系统和计算设备仅是适用于某些实现的示例,并且不旨在对可实现此处所描述的过程、组件和特征的环境、体系结构和框架的使用范围或功能提出任何限制。因此,此处的实现可用于众多环境或体系结构,并且可以在通用或专用计算系统或具有处理能力的其他设备中实现。一般而言,参考附图描述的任何功能都可使用软件、硬件(例如,固定逻辑电路)或这些实现的组合来实现。此处所使用的术语“模块”、“机制”、或“组件”一般表示可被配置成实现规定功能的软件、硬件或软件和硬件的组合。例如,在软件实现的情况下,术语“模块”、“机制”或“组件”可表示当在一个或多个处理设备(例如,CPU或处理器)上执行时执行指定任务或操作的程序代码(和/或声明型指令)。程序代码可被存储在一个或多个计算机可读存储器设备或其他计算机存储设备中。由此,此处所描述的过程、组件和模块可由计算机程序产品来实现。
虽然在图11中被示为存储在计算设备1100的存储器1104中,但客户端侧IME应用610和主机应用608或其各部分可以使用可由计算设备1100访问的任何形式的计算机可读介质来实现。如此处所使用的,“计算机可读介质”包括至少两种类型的计算机可读介质,即计算机存储介质和通信介质。
计算机存储介质包括以存储如计算机可读指令、数据结构、程序模块或其他 数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括但不限于,RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光存储、磁带盒、磁带、磁盘存储或其他磁存储设备,或者可用于存储信息以供计算设备访问的任何其他非传输介质。
相反,通信介质可在诸如载波之类的已调制数据信号或其他传输机制中体现计算机可读指令、数据结构、程序模块或其他数据。如本文所定义的,计算机存储介质不包括通信介质。
此外,本发明提供了如在附图中描述和示出的各种示例实现。然而,本公开并不局限于此处所描述和示出的实现,如本领域的技术人员所知道的那样,可延伸至其它实现。在说明书中所引用的“一个实现”、“这个实现”、“这些实现”或“一些实现”意味着所描述的特定特征、结构或特性被包括在至少一个实现中,且在说明书中的各个位置中的这些短语的出现并不需要全部都引用同一实现。
结论
尽管用结构特征和/或方法动作专用的语言描述了本主题,但所附权利要求书中定义的主题不限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求的示例形式公开的。本发明旨在覆盖所公开的实现的任一和所有改编或变型,并且所附权利要求书不应被解释为限于说明书中所公开的具体实现。相反,本文的范围完全由所附权利要求书以及这些权利要求所授权的等效技术方案的完整范围来确定。

跨语言输入法编辑器.pdf_第1页
第1页 / 共28页
跨语言输入法编辑器.pdf_第2页
第2页 / 共28页
跨语言输入法编辑器.pdf_第3页
第3页 / 共28页
点击查看更多>>
资源描述

《跨语言输入法编辑器.pdf》由会员分享,可在线阅读,更多相关《跨语言输入法编辑器.pdf(28页珍藏版)》请在专利查询网上搜索。

1、10申请公布号43申请公布日21申请号201280074382122申请日20120629G06F3/02320060171申请人微软公司地址美国华盛顿州72发明人MR斯科特JK纳加里JY李W刘R赖X陈H候74专利代理机构上海专利商标事务所有限公司31100代理人陈斌54发明名称跨语言输入法编辑器57摘要一些实现提供用于跨语言候选建议的技术和安排。例如,一些显示包括文本输入区域的主机应用的用户界面。输入法编辑器IME接收一个或多个字符作为输入。作为响应,显示一个或多个完成候选,这些完成候选中的至少一个是采用与一个或多个字符不同语言的跨语言完成候选。85PCT国际申请进入国家阶段日2014122。

2、986PCT国际申请的申请数据PCT/CN2012/0778962012062987PCT国际申请的公布数据WO2014/000267EN2014010351INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书14页附图11页10申请公布号CN104412203A43申请公布日20150311CN104412203A1/2页21一种计算系统,包括一个或多个处理器;一个或多个存储指令的计算机可读介质,当所述指令被一个或多个处理器执行时,致使所述一个或多个处理器以执行包括以下的动作显示包括文本输入区域的主机应用的用户界面;由输入法编辑器IME接收一个或多个字符,所述IME。

3、将一个或多个完成候选中的完成候选插入所述主机应用的所述文本输入区域中;以及显示所述一个或多个完成候选,所述完成候选中的至少一个是采用与所述一个或多个字符不同语言的跨语言完成候选。2如权利要求1所述的计算系统,其特征在于,还包括接收对一个或多个显示的完成候选中的至少一个的选择;以及将至少一个所选完成候选插入到所述主机应用的所述文本输入区域中。3如权利要求1所述的计算系统,其特征在于,显示所述一个或多个完成候选包括对于至少一个跨语言完成候选,显示与所述跨语言完成候选相对应的候选信息,所述候选信息包括跨语言完成候选中采用与所述跨语言完成候选不同语言的版本。4如权利要求3所述的计算系统,其特征在于,与。

4、所述跨语言完成候选不同的语言是所述一个或多个字符的语言。5如权利要求4所述的计算系统,其特征在于,包括在所述候选信息中的所述跨语言完成候选的版本采用与所述一个或多个字符不同的书写系统。6如权利要求1所述的计算系统,其特征在于,所述一个或多个完成候选按照基于所述完成候选的排名的次序而显示。7如权利要求6所述的计算系统,其特征在于,对所述一个或多个完成候选的排名至少部分地基于关于要在该处插入所述完成候选中的一个或多个的插入点的上下文信息。8如权利要求1所述的计算系统,其特征在于,显示所述一个或多个完成候选包括对于采用所述一个或多个字符的语言的至少一个完成候选,显示与采用所述一个或多个字符的语言的完。

5、成候选相对应的候选信息,所述候选信息包括对应的完成候选中采用与所述完成候选不同语言的版本。9一种方法,包括接收词语的至少一部分;以及由处理器标识或生成一个或多个完成候选,所述完成候选中的至少一个采用与所述词语不同的语言。10如权利要求1所述的方法,其特征在于,还包括接收所述词语的上下文信息;以及至少部分地基于所述上下文信息来排名所述一个或多个完成候选。11如权利要求10所述的方法,其特征在于,所述上下文信息包括关于要在该处将所述完成候选中的一个或多个插入到计算机应用中的插入点的信息。12如权利要求11所述的方法,其特征在于,关于插入点的信息至少包括N元并且所述排名至少部分地基于搭配。13如权利。

6、要求10所述的方法,其特征在于,所述上下文信息包括关于要将所述完成权利要求书CN104412203A2/2页3候选插入其中的计算机应用和环境的场景信息。14如权利要求13所述的方法,其特征在于,所述场景信息包括过程名称、输入范围、计算机应用版本、以及操作系统中的至少一个。15如权利要求9所述的方法,其特征在于,还包括对所述一个或多个完成候选排名,其中当多个完成候选被标识或生成时,对至少一个完成候选的排名至少部分地基于所述完成候选是否采用与所述词语不同的语言。16一个或多个维护指令的计算机可读介质,当所述指令被一个或多个处理器执行时,配置所述一个或多个处理器以执行包括以下的动作由输入法编辑器IM。

7、E接收一个或多个字符,所述IME将一个或多个完成候选中的完成候选插入主机应用的文本输入区域中;向包括至少一个计算设备的远程服务请求一个或多个完成候选;以及从所述远程服务接收所述一个或多个完成候选,所述完成候选中的至少一个是采用与所述一个或多个字符不同语言的跨语言完成候选;显示所述一个或多个完成候选。17如权利要求16所述的一个或多个种计算机可读介质,其特征在于,所述动作进一步包括接收对一个或多个显示的完成候选中的至少一个的选择;以及将至少一个所选完成候选插入到所述主机应用的所述文本输入区域中。18如权利要求16所述的一个或多个种计算机可读介质,其特征在于,所述动作进一步包括确定所述一个或多个字。

8、符中的字符数目;以及其中当所述一个或多个字符中的字符数目大于预定义数目时执行所述请求。19如权利要求16所述的一个或多个种计算机可读介质,其特征在于,所述动作进一步包括在所述请求之前,标识或生成采用与所述一个或多个字符相同语言的一个或多个完成候选;确定采用与所述一个或多个字符相同语言的完成候选的数目;以及其中当采用与所述一个或多个字符相同语言的完成候选的数目小于预定义数目时执行所述请求。20如权利要求16所述的一个或多个计算机可读介质,其特征在于,当在所述IME或所述主机应用之一中启用外语模式时执行所述请求。权利要求书CN104412203A1/14页4跨语言输入法编辑器技术领域0001本公开。

9、涉及计算机输入的技术领域。0002背景0003计算设备的持续增长已经导致在这些设备上使用的应用和其它内容可用性的增长。例如,用户在各种各样的计算设备上采用各种应用,诸如游戏、数字媒体播放器、浏览器等。随着计算设备的数目以及在这些设备上使用的应用的数目持续增加,用户越来越感兴趣在使用这些计算设备和应用的同时增强他们的体验。0004概述0005提供本概述是为了以简化的形式介绍将在以下具体实施方式中进一步描述的概念选择。本概述并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。0006一些实现提供用于跨语言候选建议的技术和安排。例如,一些实现显示包括文本输入区域的主。

10、机应用的用户界面。输入法编辑器IME接收一个或多个字符作为输入。作为响应,显示一个或多个完成候选,这些完成候选中的至少一个是采用与一个或多个字符不同语言的跨语言完成候选。附图说明0007参考附图来描述具体实施方式。在不同附图中使用相同的附图标记指示相似或相同的项。0008图1示出根据某些实现的示例系统。0009图2示出根据某些实现的示例系统。0010图3示出根据某些实现的示例流程图。0011图4示出根据某些实现的示例显示。0012图5示出根据某些实现的示例显示。0013图6示出根据某些实现的示例系统。0014图7示出根据某些实现的示例流程图。0015图8示出根据某些实现的示例流程图。0016图。

11、9示出根据某些实现的示例显示。0017图10示出根据某些实现的示例显示。0018图11示出某些实现可以在其中操作的示例系统。具体实施方式0019概览0020本公开包括用于跨语言输入法的技术和安排,并且在一些实现中,包括用于向用户提供完成候选以供插入计算机应用的跨语言输入法编辑器IME的技术和安排。在一些实现中,跨语言IME至少部分地基于与用户输入有关的上下文信息来提供完成候选。说明书CN104412203A2/14页50021在涉及IME的一些实现中,系统通过允许用户以第二语言输入对应的文本并且接着以第一语言提供建议候选以供插入计算机应用来协助用户以第一语言输入文本。考虑以下场景用户正在用西班。

12、牙文向IME输入文本,但用户的第一语言是英文。在此场景中,用户可能在构思恰适的西班牙文词语时有困难,但用户知道恰适的英文词语。一些实现通过使得用户能够向IME输入恰适的英文词语,接着向用户呈现建议西班牙文候选词语列表以供用户选择并插入到IME主存的程序中来向用户提供协助。0022其它实现可不涉及IME,而是执行其它程序中的跨语言协助的功能,诸如在文字处理器程序中的拼写检查功能、移动计算设备的文本消息收发程序之类的应用的自动完成功能、手写识别应用的字符/文字识别功能、以及语音识别/听写应用的文字识别功能。这一列表并不意味着是穷尽性的,并且示例实现仅仅是示例而不应被认为是限制。因而,应当理解,尽管。

13、本公开可能出于易于理解的目的而在IME的上下文中描述系统和方法,但本文描述的系统和方法不限于这些用途并且可以在许多其它情景中使用。0023本文所述的跨语言协助功能可在计算系统的软件和硬件中的各种级别来实现。这些级别包括操作系统OS级,如带有或不带有应用支持的OS中,应用级,或者与OS分开即独立或者作为OS的插件或者作为另一应用的插件,等等。此外,跨语言协助功能可以通用地针对所有应用中的所有文本输入区域来实现诸如在仅OS实现中,或者该功能可以仅在选择文本输入区域中、或者在具体程序例如,OS级别IME、程序类例如,个体程序的专用IME、指定文本输入区域、文本输入区域类等等中活动。此外,一些实现可以。

14、允许用户设置跨语言协助功能的各个参数,诸如实现该功能的程序类或文本输入区域、要用于该功能的语言和书写系统等等。0024如上所述,输入法编辑器IME是协助用户向计算设备输入文本的计算机应用。IME可以基于从用户接收的输入提供若干完成候选。在本文描述的跨语言IME的一些实现中,输入文本和所提供的候选文本可以是相同语言和/或书写系统,或者是不同的语言和/或书写系统,或者其某种组合。0025例如,用户可以输入英文单词或短语的一个或多个初始拉丁字符,并且IME基于初始字符提供一个或多个完整英文单词或短语,用户能够从中选择一个合适的单词或短语。该功能被称为自动完成功能,或者可以被称为相同语言完成候选建议。。

15、在一些实现中,自动完成功能可以被实现为客户端侧基于二进制搜索的数据结构。0026在另一示例中,IME还可以通过音译直译TRANSLITERATION协助用户输入非拉丁字符,诸如东亚字符例如汉字。IME的该功能可以允许用户在其键盘通常仅支持输入拉丁字符的大众操作系统中输入非拉丁字符。例如,用户可以通过键盘输入拉丁字符以形成中文汉字字符的语音拼写。IME基于该拼写向用户返回一个或多个中文字符以供用户选择合适的一个字符。用于中文的一个这样的语音书写系统是拼音,其可以被正确地描述为中文至拉丁字符也称为中文的古罗马化的音译直译。0027在另一示例中,IME将刚刚描述的音译直译功能与翻译功能相组合以在用户。

16、无法回忆起第一语言的恰适词语但是能够回忆起用非拉丁字符的第二语言书写系统的对应文字时协助用户用第一语言进行书写。这与所提供的英文和西班牙文的示例类似。然而,在该情形中,使用中文作为示例,IME执行对拼音词语的识别,确定拼音词语到中文汉字字符的候选音译直译,确定该候选汉字词语的英文翻译,然后向用户提供候选汉字词语及其对说明书CN104412203A3/14页6应的英文等价物。用户随后选择所选候选词语。由用户选择的英文等价物完成候选随后可以被插入到各个其他计算机应用中,比如聊天应用、文档编辑应用、游戏应用等等。0028在一些实现中,完成候选列表可包括相同语言完成候选和跨语言完成候选两者。0029在。

17、讨论涉及两种语言时,本文的讨论出于易于理解的考虑可以使用具体的语言。例如,若干附图使用英文和中文作为示例,而其它附图使用英文和西班牙文。在这些讨论中,这些示例可以被概括为任何第一语言和第二语言。具体地,在这些讨论中英文可以被概括为任何第一语言,而中文和西班牙文可以被概括为任何第二语言。0030示例实现0031图1示出根据一些实现的系统100的示例框架。系统100包括被示为由当前正在显示主机应用106和输入法编辑器108的触摸屏显示器104组成的逻辑系统的计算设备102。主机应用包括文本输入区域110,而输入法编辑器IME108包括撰写窗口112和候选窗口114。尽管未在图1中示出,但在一些实现。

18、中,计算设备102包括一个或多个处理器和存储器,其中存储器包括主机应用106和IME108的程序指令。然而,其它实现不限于这样的安排。如上所提及的,尽管这一示例实现出于易于理解而使用英文和中文,但在任何特定实现合适的情况下可以替换任何第一和第二语言。0032在图1所示的示例中,用户使用了IME108的撰写窗口112来向主机应用输入“WHENWEMETISAID,”。在一些示例实施例中,用户可能结合触摸屏显示器104来使用屏幕上键盘未示出。在输入了上述短语之后,用户随后可能无法回忆起恰适的英文单词,而向IME108输入“NIHAO”。响应于确定“NIHAO”形成或部分地形成拼音词语,计算设备10。

19、2作出上述音译直译和翻译以确定和致使IME108在候选窗口114中向用户呈现针对“NIHAO”的三个建议英文完成候选即,“HELLO”、“HOWAREYOU”和“DRAWNUP”。0033在一些实现中,诸如图1中示出的实现,IME108还包括在括号中每个英文候选的汉字等价物。将中文汉字等价物包括在内可能是由于各种原因中的任一个导致的。两个可能的原因是1在拼音和汉字之间不存在一对一关系以及2将汉字等价物包括在内可以向用户提供更高置信和/或增加用户选择的准确性。在一些实现中,汉字字符可以通过斜体或不同字体色彩的手段从视觉上衬托以区别于英文词语。这一视觉衬托物开可充当汉字字符是用作参考并且将不会被包。

20、括在插入到主机应用106中的文本中的指示符。尽管示出和讨论了具体的视觉衬托物,但各实现不限于任何特定的视觉衬托物或甚至对任何视觉衬托物的使用。0034图2示出在用户从输入法编辑器IME108的候选窗口114中选择词语一“HELLO”之后的系统100的示例框架。具体地,在接收到选择之际,IME108致使词语“HELLO”在图1中示出的插入点光标符号处被插入到主机应用106的文本输入区域110中。在将所选候选插入到主机应用106之后或与其并发地,IME108清除或重置撰写窗口112和候选窗口114以供继续输入文本。0035出于易于讨论和理解,图1和2被示为包括触摸屏显示器104,一般通过对屏幕上键。

21、盘的触摸选择来完成对文本的输入。然而,各实现不限于此。可通过各种输入法来完成用户输入,诸如键盘输入、语音输入以及触摸屏姿势输入例如手写识别。例如,在一些实现中,计算设备102可包括鼠标和键盘,并且文本输入通过在键盘上打字或者通过鼠标来使用屏幕上键盘来完成。在该实现中对完成候选的选择可以通过输入数字标识符例说明书CN104412203A4/14页7如,输入“1”以选择图1中的“HELLO”或者通过鼠标输入例如,在候选窗口114上点击“HELLO”。在另一示例实现中,具有语音输入的系统例如,听写系统可以允许用英文听写的用户碰到了该用户无法回忆起的英文词语说出该用户无法回忆起的英文词语的中文等价物。。

22、说出的词语可以被识别为非英文词语,此时系统可以呈现英文语言完成候选及其汉字等价物以供用户选择,如上文参考图1所讨论的。鉴于本文的公开,关于可用于所公开的技术和安排的输入法的细节的实现的这些和其他变型对于本领域技术人员来说将显而易见。0036图3示出根据一些实现的示例过程流300。在图3的流程图中,每一个框表示可以用硬件、软件、或其组合实现的一个或多个操作。在软件的上下文中,各个框表示当由一个或多个处理器执行时使处理器执行既定操作的计算机可执行指令。一般而言,计算机可执行指令包括执行特定功能或实现特定抽象数据类型的例程、程序、对象、模块、组件、数据结构等。描述各个框的次序并不旨在被解释为限制,并。

23、且任何数量的所述框可以按任何次序和/或并行地组合以实现该过程。出于讨论的目的,过程300参考以上描述的系统100来描述,但其他模型、框架、系统和环境可实现所例示的过程。0037在框302,计算设备102在触摸屏显示器104上显示主机应用106和输入法编辑器IME108。0038在框304,计算设备102接收字符输入。如上所讨论的,本文公开的技术和安排的实现可以利用各种各样的输入法和设备。然而,出于简明的目的,图35和910的讨论将在使用触摸屏显示器104来显示和致动的屏幕上键盘的触摸输入的上下文中讨论。0039在框306,IME108分析接收到的字符输入,并且基于其来分别确定第一语言和第二语言。

24、英文和中文的建议完成候选。应当注意,IME108可以在作出其确定时将其它信息纳入考虑。将在以下讨论其它信息中的一些示例。该过程流接着继续到框308。0040在框308,IME108在候选窗口114中显示任何建议完成候选。该流程随后前进至框310。0041在框310,IME108等待三个事件之一。第一,如果IME108接收到一个或多个附加字符312除了选择要被插入的候选词语的字符输入之外的的输入,则该流程返回至框306并且执行对建议完成候选的新的确定。0042第二,如果在框310,IME108接收到对建议完成候选314的选择以供插入到主机应用106中,则该流程移动至框316。在框316,所选完成。

25、候选按照可与上文关于将单词“HELLO”插入到主机应用106所讨论的以及在图2中所示的类似的方式被插入到主机应用106的文本输入区域110中。该流程随后前进至框318。0043第三,如果在框310,IME108接收到指定单词完成而不使用完成候选320的输入例如,插入空格等以指示移位至新的单词的指令,则该流程移动至框322。在框322,撰写窗口112的内容被插入到主机应用106的文本输入区域110中。作为示例,这种情形可能在用户希望将非英文词语插入到文本中时发生。该流程随后移至框318。0044在框318,IME108已经要么将建议完成候选要么将撰写窗口112的内容插入到主机应用106的文本输入。

26、区域110中。IME108接着清除撰写窗口112和候选窗口114,以使得IME准备好后续输入。尽管未示出,但过程流300可以接着在接收到进一步的字符输入之际移动回到框304。说明书CN104412203A5/14页80045如上所提及的,IME108在确定建议完成候选时可以将除了接收到的字符输入之外的信息考虑在内。在一些实现中,这一附加信息包括上下文信息。可被使用的两个示例类型的上下文信息是N元和场景信息。N元的示例是光标左侧的N个单词以及光标右侧的M个单词的序列。场景信息的示例是包括各个项的信息,诸如过程名、输入范围字段类型/名称、应用版本、以及操作系统版本。在一些实现中,接收到的字符输入即。

27、,撰写窗口112的内容可用于生成可在候选窗口114中显示的任何数目的完成候选。上下文信息诸如N元和场景信息可以在一些实现中被用来对所生成的完成候选进行排名以向用户显示。在其中所生成的完成候选的数目大于可以在候选窗口中显示的数目的情形中,附加信息可用来选择要显示哪些完成候选。0046在一些实现中,N元可以在文档的内容级别处有用,并且场景信息可以提供关于文档本身和环境上下文的信息。0047通过N元,系统可以检测不同的“触发单词”,像例如与经翻译的中文等价物如在WEB上在统计学上所见的单词如“HELLO”高度并发的“SAID”。因此,在包括N元信息的实现中,如果N元附近文本包含与候选词语相关联的触发。

28、词语,则该候选词语可以出现在候选排名列表中的较高位置。触发单词及其对应的搭配词语的发现是一种被称为“搭配提取”的计算语言方法。概括来说,一些实现可以构建语言模型,该语言模型随后被用来基于上下文在概率上影响候选的排名。各实现还可在跨语言上下文中应用N元分析,以使得分析用不同语言书写的词语之间的上下文并且进一步在这些语言的非拉丁书写系统中,执行一种语言与另一语言的词语之间的音译直译的分析。0048场景信息可用作排名中的另一特征。在一些实现中,IME108使用输入范围和应用名称来提供暗示不同的书写样式的信号。例如,在微软公司内的电子邮件中与他们的经理对话时可能采用的书写样式可能不同于在WINDOWS。

29、LIVEMESSENGER、HOTMAIL或GMAIL上与家庭成员通信时使用的书写样式。作为示例,场景信息可包括输入范围是电子邮件消息正文而应用名称是OUTLOOK的信息。0049这一分析的示例可以在图1中看到,其中词语“NIHAO”或更具体地其翻译“HELLO”可以使用N元和场景信息来分析。为了到达图1中示出的点其中“HELLO”被排名为第一候选,计算设备102使用上述上下文信息来提升词语“HELLO”。即,IME108观察到1作为“HELLO”的公知搭配的触发词语“SAID”紧接在当前插入点之前出现,2输入范围是文档并且应用是微软公司的这两者均会暗示更正式的书写样式,其中再一次“HELLO。

30、”将在候选列表中排名更高。鉴于这一上下文分析,“HELLO”被排名为第一候选除非另一词语被给予更高的“相关性分数”。0050图4示出输入法编辑器IME400的功能。IME400类似于输入法编辑器108,但包括其功能性方面的一些变型,并且包括不同于IME108的候选窗口402。图4用两种状态示出输入法编辑器IME400的建议候选的示例,一种状态是“NIH”已经被输入到项目404处的撰写窗口,而另一状态是“NIHA”已经被输入到项目406处的撰写窗口。如上所述,输入法编辑器400的功能与上文针对IME108所描述的功能不同。下面讨论两处变型。0051第一处变型可以在项目404中IME400的候选窗。

31、口402中看到。具体地,IME400已经在项目404中提供了直接英文到英文的完成的完成候选,但是在建议完成候选旁边示出了对应中文单词的汉字字符。这示出了在候选窗口402中显示汉字字符可以但并不要求说明书CN104412203A6/14页9限于跨语言候选建议诸如参照图1所讨论的那些。其中仅跨语言完成候选包括汉字等价物的实现出现在下文讨论的图5中。取决于实现,这一差别可以是IME400被具体地设计成总是示出针对包括在候选窗口402中的任何英文语言建议完成候选的汉字字符的结果,或者IME400可包括可调整用户设置以允许用户启用、禁用或定制何时将这些汉字等价物包括在候选窗口402中。应当再次注意,在适。

32、当时,对英文的引用可以被修改为任何其它第一语言,而对中文和汉字的引用可以被修改为任何其它第二语言。0052第二处变型在于图4中示出的实现的IME400并非总是执行跨语言候选建议功能。相反,当IME400确定满足一个或多个条件时,IME400执行跨语言候选建议功能。在图4中示出的示例中,IME400确定是否满足三个条件。第一个条件是IME400检查IME400的语言模式是否是或者是否已经改变成“外语输入模式”例如,“英文模式”。在一些实现中,当用户例如按压SHIFT键或使用用户界面内的菜单选项时,输入模式在“外语输入模式”中来回切换。除非另外指出,针对本文的讨论假定用户在每一过程中都进入了“外语。

33、模式”。其余的两个条件在下文中参考项目404来讨论。0053在项目404,用户已经向输入法编辑器108的撰写窗口输入了“WHENWEMETISAID,NIH”。短语“WHENWEMETISAID,”已经按照诸如图1所示的方式被插入主机应用中。IME400处理输入的字符,并且返回两个英文单词“NIHILISM”和“NIHILISTIC”作为完成候选。如上所提及的,在一些实现中,IME可以由于一个或多个条件而不执行跨语言候选建议。具体地,当撰写窗口中的字符计数大于字符数N但小于字符数M时,诸如图4所示的一些实现可以执行跨语言候选建议。在一示例实现中,N可以4而M可以16。在一些这样的实现中,可以这。

34、么做,因为在少于4个字符的情况下,单词不太可能形成完全,而在超过16个字符的情况下,输入变得越基于句子的机器翻译,而这可能不太准确。作为检查字符计数方面的条件的补充或者替换,IME可以确定将可用的第一语言此处为英文的候选数目,并且如果候选数目大于或等于数目K,则IME400可以放弃跨语言候选建议。另一方面,当候选窗口中的候选数目小于K时,IME400执行跨语言候选建议。作为示例,在一些实现中,当可被示出的候选的最大数目是5时,K可能3。一般地,一些实现可以基于这样的假定来设计,如果IME可以产生针对给定输入的自动完成建议的完整列表即,相同语言完成候选,则用户可能不会用第二语言来输入词语或第二语。

35、言的词语的音译直译。0054在404,用户现在向输入法编辑器400的撰写窗口输入了“NIHA”。在此时,字符数目大于4上文讨论的示例而具有此开头的英文语言单词的数目限于城市名“NIHAU”的一个正确名词。因而,在项目404中,IME400确定应当执行跨语言候选建议。作为跨语言候选建议分析的结果,IME400确定“NIHAO”是“NIHA”的可能拼音完成。接着,IME400执行上文讨论的上下文分析,包括搭配确定。据此确定在对应于拼音单词“NIHAO”的汉字词语中,翻译成英文“HELLO”或“HOWAREYOU”的词语是排名最高的。接着至少部分地基于“SAID”与“HELLO”的搭配来确定英文等价。

36、物“HELLO”具有被选中的较高统计学概率。在图4中示出的示例实现中,从被包括在候选窗口中的角度来看,维护针对相同语言完成候选的优先级。换言之,尽管其它跨语言完成候选可能具有较高的上下文分析“得分”,但在选择要将哪些完成候选包括在候选窗口402中时相同语言完成候选“NIHAU”被给予优先级。然而,这一优先级不延及排名。简言之,一些实现使用充分利用诸如上文讨论的上下文信息的说明书CN104412203A7/14页10统计学模型来对照词语“NIHAU”排名翻译等价物。由于NIHAU被确定为具有较低的上下文“得分”,“HELLO”和“HOWAREYOU”被给予较高排名并且在项目406中所示的候选窗口。

37、402中被呈现地较高。0055出于简化的目的,应当理解,这一排名过程或与其类似的过程可以应用于任何各定实现中的完成候选以确定要在候选窗口中呈现哪些候选词语以及这些完成候选将被呈现的次序。因而,除非另外表明,应当假定在本说明书中描述的类似过程也可实现这样的排名/选择技术,并且这不应当被认为是限制。0056在406示出的状态之后,如果用户完成了将词语“NIHAO”输入到撰写窗口402,则IME400将镜像图1中的IME108的表现,因为没有任何进一步的相同语言完成候选可用。0057图5示出输入法编辑器IME500的功能。IME500类似于IME108和IME400,但在其功能性方面具有一些变型,并。

38、且包括不同于IME108和IME400的候选窗口502。输入到IME500的文本被插入到作为项目504来指示的主机应用106中。在图5中示出的IME500的状态506、508和510之前并且尤其在状态506之前,短语“THEREWEREMANYMENAND”已经被输入到IME500并且IME500已经将该短语插入到主机应用106中。图5示出了当1在项目504处,“WOM”接着被插入到撰写窗口中时,2在项目508处,“E”被输入以使得项目508处的撰写窗口包括字符“WOME”时,以及3在项目510处,“N”被输入以使得项目510处的撰写窗口包括字符“WOMEN”时,IME500的建议候选的示例。。

39、如上所述,如下所述的输入法编辑器500的功能与上文针对IME108和IME400所描述的功能不同。0058在项目506,IME500接收到输入字符“WOM”,处理输入的字符,并且返回英文单词“WOMEN”、“WOMAN”和“WOMENSWEAR”。不像IME400那样包括在候选窗口402中示出的任何英文词语的汉字等价物,IME500不示出相同语言完成候选的汉字等价物即,直接英文到英文的候选。例如,在506,英文词语“WOMEN”、“WOMAN”和“WOMENSWEAR”不伴随它们的汉字等价物,因为它们是基于对英文词根“WOM”的使用而提出的相同语言完成候选。缺少针对相同语言完成候选的汉字等价物。

40、可能是由于各种因素导致的,诸如IME500被设计成不包括针对相同语言完成候选的等价物,或者IME500可以具有允许启用或禁用显示针对相同语言完成候选的汉字等价物的用户设置。0059此外,在图5示出的实现中,在506,IME500不执行跨语言候选建议功能,因为字符计数条件确定的结果与上文参考项目404所讨论的结果相同。具体地,在506,少于4个的字符被输入到IME500中。然而,IME500的另一功能变型缩窄了执行跨语言候选建议功能的范围即便输入了4个字符。这在下文参照项目508来讨论。0060在项目508,IME500接收到字符输入“E”,处理撰写窗口112中的文本即“WOME”,并且返回两个。

41、英文单词“WOMEN”和“WOMAN”。如上所提及的,在图5示出的示例实现中,尽管撰写窗口包含至少4个字符并且不存在超过3个的英文候选,但候选窗口502中并未包括跨语言候选。这是因为在图5示出的实现中IME500已经缩减了要从中建议候选的跨语言候选完成范围。具体地,IME500仅基于撰写窗口的内容来执行跨语言检查以供完成拼音词语。因此,尽管WOMEN既是英文单词的拼写又是中文单词“WE”或“OUR”的音译直译,但IME500将跨匹配限于不具有拼音中的中文等价物的字符串“WOME”。0061在项目510,IME500接收到字符输入“N”,处理撰写窗口112中的文本即“WOMEN”,并且返回两个英。

42、文单词“WOMEN”和“WOMAN”。在处理词语“WOMEN”期间,IME500说明书CN104412203A108/14页11还确定“WOMEN”是至少一个中文单词的音译直译。相应地,IME500获得关于针对拼音中文词语“WOMEN”的跨语言完成候选的信息以供可能地显示在候选窗口502中。在一些实现中,IME500确定英文词语“WE”、“OUR”和“OURSELVES”各自是拼音音译直译“WOMEN”的可能翻译。IME500对这些词语以及英文完成建议“WOMEN”和“WOMENSWEAR”执行排名/选择以获得和呈现在项目510处的候选窗口502中示出的列表。在510处示出的非限制性实现中,词。

43、语“WOMEN”排名在列表顶部,因为其通常与单词/短语“MENAND”搭配作为短语“MENANDWOMEN”的一部分。尽管并未具有与WOMEN一样高的上下文“得分”,但发现WOMENSWEAR具有比“WE”和“OUR”更高的得分。排名在列表中继续向下。这得到了最低排名的完成候选,由于不能纳入可用空间,“OURSELVES”并未在候选窗口502中示出。0062在510处示出的状态之后,用户可以通过选择要插入的候选之一、输入恰适的命令以插入撰写窗口的内容而不管任何建议完成候选、或者通过输入进一步的字符来继续。0063图6示出包括客户端设备602和一个或多个服务器设备604的替换实现的逻辑框架600。

44、。客户端设备602和一个或多个服务器设备604跨网络606通信以执行上文关于图15所讨论的类似的完成候选建议。此外,尽管服务器设备604被示为单个实体,但应当理解,一些实现可包括许多个体服务器设备。例如,一些实现可以“在云中”实现服务器设备604,这是由于在如此安排中可用的冗余存储器和处理能力。0064客户端设备602包括主机应用608和客户端侧输入法编辑器IME应用610。客户端侧IME应用610包括用户界面612、上下文组件614、分析组件616和呈现组件。0065主机应用608类似于上文参照图15所讨论的主机应用106。客户端侧IME应用610的用户界面612从用户接收输入,并且在图形用。

45、户界面GUI类似于图1、2、5、9和10中示出的GUI中向用户显示建议文本候选。用户界面612还接收其它用户输入和/或命令,诸如选择完成候选以供插入到主机应用608中的输入。上下文组件614收集关于用户输入的上下文的数据。分析组件616至少部分地基于收集的上下文数据来分析用户输入,并且基于接收到的输入来确定第一语言的任何建议完成候选。分析组件616接着确定是否应当查询一个或多个服务器设备604关于附加信息,诸如基于第二语言的跨语言完成候选以及取决于特定实现的对要被呈现的完成候选以及用于呈现的次序的选择。通信组件618执行客户端设备602的组件与其它设备诸如一个或多个服务器设备604之间跨网络6。

46、06的通信。0066客户端侧IME应用610的一些模块可被实现为单独的系统,且它们的处理结果可由IME610使用。出于方便描述起见,以上IME在功能上被划分成分开描述的各个模块。当实现所公开的系统时,各个模块的功能可在软件和/或硬件的一个或多个示例中实现。0067一个或多个服务器设备604可以各自包括服务器侧输入法编辑器应用620。服务器侧IME应用620包括统计分析和存储组件622、分析组件624和通信组件626。0068统计分析和存储组件622创建和维护统计信息、索引音译直译和翻译的表、以及一个或多个服务器设备604回答来自客户端设备602的查询所使用的其它信息。0069分析组件624使用。

47、来自客户端设备的查询中的接收到的字符和上下文信息以及由统计分析和存储组件622存储的信息来确定基于第二语言的跨语言完成候选以及取决于特定实现的第一语言的完成候选。分析组件624还可使用排名技术诸如上文参照图4和5所描述的技术来选择要作为完成候选呈现的词语以及用于其呈现的次序。说明书CN104412203A119/14页120070通信组件626执行一个或多个服务器设备604的组件与其它设备诸如客户端设备602之间跨网络606的通信。0071在客户端服务器架构中可存在IME系统的其他配置。在另一示例中,分析组件616可以位于一个或多个服务器设备中而非客户端设备110中。在又一示例中,一个或多个服。

48、务器设备604的分析组件624可以合并到客户端设备602。0072图7示出根据一些实现的示例过程流700。出于讨论的目的,参考以上描述的框架600尤其是客户端设备602来描述过程700,但其他模型、框架、系统和环境也可实现所例示的过程。0073在框302,客户端侧输入法编辑器应用610的用户界面612致使客户端侧输入法编辑器IME610的图形用户界面GUI在触摸屏显示器诸如触摸屏显示器104上例如通过主机应用608来显示。在框304,客户端设备602的用户界面612接收字符输入。0074在框702,上下文组件614收集有关接收到的字符输入的上下文的数据。分析组件616分析接收到的字符输入并且基。

49、于接收到的输入来确定第一语言的任何建议完成候选。该流程随后前进至框704。0075在框704,分析组件616确定是否要向一个或多个服务器设备604查询关于基于第二语言的建议完成候选。如果分析组件616确定不应当查询服务器,则过程流接着继续至框308。如果分析组件616确定应当查询服务器,则过程流接着继续至框706。0076在框706,通信组件618向一个或多个服务器604发送查询。查询包括信息,诸如接收到的输入字符、上下文信息等。取决于特定实现,也可查询除了基于第二语言的建议完成候选之外的信息。例如,查询可请求对要呈现的建议完成候选以及用于呈现的次序的选择。该流程随后前进至框708。0077在框708,通信组件618从一个或多个服务器604接收对查询的响应。该流程随后前进至框308。0078图7中示出的框308318的操作与先前关于图3讨论的操作相同。相应地,此处不重复对这些框的操作的讨论。0079一旦流程到达框318,客户端侧IME应用610要么将建议完成候选要么将撰写窗口112的内容插入到主机应用608中。客户端侧IME应用610接着清除其撰写窗口和候选窗口,以使得客户端侧IME准备好用于后续输入。尽管未示出,但过程流700可以接着在接收到进一步的字符输入之际移动回到框302。0080图8示出根据一些实现的示例过程流800。出于讨论的目的,参考上述的框架600尤其是一个。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1