CN107491182A - 一种输入法候选项推荐的方法和系统 - Google Patents

一种输入法候选项推荐的方法和系统 Download PDF

Info

Publication number
CN107491182A
CN107491182A CN201710495862.XA CN201710495862A CN107491182A CN 107491182 A CN107491182 A CN 107491182A CN 201710495862 A CN201710495862 A CN 201710495862A CN 107491182 A CN107491182 A CN 107491182A
Authority
CN
China
Prior art keywords
character
combination
weight
input
character combination
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
Application number
CN201710495862.XA
Other languages
English (en)
Other versions
CN107491182B (zh
Inventor
高原
田力
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Xinmeihutong Technology Co
Original Assignee
Beijing Xinmeihutong Technology Co
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Xinmeihutong Technology Co filed Critical Beijing Xinmeihutong Technology Co
Publication of CN107491182A publication Critical patent/CN107491182A/zh
Priority to US15/891,651 priority Critical patent/US10928925B2/en
Application granted granted Critical
Publication of CN107491182B publication Critical patent/CN107491182B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0237Character input methods using prediction or retrieval techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0236Character input methods using selection techniques to select from displayed items
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/042Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means
    • G06F3/0425Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means using a single imaging device like a video camera for tracking the absolute position of a single or a plurality of objects with respect to an imaged reference surface, e.g. video camera imaging a display or a projection screen, a table or a wall surface, on which a computer generated image is displayed or projected
    • G06F3/0426Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means using a single imaging device like a video camera for tracking the absolute position of a single or a plurality of objects with respect to an imaged reference surface, e.g. video camera imaging a display or a projection screen, a table or a wall surface, on which a computer generated image is displayed or projected tracking fingers with respect to a virtual keyboard projected or printed on the surface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • Input From Keyboards Or The Like (AREA)
  • User Interface Of Digital Computer (AREA)
  • Document Processing Apparatus (AREA)

Abstract

本申请实施例提供了一种输入法候选项推荐的方法和系统,包括:通过接收用户在输入法中输入的初始键码和/或键码串;根据所述初始键码,确定推荐输入字符;增加所述推荐输入字符的权重值。解决了用户使用移动终端虚拟键盘进行文字输入,经常触摸到目标按键周围按键导致输入候选项错误率的问题,提高了用户输入键码的纠错能力以及输入法候选项的准确性。

Description

一种输入法候选项推荐的方法和系统
技术领域
本申请涉及输入法技术领域,特别是涉及一种输入法候选项推荐的方法和系统。
背景技术
随着终端设备技术的迅速发展,用户可以利用移动终端实现以信息传送方式为平台的多种功能,例如,文字信息的记录、通讯软件的使用等,所以在使用移动终端时,利用输入法和移动终端上的虚拟键盘输入文字信息,是移动终端最常用的功能之一,但是由于移动终端的屏幕尺寸的限制,当用户在使用移动终端屏幕上显示的虚拟键盘输入文字信息时,往往会因为手指触摸到目标按键的周围按键导致错误的输入。
目前,为了解决上述问题,可以通过使用大屏幕的移动终端,其次可以使用九宫格键盘,使得键盘上每个按键的面积增大,但是九宫格按键并不适合所有的输入法,并且九宫格键盘会增加用户选择输入候选项的步骤,降低了文字的输入效率。
发明内容
鉴于上述问题,提出了本申请实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种输入法候选项推荐的方法和一种输入法候选项推荐的系统。
为了解决上述问题,本申请公开了一种输入法候选项推荐的方法,包括:
接收用户在输入法中输入的初始键码和/或键码串;
根据所述初始键码,确定推荐输入字符;
增加所述推荐输入字符的权重值。
优选的,所述根据所述初始键码,确定推荐输入字符的步骤,包括:
针对初始键码串中各个字符,获取所述字符及其周围的字符的权重,并按字符输入顺序构建相应层级的键码串权重列表;
在由词典获取字符组合时,根据输入法词典中的层级与键码串权重列表中的层级对应关系,利用所述键码串权重列表确定所述字符组合的权重;
结合各字符组合的权重,确定对应各字符组合的候选项排序;
根据所述各字符组合的候选项排序,确定推荐输入字符。
优选的,所述针对初始键码串中各个字符,获取所述字符及其周围的字符的权重,并按字符输入顺序构建相应层级的键码串权重列表的步骤,包括:
记录所述用户在输入初始键码串时,在输入键盘界面上各触发点的触点坐标;
对于每个所述触点坐标,确定所述触点坐标所在按键,以及所述按键周围的按键;
分别计算每个所述触点坐标与所述触点坐标周围按键之间的第一距离;
根据各按键的第一距离,确定所述触点坐标所在按键键值,以及所述按键周围的按键的键值的权重,并按照初始键码串中字符的输入顺序构建相应层级的键码串权重列表。
优选的,所述在由词典获取字符组合时,根据输入法词典中的层级与键码串权重列表中的层级对应关系,利用所述键码串权重列表确定所述字符组合的权重的步骤,包括:
将词典第一层字符节点中与初始键码串的第一个字符及周围字符匹配的字符作为根节点进行保存;
对于基于各根节点的各个节点的字符,采用以下过程确定字符组合的权重,直到所有节点的字符遍历完毕:
对于第N层级中的各字符节点,N为大于1的整数,读取当前节点的父节点对应的各种类型的字符组合及相应的权重;所述父节点对应的各种类型的字符组合包括:不带标签的字符组合,和/或,带有漏键处理标签的字符组合,和/或,带有多输入处理标签的字符组合;
将词典中当前节点的字符与键码串权重列表中第N层级的各字符进行匹配;
如果词典中当前节点的字符与键码串权重列表中第N层级中一字符匹配,则将当前节点的字符分别与父节点对应的各种类型的字符组合合并为对应当前节点的各种类型的字符组合并更新权重,并保存对应当前节点的各种类型的字符组合及相应的权重;
如果当前节点的字符与键码串权重列表中第N层级中各字符不匹配,则进入如下步骤:
对于不带标签的字符组合,将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的不带标签的字符组合的字符组合,更新权重并存储;
将当前节点的各子节点的字符与键码串权重列表中第N层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的带有漏键处理标签的字符组合的字符组合,更新权重并存储;如果未匹配上,则不保存;
将当前节点的字符与键码串权重列表中第N+1层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的带有多输入处理标签的字符组合的字符组合,更新权重并存储;如果未匹配上,则不保存;
对于带有标签的字符组合,将当前节点的各子节点的字符与键码串权重列表中第N层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的带有标签的字符组合合并为对应当前节点的带有标签的字符组合,更新权重并存储;如果未匹配上,则不保存。。
优选的,所述结合各字符组合的权重,确定对应各字符组合的候选项排序的步骤,包括:
当各字符组合存在带有漏键处理标签的字符组合时,将带有漏键处理标签的字符组合的权重按照第一预设规则进行调整;
当各字符组合存在带有多输入处理标签的字符组合时,将带有多输入处理标签的字符组合的权重按照第二预设规则进行调整;
结合不带标签的字符组合的权重,和/或带有漏键处理标签的字符组合调整后的权重,和/或带有多输入处理标签的字符组合调整后的权重,确定对应各字符组合的候选项排序。
优选的,所述结合不带标签的字符组合的权重,和/或带有漏键处理标签的字符组合调整后的权重,和/或带有多输入处理标签的字符组合调整后的权重,确定对应各字符组合的候选项排序的步骤,包括:
以不带标签的字符组合的权重,和/或带有漏键处理标签的字符组合调整后的权重,和/或带有多输入处理标签的字符组合调整后的权重,字符组合本身的词频,字符组合的使用词频,字符组合上次使用后距当前时刻的时间长度,字符组合与之前输入的词之间的多元关系,计算各字符组合的综合权重;
以各字符组合的综合权重,将各字符组合的候选项排序。
优选的,所述根据所述各字符组合的候选项排序,确定推荐输入字符的步骤,包括:
根据各字符组合的候选项排序,选取前M个候选项作为参考候选项,M为大于1的整数;
若所述初始键码串中字符数为n,则将所述M个参考候选项中第n+1个字符确定为推荐输入字符,n为大于1的整数。
优选的,所述增加所述推荐输入字符的权重值的步骤,包括:
增加所述推荐输入字符对应按键的权重值;
和/或,
将所述推荐输入字符对应按键添加推荐显示动画,以增大所述键码的点击范围;所述推荐显示动画包括:按键增大、按键变色、按键突出显示其中至少一项。
优选的,所述增加所述推荐输入字符的权重值的步骤,包括:
计算所述触点坐标与所述触点坐标所在按键之间的第二距离;
计算各所述推荐输入字符对应按键与所述触点坐标之间的第三距离;
若所述第三距离大于第二距离,则将所述第三距离减少预设阈值,以增加推荐输入字符的权重值。
优选的,在所述根据所述各字符组合的候选项排序,确定推荐输入字符的步骤之后,还包括:
若所述初始键码串对应一所述候选项,则确定用户输入完毕,并进入确定推荐输入字符的步骤;所述推荐输入字符为功能字符。
相应的,本申请还公开了一种输入法候选项推荐的系统,包括:
初始键码串接收模块,用于接收用户在输入法中输入的初始键码和/或键码串;
推荐输入字符确定模块,用于根据所述初始键码,确定推荐输入字符;
权重增加模块,用于增加所述推荐输入字符的权重值。
优选的,所述推荐输入字符确定模块,包括:
键码串权重列表构建子模块,用于针对初始键码串中各个字符,获取所述字符及其周围的字符的权重,并按字符输入顺序构建相应层级的键码串权重列表;
权重确定子模块,用于在由词典获取字符组合时,根据输入法词典中的层级与键码串权重列表中的层级对应关系,利用所述键码串权重列表确定所述字符组合的权重;
候选项排序确定子模块,用于结合各字符组合的权重,确定对应各字符组合的候选项排序;
推荐输入字符确定子模块,用于根据所述各字符组合的候选项排序,确定推荐输入字符。
优选的,所述键码串权重列表构建子模块,包括:
触点坐标记录子模块,用于记录所述用户在输入初始键码串时,在输入键盘界面上各触发点的触点坐标;
触点坐标对应按键确定子模块,用于对于每个所述触点坐标,确定所述触点坐标所在按键,以及所述按键周围的按键;
第一距离计算子模块,用于分别计算每个所述触点坐标与所述触点坐标周围按键之间的第一距离;
键码串权重列表构建子模块,用于根据各按键的第一距离,确定所述触点坐标所在按键键值,以及所述按键周围的按键的键值的权重,并按照初始键码串中字符的输入顺序构建相应层级的键码串权重列表。
优选的,所述权重确定子模块,包括:
第一层权重确定子模块,用于将词典第一层字符节点中与初始键码串的第一个字符及周围字符匹配的字符作为根节点进行保存;
第N层权重确定子模块,用于对于基于各根节点的各个节点的字符,采用以下过程确定字符组合的权重,直到所有节点的字符遍历完毕:
父节点字符组合读取单元,用于对于第N层级中的各字符节点,N为大于1的整数,读取当前节点的父节点对应的各种类型的字符组合及相应的权重;所述父节点对应的各种类型的字符组合包括:不带标签的字符组合,和/或,带有漏键处理标签的字符组合,和/或,带有多输入处理标签的字符组合;
字符匹配单元,用于将词典中当前节点的字符与键码串权重列表中第N层级的各字符进行匹配;
匹配成功处理单元,用于如果词典中当前节点的字符与键码串权重列表中第N层级中一字符匹配,则将当前节点的字符分别与父节点对应的各种类型的字符组合合并为对应当前节点的各种类型的字符组合并更新权重,并保存对应当前节点的各种类型的字符组合及相应的权重;
匹配失败处理单元,用于如果当前节点的字符与键码串权重列表中第N层级中各字符不匹配,则进入如下步骤:
不带标签的字符组合处理子单元,用于对于不带标签的字符组合,将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的不带标签的字符组合的字符组合,更新权重并存储;
上层匹配子单元,用于将当前节点的各子节点的字符与键码串权重列表中第N层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的带有漏键处理标签的字符组合的字符组合,更新权重并存储;如果未匹配上,则不保存;
下层匹配子单元,用于将当前节点的字符与键码串权重列表中第N+1层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的带有多输入处理标签的字符组合的字符组合,更新权重并存储;如果未匹配上,则不保存;
带标签的字符组合处理子单元,用于对于带有标签的字符组合,将当前节点的各子节点的字符与键码串权重列表中第N层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的带有标签的字符组合合并为对应当前节点的带有标签的字符组合,更新权重并存储;如果未匹配上,则不保存。优选的,所述候选项排序确定子模块,包括:
权重调整子模块,用于当各字符组合存在带有漏键处理标签的字符组合时,将带有漏键处理标签的字符组合的权重按照第一预设规则进行调整;
多输入处理标签字符组合权重调整子模块,当各字符组合存在带有多输入处理标签的字符组合时,将带有多输入处理标签的字符组合的权重按照第二预设规则进行调整;
字符组合排序子模块,用于结合不带标签的字符组合的权重,和/或带有漏键处理标签的字符组合调整后的权重,和/或带有多输入处理标签的字符组合调整后的权重,确定对应各字符组合的候选项排序。
优选的,所述字符组合排序子模块,包括:
综合权重计算单元,用于以不带标签的字符组合的权重,和/或带有漏键处理标签的字符组合调整后的权重,和/或带有多输入处理标签的字符组合调整后的权重,字符组合本身的词频,字符组合的使用词频,字符组合上次使用后距当前时刻的时间长度,字符组合与之前输入的词之间的多元关系,计算各字符组合的综合权重;
候选项排序单元,用于以各字符组合的综合权重,将各字符组合的候选项排序。
优选的,所述推荐输入字符确定子模块,包括:
参考候选项选取子模块,用于根据各字符组合的候选项排序,选取前M个候选项作为参考候选项,M为大于1的整数;
推荐输入字符确定子模块,用于若所述初始键码串中字符数为n,则将所述M个参考候选项中第n+1个字符确定为推荐输入字符,n为大于1的整数。
优选的,所述权重增加模块,包括:
权重值增加子模块,用于增加所述推荐输入字符对应按键的权重值;
和/或,
推荐显示动画添加子模块,用于将所述推荐输入字符对应按键添加推荐显示动画,以增大所述键码的点击范围;所述推荐显示动画包括:按键增大、按键变色、按键突出显示其中至少一项。
优选的,所述权重增加模块,包括:
第二距离计算子模块,用于计算所述触点坐标与所述触点坐标所在按键之间的第二距离;
第三距离计算子模块,用于计算各所述推荐输入字符对应按键与所述触点坐标之间的第三距离;
预设阈值调整子模块,用于若所述第三距离大于第二距离,则将所述第三距离减少预设阈值,以增加推荐输入字符的权重值。
优选的,所述系统还包括:
功能字符推荐子模块,用于若所述初始键码串对应一所述候选项,则确定用户输入完毕,并进入确定推荐输入字符的步骤;所述推荐输入字符为功能字符。
本申请实施例包括以下优点:
本申请实施例中,通过接收用户在输入法中输入的初始键码和/或键码串;根据所述初始键码,确定推荐输入字符;增加所述推荐输入字符的权重值。解决了用户使用移动终端虚拟键盘进行文字输入,经常触摸到目标按键周围按键导致输入候选项错误率的不够准确的问题,提高了用户输入键码的纠错能力以及提高用户输入法候选项的准确性的便利性。
附图说明
图1是本申请的一种输入法候选项推荐的方法实施例的步骤流程图;
图1A是本申请的一种输入法键盘示例图;
图1B是本申请的一种输入法键盘示例图;
图1C是本申请的一种输入法键盘示例图;
图1D是本申请的一种输入法键盘示例图;
图1E是本申请的一种输入法键盘示例图;
图2是本申请的一种输入法候选项推荐的方法实施例的步骤流程图;
图2A是本申请的一种输入法词典树形结构示意图;
图3是本申请的一种输入法候选项推荐的系统实施例的结构框图;
图4是本申请的一种输入法候选项推荐的系统实施例的结构框图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
实施例一
参照图1,示出了本申请的一种输入法候选项推荐的方法实施例的步骤流程图,具体可以包括如下步骤:
步骤110,接收用户在输入法中输入的初始键码和/或键码串;
本发明实施例中,当用户使用移动终端输入文字信息时,移动终端显示界面会弹出虚拟键盘界面,随后,通过接收用户在移动终端屏幕上的触控操作,并且通过触控操作的触点对应显示界面上的虚拟键盘上的键值,来确定用户输入的键码串,如图1A中,显示的是移动终端显示界面的虚拟键盘,通过用户在屏幕上的触点判断用户要输入的键值,记录用户输入的一个键值,或记录多个键值组成的初始键码串。当用户输入一个字符时,根据该字符在预设词典中对应的下一字符,可以预测下一待输入字符,而当用户输入至少两个字符时,即用户触发的第二个触发点,即可生产一个字符组合,根据用户两次触发点位置,判断目标按键,生产一系列字符组合。
步骤120,根据所述初始键码,确定推荐输入字符。
本发明实施例中,当确定用户输入的初始键码或键码串后,根据预设语言字典与初始键码或键码串的比对,可以获取用户下一个带输入字符的可能选项,实际应用中,还可以根据当前输入法的对应特定用户输入习惯的云数据进行待输入字符的确定。例如,根据语言字典,如果用户输入的第一个字符为“人”,和人组合的待输入字符,可以有“人们”“人名”“人民”“人类”等,而根据用户的输入习惯,“人类”是用户最常使用的词汇,那么就将“人类”确定用户推荐字符的第一位。
步骤130,增加所述推荐输入字符的权重值。
本发明实施例中,触摸点距离周边几个按键的中心点的距离,与周边几个按键的权值成正比。与触摸点的位置距离最近的按键的权值更高,更容易被选中。在候选词概率大于某一阈值时,可以判断用户下一个要输入的字符时,提高这个(或者这些)字符的权值,让这些字符更容易被选中。
在本发明实施例中,通过接收用户在输入法中输入至少两个的初始键码串;针对初始键码串中各个字符,获取所述字符及其周围的字符的权重,并按字符输入顺序构建相应层级的键码串权重列表;在由词典获取字符组合时,根据输入法词典中的层级与键码串权重列表中的层级对应关系,利用所述键码串权重列表确定所述字符组合的权重;结合各字符组合的权重,确定对应各字符组合的候选项排序,根据所述各字符组合的候选项排序,确定推荐输入字符;增加所述推荐输入字符的权重值。解决了用户使用移动终端虚拟键盘进行文字输入,经常触摸到目标按键周围按键导致输入候选项错误率的问题,提高了用户输入键码的纠错能力以及输入法候选项的准确性和便捷性。
实施例二
参照图2,示出了本申请的一种输入法候选项推荐的方法实施例的步骤流程图,具体可以包括如下步骤:
步骤201,接收用户在输入法中输入的初始键码和/或键码串。
此步骤与实施例一中的步骤110相同,在此不再详述。
步骤202,针对初始键码串中各个字符,获取所述字符及其周围的字符的权重,并按字符输入顺序构建相应层级的键码串权重列表。
本发明实施例中,当记录用户输入的多个键值为输入的初始键码串后,根据用户点击的各个键值,标记上述初始键值的按键周围的按键,根据各个周围按键距离初始按键的距离,标记初始按键以及周围按键的权重值,将下初始键码串中各键值以及周围按键对应的键值结合他们各自的权重值记录下来,生成一个多层级的键码串权重列表。例如,用户想要输入英文“BUT”这个单词,所以用户按照顺序分别在键盘上点击“B”、“U”和“T”这三个按键,如图1A、1B、1C所示,当接收到用户对B”、“U”和“T”这三个按键的触控操作后,分别标记这三个键周围的按键,“B”键周围的按键分别为V、G、H、J、N这五个键,“U”键周围的按键分别为Y、H、J、I四个键,“T”键周围分别是R、F、G、H、Y五个键,标记完各自初始按键周围的按键后,根据各个周围键的中心点坐标与初始按键的中心点坐标可以计算出各初始按键与各自周围按键的距离,根据各自距离远近分别为他们标记权重值,假设初始按键的权重值为5.0,那么距离初始按键最近的按键标记为4.5,第二近的标记为4.0,以此类推,直到该初始按键周围的按键都标记了权重值,并记录下来。根据上述规则,可以得到基于“BUT”的键码串权重列表为:
{
{[B,5.0],[N,4.5],[J,4.0],[V,3.5],[H,3.0],[G,2.5]},
{[U,5.0],[I,4.5],[J,4.0],[H,3.5],[Y,3.0]},
{[T,5.0],[R,4.5],[F,4.0],[G,3.5],[Y,3.0]}
}
优选的,步骤202具体包括:子步骤2021-子步骤2024;
子步骤2021,记录所述用户在输入初始键码串时,在输入键盘界面上各触发点的触点坐标。
本发明实施例中,通过移动终端显示屏幕上的触控感应元件,接收到用户在显示屏幕上的触控操作,通常移动终端显示屏有热度电容屏和电阻屏,对于电阻屏来说,可以通过检测用户轻触按压来识别用户的触控操作,而电容屏是通过感应人体热度来检测用户的触控操作,并且可以实现多点触摸,所以移动终端的显示屏可以通过用户的触控操作捕捉到用户每个触控操作的触控点,并且得到该触控点在显示屏幕上的触点坐标。
子步骤2022,对于每个所述触点坐标,确定所述触点坐标所在按键,以及所述按键周围的按键。
本发明实施例中,当用户触摸移动终端显示屏的时候,不论是通过压力感应还是热感应都可以接收到用户的触控操作,当接收到用户的触控操作后,根据屏幕上的触控点得到触点坐标后,根据该触点坐标与虚拟键盘上每个按键在显示屏幕上的坐标,可以得到用户初始按键的键值,确定初始按键后,进一步的确定初始按键的周围按键。如图1A,当用户触碰到移动终端显示屏幕上的初始位置为图中黑色大圆点标记的位置,通过计算该点在显示屏上的坐标可以得到距离该点最近的是虚拟键盘上的“B”键,所以确定用户的此次触控初始键码为“B”,确定初始键码为“B”后,进一步的确定“B”键周围的按键为G、H、V、J。
子步骤2023,分别计算每个所述触点坐标与所述触点坐标周围按键之间的第一距离。
本发明实施例中,根据步骤230中的描述,当确定“B”键周围的按键为G、H、V、J后,分别计算G、H、V、J键的中心点坐标与用户原始触点坐标之间的距离,为第一距离,图1A中黑色大圆点,而图1A中的黑色小圆点分别标记的是G、H、V、J键的中心点坐标所在的位置,计算第一距离也就是计算黑色大圆点与各黑色小圆点之间的距离。
子步骤2024,根据各按键的第一距离,确定所述触点坐标所在按键键值,以及所述按键周围的按键的键值的权重,并按照初始键码串中字符的输入顺序构建相应层级的键码串权重列表。
本发明实施例中,根据计算出的用户原始触点坐标与各周围按键的第一距离的远近,标记各按键对应键值的权重值,例如,在图1A中,当确定了用户的触控点对应的是按键“B”,根据计算其周围按键距离初始触控坐标的距离可以得到键码“B”,则标记键码“B”的权重为5.0,然后离第一个键最近的是5*0.9,第二个接近的键为5*0.8,第三个5*0.7,以此类推,最后得到的权重列表为:
{[B,5.0],[N,4.5],[J,4.0],[V,3.5],[H,3.0],[G,2.5]}
同理,根据图1B,可以推断出,用户的第二个输入键码为“U”,并且“U”的键码权重列表为:
{[U,5.0],[I,4.5],[J,4.0],[H,3.5],[Y,3.0]}
而根据图1C所示,用户的第二个输入键码为“T”,并且“T”的键码权重列表为:
{[T,5.0],[R,4.5],[F,4.0],[G,3.5],[Y,3.0]}
到此为止,用户输入的键码串的权重列表为:
{
{[B,5.0],[N,4.5],[J,4.0],[V,3.5],[H,3.0],[G,2.5]},
{[U,5.0],[I,4.5],[J,4.0],[H,3.5],[Y,3.0]},
{[T,5.0],[R,4.5],[F,4.0],[G,3.5],[Y,3.0]}
}
步骤203,在由词典获取字符组合时,根据输入法词典中的层级与键码串权重列表中的层级对应关系,利用所述键码串权重列表确定所述字符组合的权重。
本发明实施例中,当确定了初始输入字符的键码串权重列表后,根据当前用户使用的输入法词典的树形结构中各个字符的位置,与键码串权重列表中的字符进行匹配,根据匹配结果的子节点再匹配,可以得到键码串权重列表中每个字符在输入法词典中的字符组合,并且在输入法词典上对应的每一级的匹配结果的权重值,计算出字符组合的权重值。
优选的,步骤203具体包括:子步骤2031-子步骤2038;
子步骤2031,将词典第一层字符节点中与初始键码串的第一个字符及周围字符匹配的字符作为根节点进行保存。
本发明实施例中,图2A描述的是英文输入法对应的词典的树形结构,根据该树形结构,其中,首节点为空,第一层有52个子节点,分别是26个英文大小写字母。第二层的子节点是在第一层的节点之下,并且是以第一层节点字母开头的单词字母,每个字母对应的子节点都是与该字母可能组成单词的所有字母,并且每个字母节点都存储着该字母是否可以成为一个单词的结尾的标签,除此之外还存储着该节点字符串的长度以及下子兄弟节点的位置,并且如果标签上标记该字母为单词词尾的话,还会标记该单词针对当前输入法的词频。
以上述输入法词典为例,当用户输入的初始键码串为“BUT”,那么将“B”层权重列表中的字符{[B,5.0],[N,4.5],[J,4.0],[V,3.5],[H,3.0],[G,2.5]}分别与词典第一层的52个子节点逐一进行匹配,匹配结果当然是将该结果节点上的字符、节点的词库地址、该节点在键码串权重列表中对应的权重值存储在当前系统的缓存中。
对于基于各根节点的各个节点的字符,采用以下过程确定字符组合的权重,直到所有节点的字符遍历完毕:
子步骤2032,对于第N层级中的各字符节点,N为大于1的整数,读取当前节点的父节点对应的各种类型的字符组合及相应的权重;所述父节点对应的各种类型的字符组合包括:不带标签的字符组合,和/或,带有漏键处理标签的字符组合,和/或,带有多输入处理标签的字符组合。
本发明实施例中,当用户输入的初始键码串在输入法词典的第一层级进行匹配完成后,从匹配结果中选择出键码串中的第一个键码,进入该键码的子节点,将第二层的子节点逐一和键码串中第二个按键及周围键进行比较,如果节点上的第一个字符是第二个按键或者是周围键,那就继续比较节点上第二个字符和键码串中第三个按键及周围键,以此类推,直到比较完该节点上的所有字符,如果都匹配成功,则将该节点上的字符和父节点的累计下来的字符累加,生成字符组合,并保存各节点的词库地址以及权重值和父节点累计下来的权值累加权重值,即权重值。在匹配的过程中,如果没有匹配成功,则分为三种情况对当前节点进行处理,第一处理用户按错的情况,该节点的上的字符权值为0,继续保存起来,不带任何标签。第二处理用户漏掉了一个按键的情况,将下一个字符跟当前按键及周围键进行比较,如果匹配,则加上漏键标示,保存该节点,并标记漏键处理标签,如果不匹配则不做任何保存。第三处理用户多输入了一个键的情况,将当前节点上的当前字符跟下一个键码及周围键进行比较,如果匹配成功,则加上多输入处理标签,保存该节点,如果不匹配则不做任何保存,如表1中所示:
表1
子步骤2033,将词典中当前节点的字符与键码串权重列表中第N层级的各字符进行匹配。
本发明实施例中,根据步骤2032中的描述,进一步说明词典字符与键码串权重列表中第N层级的各字符进行匹配的过程,在词典第一层匹配完成后,拿出第一个匹配字符的子节点,即“A”字符的子节点,通过图2A中示出的词典中可以看出,“B”字符的子节点为“a、e、u、i、o、y、t…”,该子节点对应词典第二层,得到“B”字符的子节点后,将键码串权重列表中第二层中字符与“B”字符的子节点中第一个字符逐一进行匹配,即将“b”与“{[U,5.0],[I,4.5],[J,4.0],[H,3.5],[Y,3.0]},”逐一进行匹配,根据匹配结果进行下一步骤。
子步骤2034,如果词典中当前节点的字符与键码串权重列表中第N层级中一字符匹配,则将当前节点的字符分别与父节点对应的各种类型的字符组合合并为对应当前节点的各种类型的字符组合并更新权重,并保存对应当前节点的各种类型的字符组合及相应的权重。
本发明实施例中,根据步骤2033的描述,即将“B”字符的子节点与“{[U,5.0],[I,4.5],[J,4.0],[H,3.5],[Y,3.0]},”逐一进行匹配后,如果匹配上,则记录该节点的字符组合,以及更新后的权重并保存,例如根据表1中的描述,“B”字符的子节点中“u”与{[U,5.0],[I,4.5],[J,4.0],[H,3.5],[Y,3.0]}中的[U,5.0]匹配上了,那么就将两个字符的权重相加得到更新后的权重为10.0,并保存它们组成的字符组合为“bu”。
如果当前节点的字符与键码串权重列表中第N层级中各字符不匹配,则进入如下步骤:
子步骤2035,对于不带标签的字符组合,将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的不带标签的字符组合的字符组合,更新权重并存储。
本发明实施例中,根据步骤2034中的描述,将“B”字符的子节点与“{[U,5.0],[I,4.5],[J,4.0],[H,3.5],[Y,3.0]},”逐一进行匹配,例如“a”与权重列表中的字符没有相匹配的,那么就根据步骤2032中描述的分为三种情况进行处理,如表1中存储的“a”的三种情况,为不带标签的,“a”的权重为0,所以“ba”的权重为“b”的权重5.0与“a”的权重的和,所以也有5.0,同理,第二种情况标记漏键处理标签的“ba”权重也为5.0,第三种情况,当将“a”标记多输入处理标签时,要将“a”与键码串权重列表中的第三层进行匹配,如果匹配上则保留标签,并保存该字符组合在系统缓存中,如果不匹配则不做任何保存,而根据“a”与键码串权重列表中第三层的字符{[T,5.0],[R,4.5],[F,4.0],[G,3.5],[Y,3.0]}进行逐一比较,没有可以匹配的字符,所以并不记录多输入处理标签和该字符的字符组合及其权重值,如表1中第三行所示。
子步骤2036,将当前节点的各子节点的字符与键码串权重列表中第N层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的带有漏键处理标签的字符组合的字符组合,更新权重并存储;如果未匹配上,则不保存。
本发明实施例中,根据步骤2034的描述,根据当前节点的父节点的保存的三种情况的数据,即表1中内容,结合当前节点对应的键码串权重列表对应层的字符与该带有漏键处理标签的字符组合进行逐一匹配,若匹配,则将匹配的字符与父节点形成的字符组合生成新的字符组合,并保存其权重值在系统缓存中。如果字符和按键及周围键匹配失败,并且已经在上一层做过漏键和多输入键的处理,就不再继续做漏键或者多输入键的处理,这样避免按键和单词偏差太大。将词典当前层的每个节点都做上述处理,直到全部匹配完毕,根据保存的新的字符组合进行下一层的处理。
子步骤2037,将当前节点的字符与键码串权重列表中第N+1层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的带有多输入处理标签的字符组合的字符组合,更新权重并存储;如果未匹配上,则不保存。
本发明实施例中,此步骤与步骤2036相似,是针对父节点的带有多输入处理标签的字符进行的匹配,同样的,若匹配,则将匹配的字符与父节点形成的字符组合生成新的字符组合,并保存其权重值在系统缓存中。如果字符和按键及周围键匹配失败,并且已经在上一层做过漏键和多输入键的处理,就不再继续做漏键或者多输入键的处理,这样避免按键和单词偏差太大。将词典当前层的每个节点都做上述处理,直到全部匹配完毕,根据保存的新的字符组合进行下一层的处理。
子步骤2038,对于带有标签的字符组合,将当前节点的各子节点的字符与键码串权重列表中第N层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的带有标签的字符组合合并为对应当前节点的带有标签的字符组合,更新权重并存储;如果未匹配上,则不保存。
本发明实施例中,针对带有漏键处理标签的字符组合,,将该字符的子节点中的字符逐一与键码串权重列表中对应的上层字符进行逐一匹配,例如,表1中的第二行中,“a”标记了“漏键处理标签”,那么就将“a”的子节点“by、d、t”与{[U,5.0],[I,4.5],[J,4.0],[H,3.5],[Y,3.0]}的字符逐一进行匹配,如果匹配三,则将匹配上的“a”的子节点字符与之前组成的字符组合生成新的字符组合,记录新字符组合的权重并保存在系统缓存中,如果不匹配,则不做任何保存。如表2中所示,“a”标记了“漏键处理标签”后,将“a”的子节点“by、d、t”与{[U,5.0],[I,4.5],[J,4.0],[H,3.5],[Y,3.0]}都进行匹配,并且都不匹配,所以表2中的内容将会全部丢弃。
累加的字符串 权值 说明
baby 5.0 by节点是0,b和u层权重列表中的字符不匹配
bad 5.0 d节点是0,d和u层权重列表中的字符不匹配
bat 5.0 t节点是0,t和u层权重列表中的字符不匹配
表2
本发明实施例中,对于带有多输入处理标签的当层字符,按照正常情况将该字符与当前层级的键码权重列表中的字符进行匹配,若匹配则与上层字符组合合并,并保存新的字符组合及其权重,若不匹配则丢弃。
步骤204,结合各字符组合的权重,确定对应各字符组合的候选项排序。
本发明实施例中,根据计算出的各字符组合的权重,将所有通过在输入法词典中得到的字符组合进行排序,权重值越大的排序越靠前,排序还可以根据每个字符组合形成的候选项针对当前输入用户的输入习惯、用户选择的输入词库,还可以通过大数据统计在当前输入法中,上述候选项的输入词频等特征,来对权重进行进一步的计算,本发明实施例对此不加以限制。
优选的,步骤204具体包括:子步骤2041-子步骤2043;
子步骤2041,当各字符组合存在带有漏键处理标签的字符组合时,将带有漏键处理标签的字符组合的权重按照第一预设规则进行调整。
本发明实施例中,根据步骤203的描述,当所有字符全部匹配完成后,全部的键码,将最终保存的信息进行处理。在生成的所有字符组合中,根据词典中每个字符的子节点不同,生成的字符组合不同,可是计算出的权重有可能相同,例如带有漏键处理标签的字符组合与不带标签的字符组合计算得到的权重相同,如表3中描述的,字符组合“but”与“butter”在根据词典与键码串权重列表中的对比后是一致的,而用户输入的是“but”,所以根据用户输入的初始键码串,“but”应该排列在候选项的首位,而“butter”是按照词典子节点生成的扩展的候选项,键码串长度大于初始键码串,所以在这么它的权重值要乘以0.9,表三中其余候选项的权重处理方式按照以上规则进行处理,当然,在实际应用中,还可以根据候选项的词频、网络热度等特征对当前权重值进行进一步的处理,本发明实施例对此不加以限制。
单词 权值 说明
but 15.0 三个按键和单词完全匹配,权值最高
butter 13.5 butter包含but,所有权值要乘以0.9
button 13.5 同butter
bit 14.5 I的权值是4.5,其他两个字母是5.0
bits 13.05 bits包含bit,所以对bit的权值乘以0.9
buy 13.0 Y的权值是3,其他两个字母是5.0
buying 11.7 buying包含buy,所以buy的权值乘以0.9
buys 11.7 同buying
bt 14.5 bt有多输入字符u的标示,这里要根据上述公式补全权值
bust 13.5 bust中3字符和but相同,但是有漏键标示,所以要乘以0.9
bout 13.5 同bust
bat 10.0 bat和but有两个键相同,都是5.0
bet 10.0 同bat
better 9.0 better包含bet,所有bet的权值乘以0.9
bus 10.0 同bat
表三
子步骤2042,当各字符组合存在带有多输入处理标签的字符组合时,将带有多输入处理标签的字符组合的权重按照第二预设规则进行调整。
本发明实施例中,根据步骤203的描述,当所有字符全部匹配完成后,全部的键码,将最终保存的信息进行处理。取出第一个节点信息,首先判断是否带有多输入处理标签,如果是,则需要补充权重值。例如输入了4个键码,正常比较的结果是4个键码的权值累加的,如果进行多输入键码处理的,因为忽略了一个键码,所以只有3个键码的权值累加,为了保证同样条件下进行排序,所有多输入键码的信息,都要进行权值,补充的权值=(当前权值÷(键码长度-1))*0.9。再判断是否漏输入一个键码的处理,如果是权值需要乘以0.9,例如用户输入abc,那么abc的权值,应该高于axbc,abxc的情况,再判断当前节点是否为一个单词的尾节点,如果是,再判断该节点的最后一个字符已经比较过(比较过,说明键码长度和单词长度相等),如果比较过,直接将累加下来的字符组合,词库中的地址,累加下来的权重值保存到单词表中。接下来把当前节点的所有子节点取出来,将该节点下的所有单词保存到单词表中,包括单词在词库中的地址,累加下来的权重乘以0.9后再保存(这里对原有权值进行了缩小,是因为后面的单词实际是一种补全键码的模糊结果,所有要减少权值,例如输入abc,那么单词abc的权值,理所应当大于abcd,abcef等单词)。将比较出来的所有结果都进行同样的处理,生成一个单词表,单词表中包括单词字母,单词对应的权值,单词在词库中的地址。
子步骤2043,结合不带标签的字符组合的权重,和/或带有漏键处理标签的字符组合调整后的权重,和/或带有多输入处理标签的字符组合调整后的权重,确定对应各字符组合的候选项排序。
本发明实施例中,在所有的字符全部匹配完成后,全部的键码,将最终保存的信息的权重经过步骤214和步骤215的处理后,将最后的得到的所有字符组合进行排序。通过字符组合中的每个字符在词库中的地址,可以获取到该字符组合的词频,还有用户个人习惯,使用这个单词的频率。以及该单词是否和编辑器里光标前的单词有着二元关系。最终排序根据以下几个因素进行排序,当然在实际应用中,还可以根据其他因素改变字符组合作为输入候选项的排序,本发明实施例对此不加以限制。
优选的,步骤2043,包括:子步骤20431-子步骤20432;
子步骤20431,以不带标签的字符组合的权重,和/或带有漏键处理标签的字符组合调整后的权重,和/或带有多输入处理标签的字符组合调整后的权重,字符组合本身的词频,字符组合的使用词频,字符组合上次使用后距当前时刻的时间长度,字符组合与之前输入的词之间的多元关系,计算各字符组合的综合权重。
本发明实施例中,通过字符组合中的每个字符在词库中的地址,可以获取到该字符组合的词频,还有字符组合本身的词频,字符组合的使用词频,字符组合上次使用后距当前时刻的时间长度,字符组合与之前输入的词之间的多元关系,计算各字符组合的综合权重,当然在实际应用中,还可以根据其他因素改变字符组合作为输入候选项的排序,本发明实施例对此不加以限制。
子步骤20432,以各字符组合的综合权重,将各字符组合的候选项排序。
本发明实施例中,根据计算出的所有候选字符组合的总和权重,按照权重的大小将对应的字符组合进行排序,显示在输入法当前候选项展示栏中,供用户选择。
步骤205,根据所述各字符组合的候选项排序,确定推荐输入字符。
本发明实施例中,根据上述步骤的描述,以以一个实际的输入行为为例,假如用户现在要输入beautiful。那么检测到用户激活键盘的某个点,以图1D描述的,用户触发了按键b的左上角的区域。以触发点为圆心,以预设长度为半径画圆,被划入圆形区域内的虚拟按键都被认为是目标按键,本例子中,字母g、h、j、v、b和n都是目标按键。但是由于触发点的位置能够反映用户的真实的输入意图,因此,为了能够更加精准给用户提供推荐候选项,需要对g、h、j、v、b和n加上权值,它们的权值与各虚拟按键的中心点距离圆心的直线距离成正比。设g、h、j、v、b和n的权值分别为f(g)、f(h)、f(j)、f(v)、f(b)和f(n)。用户接着输入,触发的第二个触发点如图1E所示,由图看出本次目标按键包括w、e、r、s和d,根据上面的计算方法,w、e、r、s和d权值分别为f(w)、f(e)、f(r)、f(s)和f(d)。用户连续的两次触发,会生成若干个字符序列,第一次输入的目标按键是g、h、j、v、b和n,第二次的输入的目标按键是w、e、r、s和d,会组合出30组字符序列,包括gw、ge、gr、gs、gd、hw、he、hr、hs、hd、jw、je……。将这30个序列发给引擎,引擎进行计算。首先查看词典的第一层,第一层的26个子节点逐一与这30个序列的第一个字符进行对比,发现第一层的a节点与这些所有序列的第一个字符均不同,那么给第一层的a节点赋予权值0,第一层的b子节点与序列bw、be、br、bs、bd的第一个字符相同,那么将权值f(b)赋值给子节点b。依次对比第一层的所有子节点并赋予权值,直到子节点z。然后检查第二层所有子节点的字符,如果子节点的字符与这30个序列的第二个字符有相同的,则给这个子节点的字符赋予权值,如果不相同,则将权值设为0.然后计算每个序列的权值,即将每个序列的子节点的权值进行累加,比较权值大小,权值大的序列,更能命中用户的输入意图。在用户输入过程中,通过上述方法在获取了候选词(候选词一般有多个)之后,就可以通过获取到的候选词,预测用户的下一次输入.例如,如果用户输入了goo,那么假设引擎给出的候选词及排序如下:good,google,goodness,goodbye,Good,goodnight。用户接下来输入的字母很可能是d或者g,当候选词的概率大于某一阈值时,可以适当增大d和g字母的点击范围,或者可以加大d和g的权重。使得用户就更容易选中这两个字母,从而提升了输入的正确率。
优选的,步骤205具体包括:子步骤2051-子步骤2052;
子步骤2051,根据各字符组合的候选项排序,选取前M个候选项作为参考候选项,M为大于1的整数。
本发明实施例中,当获取各字符组合的候选项排序后,选取其中排序的前M个作为参考候选项,例如,例如,如果用户输入了goo,那么假设引擎给出的候选词及排序如下:good,google,goodness,goodbye,Good,goodnight,那么就选取good,google作为参考候选项。
子步骤2052,若所述初始键码串中字符数为n,则将所述M个参考候选项中第n+1个字符确定为推荐输入字符,n为大于1的整数。
本发明实施例中,如步骤217中描述的,当选取good,google作为参考候选项后,如果当前输入的初始键码串中国包含三个字符,那么就选取参考候选项的第四个字符作为推荐输入字符,例如用户输入的前三个字符为“goo”,那么根据good,google的第四个字符作为推荐字符,推荐输入字符则为d或者g。
步骤206,增加所述推荐输入字符对应按键的权重值;
和/或,
将所述推荐输入字符对应按键添加推荐显示动画,以增大所述键码的点击范围;所述推荐显示动画包括:按键增大、按键变色、按键突出显示其中至少一项。
本发明实施例中,当确定推荐输入字符后,则希望用户有更大的可能性选中该推荐字符,那么就根据推荐输入字符所在候选项的排序,将推荐输入字符的权重进行增大一预设值,例如,上述描述的推荐输入字符为d或者g,那么根据用户输入法中统计的good,google的输入概率,输入goo之后,d和g是下一个输入概率较大的字符。其中,d的概率比g的概率要高,d的概率是5/6,g的概率是1/6,那么可以将d和g的点击范围适当增大,对于D键,采用如下公式:
d=d*50/100+d*50/100*(1-5/6)(1)
其中,50/100是根据统计计算出的一个系数,5/6是D的概率,系数可以修改,通过用户输入效率选取最合适的值。
优选的,在本发明的另一实施例中,还包括:
步骤206A,计算所述触点坐标与所述触点坐标所在按键之间的第二距离。
本发明实施例中,按照动态热区获取按键的计算方法,如果我们把触摸点距离某个键的距离人为的减小,就相当于增大了这个按键的点击范围。所以首先要计算出触点坐标与所在按键之间的第二距离。
步骤206B,计算各所述推荐输入字符对应按键与所述触点坐标之间的第三距离。
本发明实施例中,继续计算出触点坐标与推荐字符所在按键之间的第三距离。
步骤206C,若所述第三距离大于第二距离,则将所述第三距离减少预设阈值,以增加推荐输入字符的权重值。
本发明实施例中,如果第三距离大于第二距离,那么就将第三距离减少预设值,其中预设值是根据每个推荐输入字符的权重值来决定的,如果权重值大的,当然,在实际应用中,距离的缩小可以根据很多因素来计算,字符的权重只是其中一个,本发明实施例对此不加以限制。
其中,将第三距离减少预设阈值后,第三距离可以仍然大于第二距离,也可以小于第二距离,如果小于第二距离,则推荐输入字符会首先被选中,例如,用户按在了F键上,用户触摸位置距离F键的中心点dF,但是我们把触摸点距离D键中心点的距离(dD)缩小,使dD<dF,那么D键就被按中。
步骤207,若所述初始键码串对应一所述候选项,则确定用户输入完毕,并进入确定推荐输入字符的步骤;所述推荐输入字符为功能字符。
本发明实施例中,功能键指键盘上的空格,回车,Emoji键,标点,一般来说,用户在输入一个单词过程中,是不会使用到功能键的,而当用户输入完一个单词后,用这些功能键的概率会增大,所以根据用户输入和候选词,可以判断用户输入的是不是一个单词,如果候选词包含用户输入,则认为用户输入的是一个单词,如果不包含,则认为不是一个单词,当用户输入的不是一个单词的时候,我们可以适当减小功能键的点击范围,即采用之前的算法,将触摸点到几个功能键的距离增大,减小用户误触的概率,而如果用户输入的是一个单词的时候,那么此时就将功能键确定为推荐输入字符,将功能键对应的键值增大权重,减小与触摸点之间的距离,或者加入动画效果,以提升用户的点击率。
在本发明实施例中,通过接收用户在输入法中输入的初始键码和/或键码串;针对初始键码串中各个字符,获取所述字符及其周围的字符的权重,在由词典获取字符组合时,根据输入法词典中的层级与键码串权重列表中的层级对应关系,结合各字符组合的权重,确定对应各字符组合的候选项排序,最后按照排序和用户输入的初始键码串中的字符确定推荐输入字符,并将推荐字符的点击范围扩大。解决了用户使用移动终端虚拟键盘进行文字输入,经常触摸到目标按键周围按键导致输入候选项错误率的问题,提高了用户输入键码的纠错能力以及输入法候选项的便捷性。
实施例三
参照图3,示出了本申请的一种输入法候选项推荐的系统实施例的结构框图,具体可以包括如下模块:初始键码串接收模块301,推荐输入字符确定模块302,权重增加模块303。
下面分别详细介绍各模块的功能以及各模块之间的交互关系。
参照图4,初始键码串接收模块301,用于接收用户在输入法中输入的初始键码和/或键码串;
推荐输入字符确定模块302,用于根据所述初始键码,确定推荐输入字符;优选的,推荐输入字符确定模块302,具体包括:键码串权重列表构建子模块3021,用于针对初始键码串中各个字符,获取所述字符及其周围的字符的权重,并按字符输入顺序构建相应层级的键码串权重列表;权重确定子模块3022,用于在由词典获取字符组合时,根据输入法词典中的层级与键码串权重列表中的层级对应关系,利用所述键码串权重列表确定所述字符组合的权重;候选项排序确定子模块3023,用于结合各字符组合的权重,确定对应各字符组合的候选项排序。
优选的,所述键码串权重列表构建子模块,包括:触点坐标记录子模块,用于记录所述用户在输入初始键码串时,在输入键盘界面上各触发点的触点坐标;触点坐标对应按键确定子模块,用于对于每个所述触点坐标,确定所述触点坐标所在按键,以及所述按键周围的按键;第一距离计算子模块,用于分别计算每个所述触点坐标与所述触点坐标周围按键之间的第一距离;键码串权重列表构建子模块,用于根据各按键的第一距离,确定所述触点坐标所在按键键值,以及所述按键周围的按键的键值的权重,并按照初始键码串中字符的输入顺序构建相应层级的键码串权重列表。
优选的,所述权重确定子模块,包括:
第一层权重确定子模块,用于将词典第一层字符节点中与初始键码串的第一个字符及周围字符匹配的字符作为根节点进行保存;
第N层权重确定子模块,用于对于基于各根节点的各个节点的字符,采用以下过程确定字符组合的权重,直到所有节点的字符遍历完毕:
父节点字符组合读取单元,用于对于第N层级中的各字符节点,N为大于1的整数,读取当前节点的父节点对应的各种类型的字符组合及相应的权重;所述父节点对应的各种类型的字符组合包括:不带标签的字符组合,和/或,带有漏键处理标签的字符组合,和/或,带有多输入处理标签的字符组合;
字符匹配单元,用于将词典中当前节点的字符与键码串权重列表中第N层级的各字符进行匹配;
匹配成功处理单元,用于如果词典中当前节点的字符与键码串权重列表中第N层级中一字符匹配,则将当前节点的字符分别与父节点对应的各种类型的字符组合合并为对应当前节点的各种类型的字符组合并更新权重,并保存对应当前节点的各种类型的字符组合及相应的权重;
匹配失败处理单元,用于如果当前节点的字符与键码串权重列表中第N层级中各字符不匹配,则针对不同类型的字符组合,按照相应类型的字符匹配规则进行处理:
优选的,所述匹配失败处理单元,包括:
不带标签的字符组合处理子单元,用于对于不带标签的字符组合,将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的不带标签的字符组合的字符组合,更新权重并存储;
上层匹配子单元,用于将当前节点的各子节点的字符与键码串权重列表中第N层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的带有漏键处理标签的字符组合的字符组合,更新权重并存储;如果未匹配上,则不保存;
下层匹配子单元,用于将当前节点的字符与键码串权重列表中第N+1层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的带有多输入处理标签的字符组合的字符组合,更新权重并存储;如果未匹配上,则不保存;
带标签的字符组合处理子单元,用于对于带有标签的字符组合,将当前节点的各子节点的字符与键码串权重列表中第N层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的带有标签的字符组合合并为对应当前节点的带有标签的字符组合,更新权重并存储;如果未匹配上,则不保存。
优选的,所述候选项排序确定子模块,包括:
权重调整子模块,用于当各字符组合存在带有漏键处理标签的字符组合时,将带有漏键处理标签的字符组合的权重按照第一预设规则进行调整;
多输入处理标签字符组合权重调整子模块,当各字符组合存在带有多输入处理标签的字符组合时,将带有多输入处理标签的字符组合的权重按照第二预设规则进行调整;
字符组合排序子模块,用于结合不带标签的字符组合的权重,和/或带有漏键处理标签的字符组合调整后的权重,和/或带有多输入处理标签的字符组合调整后的权重,确定对应各字符组合的候选项排序。
优选的,所述字符组合排序子模块,包括:
综合权重计算单元,用于以不带标签的字符组合的权重,和/或带有漏键处理标签的字符组合调整后的权重,和/或带有多输入处理标签的字符组合调整后的权重,字符组合本身的词频,字符组合的使用词频,字符组合上次使用后距当前时刻的时间长度,字符组合与之前输入的词之间的多元关系,计算各字符组合的综合权重;
候选项排序单元,用于以各字符组合的综合权重,将各字符组合的候选项排序。
优选的,所述推荐输入字符确定子模块,包括:
参考候选项选取子模块,用于根据各字符组合的候选项排序,选取前M个候选项作为参考候选项,M为大于1的整数;
推荐输入字符确定子模块,用于若所述初始键码串中字符数为n,则将所述M个参考候选项中第n+1个字符确定为推荐输入字符,n为大于1的整数。
权重增加模块303,用于增加所述推荐输入字符的权重值。
优选的,所述权重增加模块303,具体包括:
权重值增加子模块3031,用于增加所述推荐输入字符对应按键的权重值;
和/或,
推荐显示动画添加子模块3032,用于将所述推荐输入字符对应按键添加推荐显示动画,以增大所述键码的点击范围;所述推荐显示动画包括:按键增大、按键变色、按键突出显示其中至少一项。
优选的,在本发明的另一实施例中,所述权重增加模块303,具体包括:
第二距离计算子模块3033,用于计算所述触点坐标与所述触点坐标所在按键之间的第二距离;
第三距离计算子模块3034,用于计算各所述推荐输入字符对应按键与所述触点坐标之间的第三距离;
预设阈值调整子模块3035,用于若所述第三距离大于第二距离,则将所述第三距离减少预设阈值,以增加推荐输入字符的权重值。
优选的,还包括:
功能字符推荐子模块3036,用于若所述初始键码串对应一所述候选项,则确定用户输入完毕,并进入确定推荐输入字符的步骤;所述推荐输入字符为功能字符。
在本发明实施例中,通过接收用户在输入法中输入的初始键码和/或键码串;针对初始键码串中各个字符,获取所述字符及其周围的字符的权重,在由词典获取字符组合时,根据输入法词典中的层级与键码串权重列表中的层级对应关系,结合各字符组合的权重,确定对应各字符组合的候选项排序,最后按照排序和用户输入的初始键码串中的字符确定推荐输入字符,并将推荐字符的点击范围扩大。解决了用户使用移动终端虚拟键盘进行文字输入,经常触摸到目标按键周围按键导致输入候选项错误率的问题,提高了用户输入键码的纠错能力以及输入法候选项的便捷性。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
在一个典型的配置中,所述计算机设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非持续性的电脑可读媒体(transitory media),如调制的数据信号和载波。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种输入法候选项推荐的方法和系统,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (22)

1.一种输入法候选项推荐的方法,其特征在于,包括:
接收用户在输入法中输入的初始键码和/或键码串;
根据所述初始键码,确定推荐输入字符;
增加所述推荐输入字符的权重值。
2.根据权利要求1所述的方法,其特征在于,所述根据所述初始键码,确定推荐输入字符的步骤,包括:
针对初始键码串中各个字符,获取所述字符及其周围的字符的权重,并按字符输入顺序构建相应层级的键码串权重列表;
在由词典获取字符组合时,根据输入法词典中的层级与键码串权重列表中的层级对应关系,利用所述键码串权重列表确定所述字符组合的权重;
结合各字符组合的权重,确定对应各字符组合的候选项排序;
根据所述各字符组合的候选项排序,确定推荐输入字符。
3.根据权利要求2所述的方法,其特征在于,所述针对初始键码串中各个字符,获取所述字符及其周围的字符的权重,并按字符输入顺序构建相应层级的键码串权重列表的步骤,包括:
记录所述用户在输入初始键码串时,在输入键盘界面上各触发点的触点坐标;
对于每个所述触点坐标,确定所述触点坐标所在按键,以及所述按键周围的按键;
分别计算每个所述触点坐标与所述触点坐标周围按键之间的第一距离;
根据各按键的第一距离,确定所述触点坐标所在按键键值,以及所述按键周围的按键的键值的权重,并按照初始键码串中字符的输入顺序构建相应层级的键码串权重列表。
4.根据权利要求2所述的方法,其特征在于,所述在由词典获取字符组合时,根据输入法词典中的层级与键码串权重列表中的层级对应关系,利用所述键码串权重列表确定所述字符组合的权重的步骤,包括:
将词典第一层字符节点中与初始键码串的第一个字符及周围字符匹配的字符作为根节点进行保存;
对于基于各根节点的各个节点的字符,采用以下过程确定字符组合的权重,直到所有节点的字符遍历完毕:
对于第N层级中的各字符节点,N为大于1的整数,读取当前节点的父节点对应的各种类型的字符组合及相应的权重;所述父节点对应的各种类型的字符组合包括:不带标签的字符组合,和/或,带有漏键处理标签的字符组合,和/或,带有多输入处理标签的字符组合;
将词典中当前节点的字符与键码串权重列表中第N层级的各字符进行匹配;
如果词典中当前节点的字符与键码串权重列表中第N层级中一字符匹配,则将当前节点的字符分别与父节点对应的各种类型的字符组合合并为对应当前节点的各种类型的字符组合并更新权重,并保存对应当前节点的各种类型的字符组合及相应的权重;
如果当前节点的字符与键码串权重列表中第N层级中各字符不匹配,则针对不同类型的字符组合,按照相应类型的字符匹配规则进行处理。
5.根据权利要求4所述的方法,其特征在于,所述针对不同类型的字符组合,按照相应类型的字符匹配规则进行处理的步骤,包括:
对于不带标签的字符组合,将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的不带标签的字符组合的字符组合,更新权重并存储;
将当前节点的各子节点的字符与键码串权重列表中第N层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的带有漏键处理标签的字符组合的字符组合,更新权重并存储;如果未匹配上,则不保存;
将当前节点的字符与键码串权重列表中第N+1层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的带有多输入处理标签的字符组合的字符组合,更新权重并存储;如果未匹配上,则不保存;
对于带有标签的字符组合,将当前节点的各子节点的字符与键码串权重列表中第N层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的带有标签的字符组合合并为对应当前节点的带有标签的字符组合,更新权重并存储;如果未匹配上,则不保存。
6.根据权利要求2所述的方法,其特征在于,所述结合各字符组合的权重,确定对应各字符组合的候选项排序的步骤,包括:
当各字符组合存在带有漏键处理标签的字符组合时,将带有漏键处理标签的字符组合的权重按照第一预设规则进行调整;
当各字符组合存在带有多输入处理标签的字符组合时,将带有多输入处理标签的字符组合的权重按照第二预设规则进行调整;
结合不带标签的字符组合的权重,和/或带有漏键处理标签的字符组合调整后的权重,和/或带有多输入处理标签的字符组合调整后的权重,确定对应各字符组合的候选项排序。
7.根据权利要求6所述的方法,其特征在于,所述结合不带标签的字符组合的权重,和/或带有漏键处理标签的字符组合调整后的权重,和/或带有多输入处理标签的字符组合调整后的权重,确定对应各字符组合的候选项排序的步骤,包括:
以不带标签的字符组合的权重,和/或带有漏键处理标签的字符组合调整后的权重,和/或带有多输入处理标签的字符组合调整后的权重,字符组合本身的词频,字符组合的使用词频,字符组合上次使用后距当前时刻的时间长度,字符组合与之前输入的词之间的多元关系,计算各字符组合的综合权重;
以各字符组合的综合权重,将各字符组合的候选项排序。
8.根据权利要求2所述的方法,其特征在于,所述根据所述各字符组合的候选项排序,确定推荐输入字符的步骤,包括:
根据各字符组合的候选项排序,选取前M个候选项作为参考候选项,M 为大于1的整数;
若所述初始键码串中字符数为n,则将所述M个参考候选项中第n+1个字符确定为推荐输入字符,n为大于1的整数。
9.根据权利要求1所述的方法,其特征在于,所述增加所述推荐输入字符的权重值的步骤,包括:
增加所述推荐输入字符对应按键的权重值;
和/或,
将所述推荐输入字符对应按键添加推荐显示动画,以增大所述键码的点击范围;所述推荐显示动画包括:按键增大、按键变色、按键突出显示其中至少一项。
10.根据权利要求1所述的方法,其特征在于,所述增加所述推荐输入字符的权重值的步骤,包括:
计算所述触点坐标与所述触点坐标所在按键之间的第二距离;
计算各所述推荐输入字符对应按键与所述触点坐标之间的第三距离;
若所述第三距离大于第二距离,则将所述第三距离减少预设阈值,以增加推荐输入字符的权重值。
11.根据权利要求2所述的方法,其特征在于,在所述根据所述各字符组合的候选项排序,确定推荐输入字符的步骤之后,还包括:
若所述初始键码串对应一所述候选项,则确定用户输入完毕,并进入确定推荐输入字符的步骤;所述推荐输入字符为功能字符。
12.一种输入法候选项推荐的系统,其特征在于,包括:
初始键码串接收模块,用于接收用户在输入法中输入的初始键码和/或键码串;
推荐输入字符确定模块,用于根据所述初始键码,确定推荐输入字符;
权重增加模块,用于增加所述推荐输入字符的权重值。
13.根据权利要求11所述的系统,其特征在于,所述推荐输入字符确定模块,包括:
键码串权重列表构建子模块,用于针对初始键码串中各个字符,获取所述字符及其周围的字符的权重,并按字符输入顺序构建相应层级的键码串权重列表;
权重确定子模块,用于在由词典获取字符组合时,根据输入法词典中的层级与键码串权重列表中的层级对应关系,利用所述键码串权重列表确定所述字符组合的权重;
候选项排序确定子模块,用于结合各字符组合的权重,确定对应各字符组合的候选项排序。
14.根据权利要求13所述的系统,其特征在于,所述键码串权重列表构建子模块,包括:
触点坐标记录子模块,用于记录所述用户在输入初始键码串时,在输入键盘界面上各触发点的触点坐标;
触点坐标对应按键确定子模块,用于对于每个所述触点坐标,确定所述触点坐标所在按键,以及所述按键周围的按键;
第一距离计算子模块,用于分别计算每个所述触点坐标与所述触点坐标周围按键之间的第一距离;
键码串权重列表构建子模块,用于根据各按键的第一距离,确定所述触点坐标所在按键键值,以及所述按键周围的按键的键值的权重,并按照初始键码串中字符的输入顺序构建相应层级的键码串权重列表。
15.根据权利要求13所述的系统,其特征在于,所述权重确定子模块,包括:
第一层权重确定子模块,用于将词典第一层字符节点中与初始键码串的第一个字符及周围字符匹配的字符作为根节点进行保存;
第N层权重确定子模块,用于对于基于各根节点的各个节点的字符,采用以下过程确定字符组合的权重,直到所有节点的字符遍历完毕:
父节点字符组合读取单元,用于对于第N层级中的各字符节点,N为大于1的整数,读取当前节点的父节点对应的各种类型的字符组合及相应的权重;所述父节点对应的各种类型的字符组合包括:不带标签的字符组合,和/或,带有漏键处理标签的字符组合,和/或,带有多输入处理标签的字符组合;
字符匹配单元,用于将词典中当前节点的字符与键码串权重列表中第N层级的各字符进行匹配;
匹配成功处理单元,用于如果词典中当前节点的字符与键码串权重列表中第N层级中一字符匹配,则将当前节点的字符分别与父节点对应的各种类型的字符组合合并为对应当前节点的各种类型的字符组合并更新权重,并保存对应当前节点的各种类型的字符组合及相应的权重;
匹配失败处理单元,用于如果当前节点的字符与键码串权重列表中第N层级中各字符不匹配,则针对不同类型的字符组合,按照相应类型的字符匹配规则进行处理。
16.根据权利要求15所述的系统,其特征在于,所述匹配失败处理单元,包括:
不带标签的字符组合处理子单元,用于对于不带标签的字符组合,将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的不带标签的字符组合的字符组合,更新权重并存储;
上层匹配子单元,用于将当前节点的各子节点的字符与键码串权重列表中第N层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的带有漏键处理标签的字符组合的字符组合,更新权重并存储;如果未匹配上,则不保存;
下层匹配子单元,用于将当前节点的字符与键码串权重列表中第N+1层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的不带标签的字符组合合并为对应当前节点的带有多输入处理标签的字符组合的字符组合,更新权重并存储;如果未匹配上,则不保存;
带标签的字符组合处理子单元,用于对于带有标签的字符组合,将当前节点的各子节点的字符与键码串权重列表中第N层的字符进行匹配;如果匹配上,则将当前节点的字符与父节点的带有标签的字符组合合并为对应当前节点的带有标签的字符组合,更新权重并存储;如果未匹配上,则不保存。
17.根据权利要求13所述的系统,其特征在于,所述候选项排序确定子模块,包括:
权重调整子模块,用于当各字符组合存在带有漏键处理标签的字符组合时,将带有漏键处理标签的字符组合的权重按照第一预设规则进行调整;
多输入处理标签字符组合权重调整子模块,当各字符组合存在带有多输入处理标签的字符组合时,将带有多输入处理标签的字符组合的权重按照第二预设规则进行调整;
字符组合排序子模块,用于结合不带标签的字符组合的权重,和/或带有漏键处理标签的字符组合调整后的权重,和/或带有多输入处理标签的字符组合调整后的权重,确定对应各字符组合的候选项排序。
18.根据权利要求17所述的系统,其特征在于,所述字符组合排序子模块,包括:
综合权重计算单元,用于以不带标签的字符组合的权重,和/或带有漏键处理标签的字符组合调整后的权重,和/或带有多输入处理标签的字符组合调整后的权重,字符组合本身的词频,字符组合的使用词频,字符组合上次使用后距当前时刻的时间长度,字符组合与之前输入的词之间的多元关系,计算各字符组合的综合权重;
候选项排序单元,用于以各字符组合的综合权重,将各字符组合的候选项排序。
19.根据权利要求13所述的系统,其特征在于,所述推荐输入字符确定子模块,包括:
参考候选项选取子模块,用于根据各字符组合的候选项排序,选取前M个候选项作为参考候选项,M为大于1的整数;
推荐输入字符确定子模块,用于若所述初始键码串中字符数为n,则将所述M个参考候选项中第n+1个字符确定为推荐输入字符,n为大于1的整数。
20.根据权利要求12所述的系统,其特征在于,所述权重增加模块,包括:
权重值增加子模块,用于增加所述推荐输入字符对应按键的权重值;
和/或,
推荐显示动画添加子模块,用于将所述推荐输入字符对应按键添加推荐显示动画,以增大所述键码的点击范围;所述推荐显示动画包括:按键增大、按键变色、按键突出显示其中至少一项。
21.根据权利要求12所述的系统,其特征在于,所述权重增加模块,包括:
第二距离计算子模块,用于计算所述触点坐标与所述触点坐标所在按键之间的第二距离;
第三距离计算子模块,用于计算各所述推荐输入字符对应按键与所述触点坐标之间的第三距离;
预设阈值调整子模块,用于若所述第三距离大于第二距离,则将所述第三距离减少预设阈值,以增加推荐输入字符的权重值。
22.根据权利要求13所述的系统,其特征在于,还包括:
功能字符推荐子模块,用于若所述初始键码串对应一所述候选项,则确定用户输入完毕,并进入确定推荐输入字符的步骤;所述推荐输入字符为功能字符。
CN201710495862.XA 2016-09-07 2017-06-26 一种输入法候选项推荐的方法和系统 Active CN107491182B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/891,651 US10928925B2 (en) 2016-09-07 2018-02-08 Method and system for recommending candidates in input method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610809488.1A CN106468960A (zh) 2016-09-07 2016-09-07 一种输入法候选项排序的方法和系统
CN2016108094881 2016-09-07

Publications (2)

Publication Number Publication Date
CN107491182A true CN107491182A (zh) 2017-12-19
CN107491182B CN107491182B (zh) 2023-04-07

Family

ID=58230514

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201610809488.1A Pending CN106468960A (zh) 2016-09-07 2016-09-07 一种输入法候选项排序的方法和系统
CN201710495862.XA Active CN107491182B (zh) 2016-09-07 2017-06-26 一种输入法候选项推荐的方法和系统

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201610809488.1A Pending CN106468960A (zh) 2016-09-07 2016-09-07 一种输入法候选项排序的方法和系统

Country Status (2)

Country Link
US (2) US11573646B2 (zh)
CN (2) CN106468960A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108829267A (zh) * 2018-05-24 2018-11-16 努比亚技术有限公司 一种词汇推荐方法、设备及计算机可存储介质
CN111090341A (zh) * 2019-12-24 2020-05-01 科大讯飞股份有限公司 输入法候选结果展示方法、相关设备及可读存储介质

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106468960A (zh) * 2016-09-07 2017-03-01 北京新美互通科技有限公司 一种输入法候选项排序的方法和系统
CN108073303B (zh) * 2016-11-17 2021-11-30 北京搜狗科技发展有限公司 一种输入方法、装置及电子设备
CN107145242B (zh) * 2017-03-24 2020-09-29 北京百度网讯科技有限公司 纠错词展示方法、装置、设备及存储介质
CN109144286B (zh) * 2017-06-27 2022-08-02 北京搜狗科技发展有限公司 一种输入方法及装置
CN109271037B (zh) * 2017-07-13 2022-09-09 北京搜狗科技发展有限公司 一种纠错词库的建立方法和装置
CN109388251B (zh) * 2017-08-08 2022-07-19 北京搜狗科技发展有限公司 一种输入方法及装置
CN109426354B (zh) * 2017-08-25 2022-07-12 北京搜狗科技发展有限公司 一种输入方法、装置和用于输入的装置
CN109426357B (zh) * 2017-09-01 2023-05-12 百度在线网络技术(北京)有限公司 信息输入方法和装置
CN108009851A (zh) * 2017-11-30 2018-05-08 广州云移信息科技有限公司 一种营销广告方案匹配方法及系统
CN108304127A (zh) * 2017-12-22 2018-07-20 阿里巴巴集团控股有限公司 一种信息输入的方法及装置
CN109656384B (zh) * 2018-12-24 2023-07-18 抖音视界有限公司 字符串输入方法和装置
CN116088692B (zh) * 2021-11-03 2024-04-19 百度国际科技(深圳)有限公司 用于呈现候选字符串和训练判别式模型的方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103135786A (zh) * 2008-04-18 2013-06-05 上海触乐信息科技有限公司 用于向电子设备输入文本的方法
CN103699233A (zh) * 2013-12-20 2014-04-02 百度在线网络技术(北京)有限公司 字符串输入方法和输入装置
CN104102720A (zh) * 2014-07-18 2014-10-15 上海触乐信息科技有限公司 高效输入的预测方法和装置
US20150248386A1 (en) * 2012-09-12 2015-09-03 Tencent Technology (Shenzhen) Company Limited Method, device, and terminal equipment for enabling intelligent association in input method

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW262547B (zh) * 1992-11-30 1995-11-11 Canon Kk
US6259436B1 (en) * 1998-12-22 2001-07-10 Ericsson Inc. Apparatus and method for determining selection of touchable items on a computer touchscreen by an imprecise touch
US7286115B2 (en) * 2000-05-26 2007-10-23 Tegic Communications, Inc. Directional input system with automatic correction
US7117437B2 (en) * 2002-12-16 2006-10-03 Palo Alto Research Center Incorporated Systems and methods for displaying interactive topic-based text summaries
US7098896B2 (en) * 2003-01-16 2006-08-29 Forword Input Inc. System and method for continuous stroke word-based text input
US7382358B2 (en) * 2003-01-16 2008-06-03 Forword Input, Inc. System and method for continuous stroke word-based text input
US7387457B2 (en) * 2004-08-13 2008-06-17 5 Examples, Inc. One-row keyboard and approximate typing
US20090193334A1 (en) * 2005-05-18 2009-07-30 Exb Asset Management Gmbh Predictive text input system and method involving two concurrent ranking means
US8117540B2 (en) * 2005-05-18 2012-02-14 Neuer Wall Treuhand Gmbh Method and device incorporating improved text input mechanism
US7649478B1 (en) * 2005-11-03 2010-01-19 Hyoungsoo Yoon Data entry using sequential keystrokes
US7793228B2 (en) * 2006-10-13 2010-09-07 Apple Inc. Method, system, and graphical user interface for text entry with partial word display
US20080154576A1 (en) * 2006-12-21 2008-06-26 Jianchao Wu Processing of reduced-set user input text with selected one of multiple vocabularies and resolution modalities
US7957955B2 (en) * 2007-01-05 2011-06-07 Apple Inc. Method and system for providing word recommendations for text input
US7895518B2 (en) * 2007-04-27 2011-02-22 Shapewriter Inc. System and method for preview and selection of words
US10133479B2 (en) * 2007-07-07 2018-11-20 David Hirshberg System and method for text entry
US8570279B2 (en) * 2008-06-27 2013-10-29 Apple Inc. Touch screen device, method, and graphical user interface for inserting a character from an alternate keyboard
US8589149B2 (en) * 2008-08-05 2013-11-19 Nuance Communications, Inc. Probability-based approach to recognition of user-entered data
US8669941B2 (en) * 2009-01-05 2014-03-11 Nuance Communications, Inc. Method and apparatus for text entry
US10191654B2 (en) * 2009-03-30 2019-01-29 Touchtype Limited System and method for inputting text into electronic devices
GB0905457D0 (en) * 2009-03-30 2009-05-13 Touchtype Ltd System and method for inputting text into electronic devices
US9424246B2 (en) * 2009-03-30 2016-08-23 Touchtype Ltd. System and method for inputting text into electronic devices
US9189472B2 (en) * 2009-03-30 2015-11-17 Touchtype Limited System and method for inputting text into small screen devices
US20100315266A1 (en) * 2009-06-15 2010-12-16 Microsoft Corporation Predictive interfaces with usability constraints
US8516367B2 (en) * 2009-09-29 2013-08-20 Verizon Patent And Licensing Inc. Proximity weighted predictive key entry
US8812972B2 (en) * 2009-09-30 2014-08-19 At&T Intellectual Property I, L.P. Dynamic generation of soft keyboards for mobile devices
US8179370B1 (en) * 2010-02-09 2012-05-15 Google Inc. Proximity based keystroke resolution
US8782556B2 (en) * 2010-02-12 2014-07-15 Microsoft Corporation User-centric soft keyboard predictive technologies
EP2545426A4 (en) * 2010-03-12 2017-05-17 Nuance Communications, Inc. Multimodal text input system, such as for use with touch screens on mobile phones
US10037319B2 (en) * 2010-09-29 2018-07-31 Touchtype Limited User input prediction
JP2012094008A (ja) * 2010-10-27 2012-05-17 Kyocera Corp 携帯電子機器
US8788508B2 (en) * 2011-03-28 2014-07-22 Microth, Inc. Object access system based upon hierarchical extraction tree and related methods
US9244612B1 (en) * 2012-02-16 2016-01-26 Google Inc. Key selection of a graphical keyboard based on user input posture
WO2013130682A1 (en) * 2012-02-27 2013-09-06 5 Examples, Inc. Date entry system controllers for receiving user input line traces relative to user interfaces to determine ordered actions, and related systems and methods
US8484573B1 (en) * 2012-05-23 2013-07-09 Google Inc. Predictive virtual keyboard
US9081482B1 (en) * 2012-09-18 2015-07-14 Google Inc. Text input suggestion ranking
IN2013CH00469A (zh) * 2013-01-21 2015-07-31 Keypoint Technologies India Pvt Ltd
CN103970278B (zh) * 2013-01-25 2017-02-08 胡竞韬 一种圆形触感键盘的输入方法及装置
KR102182672B1 (ko) * 2014-01-11 2020-11-24 (주)네온베리 다국어 통합 자음 패턴 검색 방법 및 그 장치
CN105988634A (zh) * 2015-03-06 2016-10-05 纬创资通(中山)有限公司 触控装置及判断虚拟键盘按键的方法
CN106468960A (zh) * 2016-09-07 2017-03-01 北京新美互通科技有限公司 一种输入法候选项排序的方法和系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103135786A (zh) * 2008-04-18 2013-06-05 上海触乐信息科技有限公司 用于向电子设备输入文本的方法
US20150248386A1 (en) * 2012-09-12 2015-09-03 Tencent Technology (Shenzhen) Company Limited Method, device, and terminal equipment for enabling intelligent association in input method
CN103699233A (zh) * 2013-12-20 2014-04-02 百度在线网络技术(北京)有限公司 字符串输入方法和输入装置
CN104102720A (zh) * 2014-07-18 2014-10-15 上海触乐信息科技有限公司 高效输入的预测方法和装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108829267A (zh) * 2018-05-24 2018-11-16 努比亚技术有限公司 一种词汇推荐方法、设备及计算机可存储介质
CN111090341A (zh) * 2019-12-24 2020-05-01 科大讯飞股份有限公司 输入法候选结果展示方法、相关设备及可读存储介质

Also Published As

Publication number Publication date
CN106468960A (zh) 2017-03-01
US20180067919A1 (en) 2018-03-08
CN107491182B (zh) 2023-04-07
US10928925B2 (en) 2021-02-23
US11573646B2 (en) 2023-02-07
US20180373346A1 (en) 2018-12-27

Similar Documents

Publication Publication Date Title
CN107491182A (zh) 一种输入法候选项推荐的方法和系统
CN108920720B (zh) 基于深度哈希和gpu加速的大规模图像检索方法
US8117204B2 (en) Video browser for navigating linear video on small display devices using a similarity-based navigation hierarchy of temporally ordered video keyframes with short navigation paths
CN105009064B (zh) 使用语言和空间模型的触摸键盘
CN107704102B (zh) 一种文本输入方法及装置
CN110516160A (zh) 基于知识图谱的用户建模方法、序列推荐方法
US10754887B1 (en) Systems and methods for multimedia image clustering
CN109086437A (zh) 一种融合Faster-RCNN和Wasserstein自编码器的图像检索方法
CN112395506A (zh) 一种资讯推荐方法、装置、电子设备和存储介质
CN110929745A (zh) 基于神经网络的分类方法及其分类装置
CN106303740A (zh) 智能电视的桌面导航系统及该系统的实现方法
CN106570141A (zh) 近似重复图像检测方法
US11550751B2 (en) Sequence expander for data entry/information retrieval
CN110727862B (zh) 一种商品搜索的查询策略的生成方法及装置
US20150199567A1 (en) Document classification assisting apparatus, method and program
CN107545276A (zh) 联合低秩表示和稀疏回归的多视角学习方法
CN102662487B (zh) 一种显示键盘、输入处理方法及装置
WO2020228536A1 (zh) 图标生成方法及装置、获取图标的方法、电子设备以及存储介质
CN114328798B (zh) 搜索文本的处理方法、装置、设备、存储介质和程序产品
Han et al. Tree-based visualization and optimization for image collection
CN114706987A (zh) 文本类目预测方法、装置、设备、存储介质和程序产品
CN107329964A (zh) 一种文本处理方法及装置
CN104572904B (zh) 一种标签关联程度的确定方法及装置
CN100580626C (zh) 一种快速查找计算机程序功能入口的装置和方法
JP7149976B2 (ja) 誤り訂正方法及び装置、コンピュータ読み取り可能な媒体

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant