一种拼音的长句连打输入方法及其系统的制作方法

文档序号:9929304阅读:1087来源:国知局
一种拼音的长句连打输入方法及其系统的制作方法
【技术领域】
[0001 ]本发明涉及输入法领域,特别涉及拼音输入。
【背景技术】
[0002] 随着计算机技术的不断发展和进步,拼音输入法的技术也有了进步和提高,特别 是拼音的长句连打输入,现有技术是根据上下文在给定拼音条件下找到一个最优的句子, 可将其视为一个动态规划问题,找到最短路径。其核心技术为采用隐马尔科夫模型,利用统 计自然语言的处理方式进行运算和处理,得到最优的句子。马尔科夫的缺点在于它的独立 性假设,其假设忽略了时刻发生的事件与时刻之前所有事件之间的联系,但也正是因为有 了这样的假设,使得算法变得简单明了。隐马尔科夫模型采用生成式的联合概率模型来求 解这种条件概率问题,这种方法不适合处理很多特征描述观察序列的情况。马尔科夫的假 设,致使模型的阶数越高时,反而不会给模型带来好的统计结果,即使阶数再提高,也无法 覆盖所有的语言现象。所有这些缺陷,造成拼音长句连打的整句或者长句连打后的输出结 果精准度不高。

【发明内容】

[0003] 本发明的目的在于提供一种拼音的长句连打输入方法及其系统,通过建立双向隐 马尔可夫BHMM模型,提高了拼音长句连打输出正确结果的精准度。
[0004] 为解决上述技术问题,本发明的实施方式提供了一种拼音的长句连打输入方法, 包含以下步骤:
[0005] 预先建立双向隐马尔可夫BHMM模型;在所述BHMM模型中,长句中的每个汉字的出 现概率由正向传播时该汉字及该汉字的前N个汉字在数据库中同时出现的次数,反向传播 时该汉字及该汉字的后N个汉字在数据库中同时出现的次数决定;所述N为大于1的自然数;
[0006] 持续接收用户输入的拼音码;
[0007] 根据所述BHMM模型和所述持续接收到的拼音码,获取在该BHMM模型中出现概率最 大的各汉字所组成的长句;
[0008] 输出所述获取的在该BHMM模型中出现概率最大的各汉字所组成的长句。
[0009]与此相应,本发明的另一个目的是提供拼音的长句连打输入系统,包含:客户端与 云端服务器;
[0010] 云端服务器包含:
[0011] 模型建立模块,用于预先建立双向隐马尔可夫BHMM模型;在所述BHMM模型中,长句 中的每个汉字的出现概率由正向传播时该汉字及该汉字的前N个汉字在数据库中同时出现 的次数,反向传播时该汉字及该汉字的后N个汉字在数据库中同时出现的次数决定;所述N 为大于1的自然数;
[0012] 匹配模块,用于根据所述BHMM模型和来自所述客户端的持续接收到的拼音码,获 取在该BHMM模型中出现概率最大的各汉字所组成的长句;
[0013] 返回模块,用于将所述匹配模块获取的长句返回至所述客户端;
[0014] 所述客户端包含:
[0015] 接收模块,用于持续接收用户输入的拼音码;
[0016] 发送模块,用于将所述持续接收到的拼音码发送至所述云端服务器;
[0017] 输出模块,用于输出所述云端服务器返回的所述长句。
[0018] 本发明实施方式相对于现有技术而言,提供了一种拼音的长句输入方法和长句输 入系统,通过建立双向隐马尔可夫BHMM模型,提高了在整句或者长句中拼音转换汉字时输 出正确结果的精度。
[0019] 另外,所述BHMM模型建立在云端服务器内;客户端将所述持续接收到的拼音码实 时发送至所述云端服务器,由所述云端服务器根据BHMM模型和所述持续接收到的拼音码, 实时获取所述长句,优化了拼音转化汉字的效率。
[0020] 另外,所述根据BHMM模型和所述持续接收到的拼音码,获取在该BHMM模型中出现 概率最大的各汉字所组成的长句的步骤中,根据以下公式获取所述长句:
[0022]其中,W1,W2,. . .表示获取的所述长句中的各汉字,L为大于1的自然数;P(Wi Wi-l,Wi-2, ? ? .Wi-N)代表在正向传播过程中,汉字Wi的前N个汉字Wi-l,Wi-2, ? ? .Wi-N出现的情况 下,汉字Wi出现的概率;P(W'i | W'i+l,W'i+2, . . .W'i+N)代表在反向传播过程中,汉字W'i的后N 个汉字W ' i+1,W ' i+2,. . . W ' i+N出现的情况下,汉字W ' i出现的概率。
[0023]另外,定义该双向隐马尔可夫BHMM模型中,N为3,即为三阶双向隐马尔科夫模型 (也可称为四元双向隐马尔科夫模型)。具体而言,就是在传播过程中,当前状态分别受其前 和其后三个状态的影响,输出的结果正确率高于一阶和二阶的,且速度更快。
[0024] 另外,在所述持续接收用户输入的拼音码后,根据所述BHMM模型和所述持续接收 到的拼音码,获取在该BHMM模型中出现概率次大的各汉字所组成的长句;输出所述出现概 率次大的各汉字所组成的长句,方便用户选择。
【附图说明】
[0025] 图1是根据本发明第一实施方式的拼音的长句连打输入方法的流程图;
[0026]图2是根据本发明第一实施方式中一阶双向隐马尔科夫模型基本原理图;
[0027]图3a_3d为本发明第一实施方式中两种输入法的输出结果对比示意图;
[0028]图4是根据本发明第二实施方式的拼音的长句连打输入系统的结构示意图。
【具体实施方式】
[0029]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实 施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中, 为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基 于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方 案。
[0030]本发明第一实施方式涉及一种拼音的长句输入方法,具体实现流程如图1所示,详 述如下:
[0031] 在步骤S101中,云端服务器预先建立双向隐马尔可夫BHMM模型;在该BHMM模型中 规定,长句中的每个汉字的出现概率由正向传播时该汉字及该汉字的前N个汉字同时在数 据库中出现的次数,反向传播时该汉字及该汉字的后N个汉字在数据库中同时出现的次数 决定。其中,需要说明的是,本实施方式涉及的数据库中保存了常见长句及其对应长句的拼 音码。
[0032 ]需要说明的是,一个句子有L个字(或者词)组成,拼音对应于双向隐马尔可夫BHMM 模型的状态,候选词对应于BHMM的输出符号,从一个字(或者词)转向另外一个字(或者词) 对应于状态转换,从26个字母中进行拼音的输入对应于从一个状态输出的观察符号。接下 来以一阶双向隐马尔可夫模型(即N取1)为例对双向隐马尔科夫模型的原理进行说明,基本 原理如图2所示。
[0033]其中,pyi,py2,. . .,pyL代表L个拼音;wi,W2, . . .,wl代表每个拼音分别相对应输出 的汉字,即候选词。在正向传输过程中,如图2中实线所示,在时刻t时,对应的拼音为pyt,对 应的汉字为wt,拼音pyt的前一个拼音pyt-1出现的情况下,输入拼音pyt的概率为P(pyt pyt-1);拼音pyt转换为汉字w t的概率P(wt | pyt),以及最后所输出的正确的、或者可被称为组 成最优句子的词(或者字)的概率P^tlwt-i)。在反向传输过程中,如图2虚线所示,同样在时 亥 1Jt时,拼音py't的前一个拼音py't+i出现的情况下,输入拼音py't的概率为P(pyt' | py't+i); 拼音py ' t转换为汉字w' t的概率为P(w' 11 py ' t);最后输出正确词(或者字)的概率为:P(wt ' | wt'+i)。在此,在正向传播过程中,用#(pyt-i,pyt)代表由时刻t转移到时刻t-1时拼音的转移 次数,也即从pyt-1转移到pyt的次数;ffl#(pyt,wt)表示pyt转换为wt的次数,#(w t-i,wt)表示词 wt-i和wt同时出现的次数,用# (pyt)表示拼音pyt出现的次数,用# (pyt-1)表示拼音pyt-1出现 的次数,#(?^)表示候选词(或者字)用#(n)表示候选词(或者字)出现的次数;反向传 播过程中,用# (py ' t+i,pyt ')代表从py ' t+i转移到py ' t的次数,用#(py ' t,w ' t)代表py ' t转换为 界'1;的次数,用#(¥\+1,¥1;')表示¥\+1和¥'1;同时出现的次数,用#^'1;)表示口7'1;出现的次数, 用#(py't +1)表示py't+1出现的次数,用#(wt')表示候选词(或者字)w' t出现的次数,用# (w't+1)表示候选词(或者字)w't+1出现的次数。
[0034]在步骤S102中,客户端持续接收用户输入的拼音码,在键盘上a至z的26个按键上 按照拼音输入法既定的规则输入,持续接收的拼音码是分别是每个单字的全部拼音码。 [0035]在步骤S103中,客户端将持续接收到的拼音码发送至云端服务器。
[0036]在步骤S104中,云端服务器根据BHMM模型和所述持续接收到的拼音码,实时在该 BHMM模型中出现概率最大及次优的各汉字所组成的长句。
[0037] 具体BHMM模型算法步骤如下所述:
[0038]模型中,长句中的每个汉字的出现概率由正向传播时该汉字及该汉字的前N个汉
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1