一种输入纠错方法和装置、一种用于输入纠错的装置与流程

文档序号:13675304阅读:163来源:国知局

本发明涉及计算机信息输入技术领域,特别是涉及一种输入纠错方法和装置、一种用于输入纠错的装置。



背景技术:

目前,涉及交互的设备,通常需要用户通过输入法系统将自己的操作意图与设备交互识别。例如,用户可以通过键盘键入输入串,然后由输入法系统依据其预置的标准映射规则将该输入串转换为相应语言的候选项并展示,进而将用户选择的候选项上屏。

在实际应用中,用户很有可能因为按错键(pc上)或者点错屏幕位置(智能终端上)等原因而导致键入错误的输入串。输入纠错,正是针对上述错误的一种输入法系统解决方案,它能够主动识别用户的输入错误,并将错误的输入串纠正成正确的输入串,使用户在不需要修改输入串的前提下就能够输入正确的文字。

现有的输入纠错方案具体可以包括:基于编辑距离的纠错方案和基于统计的纠错方案;其中,基于编辑距离的纠错方案可以对输入串的每个位置进行如下纠错尝试:插入一个字符、删除一个字符、替换一个字符等,以产生该输入串对应的纠错候选串;基于统计的纠错方案可以通过大数据挖掘生成纠错模型,该纠错模型可用于学习纠错候选串被错输为输入串的概率。

然而,不同用户往往具有不同的错输习惯,例如,有些用户习惯错按左边的按键,而有些用户习惯错按右边的按键等;上述基于编辑距离的纠错方案和基于统计的纠错方案针对不同用户提供相同的纠错候选串,并没有能力实现个性化的纠错,因此容易影响纠错的准确率。



技术实现要素:

鉴于上述问题,本发明实施例提出了一种克服上述问题或者至少部分地解决上述问题的输入纠错方法、输入纠错装置及用于输入纠错的装置,本发明实施例能够对用户首次错输进行有效的纠正,且能够实现个性化的和实时的纠错,提高纠错的准确率。

为了解决上述问题,本发明公开了一种输入纠错方法,包括:

获取输入过程中的输入串;

将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配;其中,所述历史输入串与历史上屏内容之间的映射关系为在完成正确的输入过程后建立得到;

将与所述输入串匹配成功的历史输入串作为所述输入串对应的纠错候选串。

可选地,所述将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配的步骤,包括:

针对所述历史输入串与历史上屏内容之间的映射关系中的当前历史输入串,确定其与所述输入串之间的第二编辑距离;

在所述第二编辑距离不超过第二编辑距离阈值时,确定所述当前历史输入串与所述输入串匹配成功。

可选地,所述方法还包括:

将与所述输入串匹配成功的历史输入串对应的历史上屏内容,作为所述纠错候选串对应的纠错候选;

依据所述历史上屏内容的频次、上屏时间及所述第二编辑距离中的至少一种,对多个纠错候选进行排序。

可选地,所述依据所述历史上屏内容的频次、上屏时间及所述第二编辑距离中的至少一种,对多个纠错候选进行排序的步骤,包括:

依据所述历史上屏内容的频次、上屏时间及所述第二编辑距离中的至少一种,计算各纠错候选的得分;

依据各纠错候选的得分,对多个纠错候选进行排序。

可选地,所述依据所述历史上屏内容的频次、上屏时间及所述第二编辑距离中的至少一种,计算各纠错候选的得分的步骤,包括:

确定所述纠错候选对应历史上屏内容的频次与所有历史上屏内容的频次中的最大频次的第一比值;

确定所述纠错候选对应历史上屏内容的上屏时间与所有历史上屏内容的上屏时间中的最大上屏时间的第二比值;

依据所述第一比值、第二比值及所述第二编辑距离中的至少一种,计算各纠错候选的得分。

可选地,所述得分与所述第一比值和所述第二比值成正比,所述得分与所述第二编辑距离成反比。

可选地,通过如下步骤建立所述历史输入串与历史上屏内容之间的映射关系:

当某次输入过程不包含纠错操作、且该次输入过程的上屏内容未被更改时,确定该次输入过程为正确的输入过程;

针对所述正确的输入过程,依据其对应的输入串与上屏内容建立历史输入串与历史上屏内容之间的映射关系。

可选地,在所述将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配的步骤之前,所述方法还包括:

依据所述输入串,在预先建立的错误串与正确串之间的映射关系中进行查找,以得到对应的正确串;其中,所述错误串与正确串之间的映射关系为在完成与纠错操作相关的输入过程后,依据所述纠错操作建立得到,将查找得到的正确串作为所述输入串对应的纠错候选串;

当未查找到所述输入串对应的正确串时,将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配,将与所述输入串匹配成功的历史输入串作为所述输入串对应的纠错候选串。

另一方面,本发明公开了一种输入纠错装置,包括:

输入串获取模块,用于获取输入过程中的输入串;

匹配模块,用于将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配;其中,所述历史输入串与历史上屏内容之间的映射关系为在完成正确的输入过程后建立得到;以及

纠错模块,用于将与所述输入串匹配成功的历史输入串作为所述输入串对应的纠错候选串。

可选地,所述装置还包括:

查找模块,用于在所述匹配模块将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配之前,依据所述输入串,在预先建立的错误串与正确串之间的映射关系中进行查找,以得到对应的正确串;其中,所述错误串与正确串之间的映射关系为在完成与纠错操作相关的输入过程后,依据所述纠错操作建立得到,将查找得到的正确串作为所述输入串对应的纠错候选串;

则所述匹配模块,具体用于当未查找到所述输入串对应的正确串时,将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配,将与所述输入串匹配成功的历史输入串作为所述输入串对应的纠错候选串。

再一方面,本发明公开了一种用于输入纠错的装置,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:

获取输入过程中的输入串;

将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配;其中,所述历史输入串与历史上屏内容之间的映射关系为在完成正确的输入过程后建立得到;

将与所述输入串匹配成功的历史输入串作为所述输入串对应的纠错候选串。

可选地,所述处理器还用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:

在将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配之前,依据所述输入串,在预先建立的错误串与正确串之间的映射关系中进行查找,以得到对应的正确串;其中,所述错误串与正确串之间的映射关系为在完成与纠错操作相关的输入过程后,依据所述纠错操作建立得到,将查找得到的正确串作为所述输入串对应的纠错候选串;

当未查找到所述输入串对应的正确串时,将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配,将与所述输入串匹配成功的历史输入串作为所述输入串对应的纠错候选串。

本发明实施例包括以下优点:

本发明实施例可以将输入过程中的输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配;由于上述历史输入串与历史上屏内容之间的映射关系为在完成正确的输入过程后建立得到,故上述第二映射关系中的历史输入串可以作为用户使用过的正确输入串,而具有较大的参考价值,能够对用户首次错输进行有效的纠正;因此,上述匹配过程可以将上述历史输入串与历史上屏内容之间的映射关系中的历史输入串作为纠错结果(例如纠错候选串)的目标,能够实现符合用户个性化输入习惯的高效又准确的纠错。

并且,上述映射关系是依据用户的输入行为得到的,因此其能够反映用户的个性化输入习惯,进而能够实现个性化的纠错,提高纠错的准确率。

附图说明

图1是本发明的一种输入纠错方法实施例一的步骤流程图;

图2是本发明的一种输入纠错方法实施例二的步骤流程图;

图3是本发明的一种输入纠错装置实施例的结构框图;

图4是本发明的一种用于输入纠错的装置900的框图;及

图5是本发明的一种服务器的结构示意图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

方法实施例一

参照图1,示出了本发明的一种输入纠错方法实施例一的步骤流程图,具体可以包括如下步骤:

步骤101、获取输入过程中的输入串;

步骤102、将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配;其中,所述历史输入串与历史上屏内容之间的映射关系可以为在完成正确的输入过程后建立得到;

步骤103、将与所述输入串匹配成功的历史输入串作为所述输入串对应的纠错候选串。

本发明实施例可以应用于各种输入方式的输入法系统,例如上述输入方式具体可以包括键盘符号、手写信息等输入方式,即用户可以通过编码字符串、手写输入信息等输入上屏内容。下面仅以编码字符串(以下简称输入串)的输入方式为例进行说明,其它输入方式相互参见即可。

本发明实施例提供的输入纠错方法可应用于输入法系统的客户端与服务器对应的应用环境中,其中,输入法系统的客户端与服务器可以位于有线或无线网络中,通过该有线或无线网络,客户端与服务器进行数据交互。

具体地,输入法系统的的客户端可以运行在智能终端上,该客户端可以捕获用户在输入过程中的输入串。上述智能终端具体可以包括但不限:智能手机、平板电脑、电子书阅读器、mp3(动态影像专家压缩标准音频层面3,movingpictureexpertsgroupaudiolayeriii)播放器、mp4(动态影像专家压缩标准音频层面4,movingpictureexpertsgroupaudiolayeriv)播放器、膝上型便携计算机、车载电脑、台式计算机、机顶盒、智能电视机、可穿戴设备等等。

在输入法系统领域,无论是中文、日文、韩文还是其它语言的输入法系统,都是把用户输入的编码字符串转换成相应语言的候选项,然后由用户来选择输出至应用程序的内容,这里通过上屏操作输出至应用程序的内容也即上屏内容。在本发明的一种可选实施例中,一次输入过程可以始于输入串的接收,终止于该输入串对应候选项的上屏。以输入串“nihao”和上屏内容“你好”的输入过程为例,在接收到字符“n”时,该次输入过程开始,而在接收到输入串“nihao”对应候选项“你好”的上屏操作后,该次输入过程结束。

本发明实施例的输入纠错过程可以包括:将输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配;由于上述历史输入串与历史上屏内容之间的映射关系(以下简称第一映射关系)为在完成正确的输入过程后建立得到,故上述第一映射关系中的历史输入串可以作为用户使用过的正确输入串,而具有较大的参考价值,且能够对用户首次错输进行有效的纠正;因此,上述步骤102将上述第一映射关系中的历史输入串作为纠错结果(例如纠错候选串)的目标,能够实现符合用户个性化输入习惯的高效又准确的纠错。

在实际应用中,上述第一映射关系中的历史输入串的频次越高且历史时间越大(也即最新被使用过),则说明其更能够反映用户的个性化输入习惯,因此,可以将其作为纠错结果的目标。

在本发明的一种可选实施例中,可以通过如下步骤建立所述历史输入串与历史上屏内容之间的映射关系:

步骤a1、当某次输入过程不包含纠错操作、且该次输入过程的上屏内容未被更改时,确定该次输入过程为正确的输入过程;

步骤a2、针对所述正确的输入过程,依据其对应的输入串与上屏内容建立历史输入串与历史上屏内容之间的映射关系。

本发明实施例中,正确的输入过程可用于保证上述第一映射关系中的历史输入串可以作为用户使用过的正确输入串。

步骤a1可用于判断一次输入过程是否为正确的输入过程。其中,某次输入过程不包含纠错操作是指该次输入过程中的输入串未被用户或者输入法系统纠正过,也即,用户一开始键入的输入串即为正确输入串。该次输入过程的上屏内容未被更改是指用户未更改该次输入过程的上屏内容的全部或者部分,其可用于表示用户对该次输入过程的输入串和上屏内容均是满意的,可以进一步保证该次输入过程的输入串的准确性。

对于每次正确的输入过程,本发明实施例都可以将输入串和对应的上屏内容添加到上述第一映射关系中。比如用户输入“nihao”、上屏了“你好”、且未对“你好”进行更改,则可以将“nihao”和“你好”添加到上述第一映射关系中。

在本发明的一种可选实施例中,可以在用户输入串词库中保存上述第一映射关系,由于该用户输入串词库所保存第一映射关系的粒度为符合用户输入习惯的正确输入串,故在本发明实施例的输入过程中,可以通过步骤102的匹配过程,将该历史输入串作为错误的输入串所对应纠错结果的目标,因此能够提高输入纠错的效率和准确率。

需要说明的是,传统的用户词库虽然保存了用户的上屏内容,但其上屏内容所对应的字段为类似音节序列[ni][hao]、字形序列的匹配序列,但简拼等因素导致音节序列[ni][hao]可能对应多个输入串,如“nh”、“nih”、“nhao”等,因此,传统的用户词库无法保存用户输入过的输入串。并且,传统的用户词库并未涉及输入过程是否正确的判断,即使输入过程包含纠错操作或者输入过程的上屏内容被更改过,其也会记录该上屏内容,因此传统的用户词库无法保证上屏内容的正确性。综上,由于传统的用户词库并不具备本发明实施例的用户输入串词库的关键特征(如符合用户输入习惯的正确输入串),因此无法将传统的用户词库用于输入纠错。

在本发明的一种可选实施例中,上述用户输入串词库除了保存上述第一映射关系外,还可以保存该第一映射关系的频次和上屏时间。其中,该频次可以表示该第一映射关系的出现次数,例如,用户的输入过程中,用户输入“nihao”、上屏了“你好”、且未对“你好”进行更改的出现次数为2,则上述第一映射关系的频次为2。该第一映射关系的上屏时间可用于表示该该第一映射关系的发生时间或者被保存的时间,其中,在每次发生用户输入“nihao”、上屏了“你好”、且未对“你好”进行更改的情况时,对应的第一映射关系均可以具有对应的上屏时间;可选地,为了操作方便,可以仅仅记录最后一次发生的第一映射关系所对应的上屏时间,也即,可以仅仅记录最大的上屏时间。

在本发明的一种可选实施例中,考虑到用户输入串词库所占用存储空间的容量限制,可以依据上述频次和上屏时间对该用户输入串词库中的数据记录进行更新。例如,在一个用户输入串词库的最大容量为1w条数据记录时,若数据记录的数目超过该1w,则可以依据该频次和上屏时间对数据记录进行瘦身,其中,可以优先淘汰频次低、且上屏时间小的数据记录,以使用户输入串词库中的历史输入串更符合用户当前的输入习惯,可以理解,本发明实施例对于具体的瘦身过程不加以限制。

可以理解,上述步骤a1和步骤a2建立第一映射关系的过程只是作为可选实施例,实际上,本领域技术人员可以根据实际应用需求采用所需的建立第一映射关系的过程,本发明实施例对于建立第一映射关系的具体过程不加以限制。

在本发明的一种可选实施例中,所述将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配的步骤102,具体可以包括:

步骤b1、针对所述历史输入串与历史上屏内容之间的映射关系中的当前历史输入串,确定其与所述输入串之间的第二编辑距离;

步骤b2、在所述第二编辑距离不超过第二编辑距离阈值时,确定所述当前历史输入串与所述输入串匹配成功。

本发明实施例在将上述第一映射关系中的历史输入串作为纠错结果的目标的过程中,可以计算当前历史输入串与输入串之间的第二编辑距离,在该第二编辑距离不超过第二编辑距离阈值时,可以认为用户欲要输入的正确输入串可能为该当前历史输入串,但由于按错键(pc上)或者点错屏幕位置(智能终端上)等原因而导致键入错误的输入串,故可以将当前历史输入串作为该输入串对应纠错结果的目标。

在实际应用中,本领域技术人员可以根据实际应用需求,采用合适的第二编辑距离阈值。可选地,该第二编辑距离阈值越大,则基于上述第一映射关系的纠错的准确率越低,因此,可以将该第二编辑距离设置为较小的数值。例如,该第二编辑距离可以为1、2、3等数值,当然,本发明实施例对于第二编辑距离阈值的具体数值不加以限制。

在实际应用中,可以遍历所述历史输入串与上屏内容之间的映射关系中的历史输入串,以得到当前历史输入串,其中,无论步骤b1的匹配是否成功,都可以将下一历史输入串作为当前历史输入串,继续执行步骤b1和步骤b2的匹配过程,也即,步骤b1和步骤b2的匹配过程可以为循环执行的过程。

在本发明的一种可选实施例中,还可以依据与所述输入串匹配成功的历史输入串得到对应的候选候选,相应地,所述方法还可以包括:将与所述输入串匹配成功的历史输入串对应的历史上屏内容,作为所述纠错候选串对应的纠错候选;依据所述历史上屏内容的频次、上屏时间及所述第二编辑距离中的至少一种,对多个纠错候选进行排序。本可选实施例将上述第一映射关系中历史输入串对应的历史上屏内容作为对应的纠错候选,这相对于从词库(例如系统词库)中查询纠错候选串对应的纠错候选,由于上述历史上屏内容为用户使用过的字词,因此能够更好地契合用户的输入习惯,也即能够提高纠错候选的质量。并且,本可选实施例依据所述历史上屏内容的频次、上屏时间及所述第二编辑距离中的至少一种,对多个纠错候选进行排序,能够将更契合用户的输入习惯的更优纠错候选排在前面。

在本发明的另一种可选实施例中,所述依据所述历史上屏内容的频次、上屏时间及所述第二编辑距离中的至少一种,对多个纠错候选进行排序的步骤,具体可以包括

步骤c1、依据所述历史上屏内容的频次、上屏时间及所述第二编辑距离中的至少一种,计算各纠错候选的得分;其中,历史上屏内容的频次越高、上屏时间越大、或者第二编辑距离越小,说明历史上屏内容与用户的输入习惯的契合度越高,故相应纠错候选的得分可以越高。

步骤c2、依据各纠错候选的得分,对多个纠错候选进行排序。

在本发明的再一种可选实施例中,所述依据所述历史上屏内容的频次、上屏时间及所述第二编辑距离中的至少一种,计算各纠错候选的得分的步骤c1,具体可以包括:

步骤c11、确定所述纠错候选对应历史上屏内容的频次与所有历史上屏内容的频次中的最大频次的第一比值;

步骤c12、确定所述纠错候选对应历史上屏内容的上屏时间与所有历史上屏内容的上屏时间中的最大上屏时间的第二比值;

步骤c13、依据所述第一比值、第二比值及所述第二编辑距离中的至少一种,计算各纠错候选的得分。

假设采用用户输入串词库保存上述第一映射关系,则最大频次可用于表示用户输入串词库中所有历史上屏内容的最大频次。在实际应用中,在用户输入串词库为空时,可以设置最大频次fmax为一个预设值(如0),则在更新用户输入串词库中的每个历史上屏内容的频次f后,可以将历史上屏内容的频次f与fmax进行比较,如果f>fmax,就可以将f的值赋给fmax。或者,在用户输入串词库为非空时,可以通过对各历史上屏内容的频次f进行排序,以得到其中的最大频次fmax,然后,在更新用户输入串词库中的每个历史上屏内容的频次f后,可以将历史上屏内容的频次f与fmax进行比较,如果f>fmax,就可以将f的值赋给fmax,可以理解,本发明实施例对于fmax的具体获取方式不加以限制。

最大上屏时间tmax可用于表示用户输入串词库中所有历史上屏内容的最大上屏时间也即最新上屏时间,tmax的获取方式与fmax的获取方式类似,也是可以每次更新某个历史上屏内容的上屏时间t后,如果t>tmax,就可以将t的值赋给tmax。

上述第一比值和第二比值可分别用于表示纠错候选对应目标历史上屏内容在所有历史上屏内容中的归一化频次和归一化上屏时间,因此能够为频次、上屏时间两种特征的融合提供条件。可以理解,在不对两种特征进行融合的情况下,不计算二者对应的第一比值和第二比值也是可行的。

在本发明的一种可选实施例中,所述得分可以与所述第一比值和所述第二比值成正比,所述得分可以与所述第二编辑距离成反比。

在此提供一种依据频次f、上屏时间t、编辑距离d三种特征计算得分的示例:score=log(w1*f/fmax+w2*t/tmax)/d),其中,w1和w2分别表示第一比值和第二比值的权重,本领域技术人员可以根据二者的重要度确定w1和w2的值,例如,在二者的重要度相当时,w1=0.5,w2=0.5等,可以理解,本发明实施例对于第一比值和第二比值的具体权重不加以限制。

综上,本发明实施例可以将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配;由于上述历史输入串与历史上屏内容之间的映射关系为在完成正确的输入过程后建立得到,故上述第一映射关系中的历史输入串可以作为用户使用过的正确输入串,而具有较大的参考价值,且能够对用户首次错输进行有效的纠正;因此,上述匹配过程可以将上述历史输入串与历史上屏内容之间的映射关系中的历史输入串作为纠错结果(例如纠错候选串)的目标,能够实现符合用户个性化输入习惯的高效又准确的纠错。

并且,上述第一映射关系是依据用户的输入行为得到的,因此其能够反映用户的个性化输入习惯,进而能够实现个性化的纠错,提高纠错的准确率。

在本发明的一种应用示例1中,假设在一次输入过程中,用户输入“nihao”且上屏了“你好”,则本发明实施例可以将将“nihao”和“你好”保存到上述第一映射关系中,同时保存的还可以包括历史上屏内容的频次和上屏时间。接下来,用户输入“nihoa”,如果没有命中上述第一映射关系,则可以查询上述第一映射关系,找出第二编辑距离小于等于3的历史输入串,然后利用打分公式给每条历史输入串对应的历史上屏内容进行打分,选出最佳的,比如“nihao”与“nihoa”的编辑距离是1,符合条件,且“你好”这个词通过打分公式计算的得分是最高的,所以对应的最佳纠错候选就是“你好”。通过该示例可以明显看出,在用户首次键入错误的输入串时,即使上述第一映射关系中没有存储错误的输入串对应的正确串,本发明实施例仍然能根据上述第一映射关系成功地纠错并给出符合用户意图的纠错候选,因此,较好地实现了个性化纠错。

方法实施例二

参照图2,示出了本发明的一种输入纠错方法实施例二的步骤流程图,具体可以包括如下步骤:

步骤201、获取输入过程中的输入串;

步骤202、依据所述输入串,在预先建立的错误串与正确串之间的映射关系中进行查找,以得到对应的正确串;其中,所述错误串与正确串之间的映射关系为在完成与纠错操作相关的输入过程后,依据所述纠错操作建立得到,将查找得到的正确串作为所述输入串对应的纠错候选串;

步骤203、当未查找到所述输入串对应的正确串时,将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配;其中,所述历史输入串与历史上屏内容之间的映射关系可以为在完成正确的输入过程后建立得到;

步骤204、将与所述输入串匹配成功的历史输入串作为所述输入串对应的纠错候选串。

相对于方法实施例一,本实施可以在将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配之前,依据输入串在预先建立的错误串与正确串之间的映射关系中进行查找,以得到对应的正确串,并将查找得到的正确串作为所述输入串对应的纠错候选串;由于上述错误串与正确串之间的映射关系(为方便描述,以下简称第二映射关系)是在完成与纠错操作相关的输入过程后、依据该纠错操作建立得到的,也即,上述第二映射关系是依据用户的输入行为得到的,因此其能够反映用户的个性化错输习惯,进而能够实现个性化的纠错,提高纠错的准确率。例如,用户a习惯错按右边的按键,其输入意图原本为“zhonghua”,但由于上述错输习惯将字符“u”错输为右边按键对应的字符“i”,进而得到了错误串“zhonghia”,而本发明实施例可以依据用户的输入过程建立对应的第一映射关系(“zhonghia”->“zhonghua”),这样,在用户下次输入错误串“zhonghia”后,本发明实施例可以依据上述第二映射关系,准确地获得对应的正确串“zhonghua”,这相对于现有的基于编辑距离的纠错方案和基于统计的纠错方案,能够提高纠错的准确率。

并且,由于本发明实施例在完成与纠错操作相关的输入过程后即可建立上述第二映射关系,因此能够实现实时纠错。具体地,即使用户在完成与纠错操作相关的前一次输入过程后,在相邻的下一次输入过程中再次键入了与前一次输入过程相同的输入串,本发明实施例能够成功地对下一次输入过程的输入串进行纠错。

在实际应用中,错误串与正确串之间的映射关系对应的容量限制可能导致上述错误串与正确串之间的映射关系中用户之前输入的错误串被删除,或者,在用户首次输入一个错误的输入串时,该错误的输入串也无法命中上述错误串与正确串之间的映射关系,上述两种情形都有可能导致步骤202未查找到所述输入串对应的正确串。

本发明实施例当未查找到所述输入串对应的正确串时,将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配,因此可以有效地使用第一映射关系和第二映射关系进行输入串的纠错,有效提高纠错效率和纠错准确率。

本发明实施例中,对于与纠错操作相关的输入过程而言,其对应的纠错操作可由用户执行,也可由输入法系统执行,并且,上述输入过程可以涉及未删除上屏内容时的一次输入过程,也可涉及删除上屏内容时的两次输入过程。

针对上述纠错操作的不同情形,本发明实施例可以提供建立所述错误串与正确串之间的映射关系的如下技术方案:

技术方案1、

技术方案1中的输入过程可以涉及未删除上屏内容时的一次输入过程,相应地,建立所述错误串与正确串之间的映射关系的过程具体可以包括:在输入过程中,若输入串被用户或者输入法系统纠正过,则在接收到后续的对应上屏操作后,依据纠正前后的输入串建立错误串与正确串之间的映射关系。

在此提供用户纠正输入串的应用示例2。该应用示例2中,如果输入串出现错误导致候选项中没有符合意图的结果,则用户可能执行如下纠正操作:删除该输入串中的若干字符,或者,可能将光标移动到该输入串的某个位置后再删除或添加若干字符,且用户在执行纠正操作后可以将符合意图的候选项上屏;此种情况下,可以将纠正前的输入串作为上述第二映射关系的错误串,以及将纠正后的输入串作为上述第二映射关系的正确串。例如,在某次输入过程中,用户首先输入“nihoa”,然后删除了“oa”,并接着输入“ao”,最后上屏了“你好”,则在完成该次输入过程后,可以将“nihoa”和“nihao”的映射添加至上述第二映射关系。

在此提供输入法系统纠正输入串的应用示例3。该应用示例3中,在输入串出现错误时,如果输入法系统成功地对该输入串进行纠错,并返回了符合意图的候选项,则用户可以将该符合意图的候选项上屏;此种情况下,可以将错误的输入串和输入法系统纠正过的输入串添加到上述第二映射关系中。比如,在某次输入过程中,用户键入的输入串为“nihoa”,输入法系统成功地将其纠错成“nihao”,并提供了“你好”的候选项,最后上屏了“你好”,则在完成该次输入过程后,可以将“nihoa”和“nihao”的映射添加至上述第二映射关系。

技术方案2

技术方案2中的输入过程可以涉及删除上屏内容时的两次输入过程,相应地,建立所述错误串与正确串之间的映射关系的过程具体可以包括:若前一次输入过程的上屏内容被删除、且后一次输入过程的第二输入串与前一次输入过程的第一输入串之间的第一编辑距离不超过第一编辑距离阈值,则在接收到后一次输入过程的上屏操作后,依据所述第一输入串和所述第二输入串建立错误串与正确串之间的映射关系。

在本发明的一种应用示例4中,假设在前一次输入过程中输入串出现错误导致候选项中没有符合意图的结果,但用户将某个不符合意图的候选项错误上屏,并接着将错误的上屏内容删除后、继续通过后一次输入过程将符合意图的候选项上屏。上述两次输入过程之间发生了删除上屏内容的情况,此种情况下,可以依据后一次输入过程的第二输入串与前一次输入过程的第一输入串之间的第一编辑距离判断删除上屏内容的意图是否为重新输入意图,具体地,若该第一编辑距离小于第一编辑距离阈值,可以认为用户欲要通过后一次输入过程的第二输入串对前一次输入过程的第一输入串进行纠正,因此,可以认为删除上屏内容的意图为重新输入意图,此种情况下,可以将错误的输入串和输入法系统纠正过的输入串添加到上述第二映射关系中。例如,在前一次输入过程中,用户输入了“nihoa”并上屏了“你红啊”,然后删除“你红啊”,并在后一次输入过程中输入“nihao”及上屏了“你好”,则可以认为删除上屏内容的意图为重新输入意图,故可以将“nihoa”和“nihao”的映射添加到上述第二映射关系。可见看出,上述应用示例2、应用示例3和应用示例4对应的技术方案均可以得到“nihoa”和“nihao”之间的第二映射关系。

本发明实施例中,编辑距离可用于表示两个编码串之间,由一个转成另一个所需的最少编辑操作次数。上述编辑操作具体可以包括将一个字符替换成另一个字符、插入一个字符、及删除一个字符的操作等等。

在实际应用中,本领域技术人员可以根据实际应用需求,采用合适的第一编辑距离阈值。可选地,该第一编辑距离阈值越大,则基于上述第二映射关系的纠错的准确率越低,因此,可以将该第一编辑距离设置为较小的数值。例如,该第一编辑距离可以为1、2等数值,当然,本发明实施例对于第一编辑距离阈值的具体数值不加以限制。

以上通过技术方案1和技术方案2对建立所述错误串与正确串之间的映射关系的过程进行了详细介绍,可以理解,本领域技术人员可以根据实际应用需求,采用上述技术方案1和技术方案2中的任一或者组合,并且还可以采用其他技术方案,本发明实施例对于建立所述错误串与正确串之间的映射关系的具体过程不加以限制。

在本发明的一种可选实施例中,可以在用户纠错词库中保存上述第二映射关系,由于该用户纠错词库所保存第二映射关系的粒度为符合用户输入习惯的完整的输入串,故在本发明实施例的输入过程中,可以通过步骤202的查找过程,将错误的输入串直接定位到正确串,因此能够提高输入纠错的效率和准确率。

在本发明的一种可选实施例中,上述用户纠错词库除了保存上述第二映射关系外,还可以保存该第二映射关系的频次和历史时间。其中,该频次可以表示该第二映射关系的出现次数,例如,用户的输入过程中,将“nihoa”纠正为“nihao”的出现次数为2,则上述第二映射关系的频次为2。该第二映射关系的历史时间可用于表示该该第二映射关系的发生时间或者被保存的时间,其中,在每次发生将“nihoa”纠正为“nihao”的情况时,对应的第二映射关系均可以具有对应的历史时间;可选地,为了操作方便,可以仅仅记录最后一次发生的第二映射关系所对应的历史时间,也即,可以仅仅记录最大的历史时间。其中,该历史时间的记录格式可以具体到年月日时分秒,如20160619080023可以表示时间2016年6月19日8点23秒,可以理解,本发明实施例对于历史时间的具体记录格式不加以限制。

在本发明的一种可选实施例中,考虑到用户纠错词库所占用存储空间的容量限制,可以依据上述频次和历史时间对该用户纠错词库中的数据记录进行更新。例如,在一个用户纠错词库的最大容量为1w条数据记录时,若数据记录的数目超过该1w,则可以依据该频次和历史时间对数据记录进行瘦身,其中,可以优先淘汰频次低、且历史时间小的数据记录,以使用户纠错词库中的错误串更符合用户当前的错输习惯,可以理解,本发明实施例对于具体的瘦身过程不加以限制。

在实际应用中,步骤202可以遍历上述第二映射关系中的错误串,将步骤201的输入串与上述第二映射关系中的当前错误串进行匹配,若匹配成功,则可以将当前错误串对应的正确串作为该输入串对应的正确串。可以理解,本发明实施例对于步骤202的查找过程不加以限制。

在实际应用中,步骤203可以将查找得到的正确串作为所述输入串对应的纠错候选串,并依据该纠错候选串获得对应的纠错候选,然后将该纠错候选与该输入串对应的普通候选展现给用户。其中,可以在词库中查询得到该纠错候选串对应的纠错候选,本发明实施例对于获取纠错候选的具体过程不加以限制。

在本发明的一种可选实施例中,输入串可能对应多个纠错候选串,则可以依据上述用户纠错词库中记录的频次和历史时间对上述纠错候选串进行排序,其中,上述纠错候选串的排序结果可以作为纠错候选的排序依据。

在本发明的一种可选实施例中,可以分别确定纠错候选和普通候选的第二得分和第一得分,然后按照第二得分和第一得分进行纠错候选和普通候选的排序,并按照该排序结果向用户提供候选项。可选地,所述第一得分可以为所述输入串对应首选的得分,所述第二得分可以为纠错候选串对应首选的得分减去惩罚值。其中,上述首选的得分可以为依据首选的词频、分类信息、级别和权重信息中至少一种特征计算得到的得分,其可用于衡量首选的质量;上述惩罚值可以用于在保证输入纠错的准确率的情况下,控制第二得分超出第一得分的程度,通常,惩罚值越大,则输入串被替换的概率越小,惩罚值越小,则输入串被替换的概率越大。在实际应用中,可以通过模拟用户输入过程的试验,确定惩罚值,以尽可能地保证输入纠错的准确率。可以理解,本发明实施例对于纠错候选和普通候选的具体排序过程不加以限制。

综上,本发明实施例可以首先依据输入串在预先建立的错误串与正确串之间的映射关系中进行查找,以得到对应的正确串;由于上述错误串与正确串之间的映射关系是在完成与纠错操作相关的输入过程后、依据该纠错操作建立得到的,也即,上述第二映射关系是依据用户的输入行为得到的,因此其能够反映用户的个性化错输习惯,进而能够实现个性化的纠错,提高纠错的准确率。并且,由于本发明实施例在完成与纠错操作相关的输入过程后即可建立上述第二映射关系,因此能够实现实时纠错。具体地,即使用户在完成与纠错操作相关的前一次输入过程后,在相邻的下一次输入过程中再次键入了与前一次输入过程相同的输入串,本发明实施例能够成功地对下一次输入过程的输入串进行纠错。

并且,当错误串与正确串之间的映射关系对应的容量限制可能导致上述错误串与正确串之间的映射关系中用户之前输入的错误串被删除,或者,在用户首次输入一个错误的输入串时,该错误的输入串也无法命中上述错误串与正确串之间的映射关系,上述两种情形都有可能导致未查找到所述输入串对应的正确串;本发明实施例当未查找到所述输入串对应的正确串时,将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配,因此可以有效地使用第一映射关系和第二映射关系进行输入串的纠错,有效提高纠错效率和纠错准确率。

需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的运动动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的运动动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的运动动作并不一定是本发明实施例所必须的。

装置实施例

参照图3,示出了本发明的一种输入纠错装置实施例的结构框图,具体可以包括:输入串获取模块301、匹配模块302和纠错模块303。

其中,上述输入串获取模块301,可用于获取输入过程中的输入串;

上述匹配模块302,可用于将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配;其中,所述历史输入串与历史上屏内容之间的映射关系为在完成正确的输入过程后建立得到;

上述纠错模块303,用于将与所述输入串匹配成功的历史输入串作为所述输入串对应的纠错候选串。

在本发明的再一种可选实施例中,所述匹配模块,具体可以包括:

第一确定子模块,用于针对所述历史输入串与历史上屏内容之间的映射关系中的当前历史输入串,确定其与所述输入串之间的第二编辑距离;

第二确定子模块,用于在所述第二编辑距离不超过第二编辑距离阈值时,确定所述当前历史输入串与所述输入串匹配成功。

在本发明的又一种可选实施例中,所述装置还可以包括:

纠错候选获取模块,用于将与所述输入串匹配成功的历史输入串对应的历史上屏内容,作为所述纠错候选串对应的纠错候选;

排序模块,用于依据所述历史上屏内容的频次、上屏时间及所述第二编辑距离中的至少一种,对多个纠错候选进行排序。

在本发明的一种可选实施例中,所排序模块,具体可以包括:

得分计算子模块,用于依据所述历史上屏内容的频次、上屏时间及所述第二编辑距离中的至少一种,计算各纠错候选的得分;

得分排序子模块,用于依据各纠错候选的得分,对多个纠错候选进行排序。

在本发明的另一种可选实施例中,所述得分计算子模块,具体可以包括:

第一比值确定单元,用于确定所述纠错候选对应历史上屏内容的频次与所有历史上屏内容的频次中的最大频次的第一比值;

第二比值确定单元,用于确定所述纠错候选对应历史上屏内容的上屏时间与所有历史上屏内容的上屏时间中的最大上屏时间的第二比值;

得分计算单元,用于依据所述第一比值、第二比值及所述第二编辑距离中的至少一种,计算各纠错候选的得分。

在本发明的再一种可选实施例中,所述得分与所述第一比值和所述第二比值成正比,所述得分与所述第二编辑距离成反比。

在本发明的又一种可选实施例中,所述装置还可以包括:用于建立所述历史输入串与历史上屏内容之间的映射关系的第二建立模块;

上述第二建立模块具体可以包括:

输入过程确定子模块,用于当某次输入过程不包含纠错操作、且该次输入过程的上屏内容未被更改时,确定该次输入过程为正确的输入过程;

映射建立子模块,用于针对所述正确的输入过程,依据其对应的输入串与上屏内容建立历史输入串与历史上屏内容之间的映射关系。

在本发明的一种可选实施例中,上述装置还可以包括:

查找模块,用于在所述匹配模块将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配之前,依据所述输入串,在预先建立的错误串与正确串之间的映射关系中进行查找,以得到对应的正确串;其中,所述错误串与正确串之间的映射关系为在完成与纠错操作相关的输入过程后,依据所述纠错操作建立得到,将查找得到的正确串作为所述输入串对应的纠错候选串;

则所述匹配模块302,可用于当未查找到所述输入串对应的正确串时,将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配,将与所述输入串匹配成功的历史输入串作为所述输入串对应的纠错候选串。

在本发明的一种可选实施例中,上述装置还可以包括:用于建立所述错误串与正确串之间的映射关系的第一建立模块;

上述第一建立模块具体可以包括:

第一建立子模块,用于在输入过程中,若输入串被用户或者输入法系统纠正过,则在接收到后续的对应上屏操作后,依据纠正前后的输入串建立错误串与正确串之间的映射关系;和/或

第二建立子模块,用于在前一次输入过程的上屏内容被删除、且后一次输入过程的第二输入串与前一次输入过程的第一输入串之间的第一编辑距离不超过第一编辑距离阈值时,在接收到后一次输入过程的上屏操作后,依据所述第一输入串和所述第二输入串建立错误串与正确串之间的映射关系。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

图4是根据一示例性实施例示出的一种用于输入纠错的装置900的框图。例如,装置900可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。

参照图4,装置900可以包括以下一个或多个组件:处理组件902,存储器904,电源组件906,多媒体组件908,音频组件910,输入/输出(i/o)的接口912,传感器组件914,以及通信组件916。

处理组件902通常控制装置900的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理元件902可以包括一个或多个处理器920来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件902可以包括一个或多个模块,便于处理组件902和其他组件之间的交互。例如,处理组件902可以包括多媒体模块,以方便多媒体组件908和处理组件902之间的交互。

存储器904被配置为存储各种类型的数据以支持在设备900的操作。这些数据的示例包括用于在装置900上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器904可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。

电源组件906为装置900的各种组件提供电力。电源组件906可以包括电源管理系统,一个或多个电源,及其他与为装置900生成、管理和分配电力相关联的组件。

多媒体组件908包括在所述装置900和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动运动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件908包括一个前置摄像头和/或后置摄像头。当设备900处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。

音频组件910被配置为输出和/或输入音频信号。例如,音频组件910包括一个麦克风(mic),当装置900处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器904或经由通信组件916发送。在一些实施例中,音频组件910还包括一个扬声器,用于输出音频信号。

i/o接口912为处理组件902和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。

传感器组件914包括一个或多个传感器,用于为装置900提供各个方面的状态评估。例如,传感器组件914可以检测到设备900的打开/关闭状态,组件的相对定位,例如所述组件为装置900的显示器和小键盘,传感器组件914还可以检测装置900或装置900一个组件的位置改变,用户与装置900接触的存在或不存在,装置900方位或加速/减速和装置900的温度变化。传感器组件914可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件914还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件914还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。

通信组件916被配置为便于装置900和其他设备之间有线或无线方式的通信。装置900可以接入基于通信标准的无线网络,如wifi,2g或3g,或它们的组合。在一个示例性实施例中,通信部件916经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信部件916还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。

在示例性实施例中,装置900可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器904,上述指令可由装置900的处理器920执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。

一种非临时性计算机可读存储介质,当所述存储介质中的指令由智能终端的处理器执行时,使得智能终端能够执行一种基于搜索引擎的输入纠错方法,所述方法包括:获取输入过程中的输入串;将所述输入串与预先建立的历史输入串与历史上屏内容之间的映射关系中的历史输入串进行匹配;其中,所述历史输入串与历史上屏内容之间的映射关系为在完成正确的输入过程后建立得到;将与所述输入串匹配成功的历史输入串作为所述输入串对应的纠错候选串。

图5是本发明实施例中服务器的结构示意图。该服务器1900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessingunits,cpu)1922(例如,一个或一个以上处理器)和存储器1932,一个或一个以上存储应用程序1942或数据1944的存储介质1930(例如一个或一个以上海量存储设备)。其中,存储器1932和存储介质1930可以是短暂存储或持久存储。存储在存储介质1930的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1922可以设置为与存储介质1930通信,在服务器1900上执行存储介质1930中的一系列指令操作。

服务器1900还可以包括一个或一个以上电源1926,一个或一个以上有线或无线网络接口1950,一个或一个以上输入输出接口1958,一个或一个以上键盘1956,和/或,一个或一个以上操作系统1941,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm等等。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。

应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

以上对本发明所提供的一种输入纠错方法、一种输入纠错装置和一种用于输入纠错的装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1