发明内容
有鉴于此,本发明的主要目的在于提供一种智能设备的文字输入***,既可以提高输入速度,又可以降低语音转换为文字的难度,提高文字输入的准确性。
本发明的另一目的在于提供一种智能设备的文字输入方法,同样可以提高输入速度,降低语音转换为文字的难度,提高文字输入的准确性。
为了实现上述发明目的,本发明的主要技术方案为:
一种智能设备的文字输入***,该***包括:
语音接收模块,用于接收语音;
语音参数库,用于存储语音与拼音的对应关系;
语音类型判别模块,用于预先存储语音指令,还用于判断语音接收模块接收的语音是否为所存储的语音指令,如果是则将该语音指令发送到文字生成模块,否则将语音发送给转换模块;
转换模块,用于根据语音参数库存储的对应关系,将接收到的语音信号转换为对应的拼音;
文字生成模块,用于根据转换模块转换出的拼音生成候选文字;并根据语音类型判别模块输入的语音指令从候选文字中选择最终输入的文字。
优选的,所述语音与拼音的对应关系为:语音元素与音节的对应关系;且该文字输入***进一步包括:
语音库,用于录制语音序列;
音节建立模块,用于建立语音库中录制的各条语音序列的每个语音元素对应的音节,将每个语音元素与其对应音节的对应关系存入所述语音参数库。
优选的,该***进一步包括:
训练概率参数模块,用于根据所述语音库中的语音序列、语音元素、及语音元素对应的音节,统计生成各个音节的训练概率参数,将训练概率参数存入所述语音参数库。
优选的,所述转换模块具体包括:
分解模块,用于将语音信号分解为至少一个语音元素;
候选拼音生成模块,用于从所述分解的第一个语音元素开始,依次从每个语音元素对应的音节中选出一个音节组成候选拼音串;
出现概率计算模块,用于根据所述训练概率参数,计算所述每个候选拼音串的出现概率;
选择单元,用于选择一个出现概率最大的候选拼音串作为所述语音信号转换后的拼音;或者,用于选择一个以上出现概率相对大的候选拼音串输出,并根据外界输入的选择指令确定所述语音信号最终转换的拼音。
优选的,所述转换模块具体包括:
分解模块,用于将语音信号分解为至少一个语音元素;
候选拼音生成模块,用于从所述分解的第一个语音元素开始,依次查找每个语音元素对应的所有音节,组成词组或单字的候选拼音;
出现概率计算模块,用于根据所述训练概率参数,计算所述每个候选拼音的出现概率;
选择单元,按照出现概率依次输出所述候选拼音,根据外界输入的选择指令确定所述语音信号最终转换的拼音。
优选的,所述文字生成模块具体包括:
候选文字生成模块,用于根据转换模块转换的拼音生成至少包括一个候选文字的候选文字列表;
结果生成模块,用于输出所生成的候选文字列表,并检测是否收到语音类型判别模块输入的语音指令,接收到语音指令时,按所接收的语音指令从所述候选文字列表中选择文字,并将所选择的文字输出;
相应的,所述语音类型判别模块,在判定接收的语音为所存储的语音指令时,将该语音指令发送到结果生成模块。
优选的,所述结果生成模块具体包括:语音指令匹配模块,用于存储语音指令与候选文字列表中候选文字位置的对应匹配关系,并根据对应匹配关系,将接收到的所述语音指令与所述候选文字列表中的候选文字位置进行匹配,匹配正确时,从匹配的候选文字位置选择出候选文字作为所述文字输入***最终输入的文字。
优选的,所述结果生成模块与外部键盘连接以接收键盘指令;
所述结果生成模块进一步包括:物理接触指令匹配模块,用于存储物理接触指令与候选文字列表中候选文字位置的对应匹配关系,并根据对应匹配关系,将接收到的所述键盘指令与所述候选文字列表中的候选文字位置进行匹配,匹配正确时,从匹配的候选文字位置选择出候选文字作为所述文字输入***最终输入的文字。
一种智能设备的文字输入方法,预先存储语音与拼音的对应关系以及语音指令;该方法还包括:
A、接收语音;
B、判断接收的语音是否为所存储的语音指令,如果是,则执行步骤C;否则,根据所存储的语音与拼音的对应关系,将所接收到的语音转换为对应的拼音;
C、根据转换成的拼音生成候选文字,并接收识别语音指令,根据语音指令从候选文字中选择最终输入的文字。
优选的,所述语音与拼音的对应关系为:语音元素与音节的对应关系;
所述预先存储语音与拼音的对应关系的具体方法为:
录制语音序列,将录制的各条语音序列存入语音库;
建立语音库中各条语音序列的每个语音元素对应的音节;
存储每个语音元素与其对应音节的对应关系。
优选的,该方法进一步包括:根据所述语音库中语音序列、语音元素、及其对应的音节,统计生成各个音节的训练概率参数;
步骤B所述将语音转换为拼音的方法为:
B1、将语音分解为至少一个语音元素,查找每个语音元素对应的所有音节;
B2、从第一个语音元素开始,依次从每个语音元素对应的音节中选出一个音节组成候选拼音串;
B3、根据所述训练概率参数,计算所述每个候选拼音串的出现概率;
B4、选择一个出现概率最大的候选拼音串作为所述语音信号转换后的拼音;或者,选择一个以上出现概率相对大的候选拼音串输出,并根据外界输入的选择指令确定所述语音信号最终转换的拼音。
优选的,该方法进一步包括:根据所述语音库中语音序列、语音元素、及其对应的音节,统计生成各个音节的训练概率参数;
步骤B所述将语音转换为拼音的方法为:
b1、将语音分解为至少一个语音元素,查找每个语音元素对应的所有音节;
b2、从所述分解的第一个语音元素开始,依次将每个语音元素对应的音节组成词组或单字的候选拼音;
b3、根据所述训练概率参数,计算所述每个候选拼音的出现概率;
b4、按照出现概率依次输出所述候选拼音,根据用户的选择指令确定所述语音信号最终转换的拼音。
优选的,所述音节的训练概率参数包括初始概率参数、转移概率参数和发射概率参数;其中,
初始概率参数根据M/N生成,其中M为一具体音节出现在一条语音序列对应的拼音串首部的次数,N为语音库中所记录的所有语音序列的总数;
转移概率参数根据O/P生成,其中O为两个音节在语音库中的共显次数,P为所述两个音节中的第一个音节在语音库中被建立的总数;
发射概率参数根据Q/R生成,其中Q为一具体音节对应的语音元素在语音库中出现的总数,R为该具体音节在语音库中的总数;
所述步骤B3具体为:将候选拼音串中音节的初始概率参数、转移概率参数与发射概率参数相乘,得到的值为该候选拼音串的出现概率。
优选的,步骤C所述根据转换成的拼音生成候选文字为:根据所转换的拼音生成并显示至少包括一个候选文字的候选文字列表;
步骤C所述选择最终输入的文字为:C1、按照所述语音指令从所述候选文字列表中选择文字,并将所选择的文字输入到智能设备。
优选的,所述方法进一步包括:预先存储语音指令与候选文字列表中候选文字位置的对应匹配关系;
所述步骤C1具体为:根据所述语音指令与候选文字列表中候选文字位置的对应匹配关系,将接收到的语音指令与所述候选文字列表中的候选文字位置进行匹配,匹配正确时,将匹配的候选文字位置处的候选文字作为最终输入的文字。
优选的,所述方法还包括:预先存储键盘指令与候选文字列表中候选文字位置的对应匹配关系;
所述方法进一步包括:在检测到键盘指令后,根据所述键盘指令与候选文字列表中候选文字位置的对应匹配关系,将检测到的键盘指令与所述候选文字列表中的候选文字位置进行匹配,匹配正确时,将匹配的候选文字位置处的候选文字作为最终输入的文字。
本发明先将语音信号转化为拼音,然后对拼音进行处理,转换生成文字。因此,相对于现有的键盘式输入法,本发明具有输入简单、快捷的优点,提高了文字输入的速度,进而提高工作效率。相对于现有的语音输入法,由于本发明先将语音转换为拼音,再由拼音转换为文字,在智能设备上存储语音与拼音的对应关系,而拼音的数量比汉语文字的数量小的多,因此需存储识别的语音数量大大降低,因此本发明除了具有简单、快捷的优点,还可以降低直接将语音转换为文字的难度,尤其是降低语音转换为汉字的难度,提高文字输入的准确性。
本发明还将语音与拼音的对应关系进一步具体为语音元素与音节的对应关系,而汉字音节只有403个,远远小于拼音串的数量,因此可以进一步降低存储语音数量,使得文字输入更简单、更快捷。
本发明还设置语音库,可以预先录制语音,并根据录制的语音生成音节的训练概率参数,通过训练概率参数对由语音转换的拼音进行再次选择,选择概率最大的拼音转换为汉字,因此本发明可以最大地避免由于汉字发音多且不标准而导致的输入准确率低的问题,进一步提高汉字输入的准确率。
另外,本发明在拼音转换为文字的过程中,采用首先生成候选文字,再利用语音指令或者物理接触指令(例如键盘指令、触摸屏触摸指令等)的方式选择所要输入的文字,因此进一步简化了输入文字的操作过程;而且用户也可以自由选择是通过语音输入方式选择文字,还是直接采用物理接触输入选择文字,或者结合使用二者,从而使用户在文字输入过程中拥有更大的灵活性。
具体实施方式
下面通过具体实施例和附图对本发明做进一步详细说明。
本发明的核心思想为:预先存储语音与拼音的对应关系;在文字输入时利用语音输入,首先接收语音信号,根据所存储的语音与拼音的对应关系,将所接收到的语音信号转换为对应的拼音,再根据所转换成的拼音生成文字。
本发明所述的智能设备可以时具有智能信息处理能力的设备,例如计算机、智能手机、掌上电脑等等。本文中以计算机为例对本发明进行说明。
本发明所述的文字可以是汉字,所述拼音为汉语拼音,所述文字也可以是发音基于拼音的其它文字,例如韩文等,所述拼音可以是该种文字的拼音。本文的实施例中以汉语以及汉语拼音为例对本发明进行说明。
图1为本发明所述文字输入***的结构示意图。参见图1,该文字输入***主要包括:
语音接收模块101,与计算机的外接话筒连接,例如与计算机中带话筒的耳麦连接,用于接收语音信号。该语音接收模块101可以采用现有的语音接收技术,用户可以通过话筒向文字输入***输入汉字的语音信号,由语音接收模块101接收并完成数字转换。
语音参数库102,用于存储语音与拼音的对应关系。该对应关系可以是语音元素与音节的对应关系,也可以某具体语音与具体拼音的对应关系。所述的语音元素为单独汉字的发音。
转换模块103,可以直接与语音接收模块101以及与语音参数库102连接,用于根据语音参数库102存储的对应关系,将语音接收模块101所接收到的语音信号转换为对应的拼音。
文字生成模块104,用于根据转换模块103转换出的拼音生成文字,进一步将生成的文字输入到智能设备的显示设备和/或存储设备进行显示和/或存储处理。
本发明所述的文字输入***还可以进一步包括:
语音库105,用于录制语音序列。
音节建立模块106,用于建立语音库105中录制的各条语音序列的每个语音元素对应的音节,将每个语音元素与其对应音节的对应关系存入所述语音参数库102。
本发明可以利用语音库105和音节建立模块106可以设置语音元素与音节的对应关系。
为了提高本发明文字输入***对输入语音的识别准确度,本发明还可以根据语音库105中录制的语音生成音节的训练概率参数,通过训练概率参数对由语音转换的拼音进行再次选择识别,并转换成相应的拼音串。为了实现这个目的,本发明的文字输入***还进一步包括:
训练概率参数模块107,用于根据所述语音库105中语音序列、语音元素、及其对应的音节,统计生成各个音节的训练概率参数,将训练概率参数存入所述语音参数库102。
图2为本发明所述文字输入***中的转换模块103结构示意图。参见图2,该转换模块103包括:
分解模块201,用于将接收到的语音信号分解为至少一个语音元素。
候选拼音生成模块202,用于从所述分解的第一个语音元素开始,依次从每个语音元素对应的音节中选出一个音节组成候选拼音串。
出现概率计算模块203,用于根据所述训练概率参数,计算所述每一个候选拼音串的出现概率。
选择单元204,用于选择一个出现概率最大的候选拼音串作为所述语音信号转换后的拼音;或者,用于选择一个以上出现概率相对大的候选拼音串输出,并根据外界输入的选择指令确定所述语音信号最终转换的拼音。
作为另一个实施例,所述转换模块103内的具体模块还可以具有以下功能:
分解模块,用于将语音信号分解为至少一个语音元素;
候选拼音生成模块,用于从所述分解的第一个语音元素开始,依次查找每个语音元素对应的所有音节,组成词组或单字的候选拼音;
出现概率计算模块,用于根据所述训练概率参数,计算所述每个候选拼音的出现概率;
选择单元,按照出现概率依次输出所述候选拼音,根据外界输入的选择指令确定所述语音信号最终转换的拼音。
所述文字生成模块104具体包括:
候选文字生成模块108,用于根据转换模块103转换的拼音串生成至少包括一个候选文字的候选文字列表。
结果生成模块109,用于显示所生成的候选文字列表,并检测是否收到外界输入的选择指令,当接收到选择指令时,按照输入的选择指令从所述候选文字列表中选择文字,并将所选择的文字输入到智能设备。
例如:从话筒输入语音“中国人”,语音接收模块101接收后转到转换模块103,由转换模块103转换成拼音串“zhong’guo’ren”,将拼音串输入到文字生成模块104,由候选文字生成模块108生成候选文字,如图3所示;然后由用户输入选择指令,结果生成模块109根据选择指令选择第一个候选词,完成输入。
图4为本发明所述文字输入***的候选文字生成模块108的结构图。参见图4,该候选文字生成模块108具体包括:
候选词生成模块401,用于根据转换模块103转换的拼音串生成候选词。
整句生成模块402,用于根据候选词,利用整句生成算法生成候选的整句。
所述输入到结果生成模块109的选择指令可以是语音指令,也可以是物理接触指令,所述物理接触指令可以为键盘指令、触摸屏触摸指令,或者是其他由物理接触产生的指令,本文中以键盘指令为例进行说明。
作为一种实施例,为了接收语音指令,在所述语音接收模块101和转换模块103之间,还可进一步包括语音类型判别模块110,语音接收模块101将接收的语音信号先输入到该语音类型判别模块110,其中预先存储语音指令,用于判断语音接收模块101接收的语音信号是否为所存储的语音指令,如果是则判定该语音信号的类型为语音指令,则将该语音指令发送到结果生成模块109,否则将语音信号发送给转换模块103。
为了接收键盘指令,所述结果生成模块109需要与智能设备的键盘连接以接收键盘指令。
所述选择指令可以只通过键盘输入,也可以只通过语音输入,或者可以同时通过键盘或语音输入,由用户自由选择。
图5为本发明所述文字输入***的结果生成模块109的结构示意图。参见图5,结果生成模块109中进一步包括:
检测模块501:用于检测输入指令的类型,如果是语音指令,则将该指令输入到语音指令匹配模块502,如果是键盘指令,则将该指令输入到物理接触指令匹配模块503。
语音指令匹配模块502,用于存储语音指令与候选文字列表中候选文字位置的对应匹配关系,并根据该对应匹配关系,将接收到的所述语音指令与所述候选文字列表中的候选文字位置进行匹配,如果匹配正确,从匹配的候选文字位置选择出候选文字作为本文字输入***最终输入的文字。
物理接触指令匹配模块503,用于存储键盘指令与候选文字列表中候选文字位置的对应匹配关系,并根据该对应匹配关系,将接收到的所述键盘指令与所述候选文字列表中的候选文字位置进行匹配,如果匹配正确,从匹配的候选文字位置选择出候选文字作为本文字输入***最终输入的文字。
图5所示是在选择指令既可以为语音指令又可以为键盘指令时的结果生成模块109的结构。当所述文字输入***只通过语音输入选择指令时,所述结果生成模块109可以仅包括语音指令匹配模块502;当所述文字输入***只通过键盘输入选择指令时,所述结果生成模块109可以仅包括物理接触指令匹配模块503。
图6为本发明所述智能设备的文字输入方法的流程图。参见图6,该方法包括:
步骤601、预先存储语音与拼音的对应关系。
所述对应关系可以存储在语音参数库102中,且该对应关系可以为语音元素与音节的对应关系,也可以为具体语音与具体拼音的对应关系。例如:“我”的语音对应音节为“wo”,“们”的语音对应音节为“men”,“是”的语音对应音节为“shi”,“我”、“们”、“是”都是语音元素;也可以将具体语音“我们是”与拼音“wo’men’shi”存储为对应关系。所述的语音和拼音都按照智能设备可以识别的数字信号形式存储。
步骤602、接收语音信号。具体可以为从智能设备的语音输入设备例如话筒接收语音,转换为智能设备可以处理的数字信号。
步骤603、根据所存储的语音与拼音的对应关系,将所接收到的语音信号转换为对应的拼音。例如,在接收到“我”的语音信号时,在所存储的对应关系中查找该语音信号对应的拼音“wo”。
步骤604、根据所转换成的拼音生成文字。例如:将拼音“wo”转换为文字“我”,具体可以采用现有的拼音输入法来转换。
在本发明中,采用隐马尔可夫模型(HHM)的方法实现语音到拼音的转换。HMM是一种重要的统计自然语言模型,被广泛的应用于语音识别、音字转换等领域。它实质上是一个马尔可夫过程的概率函数。
在隐马尔可夫模型中,观察到的事件是状态的随机函数。因此该模型是一双重的随机过程,其中模型的状态转换过程是不可观察的,即隐藏的,而可观察的事件的随机过程是隐藏的状态转换过程的随机函数。它可以被形式化的描述为一个五元组HMM=<S,O,A,B,π>。其处理过程可以简单的描述为先利用统计的方法对已有的数据进行学习训练,比如对语音库和与其相对应的拼音库进行统计,得到语音库和拼音串之间的参数关系,即参数库。然后,当新来一个语音时,会利用参数库中的信息确定与该语音最接近,即概率最大,的拼音串,并作为该语音对应的拼音串结果。
如下描述本发明应用隐马尔可夫模型将语音转换为拼音的具体方法。
采用语音训练方法存储语音与拼音的对应关系,具体为:
步骤701、录制语音序列,将录制的各条语音序列存入语音库。
例如录制大量的语音序列,所述语音序列可以是不同的人所朗读的句子或文章等。
步骤702、建立语音库中各条语音序列的每个语音元素对应的音节;存储每个语音元素与其对应音节的对应关系。
例如将某一个人朗读的语音序列“我们都是平凡人”分解为各个语音元素“我”、“们”、“都”、“是”、“平”、“凡”、“人”,再为每个语音元素建立对应的音节“wo”、“men”、“dou”、“shi”、“ping”、“fan”、“ren”。将另一个人朗读的语音序列“我们都是平凡人”也分解成语音元素,并分别建立相同的音节“wo”、“men”、“dou”、“shi”、“ping”、“fan”、“ren”。这样,通过语音训练可以使同一音节对应多种不同口音的语音元素,从而不受输入人员口音的影响,提高语音识别的正确率。
接着,本发明还可以进一步根据所述语音库中语音序列、语音元素、及其对应的音节,统计生成各个音节的训练概率参数。
所述音节的训练概率参数包括初始概率参数、转移概率参数和发射概率参数。
初始概率参数为某一音节出现在语音序列对应拼音首部的概率,可以根据公式:M/N生成,其中M为一具体音节出现在一条语音序列对应的拼音串首部的次数,N为语音库中所记录的所有语音序列的总数。
转移概率参数为某一音节和另外一音节共显的概率,所述共显为这两个音节按照前后顺序同时出现,例如:“wo”和“men”两个音节通常会共显成“wo’men”;转移概率参数根据公式:O/P生成,其中O为两个音节在语音库中的共显次数,P为所述两个音节中的第一个音节在语音库中被建立的总数。
发射概率参数为某一音节与某一语音的共显概率,例如:由于口音发音的不同,“我”的语音可以发成“wo”、“e”、或“huo”等音节表示的语音,因此“我”的语音可能与“wo”、“e”、或“huo”发生共显。所述发射概率参数根据公式:Q/R生成,其中Q为一具体音节对应的语音元素在语音库中出现的总数,R为该特定音节在语音库中的总数。
利用隐马尔可夫模型,步骤603所述将语音转换为拼音的方法为:
步骤6031、将语音分解为至少一个语音元素,查找每个语音元素对应的所有音节。
例如输入语音“我们都是平凡人”,将语音分解为“我”、“们”、“都”、“是”、“平”、“凡”、“人”七个语音元素,从预先存储的语音与拼音的对应关系中查找对应的拼音音节,例如:
“我”对应音节“wo”。
“们”对应音节“men”和“meng”。
“都”对应音节“dou”。
“是”对应音节“shi”和“si”。
“平”对应音节“ping”。
“凡”对应音节“fan”。
“人”对应音节“ren”。
步骤6032、从第一个语音元素开始,依次从每个语音元素对应的音节中选出一个音节组成候选拼音串。
例如上述语音“我们都是平凡人”对应的候选拼音串为:
1、“wo’men’dou’shi’ping’fan’ren”。
2、“wo’men’dou’si’ping’fan’ren”。
3、“wo’meng’dou’shi’ping’fan’ren”。
4、“wo’meng’dou’si’ping’fan’ren”。
步骤6033、根据所述训练概率参数,计算所述每一个候选拼音串的出现概率。具体是将候选拼音串中音节的初始概率参数、转移概率参数以及发射概率参数相乘,得到的值为该候选拼音串的出现概率。
步骤6034、选择一个出现概率最大的候选拼音串作为所述语音信号转换后的拼音。
例如通过计算,上述拼音串“wo’men’dou’shi’ping’fan’ren”的出现概率最大,可以选择该拼音串作为转换后的拼音。
或者,可以选择一个以上出现概率相对大的候选拼音串输出显示给用户,由用户进行选择,将用户选择的候选拼音串作为所述语音信号转换后的拼音。
例如,上述拼音串“wo’men’dou’shi’ping’fan’ren”和“wo’men’dou’si’ping’fan’ren”的出现概率为相对较大的两个,可以选择这两个拼音串作为转换后的拼音。此时,可将所述两个候选拼音串输出显示给用户,如图7所示,每个候选拼音串前都有标号,由用户根据标号进行选择,如果用户选择1,则将拼音串“wo’men’dou’shi’ping’fan’ren”作为所述语音信号转换后的拼音。
另外,上述步骤6032至步骤6034也可以有以下替代方案,分别为步骤6032’、步骤6033’和步骤6034’。
步骤6032’、从所述分解的第一个语音元素开始,依次将每个语音元素对应的音节组成词组或单字的候选拼音。例如:
例如上述语音“我们都是平凡人”对应的候选拼音为:
前两个语音元素组成词组“wo’men”和“wo’meng”的候选拼音;
第二和第三个语音元素组成词组“dou’shi”和“dou’si”的候选拼音;
后三个语音元素组成词组“ping’fan’ren”的候选拼音。
步骤6033’、根据所述训练概率参数,计算所述每个候选拼音的出现概率。具体是将候选拼音中音节的初始概率参数、转移概率参数以及发射概率参数相乘,得到的值为该候选拼音的出现概率。
步骤6034’、按照出现概率依次输出所述候选拼音,根据用户的选择指令确定所述语音信号最终转换的拼音。
例如,图8为按照出现概率依次输出词组或单字对应拼音的示意图。如图8的第一步801所示,可以分别按顺序输出“1:wo’men”和“2:wo’meng”,由用户进行选择,如果用户选择了1,则进一步按照出现概率显示后续词组;如图8的第二步802所示,可以分别按顺序输出“1:dou’shi”和“2:dou’si”,由用户进一步选择,如果用户选择了1,则进一步显示后续词组;如图8第三步803所示,可以显示“ping’fan’ren”,此时可以由用户选择该最后一个拼音,也可以由***默认选择该最后一个拼音;最终,将“wo’men’dou’shi’ping’fan’ren”作为所述语音信号转换后的拼音。
当然,在上述过程中,也可以依次显示每个语音元素对应的所有音节(即单字的拼音),由用户依次选择每一个语音元素的音节,从而确定所述语音信号最终转换的拼音。
在获得了拼音串之后,利用所述步骤604生成文字。步骤604可具体包括:
步骤6041、根据所转换的拼音生成至少包括一个候选文字的候选文字列表,在智能设备上显示所述候选文字列表。
步骤6042、检测智能设备是否输入选择指令,如果检测到选择指令,执行步骤6043;否则重复本步骤6042。
步骤6043、按照所述选择指令从所述候选文字列表中选择文字,并将所选择的文字输入到智能设备。
所述步骤6041所述的候选文字列表可以是候选词,还可以是候选整句。具体生成方法包括如下两个步骤:
一、候选词的生成。本发明需要设置一个拼音串到候选词序列的映射表,即拼音词典。这个拼音词典中每个拼音串对应的候选词是根据其词频从大到小进行排序的,候选词生成的方法比较简单,就是根据拼音串到拼音词典中进行查找,找到匹配的拼音串后,把拼音串对应的前n个候选词输出,n是输入法输出界面能够显示的候选词个数。
二、整句的生成。为了实现整句输入,本发明采用最大概率法实现整句预测,即:在用户输入的拼音串中,存在着多种候选词语的组合方法。首先找出这个拼音串中出现的所有候选词,然后在这些候选词的组合中找到一个概率最大的组合方案作为最后的整句生成结果。
图9为拼音串“wo’men’dou’shi’ping’fan’ren”的候选词列表示意图。如图9所示,每一条弧对应着一个或多个候选词,图中从上到下按照词频从高到低排序,而且每一条弧都带有词频信息,该词频信息没有在图中标出,词频信息指的是拼音串所对应的所有候选词中词频最大的词的词频。由于只给用户提供一个候选整句信息,只有词频最高的词才有效,也就是说词频排在第二位以后的词,比如“窝”、“门”、“斗士”等不会在最后的候选整句结果中出现。
图10为对图9简化后的候选词列表示意图。如图10所示,利用两点间最短路径算法,例如Dijkstra算法,Viterbi算法等,求出概率最大的一条路径,如图10中概率最大的路径为所示的虚线路径,所述路径为词的组合方案,将概率最大的路径作为最后的整句预测结果显示在候选词窗口的第一位,所述候选文字列表窗口如图11所示,其中整句候选结果只有一个,即第一候选位置处的“我们都是平凡人”,从第二候选位置往后都是候选词结果。
在生成候选文字列表后,需要由用户从候选文字列表中选择一个作为最终的输入结果。在本发明中,可以采用两种方式确定最终的输入结果,一种是键盘选择,另一种是语音选择。也就是说,在步骤6042中,所述选择指令可以是键盘指令,也可以是语音指令。
当用户通过键盘输入选择指令时,所述方法需要预先存储键盘指令与候选文字列表中候选文字位置的对应匹配关系;并且,步骤6043具体为:在检测到键盘指令后,根据所述键盘指令与候选文字列表中候选文字位置的对应匹配关系,将检测到的键盘指令与所述候选文字列表中的候选文字位置进行匹配,如果匹配正确,将匹配的候选文字位置处的候选文字作为最终输入的文字。
当用户通过话筒输入语音指令时,所述方法需预先存储语音指令以及语音指令与候选文字列表中候选文字位置的对应匹配关系,每个选择指令用一个字的语音表示,即建立语音到选择指令的对应关系。比如“1”的语音,对应表示选择第一个候选文字,“上”的语音对应表示选择上一页候选文字,“下”的语音对应表示选择下一页候选文字。用户还可以根据需要自己修改语音指令,用不同的语音指令表示上述的操作,例如用户可以自己定义一些不常用的语音作为语音指令,这样就会大大减少语音指令和语音输入的冲突。
并且,在步骤602之后、步骤603之前进一步包括:判断接收的语音是否为预先存储的语音指令,如果是则根据所述语音指令与候选文字列表中候选文字位置的对应匹配关系,将接收到的语音指令与所述候选文字列表中的候选文字位置进行匹配,如果匹配正确,将匹配的候选文字位置处的候选文字作为最终输入的文字;如果不是,则执行步骤603。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。