著录项信息
专利名称 | 形成个性化纠错模型的方法及个性化纠错的输入法系统 |
申请号 | CN200810222203.X | 申请日期 | 2008-09-11 |
法律状态 | 授权 | 申报国家 | 暂无 |
公开/公告日 | 2009-01-21 | 公开/公告号 | CN101350004 |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F17/00 | IPC分类号 | G;0;6;F;1;7;/;0;0查看分类表>
|
申请人 | 北京搜狗科技发展有限公司 | 申请人地址 | 北京市海淀区中关村东路1号院9号楼搜狐网络大厦9层01房间
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 北京搜狗科技发展有限公司 | 当前权利人 | 北京搜狗科技发展有限公司 |
发明人 | 张扬 |
代理机构 | 北京集佳知识产权代理有限公司 | 代理人 | 逯长明 |
摘要
本发明公开了一种形成个性化纠错模型的方法,该方法包括:收集用户的输入信息;分析所述输入信息,获取用户的输入习惯信息;根据所述输入习惯信息对当前纠错模型进行调整,得到个性化纠错模型。本发明还公开了一种形成个性化纠错模型的装置及个性化纠错的输入法系统。本发明通过对当前纠错模型进行调整来得到符合用户输入习惯的个性化纠错模型,以用于实现对用户的输入序列进行更准确的个性化自动纠错。另外,可以收集多方面的信息,纠错范围不仅包括类似南方模糊音的认知错误,还包括非认知错误,纠错覆盖面广。由于综合考虑了输入设备布局、输入设备质量等因素,使得本发明可以适用于PC键盘、迷你键盘等不同的输入设备,具有广泛的适用性。
1.一种形成个性化纠错模型的方法,其特征在于,包括:
收集用户的输入信息;
分析所述输入信息,获取该用户的输入习惯信息;
根据所述输入习惯信息对该用户的当前纠错模型进行调整,得到该用户的个性化纠错模型;以便利用所述个性化纠错模型确定是否需要对该用户的输入序列进行纠错。
2.根据权利要求1所述的方法,其特征在于,所述当前纠错模型包括:
由至少一个判断条件组成的决策树。
3.根据权利要求2所述的方法,其特征在于,根据所述输入习惯信息对该用户的当前纠错模型进行调整包括:
根据所述输入习惯信息,计算各判断条件的区分度,将各判断条件按照区分度进行重新排序;
和/或,过滤掉区分度小于预定阈值的判断条件;
和/或,增加新的判断条件。
4.根据权利要求1所述的方法,其特征在于,所述当前纠错模型包括:
由至少一个纠错规则组成的规则库。
5.根据权利要求4所述的方法,其特征在于,根据所述输入习惯信息对该用户的当前纠错模型进行调整包括:
根据所述输入习惯信息,利用统计模型对各纠错规则进行概率估计,将各纠错规则按照概率进行重新排序;
和/或,删除概率低于预定阈值的纠错规则;
和/或,增加新的纠错规则。
6.根据权利要求5所述的方法,其特征在于,根据所述输入习惯信息对该用户的当前纠错模型进行调整还包括:
根据所述输入习惯信息,对所述统计模型的参数进行调整。
7.根据权利要求1所述的方法,其特征在于,还包括:
根据所述个性化纠错模型判断是否需要进行纠错,如果需要,则对所述输入序列进行自动纠错或向用户提示纠错信息。
8.根据权利要求1所述的方法,其特征在于,还包括:
将包含个性化纠错模型的用户配置信息保存到服务器。
9.根据权利要求8所述的方法,其特征在于,还包括:
收集所述保存到服务器的包含个性化纠错模型的用户配置信息,利用所述收集的信息训练并更新通用纠错模型。
10.根据权利要求1所述的方法,其特征在于,所述输入信息包括:
用户输入内容、用户行为特征、输入环境特征及输入法输入模式。
11.一种形成个性化纠错模型的装置,其特征在于,包括:
信息收集单元,用于收集用户的输入信息;
信息分析单元,用于分析所述输入信息,获取该用户的输入习惯信息;
模型管理单元,用于根据所述输入习惯信息对该用户的当前纠错模型进行调整,得到该用户的个性化纠错模型;以便利用所述个性化纠错模型确定是否需要对该用户的输入序列进行纠错。
12.根据权利要求11所述的装置,其特征在于,所述当前纠错模型包括由至少一个判断条件组成的决策树,则:
所述模型管理单元根据所述输入习惯信息,计算各判断条件的区分度,将各判断条件按照区分度进行重新排序,和/或,过滤掉区分度小于预定阈值的判断条件,和/或,增加新的判断条件。
13.根据权利要求11所述的装置,其特征在于,所述当前纠错模型包括由至少一个纠错规则组成的规则库,则:
所述模型管理单元根据所述输入习惯信息,利用统计模型对各纠错规则进行概率估计,将各纠错规则按照概率进行重新排序;和/或,删除概率低于预定阈值的纠错规则;和/或,增加新的纠错规则。
14.根据权利要求13所述的方法,其特征在于,所述模型管理单元还根据所述输入习惯信息,对所述统计模型的参数进行调整。
15.根据权利要求11所述的装置,其特征在于,还包括:
纠错单元,用于根据所述个性化纠错模型判断是否需要进行纠错,如果需要,则对所述输入序列进行自动纠错或向用户提示纠错信息。
16.根据权利要求11所述的装置,其特征在于,还包括:
账户管理单元,用于绑定用户,将包含个性化纠错模型的用户配置信息保存到服务器。
17.根据权利要求11所述的装置,其特征在于,所述信息收集单元收集用户输入内容、用户行为特征、输入环境特征及输入法输入模式。
18.一种个性化纠错的输入法系统,其特征在于,包括:
信息收集单元,用于收集用户的输入信息;
信息分析单元,用于分析所述输入信息,获取该用户的输入习惯信息;
模型管理单元,用于根据所述输入习惯信息对该用户的当前纠错模型进行调整;
输入序列接收单元,用于接收用户的输入序列;
纠错单元,用于根据调整后的纠错模型判断是否需要对所述输入序列进行纠错,如果需要,则对所述输入序列进行自动纠错或向用户提示纠错信息。
19.根据权利要求18所述的输入法系统,其特征在于,所述当前纠错模型包括由至少一个判断条件组成的决策树,则:
所述模型管理单元根据所述输入习惯信息,计算各判断条件的区分度,将各判断条件按照区分度进行重新排序,和/或,过滤掉区分度小于预定阈值的判断条件,和/或,增加新的判断条件。
20.根据权利要求18所述的输入法系统,其特征在于,所述当前纠错模型包括由至少一个纠错规则组成的规则库,则:
所述模型管理单元根据所述输入习惯信息,利用统计模型对各纠错规则进行概率估计,将各纠错规则按照概率进行重新排序;和/或,删除概率低于预定阈值的纠错规则;和/或,增加新的纠错规则。
21.根据权利要求20所述的输入法系统,其特征在于,所述模型管理单元还根据所述输入习惯信息,对所述统计模型的参数进行调整。
22.根据权利要求18所述的输入法系统,其特征在于,还包括:
账户管理单元,用于绑定用户,将包含个性化纠错模型的用户配置信息保存到服务器。
形成个性化纠错模型的方法及个性化纠错的输入法系统\n技术领域\n[0001] 本发明涉及计算机字符处理的技术领域,特别是涉及一种形成个性化纠错模型的方法和装置及一种个性化纠错的输入法系统。\n背景技术\n[0002] 随着互联网技术应用的越来越广泛,人们很多的日常工作和娱乐都在网络上进行,用户越来越频繁地需要通过计算机输入信息而完成人机交互。对于中文、日文、韩文等用户而言,一般需要通过输入法程序与计算机进行交互。以中文用户为例,一般来说,用户输入的是一串字母,系统需要把它转换成一串中文字符。用户在输入过程中可能存在较多的错误,引起这些错误的原因主要有以下几个方面:\n[0003] (1)中国人书写时使用的都是汉字,而不是拼音,虽然从小就开始接受拼音的教育,但是并没有外国人使用英语那样频繁。\n[0004] (2)受到地域的限制,中国有许多方言,不同地方的人的发音存在一定的差异,例如南方人对卷舌-平舌、前鼻音-后鼻音的区分就不同于北方人,这也就是常说的:南方模糊音。\n[0005] (3)拼音输入不是一种“所见即所得”的输入方法,用户输入的是拼音,而看到的却是系统转换后的汉字,因此一般情况下用户检查的不是输入的拼音,而是转换后系统显示的汉字。\n[0006] (4)对键盘的熟练程度以及输入的速度都直接影响到用户输入的准确度。在过去的一段时间内,许多心理学家都通过实验得到用户输入的混淆矩阵。在整句输入中,如果用户敲错一个拼音,不仅这个拼音对应的汉字会出错,而且还会影响到周围的一些汉字,引入了更多的错误;而且,当用户看到错误的汉字时,并不知道是系统发生的错误还是用户输入存在错误,用户需要找到错误的地方进行修改,才能得到正确的结果。这给用户带来很大负担,如果系统能够自动地在拼音层次上进行拼写检查和修正,那就可以减少用户修改的次数,提高输入的速度。\n[0007] 目前,一些输入法提供了纠错设置,参见图1,这种方法通常根据大量的用户输入数据训练生成纠错列表;在生成候选之前根据纠错列表中的规则进行强制纠错,例如,根据图1所示的纠错列表,如果用户的输入序列中出现了gn,便直接将其转换为ng。这种方法虽然在一定程度上实现了自动纠错,但是其缺点在于,纠错列表是默认预置的,存在一定的适用范围且形式固定,而不同的用户通常具有不同的输入习惯,不加区分地用同一个纠错列表进行纠错可能会影响到用户的体验。例如,用户在输入法英文输入模式下输入单词gnome,如果利用该方法,则会强制将其转换为ngome,这显然是不正确的,会影响输入的流畅度,进而伤害用户的体验。\n[0008] 因此,需要本领域技术人员迫切解决的一个技术问题就是:如何针对不同的用户分别提供相应的纠错方案,在提升用户输入流畅度的同时,尽量降低伤害用户体验的可能性。\n[0009] 发明内容\n[0010] 有鉴于此,本发明的目的在于提供形成个性化纠错模型的方法及个性化纠错的输入法系统,以解决现有技术进行自动纠错时,无法适应不同用户的不同输入习惯,以致伤害到用户体验的问题。\n[0011] 为实现上述目的,本发明提供了如下方案:\n[0012] 一种形成个性化纠错模型的方法,包括:\n[0013] 收集用户的输入信息;\n[0014] 分析所述输入信息,获取该用户的输入习惯信息;\n[0015] 根据所述输入习惯信息对该用户的当前纠错模型进行调整,得到该用户的个性化纠错模型;以便利用所述个性化纠错模型确定是否需要对该用户的输入序列进行纠错。\n[0016] 优选的,所述当前纠错模型包括:\n[0017] 由至少一个判断条件组成的决策树。\n[0018] 优选的,根据所述输入习惯信息对该用户的当前纠错模型进行调整包括:\n[0019] 根据所述输入习惯信息,计算各判断条件的区分度,将各判断条件按照区分度进行重新排序;\n[0020] 和/或,过滤掉区分度小于预定阈值的判断条件;\n[0021] 和/或,增加新的判断条件。\n[0022] 优选的,所述当前纠错模型包括:\n[0023] 由至少一个纠错规则组成的规则库。\n[0024] 优选的,根据所述输入习惯信息对该用户的当前纠错模型进行调整包括:\n[0025] 根据所述输入习惯信息,利用统计模型对各纠错规则进行概率估计,将各纠错规则按照概率进行重新排序;\n[0026] 和/或,删除概率低于预定阈值的纠错规则;\n[0027] 和/或,增加新的纠错规则。\n[0028] 优选的,根据所述输入习惯信息对该用户的当前纠错模型进行调整还包括:\n[0029] 根据所述输入习惯信息,对所述统计模型的参数进行调整。\n[0030] 优选的,还包括:\n[0031] 根据所述个性化纠错模型判断是否需要进行纠错,如果需要,则对所述输入序列进行自动纠错或向用户提示纠错信息。\n[0032] 优选的,还包括:\n[0033] 将包含个性化纠错模型的用户配置信息保存到服务器。\n[0034] 优选的,还包括:\n[0035] 收集所述保存到服务器的包含个性化纠错模型的用户配置信息,利用所述收集的信息训练并更新通用纠错模型。\n[0036] 优选的,所述输入信息包括:\n[0037] 用户输入内容、用户行为特征、输入环境特征及输入法输入模式。\n[0038] 一种形成个性化纠错模型的装置,包括:\n[0039] 信息收集单元,用于收集用户的输入信息;\n[0040] 信息分析单元,用于分析所述输入信息,获取该用户的输入习惯信息;\n[0041] 模型管理单元,用于根据所述输入习惯信息对该用户的当前纠错模型进行调整,得到该用户的个性化纠错模型;以便利用所述个性化纠错模型确定是否需要对该用户的输入序列进行纠错。\n[0042] 优选的,所述当前纠错模型包括由至少一个判断条件组成的决策树,则:\n[0043] 所述模型管理单元根据所述输入习惯信息,计算各判断条件的区分度,将各判断条件按照区分度进行重新排序,和/或,过滤掉区分度小于预定阈值的判断条件,和/或,增加新的判断条件。\n[0044] 优选的,所述当前纠错模型包括由至少一个纠错规则组成的规则库,则:\n[0045] 所述模型管理单元根据所述输入习惯信息,利用统计模型对各纠错规则进行概率估计,将各纠错规则按照概率进行重新排序;和/或,删除概率低于预定阈值的纠错规则;\n和/或,增加新的纠错规则。\n[0046] 优选的,所述模型管理单元还根据所述输入习惯信息,对所述统计模型的参数进行调整。\n[0047] 优选的,还包括:\n[0048] 纠错单元,用于根据所述个性化纠错模型判断是否需要进行纠错,如果需要,则对所述输入序列进行自动纠错或向用户提示纠错信息。\n[0049] 优选的,还包括:\n[0050] 账户管理单元,用于绑定用户,将包含个性化纠错模型的用户配置信息保存到服务器。\n[0051] 优选的,所述信息收集单元收集用户输入内容、用户行为特征、输入环境特征及输入法输入模式。\n[0052] 一种个性化纠错的输入法系统,包括:\n[0053] 信息收集单元,用于收集用户的输入信息;\n[0054] 信息分析单元,用于分析所述输入信息,获取该用户的输入习惯信息;\n[0055] 模型管理单元,用于根据所述输入习惯信息对该用户的当前纠错模型进行调整;\n[0056] 输入序列接收单元,用于接收用户的输入序列;\n[0057] 纠错单元,用于根据调整后的纠错模型判断是否需要对所述输入序列进行纠错,如果需要,则对所述输入序列进行自动纠错或向用户提示纠错信息。\n[0058] 优选的,所述当前纠错模型包括由至少一个判断条件组成的决策树,则:\n[0059] 所述模型管理单元根据所述输入习惯信息,计算各判断条件的区分度,将各判断条件按照区分度进行重新排序,和/或,过滤掉区分度小于预定阈值的判断条件,和/或,增加新的判断条件。\n[0060] 优选的,所述当前纠错模型包括由至少一个纠错规则组成的规则库,则:\n[0061] 所述模型管理单元根据所述输入习惯信息,利用统计模型对各纠错规则进行概率估计,将各纠错规则按照概率进行重新排序;和/或,删除概率低于预定阈值的纠错规则;\n和/或,增加新的纠错规则。\n[0062] 优选的,所述模型管理单元还根据所述输入习惯信息,对所述统计模型的参数进行调整。\n[0063] 优选的,还包括:\n[0064] 账户管理单元,用于绑定用户,将包含个性化纠错模型的用户配置信息保存到服务器。\n[0065] 根据本发明提供的具体实施例,本发明公开了以下技术效果:\n[0066] 第一,本发明通过对用户的输入信息进行分析,获取用户的输入习惯信息,根据所述输入习惯信息对当前的纠错模型进行动态调整,逐步形成符合该用户输入习惯的个性化纠错模型,以用于针对不同用户进行个性化纠错,提升用户输入的流畅度,改进用户体验。\n[0067] 第二,纠错模型可以有决策树、规则库等多种表现形式,能够对输入纠错可能涉及的多种因素进行参数化表示,同时方便引入新的因素。随着用户输入训练数据的使用,可以实现模型参数的迭代和修正。\n[0068] 第三,收集的用户输入信息可以包括用户的输入生理习惯及输入环境等,使得本发明的纠错覆盖面可以不仅包括类似南方模糊音的认知错误,还可以包括非认知错误,因此纠错覆盖面广。\n[0069] 第四,由于综合考虑了用户的输入熟练程度、输入习惯、输入序列的合理性、输入设备布局、输入设备质量等多方面因素,使得本发明可以适用于PC键盘、迷你键盘(手机、PDA等)、触控屏等不同的输入设备,因此具有广泛的适用性。\n[0070] 第五,由于可以将包含有个性化纠错模型的用户配置信息保存到远程服务器上,因此用户可以通过账户登录到该远程服务器上,来获取更新,这样该用户的个性化纠错模型可以在其他机器上直接使用。同时,保存在远程服务器上的这部分用户数据可以收集起来,用于通用纠错模型的训练和更新。\n附图说明\n[0071] 图1是现有技术中的纠错列表示意图;\n[0072] 图2是本发明实施例提供的方法流程图;\n[0073] 图3是本发明实施例提供的决策树结构示意图;\n[0074] 图4是本发明实施例提供的装置示意图;\n[0075] 图5是本发明实施例提供的另一装置示意图;\n[0076] 图6是本发明实施例提供的输入法系统示意图;\n[0077] 图7是本发明实施例提供的另一输入法系统示意图。\n具体实施方式\n[0078] 为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。\n[0079] 本发明可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统包括以上任何系统或设备的分布式计算环境等等。\n[0080] 本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。\n[0081] 本发明适用于中文、日文、韩文等字符的输入,为方便起见,下面均以中文为例进行描述。\n[0082] 由于在输入中文字符时,一般需要输入英文字母,然后通过输入法程序与计算机进行交互,将字母转换为汉字,本发明针对在这个转换过程中可能出现的错误进行纠错,所涉及的纠错场景可以包括但不限于如下类型:\n[0083] (1)南方模糊音:受到地域的限制,中国有许多方言,不同地方的人的发音存在一定的差异,例如南方人对卷舌-平舌、前鼻音-后鼻音的区分不同于北方人。\n[0084] (2)操作不协调:常见于左右手键位互换或同手位连续两个按键互换的情况,如将音节“le”输成“el”,或者将左手输入序列“er”错输入成了“re”。当然,前一种情况需要区分简拼“恶劣”和真正的“le→el”错误(错误形式→正确形式,下同)。\n[0085] (3)频繁出现的按键错误:比如用户由于手指灵活程度、键盘特性等原因造成的将“y”键错按成了“u”键;或者按在“u”键和“y”键中间造成两个键均被按下;这些错误输入往往伴随以用户的退格修正。\n[0086] (4)键盘按钮相对狭小:比如在手机键盘等受限的输入环境下,键盘按钮相对狭小而操作都要由面积较大的拇指完成,这样容易造成误按、多按等错误输入。受关联的键位往往与目标键位在键盘上相邻。\n[0087] (5)按钮响应滞后:如因键盘质量原因造成按键响应滞后,容易造成用户的重复输入。比如某键位反应不灵敏,在用户首次击键后未看到输入上屏,可能会导致用户后续的多次击键。\n[0088] 下面通过实施例对本发明提供的方法进行详细地描述。\n[0089] 参见图2,本发明实施例提供的形成个性化纠错模型的方法包括以下步骤:\n[0090] S201:收集用户的输入信息;\n[0091] 本发明实施例收集的用户输入信息可以包括用户输入内容、用户行为特征、输入环境特征及输入法输入模式等。其中,输入内容包括用户词库和上屏显示的内容,对于用户词库内容,可以获取用户词库和词条相关的编码习惯,另外,如果用户词库可以存储比较长的用户输入序列,也是可以从中获取用户习惯的。\n[0092] S202:分析所述输入信息,获取用户的输入习惯信息;\n[0093] 该步骤通过对所述输入信息进行分析,为后续步骤中对当前纠错模型的调整提供依据。其中关于输入信息中的用户行为特征的分析可以包括以下内容:\n[0094] 语言模型(N-Gram)统计:N-Gram是大词汇连续语音识别中常用的一种语言模型,对中文而言,通常称之为汉语语言模型(Chinese Language Model,CLM)。汉语语言模型利用上下文中相邻词间的搭配信息,在需要把连续无空格的拼音、笔划,或代表字母或笔划的数字,转换成汉字串(即句子)时,可以计算出具有最大概率的句子,从而实现到汉字的自动转换。本发明对此进行分析,考虑上下文,判断一个输入片段是否合理。例如,在不支持简拼、英文输入的情况下,根据正常用户输入统计,“tre”是一个非法序列。\n[0095] 输入熟练程度:输入每字母速度、每词条速度等。根据用户的输入熟练程度,可以判断用户是否经常发生输入错误的情况。\n[0096] 连续两按键的输入时间间隔及两按键布局:如果两相邻键位连续输入且时间间隔极短,则存在用户误多敲一个键的可能性。\n[0097] 击键位置偏离度、击键力度:是否经常多按、错按某个键位,以及这些键位关联手指的灵活度。\n[0098] 简拼习惯:是否使用简拼、常使用的简拼模式。如末音节首字母简拼、全简拼等。\n[0099] 用户反馈:用户是否使用了系统给出的纠错提示信息。如果系统给出的纠错结果被用户更正,则会受到相应的惩罚。\n[0100] 关于输入信息中的输入环境特征的分析,主要是指分析键盘的特性,包括每键位面积、键程、键位间隔距离等。例如,普通PC键盘与手机9键键盘就会具有不同的特性。\n[0101] 关于输入信息中的输入法输入模式的分析,主要是指分析输入法是否支持简拼、是否支持英文输入等,如果支持,一些在全拼模式下建立的纠错规则将不再适用。\n[0102] S203:根据所述输入习惯信息对当前纠错模型进行调整,得到个性化纠错模型。\n[0103] 其中,当前纠错模型的初始状态可以为空,也就是从用户安装使用输入法开始,建立该用户的个性化纠错模型,通过不断地收集该用户的输入信息并进行分析,逐步对该用户的个性化纠错模型进行调整。另外,在本发明的优选实施例中,当前纠错模型的初始状态也可以是预先根据大量的用户输入数据训练生成的通用纠错模型,通过对该用户输入信息的收集和分析,逐步对该通用纠错模型进行调整,形成该用户的个性化纠错模型。其中,所述通用纠错模型使用所有用户的数据训练得到,一般在输入法软件打包发布时就确定下来。在个体用户使用时通用纠错模型使用该用户的数据训练,生成对应的个性化纠错模型。\n所述通用纠错模型可以作为一个文件随输入法安装包发布到用户机器本地,可以通过网络更新。这个纠错模型的参数随着对该用户输入信息的采集和分析而做调整,在实现上可表示为附属到输入法进程的一段内存空间,并可作为当前用户配置文件中的一部分,在适当的时候保存更新,并可以在网络连接可用时,更新到远程服务器上。\n[0104] 以上所述为本发明实施例提供的形成个性化纠错模型的方法,以用于针对不同用户进行个性化纠错,提升用户输入的流畅度,改进用户体验。\n[0105] 由于收集的用户输入信息可以包括用户的输入生理习惯及输入环境等,使得本发明的纠错范围不仅可以包括类似南方模糊音的认知错误,还可以包括非认知错误,因此纠错覆盖面广。例如,可以纠正因生理原因造成的错误(如操作不协调造成的“-ai-”→“-ia-”,“-er-”→“-re-”,“heh(‘呵呵’的末字音节简拼形式)”→“ehh(恶狠狠)”等错误,因为操作不熟练造成的“-y-”→“-u-”等错误),也可以是因输入环境限制造成的特定错误(比如键盘某些键位质量不好,响应粘滞而造成的“-a-”→“-aa-”等错误;\n因迷你键盘键位布局狭小造成的“q-”→“qw-”等错误)。\n[0106] 由于可以综合考虑用户的输入熟练程度、输入习惯、输入序列的合理性、输入设备布局、输入设备质量等多方面因素,使得本发明可以适用于PC键盘、迷你键盘(手机、PDA等)、触控屏等不同的输入设备,因此具有广泛的适用性。\n[0107] 另外,由于可以在网络连接可用时,将包含有个性化纠错模型的用户配置信息保存到远程服务器上,因此用户可以通过账户登录到该远程服务器上,来获取更新,这样该用户的个性化纠错模型可以在其他机器上直接使用。同时,保存在远程服务器上的这部分用户数据可以收集起来,用于通用纠错模型的训练和更新。\n[0108] 关于纠错模型的具体形式可以多种多样,例如可以是数据挖掘技术中常用的决策树、由一系列纠错规则组成的规则库等。本发明将这两种方法作为优选的实施例进行详细地介绍,仅仅用于举例说明本发明的实现,而不应理解为对本发明的限制。\n[0109] 在决策树的方法中,可以将多个判断条件作为决策树的各节点。由于每个判断条件都会具有一定的区分度,因此构建决策树时可以采用基于区分度的方法,区分度越高越靠近根节点。参见图3,可以看作是本发明构建出的决策树。该图中以输入以tre开头的拼音序列为例进行介绍,在执行纠错时,可以首先获取当前用户可用的纠错模型(这里为决策树),按照决策树中的判断条件顺序执行:\n[0110] 判断是否支持英文输入,如果支持,则不进行纠错(如,意图输入英文单词“tree”);如果不支持,则判断是否有非末字母的简拼习惯,如果有,则不进行纠错(如,意图输入“太热”的简拼形式);如果没有,则判断用户输入t和r的时间间隔是否小于某预置时间,如果不小于,则不进行纠错(基本排除敲入t时多敲入r键的可能),如果小于,则给出“te”的纠错建议。虽然还可能潜在有未识别的简拼习惯,但是相对而言,该方法能够在很大程度上降低误判的可能性。\n[0111] 由于相同的判断条件对于不同的用户可能具有不同的区分度,例如,在图3的决策树中,“是否支持英文输入”这个判断条件具有高的区分度,但是对于某特定用户而言,“是否有非末字母的简拼习惯”可能比“是否支持英文输入”具有更高的区分度。本发明的目的就在于形成符合特定用户输入习惯的纠错模型,因此就要根据不同的用户进行上述步骤S203中的模型调整。对这种决策树模型进行调整时,可以包括:根据获取的所述用户的输入习惯信息,按照各判断条件的区分度的大小进行重新排序,调整决策树的结构;和/或,将区分度小于某预定阈值的判断条件过滤掉;和/或,增加原来决策树中不存在、但对于该用户区分度较高的判断条件,等。其中,各判断条件的区分度是根据收集到的用户输入信息分析得到的,在分析的过程中,可以将纠错的相关因素进行参数化,根据这些参数计算出各判断条件的区分度。纠错模型可以是实时调整的,用户输入序列时可以利用当前可用的纠错模型进行纠错。\n[0112] 在规则库的方法中,规则库可以是由一系列的纠错规则组成,表现形式可以采用类似图1所示的形式,在执行纠错时,可以首先获取对当前用户输入序列可用的纠错规则,然后利用可用的纠错规则来完成纠错。\n[0113] 但是本发明中的规则库并不是固定不变的,也就是说,要根据对用户输入信息的收集和分析来对该规则库进行调整。可以根据每个纠错规则的概率来进行调整。所述纠错规则的概率是指用户在输入某片段时,需要对该片段进行纠错的可能性。可以利用统计模型来计算纠错规则的概率,对于统计模型,首先可以针对通用模型获取若干个可能的纠错概率估计,生成相应的分类器。比如其中一个分类器是对P(gn|ng)进行概率估计,前文提到的特征都可以用于训练这个分类器:是否进行英文输入,可作为一个0/1特征,出现该特征,其特征取值为1,否则为0;用户在输入gn后,使用退格手工改回ng的次数作为特征的取值,而不是简单的0/1。最后这个特征向量同训练得出的权重向量求点积,可求得这个纠错规则的概率估计。如统计判别模型最大熵,其结果就是一个对纠错规则的概率估计。这个概率体现了该用户在输入中有gn片段时,需要纠错为ng的可能性,如果大于某个预设的概率阈值,则可以进行纠错。统计模型可训练多个不同的分类器供纠错使用,即其他的纠错规则,也可以进行相应的分类器训练,比如P(me|em),P(q|qw)等。\n[0114] 因此,对当前纠错模型所做的调整可以包括:根据获取的所述用户的输入习惯信息,利用所述统计模型计算各纠错规则的概率,按照各纠错规则的概率的大小进行重新排序,调整规则库的结构;和/或,将概率小于某预定阈值的纠错规则过滤掉;和/或,增加原来规则库中不存在、但对于该用户概率较高的纠错规则,等。当然,当前纠错模型所做的调整还可以包括对所述统计模型进行调整,比如,所述统计模型可以表现为若干特征的权重向量,对于不同的用户,相同的特征可能具有不同的权重,因此,根据用户输入信息的分析结果,调整所述统计模型的参数,这样计算出的纠错规则的概率将更加准确、可靠。\n[0115] 例如,分析得知某用户多次将“me”音节输入成“em”(如将“什么shenme”错输成“神恶魔shenem”),并多次使用退格键位更正,且根据该用户的历史输入习惯分析知,他没有简拼输入习惯,则可以认为纠错规则“em→me”对于该用户的概率较高,并为该用户增加一个“em→me”的纠错规则。\n[0116] 由于系统的判断毕竟无法保证完全正确,如果用户输入并不存在错误,系统做出错误的自动纠错行为,会比漏判对用户体验的影响更加严重。一般可以采取在训练时加大对误判的惩罚权重来解决这类问题。因此,在本发明的优选实施例中,在判断出概率较高的纠错规则时,可以通过弹出对话框等方式要求用户确认,并将同时收集用户的确认信息,作为纠错模型调整依据中很重要的一部分。这样形成与用户之间的互动,更加有利于形成针对该用户的个性化纠错模型。\n[0117] 从以上纠错模型的构建及调整的方法来看,本发明实施例可以对输入错误可能涉及的多种因素进行参数化表示,同时能较方便地引入新的因素。例如,纠错模型可以将新的因素(判断条件或纠错规则)以特征形式引入,参与训练。比如决策树训练,纠错规则挖掘。\n随着用户输入训练数据的使用,可以实现模型参数的迭代和修正。例如,某个纠错规则在通用纠错模型中默认的概率是0.31,处于可纠错可不纠错的“灰色地带”,但如果某个用户的纠错规则在这方面特别显著,造成该规则概率从0.31上升到0.37,成为该用户的一个显著纠错规则,从而在通用纠错模型基础上进行迭代和修正,以适应该用户的个性化需要。\n[0118] 与本发明实施例提供的形成个性化纠错模型的方法相对应,本发明实施例还提供了一种形成个性化纠错模型的装置,参见图4,该装置包括:\n[0119] 信息收集单元U401,用于收集用户的输入信息;\n[0120] 信息分析单元U402,用于分析所述输入信息,获取用户的输入习惯信息;\n[0121] 模型管理单元U403,用于根据所述输入习惯信息对当前纠错模型进行调整,得到个性化纠错模型。\n[0122] 信息收集单元U401收集用户的输入信息,其中可以包括用户的输入内容(包括用户词库及上屏显示的内容)、用户的行为特征、输入环境特征、输入法输入模式等;信息分析单元U402对收集到的输入信息进行分析,获取用户的输入习惯信息;模型管理单元U403根据所述输入习惯信息对当前纠错模型进行调整,得到个性化纠错模型。\n[0123] 所述当前纠错模型可以是由至少一个判断条件组成的决策树,每个判断条件都具有一定的区分度。则,模型管理单元U403可以根据所述输入习惯信息,计算各判断条件的区分度,将各个判断条件按照区分度进行重新排序,和/或,过滤掉区分度小于预定阈值的判断条件,和/或,增加新的判断条件,等。\n[0124] 所述当前纠错模型也可以是由至少一个纠错规则组成的规则库,则模型管理单元U403可以根据所述输入习惯信息,利用统计模型对各纠错规则进行概率估计,将各纠错规则按照概率进行重新排序;和/或,删除概率低于预定阈值的纠错规则;和/或,增加新的纠错规则。当然,模型管理单元U403还可以对所述统计模型进行调整,比如,所述统计模型可以表现为若干特征的权重向量,对于不同的用户,相同的特征可能具有不同的权重,因此,可以根据用户输入信息的分析结果,调整所述统计模型的参数,这样计算出的纠错规则的概率将更加准确、可靠。\n[0125] 在实际应用中,可以使用当前可用的纠错模型对用户的输入序列进行纠错,为了实现与用户的互动,进而形成更加准确的个性化纠错模型,可以采用向用户提示纠错信息的方式,并收集用户的使用情况信息,使其也作为生成个性化纠错模型的依据。参见图5,该装置还可以包括:\n[0126] 纠错单元U504,用于根据当前可用的纠错模型进行自动纠错或向用户提示纠错信息。\n[0127] 为了使某特定用户的个性化纠错模型可以在其他机器上直接使用,该装置还可以包括:\n[0128] 账户管理单元U505,用于绑定用户,将包含个性化纠错模型的用户配置信息保存到服务器。\n[0129] 这样做的好处还在于,保存在远程服务器上的这部分用户数据可以收集起来,用于通用纠错模型的训练和更新。\n[0130] 其中,图5中的信息收集单元U501、信息分析单元U502及模型管理单元U503,与图4中的信息收集单元U401、信息分析单元U402及模型管理单元U403相同。\n[0131] 以上是本发明实施例提供的形成个性化纠错模型的装置,该装置可以与输入法系统集成,使得输入法具有个性化纠错功能,因此本发明实施例还提供了一种个性化纠错的输入法系统,参见图6,该输入法系统包括:\n[0132] 信息收集单元U601,用于收集用户的输入信息;\n[0133] 信息分析单元U602,用于分析所述输入信息,获取用户的输入习惯信息;\n[0134] 模型管理单元U603,用于根据所述输入习惯信息对当前纠错模型进行调整;\n[0135] 输入序列接收单元U604,用于接收用户的输入序列;\n[0136] 纠错单元U605,用于根据当前可用的纠错模型对所述输入序列进行自动纠错或向用户提示纠错信息。\n[0137] 所述当前纠错模型可以是由至少一个判断条件组成的决策树,每个判断条件都具有一定的区分度。则,模型管理单元U603可以根据所述输入习惯信息,计算各判断条件的区分度,将各判断条件按照区分度进行重新排序,和/或,过滤掉区分度小于预定阈值的判断条件,和/或,增加新的判断条件,等。\n[0138] 所述当前纠错模型也可以是由至少一个纠错规则组成的规则库,则模型管理单元U603可以根据所述输入习惯信息,利用统计模型对各纠错规则进行概率估计,将各纠错规则按照概率进行重新排序;和/或,删除概率低于预定阈值的纠错规则;和/或,增加新的纠错规则。同时,模型管理单元U603还可以对所述统计模型进行调整,比如,所述统计模型可以表现为若干特征的权重向量,对于不同的用户,相同的特征可能具有不同的权重,因此,可以根据所述用户的输入习惯信息,调整所述统计模型的参数,这样计算出的纠错规则的概率将更加准确、可靠。\n[0139] 在实际应用中,可以在原有输入法系统中实现上述各单元,下面通过应用中的完整实例对该输入法系统进行详细地描述。\n[0140] 参见图7,本发明实施例提供的具有个性化纠错功能的输入法系统包括:\n[0141] 输入序列接收单元U701,用于接收终端用户通过各种输入工具(QWERTY键盘、9键键盘、手写板等)输入的序列(拼音、五笔、自然码、手写识别结果、语音序列或其他输入形式),将其映射成统一的编码序列。\n[0142] 解码单元U702,用于将输入序列接收单元U701传入的编码序列进行解析,交由候选生成单元U703生成候选。\n[0143] 候选生成单元U703,用于对获得的解码序列进行处理,生成候选列表,由事件响应单元U708交由用户选择。候选生成的过程,首先根据当前的输入序列从模型管理单元U707中获取针对当前用户当前输入序列可用的纠错模型,利用可用的纠错模型对原始输入序列做纠错后,查找资源管理单元U704提供的输入法词库(基本词库/辅助词库)和用户词库中是否存在匹配输入序列的词条,否则进行组词,赋予不同来源的词库以不同权重,使用动态规划寻找最优路径。需要说明的是,所述辅助词库与用户兴趣相关,可由用户主动收集或输入法根据用户兴趣判断进行自动加载,它是输入法基本词库的一个重要补充,它和输入纠错都是提升用户输入流畅度的有效手段。\n[0144] 值得注意的是,在该输入法系统中,相当于由候选生成单元U703在生成候选的过程中实现了纠错单元U605的功能,因此该系统中不再包括单独的纠错单元。\n[0145] 资源管理单元U704,用于为候选生成单元U703生成候选提供各种词库资源,包括输入法基本词库、组词信息库、本地用户词库、包含纠错模型的用户配置信息,以及加载的辅助词库。在输入法账户登录后,用户词库、用户配置信息将可以同远程服务器交互以获得更新。\n[0146] 信息收集单元U705,用于与事件响应单元U708交互,获取用户输入信息,为信息分析单元U706提供数据来源。\n[0147] 信息分析单元U706,用于对信息收集单元U705收集到的信息进行分析,获取用户的输入习惯信息,分析的具体内容前文已经介绍,这里不再赘述。\n[0148] 模型管理单元U707,用于纠错模型的维护和更新。这里的模型可以是某纠错规则的条件概率(形如P(qi-|qwi-)=0.143,P(-ng|-gn)=0.233);或者是若干个判断条件组成的决策树,等等。在用户第一次安装输入法时,可用的只有预先统计好的、基于大量用户数据统计的通用纠错模型。随着当前用户输入信息的采集和分析,纠错模型将进行调整以适应该用户的输入习惯。比如通用模型中预置的某纠错规则在通用纠错模型中的概率较低而不能应用,但它正好符合当前用户的输入习惯,其概率得以提升而得以应用。\n[0149] 事件响应单元U708,用于可视化应用程序中多种事件的处理,比如按键处理、数据拷贝、声音响应、状态查询等,信息收集单元U705可以通过该单元获取所需的用户输入信息。\n[0150] 为了使某用户的个性化纠错模型可以在其他机器上直接使用,该输入法系统还可以包括:\n[0151] 账户管理单元U709,用于绑定用户,将包含个性化纠错模型的用户配置信息保存到服务器。\n[0152] 这样做的好处还在于,保存在远程服务器上的这部分用户数据可以收集起来,用于通用纠错模型的训练和更新。\n[0153] 以上对本发明所提供的一种形成个性化纠错模型的方法和装置,以及一种个性化纠错的输入法系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
法律信息
- 2010-08-11
- 2009-03-11
- 2009-01-21
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有引用任何外部专利数据! |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |