基于语言模型的智能移动平台拼音输入法的制作方法

文档序号:6373574阅读:178来源:国知局
专利名称:基于语言模型的智能移动平台拼音输入法的制作方法
技术领域
本发明涉及智能信息处理技术领域,具体是一种应用于移动平台上使输入更人性化、更准确的基于语言模型的智能移动平台拼音输入法。
背景技术
汉字能否输入计算机,计算机能否输出汉字,这曾经是人们十分关注的问题。人类社会已经进入信息化社会,信息化社会的一个最主要的特征就是利用电子计算机之类的现代化技术和设备对语言文字信息进行各种处理,诸如储存、分类、统计、检索、转换、传输、控制等,使之得到最充分的利用,发挥其最大效能。汉字如果不能进入计算机,汉字信息不能用计算机进行处理,以汉字信息处理系统作为关键部分的汉语书面语处理系统也就不可能建立,那么,计算机在涉及中文的各个领域的应用,如中文印刷出版的现代化,中文科技情报检索的现代化,办公事务的自动化等都将成为一句空话。汉字的信息处理与我们国家的现代化建设密切相关,是一项十分重要的语言工程,对我国社会的发展、科技的进步具有重大的现实意义和深远的历史意义。输入法作为一个操作系统非常基本的东西,是人们和计算机,网络等交互的入口。因此,一个准确高效的输入法将会很大的程度上改变人们的行为习惯,改变人们的生活。传统的PC平台的拼音输入法由于其输入键盘的固定模式键盘是固定的,且只能通过敲击输入,所以很难进一步提高用户的输入体验以及输入的准确度。随着手机智能操作系统的普及,移动平台如android和ios的开发也逐渐吸引了人们越来越多的目光。由于移动平台具有独特的空间小,且需用户手持的特点,所以很难像PC平台的输入法那样在一个大的键盘上进行快速的双手同时输入。同时,有些采用不固定的可变键盘输入,给已经习惯了传统键盘布局的用户输入带来不习惯,操作不便,容易造成输入错误。因此,急需对现有的输入法模型进行利用和改造,提供一种充分利用移动平台的空间小、键盘不固定等特征,提高输入的准确度和高效的程度的拼音输入法。

发明内容
本发明的目的在于针对现有技术中存在的不足,提供一种基于语言模型的智能移动平台拼音输入法,是一种基于汉字和拼音音节的语言模型来对输入进行智能预测和提示的输入法改进方案,其应用于目前比较流行的移动平台如android或ios,能够有效保证用户输入的准确性和速度,提高用户输入效率。为达到上述目的,本发明提供一种基于语言模型的智能移动平台拼音输入法,对用户输入的拼音串,在解码的同时给出提示,包括以下步骤(I)对拼音文本进行训练,得到基于字母的语言模型和基于拼音的语言模型。(2)对于用户已经输入的拼音串,采用HMM解码方法进行解码;(3)构建输入法平台,对下一步输入进行预测,并根据预测结果给出输入提示,具体为
(31)根据步骤(I)训练出的基于字母的语言模型进行预测,获取所有单个拼音字母后可能出现的所有合理输入字母及其出现的概率;(32)根据步骤(I)训练出的基于拼音的语言模型进行预测,获取所有可能的拼音前缀后可能出现的所有合理输入字母及其出现的概率;(33)当用户输入的一个拼音字母后,综合考虑步骤(31)、(32)两部分的信息获取所有下一个可能的合理输入字母及其概率,并比较每一可能的合理输入字母的概率大小,根据比较结果实现输入预测并进行输入提示。
依照本发明较佳实施例所述的基于语言模型的智能移动平台拼音输入法,上述基于字母的语言模型和基于拼音的语言模型分别为基于字母的语言模型为P (y I x) =count (xy) /count (χ);其中p(y|x)表示给定字母χ的情况下,下一字母为y的概率,count表示计数函数;coun(xy)表示xy共现的次数;基于拼音的语言模型为y=argmax {p (y | χ)},其中p(y|x)表示给定当前字母x,下一个字母为y的概率。依照本发明较佳实施例所述的基于语言模型的智能移动平台拼音输入法,上述的输入提示采用按键提示方式每一可能输入的字母对应的按键会变大变亮。依照本发明较佳实施例所述的基于语言模型的智能移动平台拼音输入法,上述的输入提示还包括连线提示每一预测按键与当前字母对应的按键之间进行连线提示,根据概率的大小不同,对应字母之间的连线粗细相应的不同,概率越大,线条越粗,概率越小,线条越细。依照本发明较佳实施例所述的基于语言模型的智能移动平台拼音输入法,步骤
(33)之后还包括(34)判断各字母连线之间是否有重叠连线,若有重叠,对键盘进行微调,使重叠按键的位置错开。本发明应用于目前比较流行的移动平台如android或ios,该输入法充分利用移动平台输入法键盘的特点,在尽可能的保证用户的输入习惯的情况下,利用拼音及字母的语言模型对用户的输入进行智能化的预测和提示,大大减少过度预测对用户造成的干扰,不会出现组合歧义造成的预测盲点。并且,本发明能够进行有效的按键屏蔽与输入路线提示及键盘微调,使得已经习惯了传统键盘布局的用户输入更加快速、准确,克服了之前有些采用可变键盘输入而带给用户的不习惯,提高了用户输入的准确率和流畅性,大大提高输入的效率。


图I至图5为本发明实施例一中根据用户输入提示的界面显示示意 图6为本发明实施例二中直接输入i后提示的界面显示示意 图7为输入为实施例二中输入shani后提示的界面显示示意图。
具体实施例方式下面对本发明的实施例作详细说明本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。本发明是基于一个已经收集好的1998年版的人民日报语料库上进行训练出的语言模型来进行的,如果S表示一连串特定顺序排列的词Wl,W2,…,Wn,换句话说,S可以表示某一个由一连串特定顺序排练的词而组成的一个有意义的句子。现在,机器对语言的识别从某种角度来说,就是想知道S在文本中出现的可能性,也就是数学上所说的S的概率用P(S)来表示。利用条件概率的公式,S这个序列出现的概率等于每一个词出现的概率相乘,于是P(S)可展开为P⑶=P(W1)P(W21W1)P(W31W1W2) ...P(WnIW1W2…Wlri)。其中 P(W1)表示第一个词W1出现的概率;P(W2|W1)是在已知第一个词的前提下 ,第二个词出现的概率;以次类推。不难看出,到了词\,它的出现概率取决于它前面所有词。从计算上来看,各种可能性太多,无法实现。因此我们假定任意一个词Wi的出现概率只同它前面的词Wp1有关(即马尔可夫假设),于是问题就变得很简单了。现在S出现的概率就可以表示为p⑶=P (Wl)P (W21 Wl)P (W31W2)…P (Wi I Wi^1)…这就是一个二元的语言模型。当然语言模型十分复杂,可以有各种各样的平滑及优化方法,而且基本大部分的自然语言处理相关的应用都离不开languagemodel,例如文本分类,机器翻译等等。—种基于语言模型的智能移动平台拼音输入法,对用户输入的拼音串,在解码的同时给出提示,包括以下步骤(I)对拼音文本进行训练,得到基于字母的语言模型和基于拼音的语言模型。其中,基于字母的语言模型为P (y I x) =count (xy) /count (χ);其中p(y|x)表示给定字母χ的情况下,下一字母为y的概率,count表示计数函数,count (xy)表示xy共现出现的次数,次数统计可以由汉语拼音的集合统计得到。基于拼音的语言模型为y=argmax {p (y | χ)},其中ρ (y I χ)表示给定当前字母X,下一个字母为y的概率。(2)对于用户已经输入的拼音串,采用HMM解码方法进行解码;(3)构建输入法平台,对下一步输入进行预测,并根据预测结果给出输入提示,具体为(31)根据步骤(I)训练出的基于字母的语言模型进行预测,获取所有单个拼音字母后可能出现的所有合理输入字母及其出现的概率。比如,字母η后面的合法输入字母有6个分别是a, V, U,i, e, O。字母ο后面的合法输入字母只有I个U。(32)根据步骤(I)训练出的基于拼音的语言模型进行预测,获取所有可能的拼音前缀后可能出现的所有合理输入字母及其出现的概率;根据汉语拼音的规则,我们可以知道一个字母后可以跟的字母是有限的。比如字母ζ后面的合法输入字母只有6个,分别是a,U,i,h,e,O。字母组合za是一个拼音前缀,后面的合法输入字母只有3个,分别是i,ο, n。zan是一个拼音前缀,后面的合法输入字母只有一个g。那么当用户输入某一字母的时候,我们就可以利用基于拼音的语言模型根据用户之前的输入记录计算出所有可能的下一个字母以及其出现的概率。该步骤拼音部分的功能是针对用户的当前输入字母与之前的输入记录,预测下一个可能出现的字母及其出现概率。方法如下按31,32部分提到的方法提取出全部字母与全部拼音前缀之后可能出现的字母,同时记录完整拼音前缀,比如za它是一个前缀,因为它后面可能跟n,但它也是一个完整的拼音,这种前缀就称为完整拼音前缀;zh就只是一个前缀,它不完整。对于完整拼音前缀之后再输入字母·的预测,如果新输入字母与原前缀可以构成新前缀,则要综合考虑新前缀的后续可能字母与该输入字母的后续可能字母;如果不能构成新前缀,则只需考虑该字母的后续可能字母。比如za是完整前缀,用户再输入n,由于zan也是一个前缀,预测就要考虑zan后可能跟的字母与η之后可能跟的字母;如果用户输入g,由于zag不是前缀,则只需考虑g之后的可能字母。对于非完整拼音前缀则只需考虑新前缀即可,比如Zh之后输入a就只需考虑Zha之后会跟哪些字母。(33)当用户输入的一个拼音字母后,综合考虑步骤(31)、(32)两部分的信息获取所有下一个可能的合理输入字母及其概率,并比较每一可能的合理输入字母的概率大小,根据比较结果实现输入预测并进行输入提示。比如,用户已经输入了 za,然后输入了 n,这时用21的模型得到字母η之后下一个可能的输入字母为a,v, u,i,e,ο ;由22的模型得到前缀zan之后下一个可能的输入字母为go综合考虑得到在当前情况下,下一个可能出现的全部字母组合为a,v, u,i, e, o, g ;这样就实现了输入过程中的键盘预测。对于概率提取方法的说明对训练语料的所有字转换成拼音,然后统计31,32模型中各情况出现的次数。比如,对于语料中的“您”,转换成拼音是“nin”,这样η之后出现i的次数就加1,ni之后出现η的次数加1,最后得到一张模型关系对应表。具体地,在该表中,每一行的格式如下(拼音前缀)/(下一个可能的字母)(下一个可能字母出现的次数),(下一个可能的字母)(下一个可能字母出现的次数)...例如yin/i 2894, g 2744, /I ;表示拼音前缀是yin,之后可能跟的拼音字母是g,在人民日报中出现yin之后跟g这种情况的次数是2744次;@表示yin是一个拼音前缀,也可以是一个独立拼音,也就是yin可以是独立汉字的拼首,即yin之后没有后续拼首字母。§2894表示在人民日报语料中yin作为一个独立的拼音出现的次数是2894次。/I与@的意思一样,表示yin可以作为一个独立的拼音,主要是处理时方便。当拼音前缀不能作为独立字母出现时就不会有@ 了,例如qio/n 282,/0 ;qio并不是一个独立的拼音,也就是它并不完整,用户还应继续输入;/0表示qio不可以作为一个独立拼音。相应的字母及其对应的概率格式如下n/a 3097, v614, u533, 3865, el928, o778。这样就可以很容易的得知η之后出现a,i的概率要远大于V,U,所以在键盘热区分配上会有侧重,这个概率是对键盘预测用户体验的一个重要辅助依据。本发明具体的输入提示采用按键提示及连线提示的方式每一可能输入的字母对应的按键会变大变亮。并且,每一预测按键与当前字母对应的按键之间进行连线提示,根据概率的大小不同,对应字母之间的连线粗细相应的不同,概率越大,线条越粗,概率越小,线条越细。(34)判断各字母连线之间是否有重叠连线,若有重叠,对键盘进行微调,使重叠按键的位置错开。得到预测结果后,还需要在移动平台上进行界面的有效提示。对于当前输入的字母提示出所有的N个字母,进行按键亮度与大小调节及连线提示。例如,当前的输入为g,那么可能接的字母可能是e,u,a,根据每一字母概率的不同,对应字母按键之间的连线粗细会相应的不同。而对于不可能的字母,则设置为不可点击状态。但是,由于键盘是固定的,很有可能字母的连线之间可能会有重叠。那么这个时候就需要对键盘进行微调。例如,当输入字母y的时候,其后可能跟u和I,那么当下一步想输入i的话就必然会经过U,划线发生了重叠,使得提示模糊。所以,此时需要微调u和i的位置,使其错开,有利于连线的提示。例如,可以微调u的位置向上,同时微调i的位置向下。通过这样的智能提示,用户输入的按键选择将大大降低,因此我可以把活跃按键做的很大,降低用户输入的出错率,提高输入效率。同时也为滑动输入引入辅助提供可能。以下结合具体应用实施例对本发明进行详细说明。以下实施例的数据取自人民日报训练出的语言模型以及一个固定的汉语拼音字典。实施例一下面以shang的输入过程为例加以说明。下面结合图I至图5,以shang的输入过程为例加以说明。请同时参阅图I至图5,首先,用户输入S,下一个可能输入的按键会变大变量,线的粗细表示下一个按钮的出现概率大小。然后用户就可以很自然的按h ;再按a,请注意,一个拼音输入的越靠后,备选项越少,越不容易按错。再按η后出现唯一的提示;最后按g,系统会自动判断出用户已经输入完一个完整的拼音了,所以没有下一步的预测,键盘回复原状,等待用户的下一个输入。本发明对键盘的预测是基于单个拼音的,即预测只针对一个字,当一个字输入结 束后,系统预测结束,等待用户输入第二个字。这样可以大大减少过度预测对用户造成的困让。此外,任何用户输入的拼音可能,这个键盘都可以预测到,不会出现那些因为组合造成歧义的预测盲点。如实施例二。实施例二比如用户输入shan之后再输入i,系统是按照shani与shan i来预测的,不会漏下任意种情况。例,用户直接输入i :如图6所示,由于拼音规则中没有任何i开始的组合,所以键盘预测为空。但如果用户输入了 shani,如图7所示,系统会按照ni继续预测,所以会有下一步预测。
综上所述,本发明的键盘预测方法能够保证不论用户输入什么拼音,它都可以准确预测下一个可能出现的字母,并且可以正确的停止,不会过多出现过预测对用户造成困扰。以上所述,仅是本发明的较佳实施实例而已,并非对本发明做任何形式上的限制,任何未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施实例所作的任何简单修改、等同变化与修饰,均属于本发明技术方案的范围。
权利要求
1.一种基于语言模型的智能移动平台拼音输入法,对用户输入的拼音串,在解码的同时给出提示,其特征在于,包括以下步骤 (1)对拼音文本进行训练,得到基于字母的语言模型和基于拼音的语言模型; (2)对于用户已经输入的拼音串,采用HMM解码方法进行解码; (3)构建输入法平台,对下一步输入进行预测,并根据预测结果给出输入提示,具体为 (31)根据步骤(I)训练出的基于字母的语言模型进行预测,获取所有单个拼音字母后可能出现的所有合理输入字母及其出现的概率; (32)根据步骤(I)训练出的基于拼音的语言模型进行预测,获取所有可能的拼音前缀后可能出现的所有合理输入字母及其出现的概率; (33)当用户输入的一个拼音字母后,综合考虑步骤(31)、(32)两部分的信息获取所有下一个可能的合理输入字母及其概率,并比较每一可能的合理输入字母的概率大小,根据比较结果实现输入预测并进行输入提示。
2.如权利要求I所述的基于语言模型的智能移动平台拼音输入法,其特征在于, 所述基于字母的语言模型为P (yI X)=Count (xy)/count (X); 其中P (y I χ)表示给定字母X的情况下,下一字母为I的概率,count表示计数函数;count (xy)表示xy —起共现的次数; 所述基于拼音的语言模型为y=argmax{p(yIχ)}, 其中P (y I x)表示给定当前字母X,下一个字母为I的概率。
3.如权利要求I所述的基于语言模型的智能移动平台拼音输入法,其特征在于,所述的输入提示采用按键提示方式每一可能输入的字母对应的按键会变大变亮。
4.如权利要求3所述的基于语言模型的智能移动平台拼音输入法,其特征在于,所述的输入提示还包括连线提示每一预测按键与当前字母对应的按键之间进行连线提示,根据概率的大小不同,对应字母之间的连线粗细相应的不同,概率越大,线条越粗,概率越小,线条越细。
5.如权利要求4所述的基于语言模型的智能移动平台拼音输入法,其特征在于,步骤(33)之后还包括 (34)判断各字母连线之间是否有重叠连线,若有重叠,对键盘进行微调,使重叠按键的位置错开。
全文摘要
本发明涉及一种基于语言模型的智能移动平台拼音输入法,首先,对拼音文本进行训练,得到基于字母的语言模型和基于拼音的语言模型;之后,采用HMM解码方法对输入的拼音串进行解码;再对下一步输入进行预测并给出输入提示首先,根据基于字母的语言模型进行预测,获取所有单个拼音字母后可能出现的所有合理输入字母及其出现的概率;之后,根据基于拼音的语言模型进行预测,获取所有可能的拼音前缀后可能出现的所有合理输入字母及其出现的概率;最后,综合考虑上两步的信息获取所有下一个可能的合理输入字母及其概率,并比较概率大小,根据比较结果实现输入预测并进行输入提示。本发明提高了用户输入的准确率和流畅性,大大提高输入效率。
文档编号G06F3/023GK102915122SQ20121025144
公开日2013年2月6日 申请日期2012年7月19日 优先权日2012年7月19日
发明者赵海, 杨少华, 吕宝粮, 王佩璐, 谢国成 申请人:上海交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1