高效输入的预测方法和装置制造方法

文档序号:6620708阅读:141来源:国知局
高效输入的预测方法和装置制造方法
【专利摘要】一种高效输入的预测方法和装置,其中,所述预测方法包括:检测用户的输入;根据用户已输入的历史文本和当前输入位置获得预测基础,所述预测基础为基于当前输入位置之前设定单词长度的已输入文本;基于所述预测基础在数据库中进行查询,获得预测结果,所述预测结果至少包括预测基础后续两级的预测候选词。本发明能够提供给用户更符合其预期的预测输入结果,提供更为流畅的预测输入体验。
【专利说明】高效输入的预测方法和装置

【技术领域】
[0001] 本发明涉及电子设备输入控制领域,特别涉及电子设备信息输入【技术领域】,尤其 是高效输入的预测方法和装置。

【背景技术】
[0002] 近年来,手机、平板电脑等移动通信终端广泛普及,移动通信终端的输入法对于用 户的日常使用而言也愈发重要。目前,大多数输入法中能够提供输入预测功能,然后常规的 预测功能通常是这样实现的:用户打算输入单词special,则用户在键盘上逐个输入该单 词的前4个字母s-p-e-c或更多字母,则输入法根据这些已输入的字母对用户待输入的单 词进行预测,从而提供给用户结果选项。这种常规的输入法仅能对用户当前待输入的单词 进行预测,而且通常为了提高预测精度,需要输入该单词长度一半以上字母,才能获得对该 单词的预测结果。这无疑严重的影响了用户的输入效率和速度,这种方式目前已经越来越 不能满足用户更加快捷输入的需求。
[0003] 此外,为了获得较高的预测精度,通常要求数据库具有较大的容量。目前较为流行 的预测方式通常与云端数据库相结合。然而当将数据库设置在云端时,由于受到网络的限 制,每一次根据用户的输入通过云端数据库进行预测时将不可避免地会造成卡顿,既耗费 大量的资源,也无法提供较流畅的输入体验。
[0004] 综上,有必要提供一种具有更高的预测效率以及具有更为流畅的预测体验的输入 法。


【发明内容】

[0005] 本发明要解决的技术问题是:基于一种高效的预测技术,反馈给用户更符合其预 期的预测输入结果,提供更为流畅的预测输入体验。
[0006] 根据本发明的一个方面,提供了一种高效输入的预测方法,包括:检测用户的输 入;根据用户已输入的历史文本和当前输入位置获得预测基础,所述预测基础为基于当前 输入位置之前设定单词长度的已输入文本;基于所述预测基础在数据库中进行查询,获得 预测结果,所述预测结果至少包括预测基础后续两级的预测候选词。
[0007] 根据本发明的另一个方面,还提供了一种高效输入的预测装置,包括:检测记录模 块,适于对用户输入的文本以及当前输入位置进行检测和记录;预测模块,适于根据用户输 入的文本和当前输入位置形成预测基础,根据所述预测基础在数据库中进行查询,获得预 测结果,其中,所述预测基础为基于当前输入位置之前设定单词长度的已输入文本,并且每 个预测结果至少包括基于预测基础的两级预测候选词;数据库,适于存储单词。
[0008] 本发明通过设定单词长度选择包含一个或多个已输入的单词作为预测基础,并基 于预测基础获取后续至少两级的预测候选词,从而快捷地提供给用户更符合其预期的预测 输入结果。
[0009] 根据本发明的又一个方面,还提供了一种高效输入的预测方法,包括:检测用户的 输入;根据用户已输入的历史文本和当前输入位置获得预测基础,所述预测基础为基于当 前输入位置之前设定单词长度的已输入文本;基于所述预测基础在数据库中进行查询,获 得预测结果,所述预测结果至少包括预测基础后续两级的预测候选词;在本地保存所述预 测结果,检测用户的进一步输入,根据用户的输入结果对所述预测结果进行筛选,将所述预 测结果的部分或全部反馈给用户。
[0010] 根据本发明的又一个方面,还提供了一种高效输入的预测装置,包括:检测记录模 块,适于对用户输入的文本以及当前输入位置进行检测和记录;预测模块,适于根据用户输 入的文本和当前输入位置形成预测基础,根据所述预测基础在数据库中进行查询,获得预 测结果,其中,所述预测基础为基于当前输入位置之前设定单词长度的已输入文本,并且每 个预测结果至少包括基于预测基础的两级预测候选词;数据库,适于存储单词;筛选模块, 适于根据所述检测记录模块记录的用户的进一步输入,对所述预测结果进行筛选;以及反 馈模块,适于将所述筛选结果反馈至用户。
[0011] 本发明通过对预测基础后续至少两级的预测候选词进行预测,并且通过将包含后 续至少两级预测候选词的预测结果保存在本地,使得即使采用云端数据库进行预测,也能 有效地避免了网络传输所造成的延迟,提高了用户体验。

【专利附图】

【附图说明】
[0012] 通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、 目的和优点将会变得更明显:
[0013] 图1为应用本发明高效输入的预测装置一种实施方式的框架示意图。
[0014] 图2为本发明高效输入的预测装置中数据库一种实施方式的结构示意图。
[0015] 图3至图6为应用本发明高效输入的预测装置的【具体实施方式】的一种实例示意 图。
[0016] 图7为本发明高效输入的预测装置提供对预测基础的语法、语义分析功能一种具 体实施方式的结构示意图。
[0017] 图8至图9为应用本发明高效输入的预测装置将预测结果反馈给用户的具体实施 方式的实例示意图。
[0018] 图10至图11为应用本发明高效输入的预测装置的【具体实施方式】的另一种实例示 意图。
[0019] 图12为本发明高效输入的预测方法一种【具体实施方式】的流程示意图。
[0020] 图13为本发明高效输入的预测方法另一种【具体实施方式】的流程示意图。
[0021] 图14为本发明高效输入的预测装置一种【具体实施方式】的结构示意图。
[0022] 图15为如图14所示预测模块一种【具体实施方式】的结构示意图。
[0023] 图16为如15所示预测基础获取模块一种【具体实施方式】的结构示意图。
[0024] 图17为如15所不预测基础获取|旲块另一种【具体实施方式】的结构不意图。
[0025] 图18为本发明高效输入的预测装置另一种【具体实施方式】的结构示意图。

【具体实施方式】
[0026] 下文将结合附图来说明本发明高效输入的预测方法和装置的具体实现。
[0027] 参考图1,用户通过手指、点触笔等输入装置101在移动通信终端110的输入区域, 例如键盘或手写板上,点触或滑动,以实现对文本的输入。移动通信终端110与预测装置 120之间建立通信。其中,设备101还可为其它能够实现文本输入的装置,比如音频输入设 备等。移动通信终端110可为手机、平板电脑,但不以此为限。预测装置120可为由计算机 程序所实现的软件模块,也可为将该软件模块固化在硬件设备上而形成的固件;其可运行 在移动通信终端110单侧,也可运行在远程服务器单侧,或可包括分别运行在移动通信终 端110的部分以及运行在远程服务器中的部分。
[0028] 该预测装置120通过移动通信终端110记录输入装置101所输入的文本,并将用 户当前输入之前设定单词长度的输入文本作为预测基础。根据一种实施方式,预测装置120 获取当前输入位置,例如检测光标当前坐标值,或检测光标当前对应的字符数,并基于当前 输入位置,获取当前输入位置之前设定长度的单词,即预测基础。其中,该设定单词长度可 根据该预测装置120的运算能力及移动通信终端110的存储能力进行调整。例如,设定单 词长度为大于2的自然数。
[0029] 在一种实施方式中,该设定单词长度为已输入的整个或部分单词的数目。例如, 设定单词长度为5,则预测基础为在当前输入位置之前完全或未完全输入的5个单词;具体 来说,用户已输入Fast food typically tends to skew,设定单词长度为5,则预测基础 为food typically tends to skew;当用户正在输入more的前两个字母即mo,且已输入了 Fast food typically tends to skew时,其予页测基石出为 typically tends to skew mo〇在 另一种实施方式中,句首开始符也占一个单词长度。例如,设定单词长度3,用户输入Fast food,则预测基础为【句首开始符】+fast+food的序列。
[0030] 接着,预测装置120基于预测基础,在数据库130中进行查询,获得预测结果。其 中,基于预测基础的所述预测结果可为至少包含与预测基础具有上下文关系的后续至少两 级的预测候选词。
[0031] 根据一种实施方式,预测装置120按照逐级预测的方式获得预测结果。首先,预测 装置120先基于预测基础获得第一级预测候选词。
[0032] 在一种实施方式中,预测装置120先将预测基础进行进一步切分,并基于切分的 结果在数据库130中分别进行查询。以包含三个单词长度的预测基础为例。首先预测装置 120检测光标当前坐标值,或检测光标当前对应的字符数,获得当前位置之前的至少三个单 词长度的序列。例如当用户已经输入文本为:I guess you are,且设定长度为3个单词长 度,贝1J获取预测基础为guess you are。
[0033] 接着,预测装置120对该预测基础进行切分,获取在数据库130中进行查询的前序 词。其中,数据库130包括多个不同级的词库,例如一级词库、二级词库、三级词库或其它更 高级的词库。词库的级数用于表示该词库中每一个存储单元中所包含的单词个数,例如一 级词库中每一个存储单元仅包含一个单词,而二级词库中则包含两个单词。预测装置120 对预测基础进行切分,从而获得多个分别针对不同级词库的前序词,其中,前序词中包含的 单词的个数N与词库级数Μ存在这样的关系:N = Μ - 1。例如,对于预测基础guess you are进行切分之后,获得在二级词库中进行查询的前序词为are,在三级词库中进行查询的 前序词为you are,在四级词库中进行查询的前序词为guess you are。通过在对应级数的 词库中寻找包含前序词的存储单元,从而获得对该前序词对应的查询结果。
[0034] 根据一种实施例,一级词库中分别存储了用户有可能输入的单个单词W/以及 〇〇 每个单词出现的概率p(w/),并且存在Σ.Ρ^^1,例如单词"you"以及"you"对应的 /=1 出现概率0.643%。二级词库中分别存储了每两个可能一起出现的词,例如单词W&,单 词W& (i=l,...N),这两个词一起出现时的排序,以及这两个词以该排序出现时的概率, 例如P( W,〗* )或p( Wy。^级词库中分别存储了每三个可能一起出现的词,例 如单词W,〗、单词W&、单词W& (i=l,...,N),三个词一起出现时的排序,以及这三个词 以该排序出现的概率,例如p( wy W&).或p( W& =*= W& )或p( wy wy W& )或 p( wi * wi).或p( wy )或P( wi* w,〗)。预测装置120获得与每一级词库 对应前序词之后,分别按照前序词及其排序,在对应级的词库中进行查询,获得查询结果, 查询结果与前序词的组合构成对应级词库中的存储单元。例如,预测装置120根据在二级 词库中进行查询的前序词为are获得查询结果,即用户有可能在are之后输入的词,例如a, beaches, cold, dogs, young等等;并且,预测装置120根据在三级词库中进行查询的前序词 为 you are 获得查询结果,例如 a,beautiful,correct,dreaming,young 等等。
[0035] 接着,预测装置120还可进一步对每一级词库的查询结果进行优化。具体来说,预 测装置120可对查询结果按照对应概率按照由大至小的顺序进行排序;或者预测装置120 通过设置概率阈值,对每一级词库的查询结果进行过滤,从而在尽可能保证预测准备率的 前提下,简化运算量,节约耗电量,提高反应速度。
[0036] 根据另一种具体的实施方式,数据库120中仅存储一级词库中所有的词W/以及 每个单词出现的概率P(W/),并且按照一级词库中单词和各个单词在其所对应的二级、三 级或更高级词库的每一个存储单元中的概率形成二级、三级或者以上的更高级词库。以 第i级词库为例,其每个单独存储单元中存储i个单词,而任一个存储单元的i个单词中 的每一个单词都可以是一级词库中的任一个词,因此,理论上一级词库包含N个单词时,i 级词库中的存储单元数目应该是随着i的增加,所增加的存储单元的数量无疑是巨大 的。此外,一级词库中每个单词的出现概率是随机的,而当同时出现若干单词时,其中每个 单词与其前后词之间的排序关系又会对每个单词的出现概率造成影响。考虑了上述因素, 在该实施方式中,不同级别的词库符合一定的条件。具体来说,以二级词库为例,对于i = 1,…乂时,其对应的存储单元符合这样的条件,其第一个词相同,即这些存储单元中的第一 个词W&满足:(』=2,...,:^),而这些存储单元中的第二个词W,22则不尽相同;对 于i = Mi+1,…M2时,其对应的存储单元类似的,符合第一个词相同,即这些存储单元中的 第一个词(i=Mi+2,...M 2),而这些存储单元中的第二个词W&则不尽相同。因 此,对于二级词库来说,对于具有相同的第一个词的至少一个存储单元,计算其第二个词出 现在第一个词之后的概率在一种实施方式中,分别按照单词W&对应的概率 对单词^进行排序。在另一种实施方式中,也可设置概率阈值Ρτ进行对与具 有相同的第一个单词W,〗的多个单词 <进行过滤,仅存储其中部分词与该第一个词WA的 组合。类似的,对于二级词库中每一个存储单元的第一个词W,〗,按照一级词库中的存储顺 序以及该单词在一级词库中对应的概率p( )_进行遍历,从而形成二级词库。
[0037] 在这种实施方式中,参考图2,当一级词库具有N个单词时,二级词库由零散的N2 个存储单元简化为复合存储结构,其中该复合存储结构包括η个分支存储结构且每个分支 存储结构中进一步包含m个存储单元,其中η < Ν且m < Ν,并且每个存储单元中包含2个 单词,其中任意一个单词都能从一级词库中获得。而当词库级数T大于二时,则词库将包括 m#. . . *nij(2 < j < T)个存储单元,其中,nij < N,并且每一个存储单元包含T个单词。
[0038] 进一步的,在优选的方案中,还可以采用数字、字母或其它形式的符码来替代对单 词^^本身的存储,或者进而简化对出现概率的存储,从而进一步简化运算量,节约耗电量, 提高反应速度。例如,按照一级词库中的单词存储顺序,将出现概率在概率阈值Ρ τ以上的 单词计作为1,而将出现概率在概率阈值Ρτ以上的单词即作为〇,从而将对每一个单词及其 概率的存储简化为〇和1的存储,从而大大简化运算量。
[0039] 接着,预测装置120分别获取各个前序词在各级词库中的查询结果,并对其设置 权值。
[0040] 根据一种实施方式,根据各查询结果来源的词库级数设置权值,例如对于二级词 库中获得的查询结果 ai、a^an等等,分别赋予权值?\ ;对于三级词库中获得的查询结果bp b^bn等等,分别赋予权值T2;对于四级词库中获得的查询结果 Cl、(vcn等等,分别赋予权 值T3。在一种【具体实施方式】中,可优先考虑级数较高的词库的查询结果,例如将第i词库的 查询结果对应的权值?\与第j词库的查询结果对应的权值L之间存在这样的关系, 其中i>j。
[0041] 在另一个【具体实施方式】中,可对各级词库中获得的每一个查询结果分别赋予不同 的权值,并基于所赋予的权值进行加权计算,从而获得各级词库的查询结果。例如,对于二 级词库中获得的查询结果a^afap等等,分别赋予权值tptftp等等。其中,所述权值与 用户输入历史、用户输入上下文、该单词的优先级相关联。
[0042] 当预测装置120获得第一级预测结果之后,预测装置120进一步基于预测基础和 第一级预测候选词形成新的预测基础,并根据新的预测基础再通过数据库130中进行查 询,获得查询结果,即第二级预测候选词。例如,参考图3,移动通信终端110检测其输入区 域,获得用户在手机键盘上的输入字符串"I guess you are",并将所检测到的输入字符 串发送至预测装置120。预测装置120将已输入文本中距离当前输入最近的三个单词长 度的单词作为预测基础,即"guess you are",在数据库130中进行查询,获得多个预测结 果"going to"、"thinking of"、"a student"等等。其中,每个预测结果包括基于预测基 础的两级预测候选词,并且每个预测结果中的第二级预测候选词为基于第一级预测候选词 "区0;[11〖"、"1:11;[111^11〖"、"3"和预测基础"〖11688 70113代"的预测结果。基于预测基础进行 查询获得包含至少两级预测候选词的预测结果,使得用户能够在输入尽可能较少的文本的 前提下,通过直接选择预测候选词以完成对后续文本的输入,加快了输入速度,提高了用户 的输入效率。
[0043] 在一种实施方式中,可进一步包括根据第二级预测候选词的独立排序,获得预测 结果的排序,并按照该排序结果将预测结果反馈给用户。具体来说,可根据用户的输入历 史、用户当前输入的上下文以及每一个第二级预测候选词的优先级,对预测结果进行排序。 例如参考图4,根据预测基础"guess you are",获得第一级预测候选词,并且第一级预测候 选词具有这样的排序,例如"students",going"、"at"。进一步根据预测基础以及第一级预 测候选词对第二级预测候选词进行预测,当获得第二级预测候选词时,按照用户输入历史、 上下文或优先级等因素获得第二级预测候选词的排列顺序,从而获得预测结果为"(going) to"、"(thinking)of"、"(a)Student"。其中括号内的词为与该第二级预测候选词相对应的 第一级预测候选词,可以看出,预测结果的最终排序仅参考了第二级预测候选词的排序。在 这种实施方式中,当获取第一级预测候选词时,可简化其排序运算,例如可仅考虑每个预测 候选词本身的优先级进行排序,从而简化计算量,提高预测速度。
[0044] 在另一种实施方式中,还可包括:当获得第二级预测候选词之后,参考已有的第一 级预测候选词的排序,进行综合加权排序,从而获得包含第一级预测候选词和第二级预测 候选词的预测结果的排列顺序。例如,参考图5,根据预测基础"guess you are",获得第一 级预测候选词,并且第一级预测候选词具有这样的排序,例如"studentS"、"at"、"g 〇ing"。 进一步根据预测基础以及第一级预测候选词对第二级预测候选词进行预测,当获得第二级 预测候选词时,按照用户输入历史、上下文或优先级等因素获得第二级预测候选词的排列 顺序,例如依次为"(g〇ing)to"、"(thinking)of"、"(a)student"、"(at)work"。其中括号内 的词为与该第二级预测候选词相对应的第一级预测候选词。此时,going和at作为第一级 预测候选词时较为靠前的排序,会对其所对应的预测结果的排序产生影响。例如,可按照第 二级预测候选词对应的第一级预测候选词的排序设置关联权值,排序越前则其对应的权值 越大,综合考虑该关联权值与第二级预测候选词的权值,从而与预测结果所对应的排列顺 序。
[0045] 根据另一种实施方式,预测装置120还可按照多级预测的方式获得预测结果。例 如,预测装置120获取预测基础之后,对该预测基础进行切分,获取在数据库130中进行查 询的前序词。根据前序词在数据库130中的各级词库中进行查询,其中,进行查询的词库 的级数M'与前序词所包含的单词个数Ν'之间存在这样的设定匹配关系:Ν' = Μ' -X,其中 X为构成预测结果的预测候选词个数。进而以与上述描述类似的方式在各级词库中进行检 索,从而获得预测结果。
[0046] 当预测结果包含至少两级或以上的预测候选词时,则对于同一个预测基础,会存 在这样的预测结果:其由相同的单词组合构成,例如Α+Β,但是不同的预测结果中单词之间 存在不同的排序,例如预测结果Τ1为Α+Β,预测结果Τ2为Β+Α。在一种实施方式中,将这样 具有相同的单词构成然而具有不同的单词排序的预测结果视作为完全不同的预测结果,与 其它预测结果一起进行排序。在另一种实施方式中,对于这样的预测结果,先按照语法及用 户的输入历史对其进行判断,如果即使调换组成该预测结果的单词的排序,并不会对该预 测结果整体的意思表达造成影响,则将这些具有相同的单词构成、虽然单词构成顺序不同 但意思相同或几乎相同的预测结果进行合并,按照用户的输入历史或者按照优先级选取其 中一个反馈给用户,从而在有限的反馈区域内提高预测的精度。例如,获得的预测结果包 括:预测结果1 "步跑了"、预测结果2 "跑步了",虽然构成这两个预测结果的单个汉字的排 列顺序不同,但其从语法的角度来说,其语意并不因单字的排列顺序的改变而产生较大的 变化,则可将这两个预测结果进行合并,取其中任意一个展示给用户,或根据用户的输入历 史或根据这两个预测结果的优先级,选取其中一个展示给用户。
[0047] 根据又一种实施方式,预测装置120还可直接将所获取的预测基础传输至数据 库130,通过将预测基础与数据库130中记录的数据进行匹配,选取符合预期要求的匹配作 为对应的预测结果。例如,预测基础包括设定单词长度的单词组合,例如包括2个或3个 单词组合。首先,预测装置120将预测基础拆分为单个单词的组合,按预测基础中单词的 排列顺序逐个提取其中对应的每一个单词,并按照每一个单词依次在数据库130中进行检 索。例如参考图6,对于预测基础"guess you are",预测装置120首先对其进行拆分,获得 "guess" "you" "are"。接着,预测装置120首先按照guess在数据库130中进行查找,获 得查询结果A1。然后,预测装置120根据you在A1中进行查找,获得包含guess you的查 询结果A2。接着,预测装置120进一步在查询结果A2中继续查找包含guess you are的查 询结果A3。
[0048] 上述任一种所提及在数据库130中或在数据库130的各级词库中进行的查找过程 中,可包括:对预测基础进行语法、语义的分析。此外,还可进一步包括,将分析结果与在数 据库130中检索获得的查询结果相结合,或按照分析结果对查询结果进行筛选,从而提高 预测精度。根据一种实施方式,参考图7,预测装置120可包括语法分析器710和对应的候 选词结构库720,其中语法分析器710对预测基础进行语法分析,对应的候选词结构库720 保存不同语法对应的候选词结构。比如当预测基础为"you are"时,语法分析器会710分 析该预测基础的语法结构,当检测到其为sb. +be结构时,对应的候选词结构库720为动词 的现在分词结构、或形容词、或名词,则根据预测基础在数据库130中进行检索时,进一步 对检索获得的查询结果进行检查,获得预测结果,其中所述预测结果符合对应的语法结构。 根据另一种实施方式,预测装置120可包括语义分析器,提供对预测基础的语义分析,或者 预测装置120可包括用户习惯结构库,其中对用户曾经输入的词或词组或句子进行搜集和 统计,根据统计的结果,对用户经常输入的语句,即用户习惯,予以记录并根据用户习惯对 检索获得的匹配对象进行过滤,获得符合用户习惯的预测结果。
[0049] 当获得预测结果之后,预测装置120将所有预测结果以及其排序发送并保存在移 动通信终端110。
[0050] 根据一种实施方式,参考图8,预测装置120将所有的预测结果按照其排序显示在 移动通信终端110的显示区域,反馈给用户。
[0051] 根据另一种实施方式,预测装置120继续检测用户在移动通信终端110的输入,并 对用户进一步的动作进行判断。其中,预测装置120可不显示任何所获取的预测结果,也可 将所获取的预测结果中的第一级预测候选词反馈给用户,如图9所示。
[0052] 当预测装置120检测到用户存在进一步输入字符时,则预测装置120记录用户当 前的输入,获得当前输入的字符,然后根据用户当前输入的字符以及原有预测基础,对所保 存的预测结果进行更新,提高部分预测结果的优先级,或对所保存的预测结果进行筛选,仅 保存部分符合筛选条件的预测结果或仅将部分符合筛选条件的预测结果反馈给用户。其 中,优先级被提高或符合过滤条件的预测结果满足这样的条件:其第一级预测候选词的开 头字符与用户当前所输入的字符相同。例如,参考图10,当预测装置120检测到用户输入 "I will never forget the time",预测装置 120 首先根据预测基础 "never forget the time"获得预测结果"we spent,'、"we worked,'、"we shared,'、"when I,'、"when she,'、"you had"。之后,预测装置120进一步监控用户的输入,当检测到进一步输入结果为"w"时,预 测装置120根据获取的字符对已有的预测结果进行过滤或更新已有预测结果的优先级,保 留以"w"开头的第一级预测候选词所对应的预测结果,即"we spent"、"We W〇rked"、"We Shared"、"When I"、"when she"。预测装置120持续对键盘区域的用户输入进行监控,当用 户进一步再输入"h",预测装置120获取用户的输入结果,并根据用户所输入的"wh"继续对 已有预测结果进行过滤或更新已有预测结果的优先级,保留"when I"、"when she"。
[0053] 在另一种实施方式中,预测装置120也可以根据用户当前输入的字符以及原有预 测基础,形成新的预测基础,并根据该新的预测基础重新在数据库130中进行检索,以获得 对应的预测结果。
[0054] 当预测装置120检测到用户对候选词栏中候选词的选择或对已输入的单词进行 确认时,则预测装置120检测并获取用户所选择的候选词或确认的单词,根据所获取的单 词在已有预测结果的第一级预测候选词中进行查找。当预测装置120检测到存在具有相 同第一级预测候选词的预测结果时,预测装置120将该预测结果中的第二级预测候选词 通过移动通信终端110显示给用户。例如,当预测装置120通过查询获得结果字符串"we spent,'、"we worked,'、"we shared,'、"when I,'、"when she,'、"you had,'等之后,检测移动 通信终端110的用户操作。当检测到用户选择"we"或确认输入"we"后,参考图11,预测装 置120将"邓6拉"、"《证1? 5(1"、"吐&代(1"通过移动通信终端110反馈给用户,例如可通过移 动通信终端110的显示区域对这些第二级预测候选词进行显示,或者也可通过移动通信终 端110依次对这些第二级预测候选词进行播报。
[0055] 在又一种实施方式中,预测装置120还可持续对移动终端110的用户操作进行检 测。当用户每完成一个单词的输入时,都会触发预测装置120进行新一次的检索。具体 来说,预测装置120根据用户当前所输入的单词与原有的预测基础构建新的预测基础,并 根据更新的预测基础,在数据库130进行查询,获得基于该更新的预测基础的预测结果。 例如,预测装置120根据预测基础"forget the time"获得结果字符串"we spent"、"we worked"、"we shared"、"when I"、"when she"、"you had" 等之后,并且当检测到用户选择 "we"或确认输入"we"后,参考图11,预测装置120 -边将"Spent"、"W〇rked"、" Shared"S 示给用户,一边根据新的预测基础"the time we"进行查询,获得对应的预测结果,即位于 "we"之后的两个或多个单词组合。
[0056] 在其它的实施方式中,本发明还可包括将设定个数的所述预测结果显示给用户, 并随着用户的输入或选择或确认,将预测结果的实时变化显示给用户。例如,其中可通过将 预测结果中用户所输入或选择或确认的字符或单词进行高亮,从而提供更为直接的反馈。 例如,预测装置 120 将预测结果"we spent"、"we worked"、"we shared"、"when I"、"when she"、"you had"通过移动终端110显示给用户。之后,预测装置120进一步监控用户的输 入,当检测到进一步输入结果为"w"时,预测装置120根据获取的字符对已有的预测结果进 行过滤或更新已有预测结果的优先级,根据过滤或更新结果对显示内容进行更新,并高亮 用户输入的字符,即"《"。预测装置120持续对键盘区域的用户输入进行监控,当用户进一 步选择了单词"when"时,预测装置120进一步根据用户的输入结果更新显示内容,例如显 示内容更新为"when I"、"when she",并高亮显示内容中的"when",从而提供更佳的用户体 验。
[0057] 根据本发明的一个方面,预测装置120通过基于预测基础在云端或本地的数据库 130中进行查找获取预测结果,并将该预测结果保存至本地的移动终端110。由于本发明采 用了多元的预测方式,即每次预测后续至少两级单词的组合,并且预测结果被提前存储在 本地,因此一旦预测装置120检测到用户当前的输入与预测结果中第一级预测候选词部分 或全部相同时,能够迅速从本地所存储的预测结果中获取关联的第二级预测候选词,并显 示给用户,从而一方面极大地提高了预测速度,一方面又减少甚至避免了网络传输所造成 的延迟,极大得改善了用户体验。
[0058] 进一步的,当采用云端数据库时,由于能够依赖云端数据库进行预测,仅需定期对 云端数据库进行更新即可以保证预测和纠错的准确性,从而能够有效地减少了对本地数据 库过于频繁的更新。
[0059] 参考图12,本发明的一方面提供了一种高效输入的预测方法,包括:步骤S110,检 测用户输入的文本,根据用户已输入历史和当前输入位置获得预测基础;步骤S120,基于 所述预测基础在数据库中进行查询,获得预测结果,所述预测结果至少包括基于预测基础 的后续两级的预测候选词。
[0060] 具体来说,在步骤S110中,当用户持续在键盘上进行输入,检测用户输入的文本 可包括检测用户已输入的文本,例如对用户输入的文本、语音等数据进行分析,获取用户的 输入历史。步骤S110还包括:检测用户输入的文本还可包括检测用户当前输入位置,例 如通过对光标坐标值、光标位置、光标当前对应的字符数等数据进行检测,获取当前输入位 置。步骤S110进一步还包括:根据用户当前输入位置,获取预测基础,其中,所述预测基础 可为当前输入位置之前设定单词长度的输入文本。
[0061] 根据本发明的一种实施方式,数据库可进一步包括多个不同级词库。相应的,步骤 S120可进一步包括对所述预测基础进行切分,获取进行查询的至少一个前序词,其中前序 词对应于数据库中的各级词库,并且前序词所包含的单词个数与根据该前序词获得的预测 候选词的个数之和为词库级数,也就是词库中最小存储单元中所存储的单词个数。
[0062] 根据本发明的一种实施方式,预测结果中可包括多于一级的预测候选词,此时,步 骤S120可进一步包括:基于所述预测基础,逐级获取预测候选词。以预测结果包括两级预 测候选词为例,步骤S120可包括:先基于所述预测基础进行查询,获得第一级预测候选词; 再基于所述预测基础以及第一级预测候选词进行查询,获得第二级预测候选词。
[0063] 步骤S120可进一步包括:对每次进行检索的预测基础进行分析,并根据分析结果 对获得的预测结果进行筛选。例如可对所述预测基础进行语义、语法、上下文等一方面或多 方面的分析。
[0064] 参考图13,本发明的另一方面还提供了一种高效输入的预测方法,在上述步骤 S120之后还可包括:步骤S130,检测用户的进一步输入,根据用户的输入结果对所述预测 结果进行筛选,并根据筛选结果将预测结果的部分或全部反馈给用户。
[0065] 根据本发明的一种实施方式,当根据云端数据库获得所述预测结果时,还可进一 步包括将所述预测结果保存至本地。根据本发明的另一种实施方式,可将云顿数据库下载 至本地,从而在本地数据库中通过实施类似的步骤,以获得预测结果。
[0066] 其中,在步骤S130中,持续对用户输入进行检测可进一步包括:当检测到用户进 一步输入单词的部分字符,则根据进一步输入的部分字符,对所述预测结果进行筛选,使得 筛选后的预测结果的第一级预测候选词包含用户所输入的部分字符。例如用户进一步输入 win,则将包含以win开头或含有win的第一级预测候选词的预测结果作为筛选后的预测结 果。当检测到用户进一步选择单词或输入单词的全部字符,则按照所选择或输入的单词对 所述预测结果中的第一级预测候选词进行匹配,将匹配成功的预测结果作为筛选后的预测 结果。
[0067] 其中,步骤S130中将筛选后的预测结果反馈给用户还可进一步包括:将筛选后的 预测结果全部反馈给用户;其中,当将预测结果全部显示给用户时,可不予区分用户已输入 或已选中的部分,也可采用不同的颜色、大小写、字体、加粗、斜体、下划线等标记方式将用 户已输入或已选中的部分与剩余部分进行区分。或者,也可仅将筛选后预测结果中除第一 级预测候选词之外的其它剩余预测候选测反馈给用户。
[0068] 在其它实施方式中,上述高效输入的预测方法还可包括通过多媒体的形式将预测 结果反馈给用户,例如,可将所获得的预测结果显示给用户;又例如,在候选词列表中以标 记形式标识所述预测结果的预测候选词;又例如,在不同于候选词列表的屏幕其它区域显 示预测结果的预测候选词;又例如,可通过喇叭等音频介质,将一个或多个所获得的预测结 果中的一个或多个单词以声波形式反馈给用户;还例如,可通过其它多媒体形式将预测结 果反馈给用户。
[0069] 参考图14,本发明的一方面还提供了一种高效输入的预测装置,包括:检测记录 模块200,适于对用户输入的文本以及当前输入位置进行检测和记录;预测模块300,适于 根据用户输入的文本和当前输入位置形成预测基础,根据所述预测基础在数据库中进行查 询,获得预测结果,其中,每个预测结果至少包括基于预测基础的两级预测候选词;数据库 400,适于存储单词。
[0070] 其中,检测记录模块200还可进一步包括检测模块210,适于对用户的当前输入位 置进行检测,以及记录模块220,适于记录用户输入的文本。
[0071] 参考图15,预测模块300还可进一步包括预测基础获取模块310,适于根据用户当 前输入位置和输入历史,获取预测基础;其中,所述预测基础可为当前输入位置之前设定单 词长度的输入文本。以及查询模块320,适于根据所获取的预测基础在数据库400中进行查 询,以获取对应的预测结果。
[0072] 其中,参考图16,预测基础获取模块310还可进一步包括:预测基础切分模块312, 适于对预测基础进行切分。在一种实施方式中,查询模块320可根据预测基础切分模块312 的不同切分结果,获得包含不同个单词数目的预测基础,并分别基于包含不同个单词数目 的预测基础在数据库400中不同级数的词库中进行查询,获得对应的预测结果,其中,预测 基础中的单词数目与词库级数之差为预测结果中所包含的预测候选词的个数。
[0073] 参考图17,预测基础获取模块310还可进一步包括:预测基础更新模块314,适于 对预测基础进行更新。在一种实施方式中,查询模块320先根据当前的预测基础在数据库 400中进行查询,获得对应的第一级预测候选词。此时,预测基础更新模块314根据原有的 预测基础以及该第一级预测候选词形成新的预测基础。查询模块320进而根据新的预测基 础再次进行查询,获得后续的预测候选词,从而获得至少包含两级预测候选词的预测结果。
[0074] 在一种实施方式中,预测模块300还可基于预测基础进行语义或语法的分析,获 得分析结果,该分析结果可包括预测结果可能符合的语义、或语法规则。预测模块300可进 一步根据该分析结果对预测结果进行过滤。
[0075] 参考图18,本发明的另一方面还提供了一种高效输入的预测装置,在包含检测记 录模块200、预测模块300和数据库400的基础上还进一步包括:筛选模块500,适于根据 检测记录模块200所记录的用户的进一步输入,对所述预测结果进行筛选;以及反馈模块 600,适于将所述筛选结果反馈至用户。
[0076] 筛选模块500根据检测模块200的结果对用户进一步输入进行判断:当检测到用 户进一步输入单词的部分字符,则根据所进一步输入的部分字符,对所述预测结果进行过 滤,使得筛选后的预测结果中的第一级预测候选词包含用户所输入的部分字符或以用户所 输入的部分字符开头;当检测到用户进一步选择单词或输入单词的全部字符,则按照所选 择或输入的单词对所述预测结果中的第一级预测候选词进行匹配,使得筛选后的预测结果 中的第一级预测候选词为所选择或输入的单词、或包含该所选择或输入的单词、或以该所 选择或输入的单词为开头。
[0077] 反馈模块600将筛选模块所获得的预测结果的部分或全部反馈给用户。在一种实 施方式中,反馈模块600可包括显示设备,例如可将所获得的预测结果全部显示给用户,其 中可通过标记的形式将用户已输入或已选择的部分进行标识;又例如,也可根据用户已输 入或已选择的部分,仅将预测结果的剩余部分显示给用户;其中,显示所述预测结果时,可 显示在候选词栏,也可显示在屏幕中不同于候选词栏的其它位置,例如候选词栏同侧、候选 词栏上方、候选词栏与键盘区域之间、或者文本显示区域中的设定位置,还可显示在键盘区 域对应的位置;其显示方式可以按照待显示预测候选词的个数逐次显示,也可同时显示所 有待显示的预测候选测。在另一种实施方式中,也可包括采用其它多媒体设备,例如喇叭 等,将一个或多个所获得的预测结果中的一个或多个单词反馈给用户。
[0078] 本发明可适用于多种语言,其发明思路并不应受到说明书中所公开的实施例所涉 及的具体语言种类的限制。本领域技术人员应当能理解,本发明可适用于例如英语、法语、 意大利语、德语、荷兰语、波斯语、阿富汗语、芬兰语等印欧语系的语言,或者例如简体中文、 繁体中文、藏语等汉藏语系的语言,或者例如车臣语、格鲁尼亚语等高加索语系的语言,或 者例如芬兰语、匈牙利语等乌拉尔语系的语言,或者例如爱斯基摩语、切罗基语、苏语、克里 克语等北美印第安语系的语言,或者例如柬埔寨语、孟语、布朗语等南亚语系的语言,或者 例如泰米尔语等达罗峨茶语系的语目,或者例如东、西阿尔泰语等阿尔泰各语族的语g,或 者例如非洲北部及西部各国所使用的尼罗一撒哈拉语系的语言,或者例如尼日尔语、刚果 语、斯瓦西里语等尼日尔一刚果语系的语言,或者例如霍屯督语、布须曼语、散达维语等科 依桑语系的语言,或者例如希伯来语、阿拉伯语、古埃及语、豪萨语等的闪米特-含米特语 系的语言,或者例如印度尼西亚语、马来语、爪哇语、斐济语、毛利语等南岛语系的语言。
[0079] 以上为描述简便,仅以获得有限级数词库或预测候选词为例,并且每次仅列出了 可能的有限数目组的预测候选词,然而本领域技术人员应当能理解,本发明并不应受到上 述描述的预测候选词的级数以及每次所获得的预测候选词数目的限制。例如,当预测级数 越多,所获得的预测候选词数目的量越多时,精确度越高,但每次传输将会耗费更多的流 量,也需要更多的存储空间。在实际应用中,可根据精确度、流量、存储空间的综合考虑,确 定更为合适预测级数和预测候选词数目。
[0080] 上述描述中所涉及到的"单词",是指对应输入语言中其含义对句子或段落文本具 有贡献的最小构成单位,其可以具有实际的语意,也可以仅为配合上下文的其它至少一个 单词共同完成某种语意的表达。例如,在中文中,"单词"可以是指单独的一个汉字;在英文 中,"单词"可以是指一个英文单词。上述描述中所涉及到的"字符"是指构成单词或与单词 相关联的语言最小单位,例如"字符"可为构成英文单词的字母,"字符"也可为构成汉字的 拼音字母或笔画。
[0081] 以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述 特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影 响本发明的实质内容。
【权利要求】
1. 一种高效输入的预测方法,包括: 检测用户的输入; 根据用户已输入的历史文本和当前输入位置获得预测基础,所述预测基础为基于当前 输入位置之前设定单词长度的已输入文本; 基于所述预测基础在数据库中进行查询,获得预测结果,所述预测结果至少包括预测 基础后续两级的预测候选词。
2. 如权利要求1所述的预测方法,其特征在于,所述获得预测结果包括:获得一级预测 候选词之后,进一步基于原有预测基础和已获得的预测候选词形成新的预测基础,并根据 新的预测基础再获取后续预测候选词。
3. 如权利要求1所述的预测方法,其特征在于,所述基于预测基础进行查询进一步包 括对所述预测基础进行切分,获取多个分别包含不同单词个数的前序词。
4. 如权利要求3所述的预测方法,其特征在于,所述数据库包括多个不同级数的词库, 根据所述前序词在不同级数的词库中进行查询,所述前序词中所包含的单词个数与词库级 数存在设定的匹配关系。
5. 如权利要求1所述的预测方法,其特征在于,所述数据库至少包括至少一个N级词 库,其中,所述N级词库中每个存储单元包含N个单词,且按照一级词库中所存储的单词和 该单词对应于所述N级词库的概率形成所述N级词库数据库的存储单元。
6. 如权利要求5所述的预测方法,其特征在于,所述基于预测基础进行查询进一步包 括:对在N级词库中查询获得的预测候选词进行排序或筛选。
7. 如权利要6所述的预测方法,其特征在于,所述对在N级词库中查询获得的预测候选 词进行排序或筛选进一步包括:按照各预测候选词所对应的词库级数,对源于同一级词库 的各预测候选词设置相同的权值,或者对源于同一词库的每一个预测候选词分别赋予不同 的权值。
8. 如权利要求1所述的预测方法,其特征在于,进一步包括:对预测基础进行语法、语 义的分析。
9. 如权利要求1所述的预测方法,其特征在于,所述设定单词长度为大于二的自然数。
10. 如权利要求9所述的预测方法,其特征在于,所述句首开始符作为一个单词长度。
11. 如权利要求1所述的预测方法,其特征在于,所述获得预测结果之后进一步包括: 在本地保存所述预测结果,检测用户的进一步输入,根据用户的输入结果对所述预测结果 进行筛选,将所述预测结果的部分或全部反馈给用户。
12. 如权利要求11所述的预测方法,其特征在于,所述根据用户的输入结果对预测结 果进行筛选进一步包括:根据用户进一步输入的部分字符,对所述结果字符串进行过滤,使 得反馈的预测结果中第一级预测候选词包含用户所输入的部分字符。
13. 如权利要求11所述的预测方法,其特征在于,所述根据用户的输入结果对预测结 果进行筛选进一步包括:根据用户进一步选择的单词或输入的单词的全部字符,则按照所 选择或输入的单词对所述预测结果中的第一级预测候选词进行匹配。
14. 如权利要求1所述的预测方法,其特征在于,所述检测用户输入的文本包括对用户 输入的触点坐标值、光标位置、语音信息中的至少一种进行检测。
15. 如权利要求1所述的预测方法,其特征在于,还包括:将一个或多个所获得的预测 结果中的一个或多个单词以多媒体形式反馈给用户。
16. 如权利要求1所述的预测方法,其特征在于,所述以多媒体形似反馈给用户包括: 在候选词列表以标记形式对所述结果字符串中的预测候选词进行标记,或在不同于候选词 列表的屏幕其它区域显示结果字符串的预测候选词。
17. -种高效输入的预测装置,其特征在于,包括: 检测记录模块,适于对用户输入的文本以及当前输入位置进行检测和记录; 预测模块,适于根据用户输入的文本和当前输入位置形成预测基础,根据所述预测基 础在数据库中进行查询,获得预测结果,其中,所述预测基础为基于当前输入位置之前设定 单词长度的已输入文本,并且每个预测结果至少包括基于预测基础的两级预测候选词; 数据库,适于存储单词。
18. 如权利要求17所述的预测装置,其特征在于,所述预测模块进一步包括:预测基础 切分模块,适于对所述预测基础进行切分,获得包含不同个单词数目的预测基础。
19. 如权利要求17所述的预测装置,其特征在于,所述预测模块进一步包括:预测基础 更新模块,适于对预测基础进行更新。
20. 如权利要求19所述的预测装置,其特征在于,所述预测基础更新模块根据原有的 预测基础以及已获得的预测候选词形成新的预测基础。
21. 如权利要求17所述的预测装置,其特征在于,进一步包括: 筛选模块,适于根据所述检测记录模块记录的用户的进一步输入,对所述预测结果进 行筛选;以及 反馈模块,适于将所述筛选结果反馈至用户。
22. 如权利要求17或21所述的预测装置,其特征在于,所述数据库包括多个不同级数 的词库,根据所述前序词在不同级数的词库中进行查询,所述前序词中所包含的单词个数 与词库级数存在设定的匹配关系。
23. 如权利要求17或21所述的预测装置,其特征在于,所述数据库至少包括至少一个 N级词库,其中,所述N级词库中每个存储单元包含N个单词,且按照一级词库中所存储的单 词和该单词对应于所述N级词库的概率形成所述N级词库数据库的存储单元。
【文档编号】G06F17/30GK104102720SQ201410345173
【公开日】2014年10月15日 申请日期:2014年7月18日 优先权日:2014年7月18日
【发明者】吴琨, 戴云 申请人:上海触乐信息科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1