CN108008832A - 一种输入方法和装置、一种用于输入的装置 - Google Patents

一种输入方法和装置、一种用于输入的装置 Download PDF

Info

Publication number
CN108008832A
CN108008832A CN201610932804.4A CN201610932804A CN108008832A CN 108008832 A CN108008832 A CN 108008832A CN 201610932804 A CN201610932804 A CN 201610932804A CN 108008832 A CN108008832 A CN 108008832A
Authority
CN
China
Prior art keywords
word
input
input string
string
phrase
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.)
Pending
Application number
CN201610932804.4A
Other languages
English (en)
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 Sogou Technology Development Co Ltd
Original Assignee
Beijing Sogou Technology Development Co Ltd
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 Sogou Technology Development Co Ltd filed Critical Beijing Sogou Technology Development Co Ltd
Priority to CN201610932804.4A priority Critical patent/CN108008832A/zh
Priority to PCT/CN2016/107989 priority patent/WO2018076450A1/zh
Priority to US16/340,252 priority patent/US11640503B2/en
Publication of CN108008832A publication Critical patent/CN108008832A/zh
Pending legal-status Critical Current

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
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs
    • 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
    • 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/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03547Touch pads, in which fingers can move on a 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/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/44Statistical methods, e.g. probability models

Abstract

本发明实施例提供了一种输入方法和装置、一种用于输入的装置,其中的方法具体包括:接收具有快速输入意图的输入串;所述快速输入意图用于通过与单词或者词组的简写信息相应的所述输入串,输入单词或者词组;依据语言模型获取所述输入串对应的单词候选和/或词组候选;所述单词候选、词组候选分别为所述输入串对应的完整单词、完整词组;向用户展现所述单词候选和/或词组候选。本发明实施例不仅可以提高快速输入的灵活性和适用范围,而且可以提高单词候选和/或词组候选的质量,进而提高输入效率。

Description

一种输入方法和装置、一种用于输入的装置
技术领域
本发明涉及信息输入技术领域,特别是涉及一种输入方法和装置、一种用于输入的装置。
背景技术
输入法是指为了将各种文字输入例如智能手机、台式计算机的智能终端而采用的编码方法。目前,按键率是衡量输入法性能的一个重要指标;该按键率也即平均输入N个字符所需的按键次数,通常,该按键次数越小,则按键率和对应的输入效率越高。为了提高输入效率,对于英文、意大利文、葡萄牙文、马来西亚文等语言的用户而言,可以通过输入法程序与智能终端进行交互。
在输入英文单词时,一般的输入法程序,大多采用前缀匹配的策略来实现英文单词的快速输入,以使用户通过尽可能少的按键次数来实现英文单词的输入。其中,可以预先在字典中收录英文单词,在接收到用户的输入串后,将该输入串与字典中英文单词的前面部分进行匹配,并将匹配成功的英文单词作为候选。例如,用户欲要输入“before”,当输入“be”这个输入串时,输入法程序会查找字典中以“be”开头的英文单词,以得到“before”、“befall”、“beguile”、“beneath”等候选,使得用户可以不用完整输入,通过候选就可以上屏欲要输入的英文单词。
发明人在实施本发明的过程中发现,上述前缀匹配的策略需要用户准确记忆英文单词的前面部分,这不仅增加了用户的记忆难度;并且,当用户无法准备记忆英文单词的前面部分将无法实现英文单词的快速输入,此种情况下,用户需要通过查阅资料等方式获得英文单词的前面部分或者完整字符串,因此影响了英文单词的输入效率。
并且,如果输入串属于多个英文单词的前缀,输入法程序会返回较多候选,用户需要经过多次翻页等操作进行查找。而多次翻页等操作使得用户的操作和时间成本很大,导致输入效率很低。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的输入方法、输入装置及用于输入的装置,本发明实施例不仅可以提高快速输入的灵活性和适用范围,而且可以提高单词候选和/或词组候选的质量,进而提高输入效率。
为了解决上述问题,本发明公开了一种输入方法,包括:
接收具有快速输入意图的输入串;所述快速输入意图用于通过与单词或者词组的简写信息相应的所述输入串,输入单词或者词组;
依据语言模型获取所述输入串对应的单词候选和/或词组候选;所述单词候选、词组候选分别为所述输入串对应的完整单词、完整词组;
向用户展现所述单词候选和/或词组候选。
可选地,所述依据语言模型获取所述输入串对应的单词候选的步骤,包括:
确定符合所述输入串对应快速输入意图的完整单词;
将所述完整单词和所述输入串对应的上下文数据输入至语言模型,由所述语言模型输出所述完整单词和所述上下文数据对应组合的概率;
依据所述组合的概率,从所述完整单词中选择所述输入串对应的单词候选。
可选地,所述确定符合所述输入串对应快速输入意图的完整单词的步骤,包括:
将以所述输入串或者所述输入串对应的纠错串为部分的完整单词,作为符合所述输入串对应快速输入意图的完整单词;或者
按照发音,将所述输入串中字符映射为对应的字母字符,以得到所述输入串对应快速输入意图的完整单词。
可选地,所述将以所述输入串或者所述输入串对应的纠错串为部分的完整单词,作为符合所述输入串对应快速输入意图的完整单词的步骤,包括:
按照预置简写规则,在词库中查找以所述输入串或者所述输入串对应的纠错串为部分的完整单词,以得到所述输入串对应快速输入意图的完整单词;或者
依据所述输入串及其对应的上下文数据,在所述语言模型对应数据中查找以所述输入串或者所述输入串对应的纠错串为部分的完整单词,以得到所述输入串对应快速输入意图的完整单词;或者
依据所述输入串包括的片段和用于标记空缺的预置字符串,在词库中查找以所述片段为部分的完整单词,以得到所述输入串对应快速输入意图的完整单词;其中,所述片段为所述输入串中除所述预置字符串之外的字符。
可选地,所述上下文数据与所述输入串相邻或者不相邻。
可选地,所述依据语言模型获取所述输入串对应的词组候选的步骤,包括:
对所述输入串进行切分,以得到对应的多个子串;
确定符合各子串对应快速输入意图的词汇条目;
将所述多个子串对应的词汇条目组合输入至语言模型,由所述语言模型输出所述词汇条目组合的概率;所述词汇条目组合依据所有子串的词汇条目组合得到;
依据所述词汇条目组合的概率,从所述词汇条目组合中选择所述输入串对应的词组候选。
可选地,所述确定符合各子串对应快速输入意图的词汇条目的步骤,包括:
按照预置映射规则,获取各子串对应的词汇条目。
可选地,所述预置映射规则包括:发音映射规则,所述按照预置映射规则,获取各子串对应的词汇条目的步骤,包括:
按照所述发音映射规则,将所述子串中字符映射为对应的字母字符,以得到所述子串对应的词汇条目。
另一方面,本发明公开了一种输入装置,包括:
输入串接收模块,用于接收具有快速输入意图的输入串;所述快速输入意图用于通过与单词或者词组的简写信息相应的所述输入串,输入单词或者词组;
候选获取模块,用于依据语言模型获取所述输入串对应的单词候选和/或词组候选;所述单词候选、词组候选分别为所述输入串对应的完整单词、完整词组;以及
候选展现模块,用于向用户展现所述单词候选和/或词组候选。
可选地,所述候选获取模块包括:
第一确定子模块,用于确定符合所述输入串对应快速输入意图的完整单词;
第一模型处理子模块,用于将所述完整单词和所述输入串对应的上下文数据输入至语言模型,由所述语言模型输出所述完整单词和所述上下文数据对应组合的概率;
第一选择子模块,用于依据所述组合的概率,从所述完整单词中选择所述输入串对应的单词候选。
可选地,所述第一确定子模块包括:
第一确定单元,用于将以所述输入串或者所述输入串对应的纠错串为部分的完整单词,作为符合所述输入串对应快速输入意图的完整单词;或者
第二确定单元,用于按照发音,将所述输入串中字符映射为对应的字母字符,以得到所述输入串对应快速输入意图的完整单词。
可选地,所述第一确定单元包括:
第一查找子单元,用于按照预置简写规则,在词库中查找以所述输入串或者所述输入串对应的纠错串为部分的完整单词,以得到所述输入串对应快速输入意图的完整单词;或者
第二查找子单元,用于依据所述输入串及其对应的上下文数据,在所述语言模型对应数据中查找以所述输入串或者所述输入串对应的纠错串为部分的完整单词,以得到所述输入串对应快速输入意图的完整单词。
可选地,所述上下文数据与所述输入串相邻或者不相邻。
可选地,所述候选获取模块包括:
切分子模块,用于对所述输入串进行切分,以得到对应的多个子串;
第二确定子模块,用于确定符合各子串对应快速输入意图的词汇条目;
第二模型处理子模块,用于将所述多个子串对应的词汇条目组合输入至语言模型,由所述语言模型输出所述词汇条目组合的概率;所述词汇条目组合依据所有子串的词汇条目组合得到;
第二选择子模块,用于依据所述词汇条目组合的概率,从所述词汇条目组合中选择所述输入串对应的词组候选。
可选地,所述第二确定子模块包括:
映射获取单元,用于按照预置映射规则,获取各子串对应的词汇条目。
可选地,所述预置映射规则包括:发音映射规则,则所述映射获取单元,具体用于按照所述发音映射规则,将所述子串中字符映射为对应的字母字符,以得到所述子串对应的词汇条目。
再一方面,本发明公开了一种用于输入的装置,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
接收具有快速输入意图的输入串;所述快速输入意图用于通过与单词或者词组的简写信息相应的所述输入串,输入单词或者词组;
依据语言模型获取所述输入串对应的单词候选和/或词组候选;所述单词候选、词组候选分别为所述输入串对应的完整单词、完整词组;
向用户展现所述单词候选和/或词组候选。
本发明实施例包括以下优点:
本发明实施例依据语言模型获取输入串对应的单词候选和/或词组候选;由于上述语言模型可以依据所述语言模型对应数据统计得到各种概率参数,这样,本发明实施例借助于语言模型的概率参数,可以估计出自然语言中各单词或者各词序列出现的可能性,而不是简单的判断该单词或者该词序列是否符合文法,因此,本发明实施例可以在输入串省略的字符位于单词的任意位置时,给出符合所述语言模型对应数据的习惯用法的单词候选,或者,可以在输入串省略的字符位于词组的各单词的任意位置时,给出符合所述语言模型对应数据的习惯用法的词组候选,也即,本发明实施例不仅可以提高快速输入的灵活性和适用范围,而且可以提高单词候选和/或词组候选的质量,进而提高输入效率。
而在单词候选或词组候选符合所述语言模型对应数据的习惯用法的情况下,展现在首页的单词候选和/或词组候选可以较好地符合用户的快速输入意图,以使用户通过较少的按键操作完成单词或者词组的输入,提高输入效率;并且,可以使在不进行翻页的情况下选择符合快速输入意图的候选,由于可以节省翻页操作,因此可以有效降低用户的操作成本,提高输入效率。例如,用户欲要输入词组“talk to you later”,传统的输入方法需要分别输入4个单词,该4个单词的输入各需要4、2、3、5共14次字母击键,4次选择候选击键和3次空格击键,共计21次按键操作;而应用本发明实施例,用户可以通过输入串“ttyl”完成词组“talk to you later”的输入,需要4次字母击键和1次候选击键,共计5次按键操作,因此能够极大地提升输入效率。
附图说明
图1是本发明的一种输入方法实施例一的步骤流程图;
图2是本发明的一种输入方法实施例二的步骤流程图;
图3是本发明的一种输入方法实施例三的步骤流程图;
图4是本发明的一种输入装置的结构框图;
图5是本发明的一种用于输入的装置900的框图;及
图6是本发明的一些实施例中服务器的结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
方法实施例一
参照图1,示出了本发明的一种输入方法实施例一的步骤流程图,具体可以包括如下步骤:
步骤101、接收具有快速输入意图的输入串;所述快速输入意图用于通过与单词或者词组的简写信息相应的所述输入串,输入单词或者词组;
步骤102、依据语言模型获取所述输入串对应的单词候选和/或词组候选;所述单词候选、词组候选分别为所述输入串对应的完整单词、完整词组;
步骤103、向用户展现所述单词候选和/或词组候选。
本发明实施例可以适用于英文、意大利文、葡萄牙文、马来西亚文等拉丁字母语言的快速输入,也可以适用于俄罗斯文等非拉丁字母语言的快速输入以使用户通过表征单词或者词组的简写信息的输入串实现单词或者词组的快速输入。可选地,对于本发明实施例所适用的语言而言,其输入串与单词可以表现为相同的文本形式,也即,无需对输入串进行语言的转换而可以直接得到与输入串文本形式相同的单词候选,如对应英文而言,输入串可以表现为字母形式,而英文单词也可以表现为字母形式。可以理解,输入串与单词的文本形式相同的任意语言均在本发明实施例的保护范围之内,本发明实施例主要以英文的输入过程为例进行说明,其他语言的输入过程相互参照即可。
本发明实施例可以应用于各种输入方式的输入法程序,例如上述输入方式具体可以包括键盘符号、手写信息、语音输入等输入方式,即用户可以通过编码字符串、手写输入信息、语音输入信息等输入输入串。下面仅以编码字符串(以下简称输入串)的输入方式为例进行说明,其它输入方式相互参见即可。
本发明实施例提供的输入方法可应用于输入法程序的客户端与服务器对应的应用环境中,其中,输入法程序的客户端与服务器可以位于有线或无线网络中,通过该有线或无线网络,客户端与服务器进行数据交互,也即,本发明实施例的输入方法可由客户端和服务器中的任一来执行,本发明实施例对于输入方法中各步骤的具体执行主体不加以限制。
具体地,输入法程序的的客户端可以运行在智能终端上,该客户端可以捕获用户在输入过程中的输入串。上述智能终端具体可以包括但不限于:智能手机、平板电脑、电子书阅读器、MP3(动态影像专家压缩标准音频层面3,Moving Picture Experts Group AudioLayer III)播放器、MP4(动态影像专家压缩标准音频层面4,Moving Picture ExpertsGroup Audio Layer IV)播放器、膝上型便携计算机、车载电脑、台式计算机、机顶盒、智能电视机、可穿戴设备等等。
在实际应用中,用户在具有快速输入意图时,可通过与单词或者词组的简写信息相应的输入串,实现单词或词组的快速输入。
由于输入串与单词或词组的简写信息相应,故输入串可以为单词或词组的一部分,例如,输入串所包含字符均为单词所包含字符,但输入串所包含字符的数量小于单词所包含字符的数量等,这样,可以支持在省略单词或词组所包含任意字符的简写信息,也即,可以省略单词的位于任意位置(如前面位置、中间位置、后面位置等)的字符,因此能够提高快速输入的灵活性和适用范围。
或者,输入串可以与单词或词组的整体或部分具有映射关系。其中,输入串中可以包括与单词的发音具有映射关系的数字字符或者字母字符,如可以用8/4分别来映射英文单词中发音为/eit/和//的整体或片段;或者,对于印尼语/马来语单词“selamat”,由于“slmt”能够确定其大致发音,故可以用输入串“slmt”来简写,当然也可用“selmt”、“slmat”等其他形式来简写。因此,本发明的上述与单词的发音具有映射关系的数字字符,可以通过尽可能少的按键次数输入单词或词组,因此能够大大提升输入效率。
在本发明的一种可选实施例中,上述输入串与单词或词组的整体或部分具有映射关系具体可以包括:谐音、映射简写等。其中,谐音可以按照单词或者词组的发音对单词或词组的整体或者部分进行映射,例如,fore→4、eat→8、see→c、ticks→tix、your→ur,are→r,see→s等。映射简写可以基于当前语言的普遍简写习惯,也可以基于用户的个人习惯,例如,本发明实施例的映射简写可以包括:please→pls、tomorrow→tml、by the way→btw、as soon as possible→ASAP,could you→cy等等。
通过输入串的两种方案(为单词或词组的一部分,或者,与单词或词组的整体或部分具有映射关系)可知,在文本形式方面,本发明实施例的输入串可以包括:字母、数字等其他字符的任一或者组合。其中,当输入串包括字母时,该字母可以位于单词的任意位置,例如,用户欲要输入英文单词“before”,则其可以输入该英文单词所包含的任意字母如“be”或者“fo”或者“bf”、“rb”等,可以看出,该输入串所包含的多个字母可以相邻或者不相邻,并且,该输入串所包含的多个字母之间的顺序可以与其在单词中的顺序不一致,也即,由于本发明实施例的输入串可以包括位于单词的任意位置的字母,因此能够提高快速输入的灵活性和适用范围。其中,当该输入串所包含的多个字母之间的顺序可以与其在单词中的顺序不一致时,本发明实施例可以利用该输入串的上下文数据调整该输入串所包含的多个字母的顺序,最终得到较为合理的单词候选。
当输入串包括数字时,该数字可以与单词的发音具有映射关系的数字字符。如可以用8/4分别来映射英文单词中发音为/eit/和//的整体或片段,具体地,发音为/eit/的整体可以包括“eat”,发音为/eit/的片段(如单词“either”的片段)可以包括“eit”;发音为//的整体可以包括“for”、“four”等,发音为//的片段(如单词“before”的片段)可以包括“fore”等。
在实际应用中,步骤101可以键盘符号、手写信息、语音输入等输入方式接收输入串。可选地,可以将所接收输入串直接作为具有快速输入意图的输入串,也即,一旦输入法程序接收到用户输入的输入串,均可以将其作为具有快速输入意图的输入串并将其应用于本发明实施例的输入方法。或者,还可以判断所接收输入串是否具有快速输入意图;其中,判断所接收输入串是否具有快速输入意图的方式可以有多种,例如,可以判断输入串是否为完整的单词或者词组,若否,则可以确定所接收输入串具有快速输入意图;又如,可以判断输入串中是否包括非字母字符,若是,则可以确定所接收输入串具有快速输入意图,可以理解,本发明实施例对于具体的判断方式不加以限制。
步骤102可以依据语言模型获取所述输入串对应的单词候选和/或词组候选。上述语言模型可以依据所述语言模型对应数据统计得到各种概率参数,这样,本发明实施例借助于语言模型的概率参数,可以估计出自然语言中各单词或者各词序列出现的可能性,而不是简单的判断该单词或者该词序列是否符合文法,因此,本发明实施例可以在输入串省略的字符位于单词的任意位置时,给出符合所述语言模型对应数据的习惯用法的单词候选,或者,可以在输入串省略的字符位于词组的各单词的任意位置时,给出符合所述语言模型对应数据的习惯用法的词组候选,也即,本发明实施例可以更加灵活地处理具有快速输入意图的输入串,并给出较为合理的单词候选或词组候选。
本发明实施例中,语言模型是根据语言客观事实而进行的语言抽象数学建模,其可以在语言模型与语言客观事实之间建立某种对应关系,本发明实施例主要以统计语言模型为例进行说明,非统计语言模型相互参照即可。
可选地,统计语言模型可以概率分布的形式描述任意词序列S属于某种语言集合的可能性,这里并不要求词序列S在语法上是完备的,该统计语言模型可以对任意的词序列S可以给出一个概率参数值,相应的计算公式可以表示为:
p(S)=p(w1,w2,w3,w4,w5,…,wn)=p(w1)p(w2|w1)p(w3|w1,w2)...p(wn|w1,w2,...,wn-1) (1)
公式(1)中,S包括n个字母,公式(1)中wi表示词序列中的第i个词。可选地,训练“语言模型”的过程,就是估计模型参数P(wi|wi-n+1,...,wi-1)的过程,其中,P(wi|wi-n+1,...,wi-1)可用于表示前n-1个词为wi-n+1,...,wi-1、后词为wi出现的概率。
依据统计语言模型的概念,现有的统计语言模型可以基于统计算法对预置语料进行处理,以给出词序列的概率,或者,在给定上下文数据的情况下,预测下一个最可能出现的单词。
在实际应用中,可以采用任意的统计语言模型来实施本发明实施例的输入方法。例如,上述统计语言模型具体可以包括:上下文无关模型、N元文法模型(N-gram Model)、隐马尔科夫模型(HMM,Hidden Markov Model)、最大熵模型(Maximum Entropy Model)、循环神经网络模型(RNN,Recurrent Neural Networks Model)。其中,上下文无关模型可以不依赖于上下文环境,N元文法模型、HMM模型、最大熵模型、RMM模型等需要依赖于上下文环境,N元文法模型、HMM模型、最大熵模型、RMM模型使用的机器学习方法不同,HMM模型、最大熵模型、RMM模型所使用的机器学习方法不仅考虑了预置语料(也即训练文本)之间的联系,而且使用了训练文本的时序特性;而N元文法模型可以不考虑训练文本之间的联系。
本发明实施例中,统计语言模型所需的预置语料可以来源于已有的语料库,如对于英文的快速输入,已有的语料库可以包括英文语料库等,或者,统计语言模型所需的预置语料还可以来源于著名书籍、互联网语料、输入法程序记载的历史输入记录等。可以理解,任意的语料均在本发明实施例的预置语料的保护范围之内。
在本发明的一种应用示例1中,用户欲要输入英文单词“before”,假设其可以输入该英文单词所包含的任意字母对应的输入串,如“be”或者“fo”或者“bf”、“rb”等,则本发明实施例可以依据统计语言模型获得该输入串对应完整单词的概率,或者,可以获得该输入串对应完整单词及其对应的上下文数据的概率。假设在未考虑上下文数据的情况下,不依赖于上下文环境的统计语言模型可以给出包含“fo”这个片段的完整单词的概率,则可以依据该概率的大小给出该输入串对应的合理单词候选,如“for”、“before”等。或者,假设该输入串的上文数据包括“The bus had left”,下文数据包括“I”,则依赖于上下文环境的统计语言模型可以给出包含“fo”这个片段的完整单词及其上下文数据所对应词序列的概率,最终得到概率最大的词序列所对应的单词候选“before”。
在本发明的一种应用示例2中,用户欲要输入英文词组“what’s happening nowto Peter”,假设其可以输入省略位于词组的各单词的任意位置的字符的输入串,如“whn2p”,则本发明实施例可以依据统计语言模型获得该输入串对应词汇条目组合的概率,并依据该概率从大到小的顺序给出该输入串对应的合理词组候选,如“what’s happeningnow to Peter”、“we have nothing to present”等。本发明实施例在获取该输入串对应的合理词组候选的过程中,将字符“P”映射为人名,可以理解,上述“Peter”只是作为字符“P”对应人名的一种示例,实际上,本领域技术人员可以根据实际应用需求将字符“P”映射为除了“Peter”之外的人名,如英文人名“Pavel”、“Pinto”、“pinto”、“Pascal”、或者中文人名“Peijian”等。可选地,还可以从当前用户的历史输入内容中获取频率较高的人名,作为字符“P”对应人名等等,以符合用户的个性化输入需求。另外,用户还可以通过除了“whn2p”之外的输入串进行英文词组“what’s happening now to Peter”的输入,如除了“whn2p”之外的输入串可以为“whntp”等。
在实际应用中,单词候选或者词组候选的获取方案可以为相互独立的方案。并且,一个输入串既能解释为单词,又能解释为词组,则可以同时给出两种候选,供用户按需选择。其中,可以根据单词候选或者词组候选的概率判断输入串是否能够解释为单词或词组,可选地,若输入串对应单词候选或者词组候选的概率高于相应的概率阈值,则可以认为输入串能够解释为单词或词组。
另外,在获得单词候选和/或词组候选后,输入法程序可以通过候选窗口向用户展现单词候选和/或词组候选,以供用户选择。可选地,可以按照任意顺序对单词候选和/或词组候选进行展现,例如,首先展现多个单词候选然后展现多个词组候选,或者,一个单词候选一个词组候选的交替展现,或者,按照单词候选或者词组候选的概率从大到小的顺序进行展现等,可以理解,本发明实施例对于具体的展现方式不加以限制。
综上,本发明实施例的输入方法,依据语言模型获取输入串对应的单词候选和/或词组候选;由于上述语言模型可以依据所述语言模型对应数据统计得到各种概率参数,这样,本发明实施例借助于语言模型的概率参数,可以估计出自然语言中各单词或者各词序列出现的可能性,而不是简单的判断该单词或者该词序列是否符合文法,因此,本发明实施例可以在输入串省略的字符位于单词的任意位置时,给出符合所述语言模型对应数据的习惯用法的单词候选,或者,可以在输入串省略的字符位于词组的各单词的任意位置时,给出符合所述语言模型对应数据的习惯用法的词组候选,也即,本发明实施例不仅可以提高快速输入的灵活性和适用范围,而且可以提高单词候选和/或词组候选的质量,进而提高输入效率。
而在单词候选或词组候选符合所述语言模型对应数据的习惯用法的情况下,展现在首页的单词候选和/或词组候选可以较好地符合用户的快速输入意图,以使用户在不进行翻页的情况下选择符合快速输入意图的候选,由于可以节省翻页操作,因此可以有效降低用户的操作成本,提高输入效率。
方法实施例二
方法实施例二为图1所示方法实施例一的可选实施例,其在图1所示方法实施例一的基础上,对依据语言模型获取所述输入串对应的单词候选的过程进行了详细介绍。
在实际应用中,可以采用不依赖于上下文环境的语言模型(如上下文无关模型)或者依赖于上下文环境的语言模型(如N元文法模型)获取输入串对应的单词候选。其中,不依赖于上下文环境的语言模型具有运算简单的优点,依赖于上下文环境的语言模型能够使得单词候选更加合理,也即能够提高单词候选的质量。
参照图2,示出了本发明的一种输入方法实施例二的步骤流程图,具体可以包括如下步骤:
步骤201、接收具有快速输入意图的输入串;所述快速输入意图用于通过与单词或者词组的简写信息相应的所述输入串,输入单词或者词组;
步骤202、确定符合所述输入串对应快速输入意图的完整单词;
步骤203、将所述完整单词和所述输入串对应的上下文数据输入至语言模型,由所述语言模型输出所述完整单词和所述上下文数据对应组合的概率;
步骤204、依据所述组合的概率,从所述完整单词中选择所述输入串对应的单词候选;
步骤205、依据语言模型获取所述输入串对应的词组候选;上述单词候选、词组候选分别为所述输入串对应的完整单词、完整词组;
步骤206、向用户展现所述单词候选和/或词组候选。
本发明实施例通过上述步骤202-步骤204对依赖于上下文环境的语言模型(如N元文法模型)获取输入串对应的单词候选的过程进行了详细介绍。
由于输入串与单词或词组的简写信息相应,故输入串可以为单词或词组的一部分,或者,输入串可以与单词或词组的整体或部分具有映射关系,因此步骤202可以依据输入串的方案确定符合所述输入串对应快速输入意图的完整单词。
可选地,上述确定符合所述输入串对应快速输入意图的完整单词的步骤202,具体可以包括:
步骤A1、将以所述输入串或者所述输入串对应的纠错串为部分的完整单词,作为符合所述输入串对应快速输入意图的完整单词。
步骤A1可以适用于输入串为单词或词组的一部分的情形,具体的,可以将以所述输入串或者所述输入串对应的纠错串为部分的完整单词。假设英文对应的输入串为“fo”,则以“fo”为部分的完整单词可以包括“for”、“before”等。
在本发明的一种可选实施例中,上述步骤A1对应的查找方式,具体可以包括:
查找方式1、按照预置简写规则,在词库中查找以所述输入串或者所述输入串对应的纠错串为部分的完整单词,以得到所述输入串对应快速输入意图的完整单词;或者
查找方式2、依据所述输入串及其对应的上下文数据,在所述语言模型对应数据中查找以所述输入串或者所述输入串对应的纠错串为部分的完整单词,以得到所述输入串对应快速输入意图的完整单词;或者
查找方式3、依据所述输入串包括的片段和用于标记空缺的预置字符串,在词库中查找以所述片段为部分的完整单词,以得到所述输入串对应快速输入意图的完整单词;其中,所述片段可以为所述输入串中除所述预置字符串之外的字符。
其中,查找方式1和查找方式2的查找范围分别为:词库和语言模型对应数据,查找依据分别为:输入串或者所述输入串对应的纠错串、以及输入串及其对应的上下文数据。
可选地,预置简写规则具体可以包括:前缀简写规则和非前缀简写规则等,其中,非前缀简写规则可以进一步包括:省元音简写规则和省任意字母简写规则等。由于辅音字母能确定单词的大致发音,故省元音简写规则能够准确地实现单词的定位。例如,对于印尼语/马来语单词“selamat”,由于“slmt”能够确定其大致发音,故可以用输入串“slmt”来简写,,当然也可用“selmt”、“slmat”等其他形式来简写。
在实际应用中,查找方式1的查找过程可以为:按照预置简写规则确定输入串的各字符在完整单词中的位置,然后依据该位置进行完整单词的查找。例如,对于省元音简写规则,输入串在完整单词中的位置为开头;对于省元音简写规则,输入串中有的字符在完整单词中的开头,有的字符在末尾,有的字符在中间;对于省任意字母简写规则,则输入串中字符可以位于完整单词的任意位置,且输入串中字符的顺序可以与完整单词中字符的顺序一致或者不一致。
在本发明的一种可选实施例中,查找方式1可以采用类似单词拼写校正的处理方法,在词库中寻找输入串与词库中词条编辑距离(edit distance)最短的一个或多个完整单词。其中,是指两个字符串之间,由一个转成另一个所需的最少编辑操作次数。允许的编辑操作具体可以包括插入、删除、替换、交换等,一般来说,编辑距离越小,两个字符串的相似度越大,因此,上述类似单词拼写校正的处理方法能够在一定程度上保证完整单词的合理性。
需要说明的是,本发明实施例的词库中词条可以为已有词条,也可以为自造词条、自定义词条等,本发明实施例对于具体的词库及其中的具体词条不加以限制。
查找方式2可以依据输入串对应的上下文数据,从所述语言模型对应数据中查找给定上下文数据的、以输入串或者所述输入串对应的纠错串为部分的完整单词。例如,输入串“fo”的上文数据包括“The bus had left”,下文数据包括“I”,则可以在所述语言模型对应数据中查找以输入串“fo”为部分的完整单词“before”、“for”等。
需要说明的是,本发明实施例中,输入串对应的纠错串可以在假定输入串具有错误的情况下,对输入串进行纠错得到。可选地,可以采用基于编辑距离的纠错方案和基于统计的纠错方案进行纠错处理。其中,基于编辑距离的纠错方案可以对输入串的每个位置进行如下纠错尝试:插入一个字符、删除一个字符、替换一个字符和替换前后两个字符位置等,以产生该输入串对应的纠错串。基于统计的纠错方案可以通过大数据挖掘生成纠错模型,该纠错模型可用于学习纠错串被错输为输入串的概率。可以理解,本发明实施例对于输入串的具体纠错过程不加以限制。
查找方式3可以采用预置字符串标记空缺。上述预置字符串可以为本领域技术人员或者用户根据实际应用需求预置的、用于标记空缺的任意字符串,如“*”、“?”、“%”、“#”等,也可以是用户随手输入的不代表任何含义的字符,如“(”、“>”等,可以理解,本发明实施例对于具体的预置字符串不加以限制。
在本发明的一种应用示例3中,用户欲要输入英文单词“phenomenon”,但其不记得其中的一些字符,故可以采用预置字符串标记空缺,由输入法程序对预置字符串进行补充,假设用户的输入串“phen*m*”中包括2处“*”,则本发明实施例可以对该2处“*”进行补充。
可选地,上述查找方式3可以按照字符位置,将所述输入串中片段与所述词库中单词词条进行匹配,以得到所述输入串对应的完整单词;其中,所述片段在所述完整单词中的位置与所述片段在所述输入串中的位置是一致的,故可以减小查找空间,提高查找效率。
可以理解,上述查找方式1、查找方式2和查找方式3只是作为获取以所述输入串或者所述输入串对应的纠错串为部分的完整单词的一种可选实施例,实际上,本发明实施例对于以所述输入串或者所述输入串对应的纠错串为部分的完整单词的具体获取过程不加以限制。
步骤A2、按照发音,将所述输入串中字符映射为对应的字母字符,以得到所述输入串对应快速输入意图的完整单词。
在实际应用中,可以按照单词的发音,将输入串中字母或者数字字符映射为对应的字母字符。例如,英文的输入串为“b4”,则可以将其中的数字字符“4”映射为发音//的片段“fore”,并进一步,查找以“bfore”为部分的完整单词“before”。又如,马来西亚文的输入串为“slmt”,则可以通过发音映射得到马来语单词“selamat”。
在本发明的一种应用示例4中,用户欲要输入西班牙文单词“afecta”,其可以输入表征该西班牙文单词的大致发音的字符串“afkt”,则本发明实施例可以利用k→c的发音映射,得到对应的完整单词“afecta”、“afecto”、“afectar”等。同理,还可以利用ft→photo的发音映射进行完整单词的获取,可以通过输入串“ftgrf”快速输入英语单词“photograph”。
在步骤202得到符合所述输入串对应快速输入意图的完整单词后,步骤203可以将所述完整单词和所述输入串对应的上下文数据输入至语言模型,由该语言模型输出该完整单词和该上下文数据对应组合的概率。在实际应用中,由于语言模型所涉及词序列所包含单词的数目通常不会太大,该数目通常为3,则可以从上下文数据中选择欲要输入至语言模型的目标上下文数据,该目标上下文数据可以与输入串形成对应的组合。其中,该目标上下文数据可以与输入串相邻或者不相邻。
例如,用户欲要通过输入串“bl”快速输入英文单词“blue”,该输入串“bl”的上文数据包括:“the sky in the Friday morning is”,则按照语法分析结果,可以从该上文数据中选择目标上下文数据“sky is”,由此可以由语言模型输出较为合理的单词候选“blue”。再如,用户欲要通过输入串“Fr”快速输入英文单词“French”,该输入串“Fr”的上文数据包括:“he have lived in France for 5years and he can speak fluent”,则可以根据语句分析结果,从该上文数据中选择目标上下文数据“France speak”等,由此可以由语言模型输出较为合理的单词候选“French”。
需要说明的是,在实际应用中,在用户对已输入内容进行编辑的场景下,输入串也可以具有下文数据,此种情况下也可以将输入串的下文数据输入至语言模型。例如,用户将光标移动至已输入内容的某处,并重新键入输入串,则可以同时获取光标处前后的数据作为上下文数据。
在实际应用中,步骤204可以依据所述组合的概率对完整单词进行排序,并按照从概率从大到小的顺序,从完整单词中选取排在前M位的完整单词,作为单词候选,其中,M为大于等于1的正整数。或者,可以依据所述组合的概率,从完整单词中选取大于概率阈值的完整单词,作为单词候选。可以理解,本发明实施例对于单词候选的具体选取过程不加以限制。
综上,本发明实施例的输入方法,依赖于上下文环境的语言模型(如N元文法模型)获取输入串对应的单词候选,因此能够使得单词候选更加合理,也即能够提高单词候选的质量和输入效率。
而在单词候选的质量较高的情况下,展现在首页的单词候选可以较好地符合用户的快速输入意图,以使用户在不进行翻页的情况下选择符合快速输入意图的候选,由于可以节省翻页操作,因此可以有效降低用户的操作成本,提高输入效率。
方法实施例三
方法实施例三为图1所示方法实施例一或图2所示方法实施例二的可选实施例,其在图1所示方法实施例一或图2所示方法实施例二的基础上,对依据语言模型获取所述输入串对应的词组候选的过程进行了详细介绍。
在实际应用中,可以采用依赖于上下文环境的语言模型(如N元文法模型)获取输入串对应的词组候选,故能够使得词组候选更加合理,也即能够提高词组候选的质量。
参照图3,示出了本发明的一种输入方法实施例三的步骤流程图,具体可以包括如下步骤:
步骤301、接收具有快速输入意图的输入串;所述快速输入意图用于通过与单词或者词组的简写信息相应的所述输入串,输入单词或者词组;
步骤302、对所述输入串进行切分,以得到对应的多个子串;
步骤303、确定符合各子串对应快速输入意图的词汇条目;
步骤304、将所述多个子串对应的词汇条目组合输入至语言模型,由所述语言模型输出所述词汇条目组合的概率;所述词汇条目组合依据所有子串的词汇条目组合得到;
步骤305、依据所述词汇条目组合的概率,从所述词汇条目组合中选择所述输入串对应的词组候选;
步骤306、依据语言模型获取所述输入串对应的单词候选;上述单词候选、词组候选分别为所述输入串对应的完整单词、完整词组;
步骤307、向用户展现所述单词候选和/或词组候选。
步骤302切分得到的各子串可用于表示独立的单词。在实际应用中,输入串可以具有多种切分方案,例如,可以以字符为单位对输入串进行切分,这样,切分得到的各子串可以具有一个或者多个字符。以输入串“whn2p”为例,可以将以单个字符为单位,将其切分为:“w”、“h”、“n”、“2”、“p”等子串。同理,可以将输入串“in2tix”切分为“in”、“2”、“tix”等子串。或者,可以将输入串“cu”切分为“c”、“u”等子串。可以理解,每种切分方案可以具有对应的切分结果,故一个输入串可以对应一个或者多个切分结果。
步骤303所得到的词汇条目可用于表示,当各子串为单词的简写信息时对应的完整单词。可选地,上述确定符合各子串对应快速输入意图的词汇条目的步骤303,具体可以包括:按照预置映射规则,获取各子串对应的词汇条目。其中,该预置映射规则可以为单词或者词组对应的映射规则。
参照表1,示出了本发明的多种预置映射规则的示意,其具体可以包括:映射规则类型和映射规则示例,该映射规则类型具体可以包括:首字母映射、非首字母映射、谐音字母映射、多字母映射、数字映射、自定义映射等。则步骤303可以将各子串映射为表1中的对应词汇条目,也即,各子串对应快速输入意图的词汇条目可以为单词,也可以为词组。
表1
在本发明的一种可选实施例中,所述预置映射规则具体可以包括:发音映射规则,所述按照预置映射规则,获取各子串对应的词汇条目的步骤,具体可以包括:按照所述发音映射规则,将所述子串中字符映射为对应的字母字符,以得到所述子串对应的词汇条目。其中,上述发音映射规则可以包括表1中的谐音字母映射或者数字映射等,则可以按照上述谐音字母映射或者数字映射对应的映射关系,进行各子串的映射。
对于每种切分结果对应的多个子串而言,其词汇条目可以形成至少一个词汇条目组合。如输入串“whn2p”的多个子串“w”、“h”、“n”、“2”、“p”可以形成“what’s happeningnow to Peter”、“we have nothing to present”、“we have no to park”等。需要说明的是,可以针对不同的子串使用相同或不同的预置映射规则,且可以针对一个子串使用一种或者多种预置映射规则,本发明实施例对于预置映射规则的具体使用过程不加以限制。
步骤304可以将所述多个子串对应的词汇条目组合输入至语言模型,由所述语言模型输出所述词汇条目组合的概率。可选地,当子串对于的词汇条目所包含单词的数量小于语言模型所对应的数量阈值(如3)时,还可以将词汇条目组合连同对应的上下文数据输入至语言模型,由此提高词组候选的质量。
可选地,语言模型可以使用一个条目数为n的滑动窗口,查看连续或不连续的两个或三个或更多词汇条目之间是否存在关联关系,若有则可以将在词汇条目组合对应的路径上标注该关联关系,并依据词汇条目组合对应的完整路径上的所有关联关系,计算得到词汇条目的概率。可以理解,本发明实施例对于语言模型计算词汇条目的概率的具体过程不加以限制。
在实际应用中,步骤305可以依据词汇条目组合的概率对词汇条目组合进行排序,并按照从概率从大到小的顺序,从词汇条目组合中选取排在前P位的词汇条目组合,作为词组候选,其中,P为大于等于1的正整数。或者,可以依据词汇条目组合的概率,从词汇条目组合中选取大于概率阈值的词汇条目组合,作为词组候选。可以理解,本发明实施例对于词组候选的具体选取过程不加以限制。
需要说明的是,本发明实施例中对所述输入串进行切分的方式只是作为可选实施例,实际上,可以默认一个字符对应一个单词而不进行输入串的切分。
综上,本发明实施例的输入方法,依赖于上下文环境的语言模型(如N元文法模型)获取输入串对应的词组候选,因此能够使得词组候选更加合理,也即能够提高词组候选的质量和输入效率。
而在词组候选的质量较高的情况下,展现在首页的词组候选可以较好地符合用户的快速输入意图,以使用户在不进行翻页的情况下选择符合快速输入意图的候选,由于可以节省翻页操作,因此可以有效降低用户的操作成本,提高输入效率。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的运动动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的运动动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的运动动作并不一定是本发明实施例所必须的。
装置实施例
参照图4,示出了本发明的一种输入装置实施例的结构框图,具体可以包括:输入串接收模块401、候选获取模块402、以及候选展现模块403;
其中,输入串接收模块401,用于接收具有快速输入意图的输入串;所述快速输入意图用于通过与单词或者词组的简写信息相应的所述输入串,输入单词或者词组;
候选获取模块402,用于依据语言模型获取所述输入串对应的单词候选和/或词组候选;所述单词候选、词组候选分别为所述输入串对应的完整单词、完整词组;以及
候选展现模块403,用于向用户展现所述单词候选和/或词组候选。
可选地,所述候选获取模块402具体可以包括:
第一确定子模块,用于确定符合所述输入串对应快速输入意图的完整单词;
第一模型处理子模块,用于将所述完整单词和所述输入串对应的上下文数据输入至语言模型,由所述语言模型输出所述完整单词和所述上下文数据对应组合的概率;
第一选择子模块,用于依据所述组合的概率,从所述完整单词中选择所述输入串对应的单词候选。
可选地,所述第一确定子模块具体可以包括:
第一确定单元,用于将以所述输入串或者所述输入串对应的纠错串为部分的完整单词,作为符合所述输入串对应快速输入意图的完整单词;或者
第二确定单元,用于按照发音,将所述输入串中字符映射为对应的字母字符,以得到所述输入串对应快速输入意图的完整单词。
可选地,所述第一确定单元具体可以包括:
第一查找子单元,用于按照预置简写规则,在词库中查找以所述输入串或者所述输入串对应的纠错串为部分的完整单词,以得到所述输入串对应快速输入意图的完整单词;或者
第二查找子单元,用于依据所述输入串及其对应的上下文数据,在所述语言模型对应数据中查找以所述输入串或者所述输入串对应的纠错串为部分的完整单词,以得到所述输入串对应快速输入意图的完整单词。
可选地,所述上下文数据与所述输入串相邻或者不相邻。
可选地,所述候选获取模块402具体可以包括:
切分子模块,用于对所述输入串进行切分,以得到对应的多个子串;
第二确定子模块,用于确定符合各子串对应快速输入意图的词汇条目;
第二模型处理子模块,用于将所述多个子串对应的词汇条目组合输入至语言模型,由所述语言模型输出所述词汇条目组合的概率;所述词汇条目组合依据所有子串的词汇条目组合得到;
第二选择子模块,用于依据所述词汇条目组合的概率,从所述词汇条目组合中选择所述输入串对应的词组候选。
可选地,所述第二确定子模块具体可以包括:
映射获取单元,用于按照预置映射规则,获取各子串对应的词汇条目。
可选地,所述预置映射规则具体可以包括:发音映射规则,则所述映射获取单元,具体用于按照所述发音映射规则,将所述子串中字符映射为对应的字母字符,以得到所述子串对应的词汇条目。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图5是根据一示例性实施例示出的一种用于输入的装置900的框图。例如,装置900可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图5,装置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、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由智能终端的处理器执行时,使得智能终端能够执行一种输入方法,所述方法包括:接收具有快速输入意图的输入串;所述快速输入意图用于通过与单词或者词组的简写信息相应的所述输入串,输入单词或者词组;依据语言模型获取所述输入串对应的单词候选和/或词组候选;所述单词候选、词组候选分别为所述输入串对应的完整单词、完整词组;向用户展现所述单词候选和/或词组候选。
图6是本发明的一些实施例中服务器的结构示意图。该服务器1900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processingunits,CPU)1922(例如,一个或一个以上处理器)和存储器1932,一个或一个以上存储应用程序1942或数据1944的存储介质1930(例如一个或一个以上海量存储设备)。其中,存储器1932和存储介质1930可以是短暂存储或持久存储。存储在存储介质1930的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1922可以设置为与存储介质1930通信,在服务器1900上执行存储介质1930中的一系列指令操作。
服务器1900还可以包括一个或一个以上电源1926,一个或一个以上有线或无线网络接口1950,一个或一个以上输入输出接口1958,一个或一个以上键盘1956,和/或,一个或一个以上操作系统1941,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
以上对本发明所提供的一种输入方法、一种输入装置和一种用于输入的装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种输入方法,其特征在于,包括:
接收具有快速输入意图的输入串;所述快速输入意图用于通过与单词或者词组的简写信息相应的所述输入串,输入单词或者词组;
依据语言模型获取所述输入串对应的单词候选和/或词组候选;所述单词候选、词组候选分别为所述输入串对应的完整单词、完整词组;
向用户展现所述单词候选和/或词组候选。
2.根据权利要求1所述的方法,其特征在于,所述依据语言模型获取所述输入串对应的单词候选的步骤,包括:
确定符合所述输入串对应快速输入意图的完整单词;
将所述完整单词和所述输入串对应的上下文数据输入至语言模型,由所述语言模型输出所述完整单词和所述上下文数据对应组合的概率;
依据所述组合的概率,从所述完整单词中选择所述输入串对应的单词候选。
3.根据权利要求2所述的方法,其特征在于,所述确定符合所述输入串对应快速输入意图的完整单词的步骤,包括:
将以所述输入串或者所述输入串对应的纠错串为部分的完整单词,作为符合所述输入串对应快速输入意图的完整单词;或者
按照发音,将所述输入串中字符映射为对应的字母字符,以得到所述输入串对应快速输入意图的完整单词。
4.根据权利要求3所述的方法,其特征在于,所述将以所述输入串或者所述输入串对应的纠错串为部分的完整单词,作为符合所述输入串对应快速输入意图的完整单词的步骤,包括:
按照预置简写规则,在词库中查找以所述输入串或者所述输入串对应的纠错串为部分的完整单词,以得到所述输入串对应快速输入意图的完整单词;或者
依据所述输入串及其对应的上下文数据,在所述语言模型对应数据中查找以所述输入串或者所述输入串对应的纠错串为部分的完整单词,以得到所述输入串对应快速输入意图的完整单词;或者
依据所述输入串包括的片段和用于标记空缺的预置字符串,在词库中查找以所述片段为部分的完整单词,以得到所述输入串对应快速输入意图的完整单词;其中,所述片段为所述输入串中除所述预置字符串之外的字符。
5.根据权利要求2所述的方法,其特征在于,所述上下文数据与所述输入串相邻或者不相邻。
6.根据权利要求1所述的方法,其特征在于,所述依据语言模型获取所述输入串对应的词组候选的步骤,包括:
对所述输入串进行切分,以得到对应的多个子串;
确定符合各子串对应快速输入意图的词汇条目;
将所述多个子串对应的词汇条目组合输入至语言模型,由所述语言模型输出所述词汇条目组合的概率;所述词汇条目组合依据所有子串的词汇条目组合得到;
依据所述词汇条目组合的概率,从所述词汇条目组合中选择所述输入串对应的词组候选。
7.根据权利要求6所述的方法,其特征在于,所述确定符合各子串对应快速输入意图的词汇条目的步骤,包括:
按照预置映射规则,获取各子串对应的词汇条目。
8.根据权利要求7所述的方法,其特征在于,所述预置映射规则包括:发音映射规则,所述按照预置映射规则,获取各子串对应的词汇条目的步骤,包括:
按照所述发音映射规则,将所述子串中字符映射为对应的字母字符,以得到所述子串对应的词汇条目。
9.一种输入装置,其特征在于,包括:
输入串接收模块,用于接收具有快速输入意图的输入串;所述快速输入意图用于通过与单词或者词组的简写信息相应的所述输入串,输入单词或者词组;
候选获取模块,用于依据语言模型获取所述输入串对应的单词候选和/或词组候选;所述单词候选、词组候选分别为所述输入串对应的完整单词、完整词组;以及
候选展现模块,用于向用户展现所述单词候选和/或词组候选。
10.一种用于输入的装置,其特征在于,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
接收具有快速输入意图的输入串;所述快速输入意图用于通过与单词或者词组的简写信息相应的所述输入串,输入单词或者词组;
依据语言模型获取所述输入串对应的单词候选和/或词组候选;所述单词候选、词组候选分别为所述输入串对应的完整单词、完整词组;
向用户展现所述单词候选和/或词组候选。
CN201610932804.4A 2016-10-31 2016-10-31 一种输入方法和装置、一种用于输入的装置 Pending CN108008832A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201610932804.4A CN108008832A (zh) 2016-10-31 2016-10-31 一种输入方法和装置、一种用于输入的装置
PCT/CN2016/107989 WO2018076450A1 (zh) 2016-10-31 2016-11-30 一种输入方法和装置、一种用于输入的装置
US16/340,252 US11640503B2 (en) 2016-10-31 2016-11-30 Input method, input device and apparatus for input

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610932804.4A CN108008832A (zh) 2016-10-31 2016-10-31 一种输入方法和装置、一种用于输入的装置

Publications (1)

Publication Number Publication Date
CN108008832A true CN108008832A (zh) 2018-05-08

Family

ID=62023200

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610932804.4A Pending CN108008832A (zh) 2016-10-31 2016-10-31 一种输入方法和装置、一种用于输入的装置

Country Status (3)

Country Link
US (1) US11640503B2 (zh)
CN (1) CN108008832A (zh)
WO (1) WO2018076450A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112925469A (zh) * 2021-03-31 2021-06-08 维沃移动通信有限公司 内容显示方法、装置、存储介质及电子设备
CN111046268B (zh) * 2018-10-12 2024-04-26 北京搜狗科技发展有限公司 一种信息推荐方法、装置和电子设备

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110716653B (zh) * 2018-07-11 2023-11-21 北京搜狗科技发展有限公司 一种联想源确定方法和装置
CN110262911A (zh) * 2019-06-24 2019-09-20 北京向上一心科技有限公司 输入框的优化方法、优化装置、控制器及存储介质
CN111859907B (zh) * 2020-06-11 2023-06-23 北京百度网讯科技有限公司 文字纠错方法、装置、电子设备及存储介质
CN112905024B (zh) * 2021-01-21 2023-10-27 李博林 单词的音节记录方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1141452A (zh) * 1995-03-13 1997-01-29 株式会社东芝 文字输入装置和文字输入方法
CN1470977A (zh) * 2002-07-28 2004-01-28 张保平 一种改变拼音文字输入顺序的计算机拼音文字输入方法
CN1869892A (zh) * 2005-06-01 2006-11-29 北京优耐数码科技有限公司 一种中文短语、短句快速输入的方法和系统
CN101371253A (zh) * 2005-04-25 2009-02-18 微软公司 生成拼写建议的方法和系统
CN101546226A (zh) * 2009-05-08 2009-09-30 腾讯科技(深圳)有限公司 一种英文输入方法及系统
CN104007832A (zh) * 2013-02-25 2014-08-27 上海触乐信息科技有限公司 连续滑行输入文本的方法、系统及设备

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1015218B (zh) 1989-11-27 1991-12-25 郑易里 字根编码输入法及其设备
US6070160A (en) * 1995-05-19 2000-05-30 Artnet Worldwide Corporation Non-linear database set searching apparatus and method
US7168039B2 (en) * 1998-06-02 2007-01-23 International Business Machines Corporation Method and system for reducing the horizontal space required for displaying a column containing text data
US7030863B2 (en) * 2000-05-26 2006-04-18 America Online, Incorporated Virtual keyboard system with automatic correction
WO2008080192A1 (en) * 2007-01-03 2008-07-10 Kannuu Pty Ltd Process and apparatus for selecting an item from a database
WO2004066600A1 (en) * 2003-01-22 2004-08-05 Min-Kyum Kim Apparatus and method for inputting alphabet characters
CN1188773C (zh) 2003-03-12 2005-02-09 陆家俊 英文快速输入法
US8972444B2 (en) * 2004-06-25 2015-03-03 Google Inc. Nonstandard locality-based text entry
US7277029B2 (en) * 2005-06-23 2007-10-02 Microsoft Corporation Using language models to expand wildcards
US8413069B2 (en) * 2005-06-28 2013-04-02 Avaya Inc. Method and apparatus for the automatic completion of composite characters
US20070076862A1 (en) * 2005-09-30 2007-04-05 Chatterjee Manjirnath A System and method for abbreviated text messaging
US8122022B1 (en) * 2007-08-10 2012-02-21 Google Inc. Abbreviation detection for common synonym generation
US8116569B2 (en) * 2007-12-21 2012-02-14 Microsoft Corporation Inline handwriting recognition and correction
US9733724B2 (en) * 2008-01-13 2017-08-15 Aberra Molla Phonetic keyboards
WO2009096760A2 (ko) * 2008-02-01 2009-08-06 단어예측 입력방법 및 그 방법이 구현되는 전자장치
CN101539808A (zh) 2008-03-21 2009-09-23 吴敬祖 一种集成多种汉字输入法和英语句子的快速输入法
US8033959B2 (en) * 2009-05-18 2011-10-11 Adidas Ag Portable fitness monitoring systems, and applications thereof
US8560562B2 (en) * 2010-07-22 2013-10-15 Google Inc. Predictive query suggestion caching
US8988365B2 (en) * 2010-09-01 2015-03-24 Telefonaktiebolaget L M Ericsson (Publ) Input precision method for minimizing erroneous entries stemming from instability of a mobile device using an accelerometer and apparatus to detect a shake and apparatus and computer program thereof
US8713464B2 (en) * 2012-04-30 2014-04-29 Dov Nir Aides System and method for text input with a multi-touch screen
US8756052B2 (en) * 2012-04-30 2014-06-17 Blackberry Limited Methods and systems for a locally and temporally adaptive text prediction
US8732183B2 (en) * 2012-05-29 2014-05-20 Sap Portals Israel Ltd Comparing strings of characters
US9218333B2 (en) * 2012-08-31 2015-12-22 Microsoft Technology Licensing, Llc Context sensitive auto-correction
US8965754B2 (en) * 2012-11-20 2015-02-24 International Business Machines Corporation Text prediction using environment hints
US9031829B2 (en) * 2013-02-08 2015-05-12 Machine Zone, Inc. Systems and methods for multi-user multi-lingual communications
US8996352B2 (en) * 2013-02-08 2015-03-31 Machine Zone, Inc. Systems and methods for correcting translations in multi-user multi-lingual communications
US9231898B2 (en) * 2013-02-08 2016-01-05 Machine Zone, Inc. Systems and methods for multi-user multi-lingual communications
US10303762B2 (en) * 2013-03-15 2019-05-28 Disney Enterprises, Inc. Comprehensive safety schema for ensuring appropriateness of language in online chat
US9355084B2 (en) * 2013-11-14 2016-05-31 Elsevier B.V. Systems, computer-program products and methods for annotating documents by expanding abbreviated text
US9760559B2 (en) * 2014-05-30 2017-09-12 Apple Inc. Predictive text input
US20170052936A1 (en) * 2015-08-21 2017-02-23 Norman A. Paradis Computer software program for the automated identification and removal of abbreviations and acronyms in electronic documents

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1141452A (zh) * 1995-03-13 1997-01-29 株式会社东芝 文字输入装置和文字输入方法
CN1470977A (zh) * 2002-07-28 2004-01-28 张保平 一种改变拼音文字输入顺序的计算机拼音文字输入方法
CN101371253A (zh) * 2005-04-25 2009-02-18 微软公司 生成拼写建议的方法和系统
CN1869892A (zh) * 2005-06-01 2006-11-29 北京优耐数码科技有限公司 一种中文短语、短句快速输入的方法和系统
CN101546226A (zh) * 2009-05-08 2009-09-30 腾讯科技(深圳)有限公司 一种英文输入方法及系统
CN104007832A (zh) * 2013-02-25 2014-08-27 上海触乐信息科技有限公司 连续滑行输入文本的方法、系统及设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
官连军: "智能容错英文输入引擎的研究与应用", 《中国优秀硕士学位论文全文数据库信息科技辑(月刊)》 *
董大钧: "《计算机应用基础》", 31 July 1999, 人民卫生出版社 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111046268B (zh) * 2018-10-12 2024-04-26 北京搜狗科技发展有限公司 一种信息推荐方法、装置和电子设备
CN112925469A (zh) * 2021-03-31 2021-06-08 维沃移动通信有限公司 内容显示方法、装置、存储介质及电子设备

Also Published As

Publication number Publication date
WO2018076450A1 (zh) 2018-05-03
US20190340233A1 (en) 2019-11-07
US11640503B2 (en) 2023-05-02

Similar Documents

Publication Publication Date Title
CN107436691B (zh) 一种输入法进行纠错的方法、客户端、服务器及装置
CN108008832A (zh) 一种输入方法和装置、一种用于输入的装置
CN107291690A (zh) 标点添加方法和装置、用于标点添加的装置
WO2021128880A1 (zh) 一种语音识别方法、装置和用于语音识别的装置
CN108345612B (zh) 一种问题处理方法和装置、一种用于问题处理的装置
CN107544684B (zh) 一种候选词显示方法及装置
CN108345581A (zh) 一种信息识别方法、装置和终端设备
WO2017005207A1 (zh) 一种输入方法、输入装置、服务器和输入系统
CN107424612B (zh) 处理方法、装置和机器可读介质
CN114154459A (zh) 语音识别文本处理方法、装置、电子设备及存储介质
CN107564526B (zh) 处理方法、装置和机器可读介质
CN108803890B (zh) 一种输入方法、输入装置和用于输入的装置
CN109002183B (zh) 一种信息输入的方法及装置
CN107422872A (zh) 一种输入方法、装置和用于输入的装置
CN107797676B (zh) 一种单字输入方法及装置
CN108628461A (zh) 一种输入方法和装置、一种更新词库的方法和装置
CN108073294B (zh) 一种智能组词方法和装置、一种用于智能组词的装置
KR102327790B1 (ko) 정보 처리 방법, 장치 및 저장 매체
CN104699668B (zh) 确定词语相似度的方法及装置
CN109976548B (zh) 一种输入方法及输入装置
US20220058879A1 (en) Method and apparatus for augmented reality
CN114610163A (zh) 推荐方法、装置和介质
CN113515618A (zh) 语音处理方法、装置和介质
CN109388252B (zh) 一种输入方法及装置
CN112612442A (zh) 一种输入方法、装置和电子设备

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