CN101266599B - 输入方法和用户终端装置 - Google Patents
输入方法和用户终端装置 Download PDFInfo
- Publication number
- CN101266599B CN101266599B CN2008100867891A CN200810086789A CN101266599B CN 101266599 B CN101266599 B CN 101266599B CN 2008100867891 A CN2008100867891 A CN 2008100867891A CN 200810086789 A CN200810086789 A CN 200810086789A CN 101266599 B CN101266599 B CN 101266599B
- Authority
- CN
- China
- Prior art keywords
- speech
- dictionary
- centerdot
- user
- input
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Machine Translation (AREA)
Abstract
本发明公开了一种字典学习方法,所述方法包括步骤:从未标注的语料中学习词典和统计语言模型;将所述词典,统计语言模型以及辅助词编码信息整合为小尺寸的字典。此外,还公开了一种在用户终端装置上使用的输入方法以及一种用户终端装置,其中所述终端装置上装载有添加了词性信息和词性双元模型的字典。因此,通过用户终端装置可以给出句子预测和词预测,同时通过利用字典索引中的Patricia树索引搜索字典从而加速输入。
Description
技术领域
本发明涉及一种自然语言处理,更具体地,涉及一种字典学习方法以及使用该字典学习方法的装置,输入方法以及使用该输入方法的用户终端装置。
背景技术
随着计算机、PDA以及移动电话在中国的广泛应用,可以看出这些装置的一个重要特征在于能够使用户实现中文输入。在中国目前的移动终端市场,几乎每一个移动电话都提供利用数字键盘的输入方法。当前最广泛使用的输入方法为T9以及iTap。利用这种输入方法,用户可以使用十按键数字键盘输入汉字的拼音或笔画。附图8A-8B示出用于拼音和笔画输入的示例键盘。该输入方法根据用户敲击的按键顺序给出汉字预测。当用户输入一个汉字的拼音时,用户不需要按照最常规的输入方法点击按键三到四次输入每个正确的字母。用户仅需要根据该汉字的拼音点击一系列按键,则输入方法就会在一个候选列表中预测出正确的拼音和正确的汉字。例如,用户想利用拼音“jin”输入“今”,他不需要通过敲击“5”(代表“jkl”)1次来输入“j”,敲击“4”(代表“ghi”)3次以及敲击“6”(代表“mno”)2次,然而,他仅需敲击“546”则输入方法将给出预测拼音“jin”以及对应的预测候选汉字“进今金…”.图9A示出利用最传统的输入方法输入汉字“今”的T9的输入序列。
对于当前的移动终端来说,用户必须逐字地输入汉字。虽然一些输入方法宣称可以根据用户输入给出预测结果,但实际上,这些输入方法是逐字地给出预测的。对于每个汉字,用户需要点击按键若干次,并至少进行一次拼写核对。鉴于此,本发明的发明人提供一种可以给出句子级以及词级的预测的系统。
如上所述,目前T9和iTap是移动终端上最为广泛使用的输入方法。然而,这些输入方法的速度不能够令大多数的用户满意。需要多次点击以及多次交互,即使仅输入单个汉字。
存在上述问题的主要原因在于应用中文输入方法的当前大部分数字键盘仅仅是基于汉字的(US 20030027601)。这是因为在汉字中,在词之间并不存在清晰的界限。此外,对词也没有明确的定义。因此,这些输入方法选择将单个汉字看作是与其英文相对应的“词”。然而,这将不可避免地导致依据单个汉字的数字序列的大量的冗余汉字,速度也因此明显的降低。此外,由于仅能根据单个汉字获得预测,所以基于汉字的输入方法在很大程度上限制了词预测的效果。也就是说,当前移动终端中所采用的输入方法仅能够将用户输入的数字序列转换为汉字候选列表。用户必须从候选列表中选出正确的汉字。用户不能够连续地输入一个词或一个句子。
例如,用户想输入词“今天”。首先,用户使用数字键盘输入“546”,其表示汉字“今”的拼音“jin”。然后,向用户显示候选列表“进今金...”。其次,用户必须从该列表中选出正确的汉字“今”.然后,向用户显示可以跟随在汉字“今”之后的候选列表“天日年...”。用户必须从该列表中选出正确的汉字“天”。图9B示出输入汉字词“今天”的T9的输入序列。
在PC平台中,存在基于PC键盘的多种高级快速输入方法,诸如微软拼音,紫光拼音以及智能狂拼等。其中的一些方法可以给出句子级的预测,所有的上述方法可以给出词级的预测。但是对于这些可以给出句子级预测的方法来说,字典的尺寸太大。例如,微软拼音输入的字典大小为20~70MB,智能狂拼所需要的存储空间达到100MB。它们都采用统计语言模型(SLM)技术来形成可以进行句子预测的基于词的SLM(典型地是词双元模型或词三元模型)。然而这种SLM使用了预定的词典并在字典中存储了大量的词双元词条和词三元词条,字典的尺寸将会不可避免地太大,从而不能够安装在移动终端上。此外,在移动终端平台上的预测速度也非常慢。
另一个不利之处在于大多数的输入方法没有词典或仅包括预定的词典。因此,不能够连续地输入在语言中频繁使用的多个重要的词和短语,如“今天下午”。
发明内容
因此,考虑到上述问题提出本发明,以及本发明的目的是提供一种字典(dictionary)学习方法和利用该字典学习方法的装置。此外,本发明也提供一种输入方法以及一种使用该输入方法的用户终端装置。该装置从语料中学习字典。学习的字典包括优化的词典(lexicon),该词典包括多个从语料中学习的重要的词以及短语。然而,在该字典应用到随后描述的输入方法中时,它还包括词性信息以及词性双元模型。用户终端装置使用Patricia树(一种树状的数据结构)索引搜索字典。所述装置接收用户输入并基于字典搜索的结果给出句子和词预测,所述词预测包括当前候选词列表和预测候选词列表。向用户显示预测结果。所以,用户通过连续地输入与词或句子相对应的数字序列可以输入词或句子。从而用户不需要针对每个汉字输入数字序列并从候选词列表中选出正确的汉字。因此输入速度得到了很大改善。
根据本发明的第一方面,提供了一种字典学习方法,所述方法包括步骤:从未标注的语料中学习词典和统计语言模型;将所述词典,统计语言模型以及辅助词编码信息整合为字典。
根据本发明的第二方面,所述字典学习方法还包括步骤:从词性已标注的语料中获得所述词典中每个词的词性信息和词性双元模型;将所述词性信息以及词性双元模型添加到字典中。
根据本发明的第三方面,提供了一种字典学习装置,其中所述装置包括:用于学习字典的字典学习处理模块;存储有未标注的语料的存储单元;用于控制所述装置的各部分的控制单元;其中,所述字典学习处理模块包括词典与统计语言模型学习单元,用于从未标注的语料中学习词典和统计语言模型;字典整合单元,用于将所述词典,统计语言模型以及辅助词编码信息整合为字典。
根据本发明的第四方面,其中所述字典学习装置的存储单元还存储有词性已标注的语料,以及字典学习处理模块还包括:词性学习单元,用于从词性已标注的语料中获得所述词典中每个词的词性信息和词性双元模型;以及字典整合单元将所述词性信息以及词性双元模型添加到字典中。
根据本发明的第五方面,提供了一种用于处理用户输入的输入方法,其中所述方法包括:接收步骤,用于接收用户输入;解译步骤,用于将用户输入解译为编码信息或用户动作,其中基于字典预先获得字典中的每个词的编码信息;用户输入预测与调整步骤,用于在接收到编码信息和用户动作时,根据字典中的统计语言模型和词性双元模型利用词典索引中的Patricia树给出句子与词预测,并根据用户动作调整句子和词预测;显示步骤,用于显示句子和词预测的结果。
根据本发明的第六方面,提供了一种用于处理用户输入的用户终端装置,其中所述装置包括:用户输入终端,用于接收用户输入;存储单元,用于存储字典和包括Patricia树索引的字典索引;输入处理单元,用于根据用户输入给出句子和词预测;以及显示器,用于显示句子和词预测的结果;其中,输入处理单元包括:输入编码解译器,用于将用户输入解译为编码信息或用户动作,其中基于字典预先获得字典中的每个词的编码信息;用户输入预测与调整模块,用于在接收到编码信息和用户动作时,根据字典中的统计语言模型和词性双元模型利用词典索引中的Patricia树索引给出句子和词预测,并根据用户动作调整句子和词预测。
根据本发明,通过利用具有小尺寸的字典可以给出句子级预测和词级预测。其中所述的字典通过本发明第四方面的字典学习装置的学习处理而获得。所述字典学习装置从语料中提取大量的重要信息,并将其以特定内容和特定结构的形式保持,从而可以以非常小的尺寸进行存储。与移动电话上的常规输入方法不同,本发明的基本输入单元是“词”。这里所述的“词”也包括从语料中学习的“短语”。根据所述字典的内容和结构,输入方法可以给出句子级和词级的预测。因此,与常规输入方法例如T9和iTap相比较,输入速度增加。
虽然与基于PC的输入方法比较,例如与微软拼音比较,其中微软拼音可以给出句子和词预测但是使用了尺寸较大的字典从而存储预定的词典以及对应的大量的词双元词条或词三元词条,本发明学习的字典仅在优化的词典中存储提取出的重要的语言信息以及对应词单元的字典。因此,在字典中的所有信息对于语言处理来说都是必要的信息,这些信息仅需要较小的存储成本。
如下详细地描述了本发明的优点:
1.可以学习包括优化的词典的字典。所述优化的字典包括从语料中学习的多个重要的词和短语。
2.所述学习的字典包括优化的字典以及一些词性信息。帮助给出句子和词预测的所述字典的尺寸非常小,从而能够在移动电话上使用。
3.利用Patricia树索引为字典编索引。所述Patricia树索引的使用有助于快速地搜索词。因此,可以很容易地、快速地获得句子和词预测。
附图说明
通过对参考附图的下列优选实施例的具体描述,本发明的上述特征和优点将会变得非常明显,其中:
图1示出描述了本发明的字典学习装置和用户终端装置之间的关系的示意图;
图2A示出了由字典学习装置学习的字典的示意结构的示例;
图2B示出了由字典学习装置学习的字典的示意结构的另一示例;
图3示出了根据本发明的字典学习装置的方框图;
图4A示出了字典学习装置的字典学习处理模块的示例的详细的方框图;
图4B示出了字典学习装置的字典学习处理模块的另一示例的详细的方框图;
图5是一流程图,用于解释根据本发明的字典学习处理模块中的词典与统计语言模型学习单元执行的学习词典以及统计语言模型的过程;
图6是根据本发明的词典优化的流程图;
图7示出根据本发明第一实施例的用户终端装置的方框图;
图8A-8D示出用户终端装置的四个常规键盘的示意框图;
图9A示出利用最常规的输入方法输入汉字“今”时T9的输入序列;
图9B示出利用最常规的输入方法输入汉字“今天”时T9的输入序列;
图10示出在本发明的用户终端装置的输入处理单元的不同部分之间的连接关系的方框图;
图11示出本发明的用户终端装置的显示器的用户界面的示例;
图12示出由本发明用户终端装置的字典加索引模块执行的构建Patricia树索引的流程图;
图13示出本发明排序结果和Patricia树索引的示例;
图14示出由本发明用户终端装置的用户输入预测与调整模块执行的用户输入预测以及调整的过程的流程图;
图15示出用户终端装置的输入序列的示例;
图16示出根据本发明第二实施例的用户终端装置的方框图。
具体实施方式
下面将参考附图1描述示出了本发明的字典学习装置和用户终端装置之间的关系的示意图。字典学习装置1学习计算机可读字典2。用户终端装置3使用字典2帮助用户输入文本。字典学习装置1和用户终端装置3相互独立。字典学习装置1训练的字典2还可以用于其它的应用。字典学习装置1使用特定的字典学习方法以及特定的字典结构,以构建向用户提供快速输入的小尺寸的字典。
图2A示出了由字典学习装置学习的字典的示意结构的示例。在该示例中,部分2包括多个词条(部分21)。所述的词条不仅用于“词”(例如,“打扮”),而且是“短语”(例如,“打扮整齐”,“打扮整齐”,“打扮整齐干净”)。所述“短语”实际上是一复合词(由一序列的词构成)。为了避免在下述描述中的不便,术语“词”指的是传统的“词”和传统的“短语”两者。一些其它词的例子包括“今天”,“今天下午”,“今天下午八点”。部分21包括词干(术语“词干”和本发明中所述的词的含义相同)(部分211),词单元(部分212),该词所具有的若干词性(部分213)以及这些词性的对应概率(部分214),一些辅助词编码信息(部分215)。部分215可以是拼音(汉字的发音)编码信息或笔画编码信息或者是其它的编码信息。将哪种类型的部分215添加到部分21中取决于字典的应用。在下面描述的示例中,也可以不包括部分215。最后,部分22,即词性双元模型也包含在该示例中。该部分也取决于应用并且可以不包括在其它的示例中。正如对本领域的普通技术人员所显而易见的是字典2并不局限于汉字,它可以是任何类型的字典。对于日语,字典的所有部分与汉字相同,除了辅助词编码信息(部分215)应该是平假名编码信息而非拼音编码信息。例如,对于词“今晚”,平假名编码信息是“こんばん”。对于英语,字典的所有部分与汉字相同,除了应该省略辅助词编码信息,因为英语单词编码信息就是该单词的字符序列。对于韩语,字典的所有部分与汉字相同,除了辅助词编码信息(部分215)应该是韩语笔画编码信息,而不是拼音编码信息。例如,对于词韩语笔画编码信息是随后将描述由图4A所示的示例装置如何学习该字典。
图2B示出了由字典学习装置学习的字典的示意结构的另一示例。与图2A所示的示例相比较,在该示例中的字典不包括该词的词性(部分213),这些词性的对应概率(部分214)以及词性双元模型(部分22)。该字典的使用范围可以比第一示例的范围更广。它可以用在手写、语音识别后处理、输入方法以及其它语言相关的应用中。随后将描述由图4B所示的示例装置如何学习该字典。
下面将参考图3和图4A来描述学习图2所示的字典的字典学习装置1。如图3和图4A所示,字典学习装置1包括通过内部总线103连接的CPU 101,附件102,存储器104以及硬盘105。存储器104存储操作系统1041,字典学习处理模块1042以及其它的应用程序1043。硬盘105存储语料1051,字典学习文件1052以及其它的文件(未示出)。由字典学习装置1学习的字典2也存储在硬盘上。语料1051包括,例如,未标注的语料12和词性已标注的语料1051。字典学习文件1052包括词典11和统计语言模型14。字典学习处理模块1042包括词典与统计语言模型学习单元15,词性学习单元以及字典整合单元17。
由字典学习处理模块1042训练生成最后的字典2。字典学习处理模块1042读取语料1051并将词典11以及统计语言模型14写在硬盘上并在硬盘上输出最终的字典2。
词典11由词干的集合组成。起初,包括语言中的传统词的普通词典可以用作词典11。词典与统计语言模型学习单元15将学习最终的词典和统计语言模型,同时在此过程中对词典11进行优化。删除词典11中的一些不重要的词以及添加一些重要的词和短语。未标注的语料11是包括大量没有分割为词序列的文本但包括多个句子的文本语料(对于英语,一个句子可以通过一些例如空格的“标记”而分割为“词”序列。但是这些“词”仅仅是传统“词”,而不是包括了在本说明书中所称的“词”的传统“短语”)。词典与统计语言模型学习单元15处理词典11以及未标注的语料12,然后创建统计语言模型14(初始并不存在)。统计语言模型14包括词三元模型141以及词单元模型142。然后,词典与统计语言模型学习单元15使用统计语言模型14中的信息来优化词典11。词典与统计语言模型学习单元15重复这一处理过程并创建最终的词典11以及最终的词单元模型142。
词性已标注的语料13是利用对应词性标注词序列的语料。典型地,可以手工创建该语料,但其规模受到了限制。词性学习单元16扫描词性已标注的语料13的词序列。基于词典11,词性16为词典中的每一个词统计词性信息。计数一个词的所有词性以及其对应概率(字典2中的部分213)。对于词典11中没有在词序列中出现的词,手工地给予该词一个词性以及给出其对应的概率1。在该过程中利用传统的双元模型计算方法给出词性双元模型(字典2中的部分22)。
通过使用词单元模型142,词三元模型141,词典11,以及词性学习单元16给出的一些词性信息,字典整合单元整合上述的所有数据并添加一些应用程序所需的辅助词编码信息(字典2中的部分215),从而创建图2A中所描述的最终的字典2。
下面将参考图3和图4B描述学习字典的字典学习装置的另一示例。与图3和图4B所示的示例相比较,语料1051仅包括已标注的语料。字典学习处理模块1042不包括词性学习单元16。因此,在该示例中并不考虑词性相关的信息。字典整合单元17将词三元模型141,词单元模型142,词典11以及一些应用程序所需的辅助词编码信息(字典2中的部分215)整合为如图2B所示的最后的字典2。
图5是一流程图,用于解释由词典与统计语言模型学习单元15执行的学习词典以及统计语言模型的过程。首先,在步骤151将未标注的语料12分割为词序列。对于该分词步骤存在多种不同的方法。第一种方法是仅根据词典使用最大匹配来分割语料12。第二种方法是:在词单元模型142存在的情况下,根据词单元模型142利用最大似然来分割语料12;在词单元模型142不存在的情况下,根据词典利用最大匹配来分割语料12。最大似然是一种分词的标准方法,如等式(1)所示:
在等式(1)中,S{w1w2…wns}表示词序列w1w2…wns。P(S{w1w2…wns})表示该词序列的似然概率。优化的词序列为
在步骤152,接收分割的词序列,以及利用常规的SLM创建方法创建统计语言模型14,其中所述统计语言模型包括词三元模型141以及词单元模型142。
在步骤153,使用步骤152中创建的词三元模型评价在步骤151产生的词序列的困惑度(Perplexity)。如果是第一次计算困惑度,则处理直接进行到步骤154。否则,将新获得的困惑度与旧的困惑度相比较。如果新的困惑度降低的数值超过了预定的阈值,则处理进行到步骤154;否则处理进行到步骤155。
在步骤154,根据新创建的词三元模型141利用最大似然来将语料12重新分割为词序列,并执行步骤152。
在步骤155,根据统计语言模型中的一些信息将一些新词添加到词典中并从词典中删除一些不重要的词,从而优化了词典。在下面的段落中将描述如何进行词典优化。一个新词通常是词三元模型141中的三元词条或双元词条的词序列组成的新词。例如,如果“今天”,“下午”和“八点“都是当前词典中的词,则双元词条“今天 下午”或者三元词条“今天 下午 八点”可能成为优化后的词典中的新词。如果这两个词都被添加了,则优化后的词典应该包括词“今天 下午”以及词“今天 下午 八点”。
在步骤156,评价词典。如果在步骤155词典并没有改变(没有添加新词也没有删除不重要的词),则词典与统计语言模型学习单元15停止该处理。否则该处理进行到步骤157。
在步骤157,由于词三元模型141和词单元模型142与新创建的词典不再对应,因此词三元模型141和词单元模型142不再有效。此时根据新的词典更新词单元模型;从词三元模型得到新词的词单元出现概率;并且删除被删除的词单元词条。最后,删除词三元模型141并重复执行步骤151。
图6示出了根据本发明的词典优化的流程图。当词典优化开始时,存在两条要执行的路径。一条是执行步骤1551,另一条是执行步骤1554。可以选择任何一条路径先执行。
首先,在步骤1551,利用出现计数阈值过滤出所有的三元词条(例如“今天 下午 八点”)以及双元词条(例如“今天 下午”),例如,在语料中出现次数超过100的所有词条都被选择到新词候选列表中。由此创建了一个新词候选列表。在步骤1552,通过互信息阈值过滤出所有的候选词。如下定义了互信息:
其中f(w1,w2…wn)表示词序列(w1,w2…wn)的出现频率.这里(w1,w2…wn)作为新候选词,n等于2或3。例如,对于w1今天,w2下午以及w3八点,候选词“今天 下午 八点”的互信息是从候选词列表中删除互信息小于阈值的所有候选词。
在步骤1553,为新候选词列表中的每个候选词计算相对熵。如下定义了相对熵:
其中P(w1,w2,…,wn)是当前词三元模型给出的词序列(w1,w2…wn)的似然概率。然后在步骤1553,按照相对熵的降序顺序排序所有的候选词。
在进行到步骤1557之前,必须首先处理右边的路径(步骤1554~1556)。右边的路径是删除一些不重要的词(例如“革命委员会”)以及一些“伪词”。当将一词序列添加为新词时,它可能是“伪词”(例如“今天下”)。因此,需要删除一些词典词条。
在步骤1554,通过出现计数阈值过滤出所有的词,例如,在词典中出现次数小于100的所有词都被选择到删除词候选列表中。由此创建了一个包括要删除的候选词的删除候选词列表。
在步骤1555,将删除候选词列表中的每个词分割为其它的词序列。例如,将革命委员会”分割为“革命”,“委员会”。该分词方法与步骤151或步骤154所描述的分词方法类似。可以使用这两个步骤中的任何一种方法。
与步骤1553类似,在步骤1556计算每个候选词的相对熵。然后,以相对熵的升序顺序排序所有的候选词。
在步骤1557,采用策略依据两个候选词列表来确定应该添加多少新候选词以及应该删除多少候选词,所述候选词列表是:一个是有关新词的列表,另一个是有关删除词的列表。所述策略可以是一个规则或多个规则。例如,使用相对熵的阈值,或使用词典中的词的总数作为判断手段,或者使用上述这两种判断手段。最后,更新该词典。
如何进行词典优化是非常重要的。在词典优化过程中,将初始仅是一些词序列的重要的短语添加到词典中作为新词,因此,可以将在初始的词单元模型中并不存在的一些重要的语言信息提取到最终的词单元模型中。并且,从初始的词单元模型中删除一些不重要的语言信息。所以,最终的词单元模型可以保持有小尺寸而在进行语言预测时却具有更好的性能。这也是本发明能够提供一种小尺寸的词典的同时能在进行句子和词的预测时具有良好性能的重要的原因。
图7示出了根据本发明第一实施例的用户终端装置的方框图。如图7所示,由总线34连接处理器31,用户输入终端32,显示器33,RAM 35以及ROM(闪存)36并使其交互作用。输入处理单元3601中包括输入编码解译器362,字典加索引模块363,用户输入预测与调整模块364。在ROM 36上装载有输入处理单元3601,字典2,字典索引366,操作系统361以及其它的应用程序365。
图8A-8D示出本发明所采用的用户终端装置的四个常规键盘的示意框图。用户输入终端32可以是任何类型的用户输入装置。如图8A所示,一个示例的用户输入终端32是数字键盘,其中每个数字按键代表拼音编码。按键321是数字“4”,代表拼音字符“g”或“h”或“i”。按键322是功能键,用户可以使用这种按键进行一些动作。例如,点击该按键若干次从而从候选列表中选出正确的候选词。所述的示例的用户输入终端也可以应用于英文输入。因此每个数字按键代表若干字母表字符。用户输入终端32的另一个例子是图8B所示的数字键盘,其中每个数字按键代表若干笔画编码。在图8B中,按键321是数字“4”,代表笔画“、”。用户输入终端32的第三个例子是日语输入所采用的数字键盘。在该例中,每个数字按键代表若干平假名。在图8C中,按键321是数字“4”,代表平假名“た”或“ち”或“つ”或“て”或“と”。用户输入终端32的第四个例子是用于韩文输入的数字键盘。在该例中,每个数字键盘代表若干韩语笔画。在图8D中,按键321是数字“4“,代表韩语或或用户输入终端32的第五个例子是可以记录笔迹的触摸板。通过某些触摸屏的笔可以记录用户的一些动作。
图10示出了图7所示的用户终端装置的输入处理单元中的不同部分之间的连接关系的方框图。在用户输入预测与调整模块364工作之前,字典加索引模块363读取字典2并将字典索引366加到ROM 36中。字典索引366是基于对应词编码信息的字典2中的所有词条的索引。对于第一个示例的用户输入终端32,词的编码信息是数字序列。例如,词“今天”的拼音是“jintian”,所以其编码信息是“5468426”。对于第二个示例的用户输入终端32,词的编码信息是数字序列。例如,词“今天”的笔画是因此其编码信息为“34451134”.对于第三个示例的用户输入终端32,词的编码信息也是数字序列。例如,词“今晚”的平假名是“こんばん”,因此编码信息是“205#0”。对于第四个示例的用户输入终端32,词的编码信息是数字序列。例如,词的韩语笔画是因此编码信息为“832261217235”。对于第五个示例的用户输入终端32,词的编码信息是Unicode(统一的字符编码标准)序列。例如,词“今天”的Unicode是“(4ECA)(5929)”,所以编码信息为“(4ECA)(5929)”。
用户输入终端32接收用户输入并将其通过总线34发送到输入编码解译器362。输入编码解译器362将用户输入解译为编码信息或用户动作,并将其传送到用户输入预测与调整模块364。该编码信息可以是确定的或者是随机的。对于第一个示例的用户输入终端32,输入编码解译器362将每个按键点击解译为确定的数字代码(“0”~”9”),代表几个可能的拼音字符(“a”~”z”)。对于第二个示例的用户输入终端32,输入编码解译器362将每个按键点击解译为确定数字代码(“0”~”9”),代表笔画字符对于第三个示例的用户输入终端32,输入编码解译器362将每个按键点击解译为确定数字代码(“0”~”9”以及“#”),代表几个可能的平假名。对于第四个示例的用户输入终端32,输入编码解译器362将每个按键点击解译为确定数字代码(“0”~”9”),代表几个可能的韩语笔画。对于第五个示例的用户输入终端32,输入编码解译器362将每个笔迹解译为随机变量,其表示若干可能的Unicode以及对应概率。(输入编码解译器362可以是手写识别引擎,其将笔迹识别为一组候选汉字以及对应的概率)。
用户输入预测与调整模块364接收由输入编码解译器362发送的已解译的编码信息或用户动作。基于词典2和词典索引366,产生用户输入结果并将其通过总线34发送到显示器33。显示器33向用户显示输入方法产生的结果以及与该输入方法相关的其它信息。图11示出了用户终端装置的显示器33的用户界面。
该显示器所显示的用户界面包括输入状态信息区域331以及输入结果区域332。在区域331,显示了用户输入3311和输入方法状态3312。区域3311指示已经由用户输入的当前数字序列。区域3312指示当前输入方法是拼音的数字键盘输入方法。在区域332,显示了用户输入预测与调整模块364给出的结果。句子预测3321是由用户输入预测与调整模块364根据输入的数字序列3311的阴影部分(当前词部分)给出的所有当前候选词的列表。在该列表中的所有候选词具有相同的词编码信息,即,数字序列“24832”。当前的预测候选词3323是有关所有预测的当前候选词的列表,预测候选词3323由用户输入预测与调整模块364根据输入的数字序列3311的阴影部分(当前的词部分)给出。在该列表中所有候选词的词编码信息的头五个数字具有相同的数字序列“24832”。(出发点”248323426”,厨房”2483234”,出访”2483234”)。可以改变该显示器33的用户界面的布局以及可以去除或改变每个组成部分。
图12示出了由字典加索引模块363执行的构建Patricia树索引的流程图。在步骤3631,字典加索引模块363读取字典2。根据特定的用户输入终端,给出每个词的编码信息。然后,在步骤3632,首先根据词条的编码信息对词条进行排序。如果两个词条的编码信息是相同的,则利用词单元进行排序。根据排序结果,构建该字典的Patricia树索引。Patricia树索引可以存储大量的记录并提供对记录的快速连续的搜索。最后,将Patricia树索引写入字典索引中。
图13示出了本发明排序结果和Patricia树索引的示例。通过上述的Patricia树索引使用字典索引366,用户输入预测与调整模块364在接收到新的用户输入动作时执行快速的词搜索。例如,首先给出“2”,用户输入预测与调整模块364一步就可以搜索到节点“2”,并将该节点记录在存储器中。在下一步,当输入“3”时,用户输入预测与调整模块364仅一步就从节点“2”搜索到节点“23”。在每个节点中,可以很容易地获得用于计算对应的候选词和预测候选词的信息。
图14示出由本发明用户终端装置1的用户输入预测与调整模块364执行的用户输入预测以及调整的过程的流程图。在步骤3641,接收来自输入编码解译器362的用户输入信息并判断该信息是用户动作还是编码信息。如果是用户动作信息,则将执行步骤3648。否则将执行步骤3642。
在步骤3642,使用用户输入编码信息,并根据该编码信息沿字典索引366的Patricia树索引向前递推一步。这意味着用户输入预测与调整模块364存储了当前Patricia树节点的列表。当添加新的编码信息时,使用列表中的节点作为起始点,步骤3642顺着Patricia树索引向前递推一步以搜索新的Patricia树节点。如果新的编码信息为添加的初始编码信息,则步骤3642从Patricia树的根节点开始。也就是说,对于图12中的示例Patricia树,如果“2”为输入的初始编码信息,步骤3642从根节点开始检索Patricia树中的新节点“2”。然后,将“2”和根节点设置为当前的Patricia树节点。如果“3”为输入的第二编码信息,在步骤3642,从当前节点“2”检索新节点“23”以及从当前节点中的根节点检索新节点“3”。最后,将节点“23”,节点“3”以及根节点设置为当前节点。
在步骤3643,如果没有搜索到新的节点,则处理进行到步骤3644。这意味着该编码信息无效。否则,处理进行到步骤3645。
在步骤3644,忽略该编码信息并重置所有的结果和状态为未加入此信息前的值。然后,处理返回到步骤3641等待下一用户输入信息。
在步骤3645,接收新的Patricia树节点,并将其设置为当前的Patricia树节点。每个当前节点表示所有输入编码信息的可能的当前词的集合。然后在该步骤进行句子预测,从而确定最有可能的词序列。最有可能的词序列是最终的句子预测。例如,分别将“2”和“3”添加为第一和第二用户输入编码信息。当前节点是“23”,“3”以及根节点。具有编码信息“23”的词是仅具有一个词的词序列。这也是一种可能的句子(“测”是可能的句子)。具有编码信息“3”的词可以在具有编码信息“2”的词之后并形成两个词序列“2”-“3”。这是另一种可能的句子(“阿 恶”为可能的句子,“啊 恶”也是可能的句子)。如何确定最可能的句子可以表述为:给出编码序列I,找出与I相对应的最可能的词序列根据等式(4)可以解决这一问题:
是词w1所具有的所有词性的集合。是词wn的词性之一。
在步骤3646,确定在句子预测中的当前词。在步骤3646,根据该词的Patricia树节点,推出当前候选词和预测的当前候选词。例如,假设句子预测是“阿恶”,当前词是“恶”。则针对当前词的Patricia树节点是节点“3”。因此,当前候选词列表仅包括一个词“恶”,而预测的当前候选词列表中没有词。
最后,在步骤3647输出要显示的结果,处理返回到3641等待下一个用户输入信息。
如果用户输入信息是用户动作,则步骤3648根据结果采取一些对应的调整。例如,如果用户从当前候选词列表中选择第二个词,则应该将句子预测中的当前词改变为根据所选择的词的新的当前词。例如,如果用户根据该句子预测结果点击“F2”(意指OK),则将如图11所示的句子预测3321发送到当前的用户应用程序,并清除区域332中的数字序列331以及所有的结果。
图15示出使用图8A所示的键盘的用户终端装置3的示例输入序列。在该图中,用户通过第一示例的用户输入终端32使用拼音输入汉字“今天下午”。
图16示出根据本发明第二实施例的用户终端装置的方框图。该实施例示出两部分:用户终端装置和计算机。而图7所示的第一实施例仅包括一个移动终端。这两个实施例之间的区别在于:第二实施例的用户终端装置采用了计算机中的字典加索引模块366。字典加索引模块366处理字典并将字典索引366输出到计算机的硬盘上。而将字典2和字典索引366装载在用户终端装置的ROM(Flash)中。可以通过用户输入终端装置提供商所提供的工具进行装载处理。然后,用户输入预测与调整模块364可以像第一实施例中的用户终端装置那样工作。
从上述可以看出,虽然已经详细的描述了示例性的实施例,本领域的普通技术人员将会明白可能会有各种修改,添加以及替换,而不偏离附后的权利要求书所要求的本发明的保护范围以及本发明的精髓。
Claims (11)
1.一种用于处理用户输入的输入方法,其中所述方法包括:
接收步骤,用于接收用户输入;
解译步骤,用于将用户输入解译为编码信息或用户动作,其中基于字典预先获得字典中的每个词的编码信息;
用户输入预测与调整步骤,用于在接收到编码信息或用户动作时,根据字典中的统计语言模型和词性双元模型利用字典索引中的Patricia树索引给出句子与词预测,并根据用户动作调整句子和词预测;
显示步骤,用于显示句子和词预测的结果,
其中用户输入预测与调整步骤包括下列步骤:
a)接收解译的编码信息或用户动作;
b)如果接收到的是用户动作,则修改预测结果,并执行步骤h);
c)如果接收到的是编码信息,则根据编码信息从所有的当前Patricia树节点搜索所有可能的Patricia树索引的新Patricia树节点;
d)如果不存在任何新Patricia树节点,则忽略所述编码信息并重置所有的搜索结果,并返回步骤a);
e)如果存在新Patricia树节点,则将新Patricia树节点设置为当前的Patricia树节点;
f)从当前的Patricia树节点搜索所有的可能词并给出句子预测;
g)根据句子预测结果确定当前词,并给出词预测,所述词预测包括候选词列表和预测候选词列表;以及
h)输出预测结果以显示,并返回步骤a)。
2.如权利要求1所述的用于处理用户输入的输入方法,其中接收步骤接收汉字输入。
3.如权利要求1所述的用于处理用户输入的输入方法,其中接收步骤接收非汉字输入。
4.如权利要求2所述的用于处理用户输入的输入方法,其中所述汉字输入包括拼音输入、笔画输入以及笔迹输入之一。
6.一种用于处理用户输入的用户终端,其中所述用户终端包括:
用于接收用户输入的接收装置;
用于将用户输入解译为编码信息或用户动作的解译装置,其中基于字典预先获得字典中的每个词的编码信息;
用于在接收到编码信息或用户动作时,根据字典中的统计语言模型和词性双元模型利用字典索引中的Patricia树索引给出句子和词预测,并根据用户动作调整句子和词预测的用户输入预测与调整装置,
用于显示句子和词预测的结果的显示装置;
其中用户输入预测与调整装置用于:
a)接收解译的编码信息或用户动作;
b)在接收到的是用户动作时,修改预测结果,并执行h);
c)在接收到的是编码信息时,根据编码信息从所有的当前Patricia树节点搜索所有可能的Patricia树索引的新Patricia树节点;
d)在不存在任何新Patricia树节点时,忽略所述编码信息并重置所有的搜索结果,并返回a);
e)在存在新Patricia树节点时,将新Patricia树节点设置为当前的Patricia树节点;
f)从当前的Patricia树节点搜索所有的可能词并给出句子预测;
g)根据句子预测结果确定当前词,并给出词预测,所述词预测包括候选词列表和预测候选词列表;以及
h)输出预测结果以显示,并返回a)。
7.如权利要求6所述的用于处理用户输入的用户终端,还包括:用于给出字典中每个词条的编码信息,根据编码信息和词单元对所有词条进行排序,构建Patricia树索引并将其添加到字典索引中的字典加索引装置。
8.如权利要求6所述的用于处理用户输入的用户终端,其中所述接收装置用于接收汉字输入。
9.如权利要求6所述的用于处理用户输入的用户终端,其中所述接收装置用于接收非汉字输入。
10.如权利要求8所述的用于处理用户输入的用户终端,其中所述汉字输入包括拼音输入、笔画输入以及笔迹输入之一。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100867891A CN101266599B (zh) | 2005-01-31 | 2005-01-31 | 输入方法和用户终端装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100867891A CN101266599B (zh) | 2005-01-31 | 2005-01-31 | 输入方法和用户终端装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100067089A Division CN100530171C (zh) | 2005-01-31 | 2005-01-31 | 字典学习方法和字典学习装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101266599A CN101266599A (zh) | 2008-09-17 |
CN101266599B true CN101266599B (zh) | 2010-07-21 |
Family
ID=39989022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008100867891A Expired - Fee Related CN101266599B (zh) | 2005-01-31 | 2005-01-31 | 输入方法和用户终端装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101266599B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902362B (zh) * | 2011-07-25 | 2017-10-31 | 深圳市世纪光速信息技术有限公司 | 文字输入方法及系统 |
CN103096154A (zh) * | 2012-12-20 | 2013-05-08 | 四川长虹电器股份有限公司 | 基于传统遥控器的拼音输入方法 |
CN106873801A (zh) * | 2017-02-28 | 2017-06-20 | 百度在线网络技术(北京)有限公司 | 用于生成输入法词库中的词条组合的方法和装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1316696A (zh) * | 2000-04-06 | 2001-10-10 | 国际商业机器公司 | 用于网络处理器的全匹配搜索方法和设备 |
CN1387651A (zh) * | 1999-11-05 | 2002-12-25 | 微软公司 | 词典、分段和语言模型联合优化的系统和迭代方法 |
-
2005
- 2005-01-31 CN CN2008100867891A patent/CN101266599B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1387651A (zh) * | 1999-11-05 | 2002-12-25 | 微软公司 | 词典、分段和语言模型联合优化的系统和迭代方法 |
CN1316696A (zh) * | 2000-04-06 | 2001-10-10 | 国际商业机器公司 | 用于网络处理器的全匹配搜索方法和设备 |
Non-Patent Citations (2)
Title |
---|
杨文峰等.基于PATRICIA tree的汉语自动分词词典机制.中文信息学报15 3.2001,15(3),44-49. |
杨文峰等.基于PATRICIA tree的汉语自动分词词典机制.中文信息学报15 3.2001,15(3),44-49. * |
Also Published As
Publication number | Publication date |
---|---|
CN101266599A (zh) | 2008-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100530171C (zh) | 字典学习方法和字典学习装置 | |
US11416679B2 (en) | System and method for inputting text into electronic devices | |
US11614862B2 (en) | System and method for inputting text into electronic devices | |
US10402493B2 (en) | System and method for inputting text into electronic devices | |
CN100334530C (zh) | 简化键盘多义性消除系统 | |
US8713432B2 (en) | Device and method incorporating an improved text input mechanism | |
EP1950669B1 (en) | Device incorporating improved text input mechanism using the context of the input | |
CN105094368A (zh) | 一种对输入法候选项进行调频排序的控制方法及控制装置 | |
CN101449318A (zh) | 利用键区的多字符键输入字母数字数据的设备和方法 | |
CN101266599B (zh) | 输入方法和用户终端装置 | |
JP3532780B2 (ja) | 音声仮名文字の入力順序を生成するための入力システム | |
CN100465860C (zh) | 数字键盘智能拼音汉字输入方法 | |
JP3492981B2 (ja) | 音声仮名文字の入力順序を生成するための入力システム | |
CN102004560B (zh) | 语句级汉字输入方法中的用户词识别方法与机器学习系统 | |
Nalavade et al. | PreText: A Predictive Text Entry System for Mobile Phones | |
CN115145406A (zh) | 文本输入方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100721 Termination date: 20170131 |
|
CF01 | Termination of patent right due to non-payment of annual fee |