一种面向印地语的多语言混合输入方法及装置与流程

文档序号:16086511发布日期:2018-11-27 22:29阅读:137来源:国知局

本发明涉及输入法技术领域,尤其涉及一种面向印地语的多语言混合输入方法及装置。



背景技术:

随着国际交流的日益频繁,两种语言甚至多种语言的混合输入变得越来越普遍。目前印度地区的两种官方语言:英语和印地语,分别采用拉丁字母和梵文天诚体书写,因此,印度用户具有对拉丁语和印地语的混合使用需求。

现有技术中,通过切换输入模式,来达到多语言混合输入的目的。例如,当用户使用英文键盘输入拉丁字符时,如果此时用户想输入某个印地语字符时,用户需切换成印地语输入法进行输入后,再切回英文键盘继续输入拉丁字符。

这种方式下,用户需要来回切换输入模式,多语言的混合输入的效率较低,且极为耗时。



技术实现要素:

本发明提供一种面向印地语的多语言混合输入方法及装置,用于解决现有技术中通过切换输入模式,来达到多语言混合输入的目的,存在多语言的混合输入的效率较低,且极为耗时的技术问题。

本发明一方面实施例提出了一种面向印地语的多语言混合输入方法,包括:

获取输入法界面键入的当前输入词汇的拉丁字符序列;

根据第一语言模型,获取所述拉丁字符序列对应的拉丁字符形式的第一候选字符串列表,所述第一语言模型为预先建立的以拉丁字符形式拼写印地语的语言模型;

根据预先建立的印地语词汇的拉丁字符拼写形式和印地语字符拼写形式之间的映射关系,获取目标印地语词汇列表,所述目标印地语词汇列表包括:所述第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式;

根据所述第一候选字符串列表和所述目标印地语词汇列表,生成包括拉丁字符拼写形式和印地语字符拼写形式的词汇的第一候选词列表;

在输入法界面展示所述第一候选词列表;

获取对所述第一候选词列表中的词汇的选择操作,将被选中的词汇作为输入词汇进行输入。

作为本发明第一种可能的实现方式,所述根据第一语言模型,获取所述拉丁字符序列对应的拉丁字符形式的第一候选字符串列表,包括:

当所述拉丁字符序列为完整的拉丁字符拼写形式的印地语词汇时,将所述拉丁字符序列对应的印地语词汇加入所述第一候选字符串列表;以及

获取扩展选项,所述扩展选项包括:含有所述拉丁字符序列的拉丁字符拼写形式的印地语词汇或者词汇片段,将所述扩展选项加入第一候选字符串列表。

作为本发明第二种可能的实现方式,所述根据第一语言模型,获取所述拉丁字符序列对应的拉丁字符形式的第一候选字符串列表,还包括:

当所述第一语言模型中不存在含有所述拉丁字符序列的拉丁字符拼写形式的印地语词汇时,获取与所述拉丁字符序列相似度最高的拉丁字符拼写形式的印地语词汇,并将之作为扩展选项加入第一候选字符串列表。

作为本发明第三种可能的实现方式,获取对所述第一候选词列表中的词汇的选择操作,将被选中的词汇作为输入词汇进行输入之后,还包括:

根据所述输入词汇对应的语言模型,预测所述输入词汇的后续词汇,并根据预测结果生成第二候选词列表;

在输入法界面展示所述第二候选词列表;

获取对所述第二候选词列表的词汇的选择操作,将被选中的词汇作为下一个输入词汇进行输入。

作为本发明第四种可能的实现方式,所述根据输入词汇对应的语言模型,预测所述输入词汇的后续词汇,并根据预测结果生成第二候选词列表,包括:

判断所述输入词汇的拼写形式是拉丁字符还是印地语字符;

当所述输入词汇的拼写形式是拉丁字符时,根据第一语言模型预测后续输入词汇;

当所述输入词汇的拼写形式是印地语字符时,根据第二语言模型预测后续输入词汇,所述第二语言模型为预先建立的以印地语字符形式拼写印地语的语言模型。

作为本发明第五种可能的实现方式,所述根据第一语言模型,获取所述拉丁字符序列对应的拉丁字符形式的第一候选字符串列表,所述第一语言模型为预先建立的以拉丁字符形式拼写印地语的语言模型,其中,

所述第一语言模型的预先建立,包括:

获取以拉丁字符形式拼写印地语的语料数据,并对所述语料数据进行预处理以去除其中的错误语料和低频语料,得到有效语料;

去除所述有效语料数据中的冗余部分,得到整理后的语料;

使用整理后的语料构建语言模型。

作为本发明第六种可能的实现方式,所述使用整理后的语料构建语言模型,包括:

使用整理后的语料构建N-Gram形式的语言模型,并计算语言模型的参数,其中,所述语言模型的参数包括:语言模型中的词汇,以及N元词汇排列中,第N个词汇关于前N-1个词汇的条件概率,N为正整数;以及

对所述条件概率的数据进行平滑处理,以使所述整理后的语料中未出现的N元词汇排列对应的条件概率不为零。

本发明实施例的面向印地语的多语言混合输入方法,通过获取输入法界面键入的当前输入词汇的拉丁字符序列,而后根据第一语言模型,获取拉丁字符序列对应的拉丁字符形式的第一候选字符串列表,其中,第一语言模型为预先建立的以拉丁字符形式拼写印地语的语言模型,接着根据预先建立的印地语词汇的拉丁字符拼写形式和印地语字符拼写形式之间的映射关系,获取第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式,以及根据第一候选字符串列表和第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式,生成包括拉丁字符拼写形式和印地语字符拼写形式的词汇的第一候选词列表,最后在输入法界面展示第一候选词列表,并获取对第一候选词列表中的词汇的选择操作,从而将被选中的词汇作为输入词汇进行输入。由此,无需频繁切换输入模式来满足用户同时输入印地语和拉丁语的混合输入需求,提升多语言的混合输入效率,改善用户的输入体验。此外,根据映射关系,确定印地语字符拼写形式,可以提升输出结果的准确性。

本发明又一方面实施例提出了一种面向印地语的多语言混合输入装置,包括:

输入字符获取模块,用于获取输入法界面键入的当前输入词汇的拉丁字符序列;

第一候选字符串生成模块,用于根据第一语言模型,获取所述拉丁字符序列对应的拉丁字符形式的第一候选字符串列表,所述第一语言模型为以拉丁字符形式拼写印地语的语言模型;

词汇映射模块,用于根据预先建立的印地语词汇的拉丁字符拼写形式和印地语字符拼写形式之间的映射关系,获取目标印地语词汇列表,所述目标印地语词汇列表包括:所述第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式;

第一候选词列表生成模块,用于根据所述第一候选字符串列表和所述第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式,生成包括拉丁字符拼写形式和印地语字符拼写形式的词汇的第一候选词列表;

第一候选词列表展示模块,用于在输入法界面展示所述第一候选词列表;

第一候选词输入模块,用于获取对所述第一候选词列表中的词汇的选择操作,将被选中的词汇作为输入词汇进行输入。

作为本发明第一种可能的实现方式,所述第一候选字符串生成模块,具体用于:

当所述拉丁字符序列为完整的拉丁字符拼写形式的印地语词汇时,将所述拉丁字符序列对应的印地语词汇加入所述第一候选字符串列表;以及

获取扩展选项,所述扩展选项包括:含有所述拉丁字符序列的拉丁字符拼写形式的印地语词汇或者词汇片段,将所述扩展选项加入第一候选字符串列表。

作为本发明第二种可能的实现方式,所述第一候选字符串生成模块,还用于:

当所述第一语言模型中不存在含有所述拉丁字符序列的拉丁字符拼写形式的印地语词汇时,获取与所述拉丁字符序列相似度最高的拉丁字符拼写形式的印地语词汇,并将之作为扩展选项加入第一候选字符串列表。

作为本发明第三种可能的实现方式,所述装置还包括:

第二候选词列表生成模块,用于根据所述输入词汇对应的语言模型,预测所述输入词汇的后续词汇,并根据预测结果生成第二候选词列表;

第二候选词列表显示模块,用于在输入法界面展示所述第二候选词列表;

第二候选词输入模块,用于获取对所述第二候选词列表的词汇的选择操作,将被选中的词汇作为下一个输入词汇进行输入。

作为本发明第四种可能的实现方式,所述第二候选词列表生成模块,具体用于:

判断所述输入词汇的拼写形式是拉丁字符还是印地语字符;

当所述输入词汇的拼写形式是拉丁字符时,根据第一语言模型预测后续输入词汇;

当所述输入词汇的拼写形式是印地语字符时,根据第二语言模型预测后续输入词汇,所述第二语言模型为预先建立的以印地语字符形式拼写印地语的语言模型。

作为本发明第五种可能的实现方式,所述装置还包括:

第一语言模型创建模块,用于建立第一语言模型,所述第一语言模型创建模块包括:

语料获取单元,用于获取以拉丁字符形式拼写印地语的语料数据,并对所述语料数据进行预处理以去除其中的错误语料和低频语料,得到有效语料;

语料去冗余单元,用于去除所述有效语料数据中的冗余部分,得到整理后的语料;

语言模型构建单元,用于使用整理后的语料构建语言模型。

作为本发明第六种可能的实现方式,所述语言模型构建单元,具体用于:

使用整理后的语料构建N-Gram形式的语言模型,并计算语言模型的参数,其中,所述语言模型的参数包括:语言模型中的词汇,以及N元词汇排列中,第N个词汇关于前N-1个词汇的条件概率,N为正整数;以及

对所述条件概率的数据进行平滑处理,以使所述整理后的语料中未出现的N元词汇排列对应的条件概率不为零。

本发明实施例的面向印地语的多语言混合输入装置,通过获取输入法界面键入的当前输入词汇的拉丁字符序列,而后根据第一语言模型,获取拉丁字符输入序列对应的拉丁字符形式的第一候选字符串列表,其中,第一语言模型为预先建立的以拉丁字符形式拼写印地语的语言模型,接着根据预先建立的印地语词汇的拉丁字符拼写形式和印地语字符拼写形式之间的映射关系,获取第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式,以及根据第一候选字符串列表和第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式,生成包括拉丁字符拼写形式和印地语字符拼写形式的词汇的第一候选词列表,最后在输入法界面展示第一候选词列表,并获取对第一候选词列表中的词汇的选择操作,从而将被选中的词汇作为输入词汇进行输入。由此,无需频繁切换输入模式来满足用户同时输入印地语和拉丁语的混合输入需求,提升多语言的混合输入效率,改善用户的输入体验。此外,根据映射关系,确定印地语字符拼写形式,可以提升输出结果的准确性。

本发明又一方面实施例提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明上述实施例提出的面向印地语的多语言混合输入方法。

为了实现上述目的,本发明第四方面实施例提供了一种计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,实现根据本发明上述实施例提出的面向印地语的多语言混合输入方法。

为了实现上述目的,本发明第五方面实施例提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现根据本发明上述实施例提出的面向印地语的多语言混合输入方法。

根据本发明第三到五方面的非临时性计算机可读存储介质,计算机程序产品和计算设备具有与根据本发明第一和第二方面的面向印地语的多语言混合输入方法和装置类似的有益效果,在此不再赘述。

附图说明

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本发明实施例一所提供的面向印地语的多语言混合输入方法的流程示意图;

图2为根据本发明实施例的面向印地语的多语言混合输入方法中词汇联想输入的流程示意图;

图3为根据本发明实施例的建立语言模型的流程示意图;

图4为根据本发明实施例的面向印地语的多语言混合输入装置的结构框图;

图5为根据本发明实施例的面向印地语的多语言混合输入装置的结构框图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

目前,可以通过以下三种方式,实现用户的多语言混合输入需求。

第一种方式,通过切换输入模式,来达到多语言混合输入的目的。例如,当用户使用英文键盘输入拉丁字符时,如果此时用户想输入某个印地语字符时,用户需切换成印地语输入法进行输入后,再切回英文键盘继续输入拉丁字符。

第二种方式,通过预设操作,进入临时输入模式,用户可以在临时输入模式中进行第二语言的字符键入。例如,在中英文输入法中,用户可以通过点击Shift键来进行输入法的切换。

第三种方式,部分输入法在语言模型中同时支持两种编码方式,即根据用户输入,自动选择最合适的编码规则并进行字符显示。

第一种方式下,多语言的混合输入的效率较低;第二种方式的下,在进入临时输入模式后,需要进行字符的特殊处理,增加了开发周期;第三种方式下,当两种语言的编码方式差异较小时,语音模型的输出结果的准确性较低。

本发明主要针对现有技术中多语言的混合输入的效率较低,输出结果准确性较低的技术问题,提出一种面向印地语的多语言混合输入方法。

本发明实施例的面向印地语的多语言混合输入方法,通过获取输入法界面键入的当前输入词汇的拉丁字符序列,而后根据第一语言模型,获取拉丁字符序列对应的拉丁字符形式的第一候选字符串列表,其中,第一语言模型为预先建立的以拉丁字符形式拼写印地语的语言模型,接着根据预先建立的印地语词汇的拉丁字符拼写形式和印地语字符拼写形式之间的映射关系,获取第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式,以及根据第一候选字符串列表和第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式,生成包括拉丁字符拼写形式和印地语字符拼写形式的词汇的第一候选词列表,最后在输入法界面展示第一候选词列表,并获取对第一候选词列表中的词汇的选择操作,从而将被选中的词汇作为输入词汇进行输入。由此,无需频繁切换输入模式来满足用户同时输入印地语和拉丁语的混合输入需求,提升多语言的混合输入效率,改善用户的输入体验。此外,根据映射关系,确定印地语字符拼写形式,可以提升输出结果的准确性。

下面参考附图对本发明实施例的面向印地语的多语言混合输入方法及装置进行详细的说明。在具体描述本发明实施例之前,为了便于理解,首先对常用技术词进行介绍:

N-Gram形式的语言模型,基于下述假设:第n个词汇出现与前n-1个词汇相关,而与其他任何词汇不相关,整个句子出现的概率等于各个词汇出现的概率乘积。其中,各个词汇的概率,可以通过语料数据中统计计算得到。

假设句子T是由词汇序列w1,w2,w3,...,wn组成,则N-Gram形式的语言模型可以用下述公式表示:

P(wN|w1………wN-1);

上述公式表示:出现第N个词汇的概率是由前边已经出现的从w1,w2,w3,...,wN-1的这些词汇的概率来决定的,在该过程中,通过先前词汇来去预测下一个将要出现的词汇,然后根据大量的文本观测,可以得到预测的词汇越来越趋向于在这些已出现词汇的后面的可能性。因此,构建的语言模型可以为(n-1)阶马尔科夫模型,或者为N元语言模型。就输入法的应用而言,由于与机器翻译等应用不同,通常不需要对长句子的理解和词序预测,一般情况下,N的取值为可为2、3、4等。

图1为根据本发明实施例的面向印地语的多语言混合输入方法的流程示意图。

本发明实施例提供的面向印地语的多语言混合输入方法,可以由本发明实施例提供的面向印地语的多语言混合输入装置实现,该装置可以被配置在任何计算设备中,以使该计算设备实现面向印地语的多语言混合输入功能。

其中,计算设备例如可以为个人电脑(Personal Computer,PC),云端设备或者移动设备等硬件设备,移动设备例如可以为手机、平板电脑、个人数字助理、穿戴式设备等具有各种操作系统、触摸屏和/或显示屏的硬件设备。

如图1所示,该面向印地语的多语言混合输入方法包括以下步骤:

步骤101,获取输入法界面键入的当前输入词汇的拉丁字符序列。

本发明实施例中,计算设备可以提供有输入法界面,用户可以通过该输入法界面键入拉丁字符序列。例如,当计算设备为手机时,用户可以通过触摸屏,手动键入拉丁字符序列,或者当计算设备为PC时,用户可以通过键盘,手动键入拉丁字符序列。

可选地,计算设备中可以设置有监听器,以对用户触发的键入操作进行监听,当监听到用户触发的键入操作时,可以根据用户的键入操作,获取用户在输入法界面键入的当前输入词汇的拉丁字符序列。例如,用户想要输入“手机”时,可以在输入法界面键入“mobile”。

步骤102,根据第一语言模型,获取所述拉丁字符序列对应的拉丁字符形式的第一候选字符串列表,第一语言模型为预先建立的以拉丁字符形式拼写印地语的语言模型。

本发明实施例中,第一语言模型为预先建立的,第一语言模型为以拉丁字符形式拼写印地语的语言模型。例如,可以获取以拉丁字符形式拼写印地语的语料数据,而后根据语料数据,构建语言模型,得到第一语言模型。

本发明实施例中,在获取到拉丁字符序列时,可以将拉丁字符序列输入至第一语言模型,得到拉丁字符序列对应的拉丁字符形式的第一候选字符串列表。

具体地,当拉丁字符序列为完整的拉丁字符拼写形式的印地语词汇时,可以直接将该拉丁字符序列对应的印地语词汇加入第一候选字符串列表。而当拉丁字符序列对应非完整的拉丁字符拼写形式的印地语词汇时,为了提升用户的输入效率,或者,对用户输入的拉丁字符序列进行纠错和补全,本发明中,可以获取扩展选项。其中,扩展选项包括:含有拉丁字符序列的拉丁字符拼写形式的印地语词汇或者词汇片段,而后将扩展选项加入第一候选字符串列表。

有时,用户可能会存在拼写错误,因此在一些实施例中,输入法还可提供纠错功能。具体地,所述根据第一语言模型,获取所述拉丁字符序列对应的拉丁字符形式的第一候选字符串列表,还可包括:当所述第一语言模型中不存在含有所述拉丁字符序列的拉丁字符拼写形式的印地语词汇时,获取与所述拉丁字符序列相似度最高的拉丁字符拼写形式的印地语词汇,并将之作为扩展选项加入第一候选字符串列表。

举例说明,当用户想要输入的语句是“Main bhimeri”,该语句对应的拉丁字符拼写形式的印地语词汇为“Main bhi nahi meri kahani hai”。假设用户第一个键入的印地语词汇为“Mai”,则第一语言模型输出的结果,即扩展选项可以为:Mai,Nai,Main,Maine。

步骤103,根据预先建立的印地语词汇的拉丁字符拼写形式和印地语字符拼写形式之间的映射关系,获取目标印地语词汇列表,所述目标印地语词汇列表可以包括第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式。

本发明实施例中,可以预先建立印地语词汇的拉丁字符拼写形式和印地语字符拼写形式之间的映射关系,其中,印地语词汇的拉丁字符拼写形式包括两种形式,一种为:印地语字符拼写形式经过发音直接翻译过来的拉丁字符拼写形式,比如,印地语字符其对应的拉丁字符为“dena”,dena在其他场景中没有实际意义,只有在想得到印地语字符时,输入dena才有意义;另一种为:某些英语单词,这些单词未出现在印地语中,例如印地语中未有英文单词“mobile”。

通过建立印地语词汇的拉丁字符拼写形式和印地语字符拼写形式之间的映射关系,例如建立“mobile”和之间的映射关系,从而可以保证印地语词汇的拉丁字符拼写形式和印地语字符拼写形式之间的映射关系为一对一关系,在确定拉丁字符形式的第一候选字符串列表后,可以通过查询上述映射关系,获取与该第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式,操作简单,且易于实现。并且通过预先建立的映射关系,确定对应的印地语字符拼写形式,可以进一步提升输出结果的准确性。

步骤104,根据第一候选字符串列表和目标印地语词汇列表,生成包括拉丁字符拼写形式和印地语字符拼写形式的词汇的第一候选词列表。

本发明实施例中,在得到第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式后,可以根据第一候选字符串列表和第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式,生成包括拉丁字符拼写形式和印地语字符拼写形式的词汇的第一候选词列表。

可选地,第一候选词列表中可以同时包括所有的第一候选字符串列表中拉丁字符拼写形式的印地语词汇,以及该印地语词汇所对应的印地语字符拼写形式的词汇。

进一步地,由于计算设备的显示界面有限,可以选取第一候选字符串列表中第一个数的拉丁字符拼写形式的印地语词汇和第二个数的印地语词汇所对应的印地语字符拼写形式的词汇,而后根据选取的词汇生成第一候选词列表。其中,第一个数和第二个数可以相同或者不同。例如,第一个数可以为2个,第二个数可以为3个。

步骤105,在输入法界面展示第一候选词列表。

本发明实施例中,为了满足用户同时输入印地语和拉丁语的混合输入需求,在得到第一候选词列表后,可以在输入法界面展示第一候选词列表。

仍以上述例子示例,当用户键入的拉丁字符序列为“Mai”时,在输入法界面展示的第一候选词列表可以为:Mai,Nai,Main,Maine。

步骤106,获取对第一候选词列表中的词汇的选择操作,将被选中的词汇作为输入词汇进行输入。

本发明实施例中,选择操作为用户触发的,该选择操作例如可以为用户的点击操作,或者用户触发键盘上的数字或空格键所对应的操作,对此不作限制。

具体地,当在输入法界面展示第一候选词列表后,用户可以根据实际需求,从第一候选词列表中选择一个词汇进行输入。计算设备中可以设置有监听器,以对用户触发的选择操作进行监听,当监听到用户触发的选择操作时,可以根据选择操作,确定被选中的词汇,而后将该被选中的词汇作为输入词进行输入。

仍以上述例子示例,用户可以选择“Main”作为输入词进行输入。

需要说明的是,本发明以印地语和拉丁语的混合输入为例,但是本发明并不限于此,本领域的技术人员可以在本发明的基础上,实现任意两种语言的混合输入,扩展性较强。

本发明实施例的面向印地语的多语言混合输入方法,通过获取输入法界面键入的当前输入词汇的拉丁字符序列,而后根据第一语言模型,获取拉丁字符序列对应的拉丁字符形式的第一候选字符串列表,其中,第一语言模型为预先建立的以拉丁字符形式拼写印地语的语言模型,接着根据预先建立的印地语词汇的拉丁字符拼写形式和印地语字符拼写形式之间的映射关系,获取第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式,以及根据第一候选字符串列表和第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式,生成包括拉丁字符拼写形式和印地语字符拼写形式的词汇的第一候选词列表,最后在输入法界面展示第一候选词列表,并获取对第一候选词列表中的词汇的选择操作,从而将被选中的词汇作为输入词汇进行输入。由此,无需频繁切换输入模式来满足用户同时输入印地语和拉丁语的混合输入需求,提升多语言的混合输入效率,改善用户的输入体验。此外,根据映射关系,确定印地语字符拼写形式,可以提升输出结果的准确性。

作为一种可能的实现方式,为了提升用户的输入效率,在将被选中的词汇作为输入词汇进行输入之后,还可以预测输入词汇的后续词汇,从而用户可以根据预测结果,进行下一个词汇的输入,由此,无需用户手动键入下一个词汇,进一步提升用户多语言的混合输入效率。下面结合图2,对上述过程进程详细说明。

图2为根据本发明实施例的面向印地语的多语言混合输入方法中词汇联想输入的流程示意图。

如图2所示,在图1所示实施例的基础上,在步骤106之后,该面向印地语的多语言混合输入方法还可以包括以下步骤:

步骤201,根据输入词汇对应的语言模型,预测输入词汇的后续词汇,并根据预测结果生成第二候选词列表。

具体地,当输入词汇的拼写形式是拉丁字符时,可以根据第一语言模型预测后续输入词汇,而当当输入词汇的拼写形式是印地语字符时,根据第二语言模型预测后续输入词汇,其中,第二语言模型为预先建立的,第二语言模型为以印地语字符形式拼写印地语的语言模型。例如,可以获取以印地语字符拼写印地语的语料数据,而后根据语料数据,构建语言模型,得到第二语言模型。

举例而言,当输入词汇为“Main”,可知,该输入词汇的拼写形式是拉丁字符,则根据第一语言模型预测后续输入词汇,预测结果可以为:bhi,ne,to,nahi,khud,hi。

当输入词汇为可知,该输入词汇的拼写形式是印地语字符,则根据第二语言模型预测后续输入词汇,预测结果可以为:

本发明实施例中,第二候选词列表可以包括候选结果中所有的词汇。进一步地,由于计算设备的显示界面有限,第二候选词列表中可以包括预测结果中第三个数的词汇。其中,第三个数为预先设置的。

步骤202,在输入法界面展示第二候选词列表。

本发明实施例中,在生成第二候选词列表后,可以在输入法界面展示第二候选词列表。

步骤203,获取对第二候选词列表的词汇的选择操作,将被选中的词汇作为下一个输入词汇进行输入。

本发明实施例中,当在输入法界面展示第二候选词列表后,用户可以根据实际需求,从第二候选词列表中选择一个词汇进行输入。计算设备中可以设置有监听器,以对用户触发的选择操作进行监听,当监听到用户触发的选择操作时,可以根据选择操作,确定被选中的词汇,而后将该被选中的词汇作为下一个输入词进行输入。

作为一种应用场景,当用户希望高效地输入包括拉丁语和印地语的混合输入句子时,采用本发明实施例的面向印地语的多语言混合输入方法,可以在用户输入词汇的过程中,进行输入词汇的纠错、补全和预测。

假设用户想要输入的语句是“Main bhimeri”,该语句对应的拉丁字符拼写形式的印地语词汇为“Main bhi nahi meri kahani hai”。

1)当用户输入词汇“Mai”时,经过第一语言模型对其进行补全纠错,以及查询映射关系后,得到的第一候选词列表可以为:

Mai,Nai,Main,Maine

2)用户可以选择词汇“Main”,之后根据第一语言模型,预测后续输入词汇,得到的第二候选词列表可以为:

bhi,ne,to,nahi,khud,hi

3)用户可以选择词汇“bhi”,之后根据第一语言模型,预测后续输入词汇,得到的第二候选词列表可以为:

nahi,bhi,to,ho,hai,na

4)用户想要输出的词汇为“nahi”对应的以印地语字符形式拼写的印地语,此时,用户可以输入“nahi”,经过第一语言模型以及查询映射关系后,得到的第一候选词列表可以为:

nahi,mahi,nani,

5)用户可以选择词汇之后用户输入词汇“meri”,则经过第一语言模型以及查询映射关系后,得到的第一候选词列表可以为:

meri,Meri,Mari,mari,mero

6)用户可以选择词汇“meri”,之后,用户想要输出的词汇为“kahani”对应的以印地语字符形式拼写的印地语,此时,用户可以输入“kahani”,经过第一语言模型以及查询映射关系后,得到的第一候选词列表可以为:

kahani,kahaani,kahaniya,kahaani,kahaniyaan

7)用户可以选择词汇之后根据第二语言模型,预测后续输入词汇,得到的第二候选词列表可以为:

8)用户可以选择词汇至此输出结束。由此,可以有效提升用户的输入效率。

作为另一种应用场景,当用户想要输入某个以印地语字符形式拼写的印地语词汇时,但是该用户并不知道该词汇的拼写规则,只知道该词汇对应的部分拉丁字符拼写形式。例如,用户希望输入的词汇为该词汇对应的拉丁字符拼写形式为“Abhishek”,如果用户只记得拉丁字符拼写形式的前半部分“Abhis”。

1)用户可以输入词汇“Abhis”,经过第一语言模型对其进行补全纠错,以及查询映射关系后,得到的第一候选词列表可以为:

Abhis,Abhishek,Abhisek,Abhisar

2)用户可以选择词汇至此输出结束。由此,可以有效提升用户的输入效率,以及保证了字符串的连续输入。

作为一种可能的实现方式,参见图3,图3为根据本发明实施例的建立语言模型的流程示意图。第一语言模型的建立过程,具体可以包括以下步骤:

步骤301,获取以拉丁字符形式拼写印地语的语料数据,并对语料数据进行预处理以去除其中的错误语料和低频语料,得到有效语料。

本发明实施例中,可以采集印度地区的以拉丁字符形式拼写印地语的语料数据,而后,对语料数据进行预处理以去除其中的错误语料和低频语料,得到有效语料,例如,可以对语料数据进行非文本信息的干扰去除、拼写检查更正、数据清洗、数据格式整理、挑选高频词语等预处理操作,从而保证学习后的第一语言模型的性能。

步骤302,去除有效语料数据中的冗余部分,得到整理后的语料。

应当理解的是,获取到的有效语料数据中往往存在大量的冗余信息,如果直接利用该有效语料数据,构建语言模型,将严重影响第一语言模型的学习效率。因此,本发明中,可以去除有效语料数据中的冗余部分,得到整理后的语料,从而可以降低语料数据的冗余和存储的空间,以及提升第一语言模型的学习效率。

步骤303,使用整理后的语料构建语言模型。

本发明实施例中,在得到整理后的语料时,可以使用整理后的语料,构建语言模型。在构建语言模型时,为了避免数据溢出,且提高语言模型性能,可以采用取对数后,使用加法运算代替乘法运算。

作为一种可能的实现方式,由于需要根据语言模型和输入词汇,预测后续输入词汇,而后续输入词汇的出现,仅与之前出现的词汇相关,而与其他任何词汇不相关,因此,语言模型可以为N-Gram形式的语言模型,即为N元语言模型。则步骤303具体可以包括:使用整理后的语料,构建N-Gram形式的语言模型,并计算语言模型的参数,其中,所述语言模型的参数包括:语言模型中的词汇,以及N元词汇排列中,第N个词汇关于前N-1个词汇的条件概率,N为正整数。

假设语言模型中的词汇为:w1,w2,w3,...,wn组成,则第N个词汇关于前N-1个词汇的条件概率为:

P(wN|w1………wN-1);

需要说明的是,假设语言模型中的词汇为1000个,当语言模型为二元语言模型时,使用二元语言模型将会形成1000*1000的矩阵,使用三元语言模型将会形成1000*1000*1000的矩阵,形成的矩阵中含有大量的零值,即稀疏矩阵,此时,需要对形成的矩阵中的稀疏数据进行平滑处理。具体地,步骤303还可以包括:对条件概率的数据进行平滑处理,以使整理后的语料中未出现的N元词汇排列对应的条件概率不为零。

可选地,可以采用数据平滑处理技术,对条件概率的数据进行平滑处理,降低整理后的语料中已出现的N元词汇排列对应的条件概率,使得未出现的N元词汇排列对应的条件概率不为零。

为了实现上述实施例,本发明还提出一种面向印地语的多语言混合输入装置。

装置的实现可包括一个或多个计算设备,计算设备包括处理器和存储器,存储器上存储有包括可在处理器上运行的计算机程序指令的应用程序。应用程序可以划分为多个程序模块,用于系统各个组成部分的相应功能。其中,程序的模块的划分是逻辑上的而非物理上的,每个程序模块可以运行在一个或多个计算设备上,一个计算设备上也可以运行一个或一个以上的程序模块。以下对本发明的装置按照程序模块的功能逻辑划分进行详细说明。

图4为根据本发明实施例的面向印地语的多语言混合输入装置的结构示意图。

其中,面向印地语的多语言混合输入装置100可以采用包括处理器和存储器的计算设备实现,存储器中存储有可被处理器执行的程序模块,各个程序模块被执行时,控制计算设备实现相应的功能。

如图4所示,该面向印地语的多语言混合输入装置100包括:输入字符获取模块101、第一候选字符串生成模块102、词汇映射模块103、第一候选词列表生成模块104、第一候选词列表展示模块105,以及第一候选词输入模块106。其中,

输入字符获取模块101,用于获取输入法界面键入的当前输入词汇的拉丁字符序列。

第一候选字符串生成模块102,用于根据第一语言模型,获取拉丁字符序列对应的拉丁字符形式的第一候选字符串列表,第一语言模型为以拉丁字符形式拼写印地语的语言模型。

词汇映射模块103,用于根据预先建立的印地语词汇的拉丁字符拼写形式和印地语字符拼写形式之间的映射关系,获取目标印地语词汇列表,所述目标印地语词汇列表包括:第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式。

第一候选词列表生成模块104,用于根据第一候选字符串列表和目标印地语词汇列表,生成包括拉丁字符拼写形式和印地语字符拼写形式的词汇的第一候选词列表。

第一候选词列表展示模块105,用于在输入法界面展示第一候选词列表。

第一候选词输入模块106,用于获取对第一候选词列表中的词汇的选择操作,将被选中的词汇作为输入词汇进行输入。

进一步地,在本发明实施例的一种可能的实现方式中,参见图5,在图4所示实施例的基础上,该面向印地语的多语言混合输入装置100还可以包括:

第一候选字符串生成模块102,具体用于:当拉丁字符序列为完整的拉丁字符拼写形式的印地语词汇时,将拉丁字符序列对应的印地语词汇加入第一候选字符串列表;以及获取扩展选项,扩展选项包括:含有拉丁字符序列的拉丁字符拼写形式的印地语词汇或者词汇片段,将扩展选项加入第一候选字符串列表。

第一候选字符串生成模块102,还可以用于:当所述第一语言模型中不存在含有所述拉丁字符序列的拉丁字符拼写形式的印地语词汇时,获取与所述拉丁字符序列相似度最高的拉丁字符拼写形式的印地语词汇,并将之作为扩展选项加入第一候选字符串列表。

第二候选词列表生成模块107,用于根据输入词汇对应的语言模型,预测输入词汇的后续词汇,并根据预测结果生成第二候选词列表。

第二候选词列表显示模块108,用于在输入法界面展示第二候选词列表。

第二候选词输入模块109,用于获取对第二候选词列表的词汇的选择操作,将被选中的词汇作为下一个输入词汇进行输入。

作为一种可能的实现方式,第二候选词列表生成模块107,具体用于:判断输入词汇的拼写形式是拉丁字符还是印地语字符;当输入词汇的拼写形式是拉丁字符时,根据第一语言模型预测后续输入词汇;当输入词汇的拼写形式是印地语字符时,根据第二语言模型预测后续输入词汇,第二语言模型为预先建立的以印地语字符形式拼写印地语的语言模型。

第一语言模型创建模块110,用于建立第一语言模型。

作为一种可能的实现方式,第一语言模型创建模块110,包括:

语料获取单元111,用于获取以拉丁字符形式拼写印地语的语料数据,并对语料数据进行预处理以去除其中的错误语料和低频语料,得到有效语料。

语料去冗余单元112,用于去除有效语料数据中的冗余部分,得到整理后的语料。

语言模型构建单元113,用于使用整理后的语料构建语言模型。

作为一种可能的实现方式,语言模型构建单元113,具体用于:使用整理后的语料构建N-Gram形式的语言模型,并计算语言模型的参数,其中,语言模型的参数包括:语言模型中的词汇,以及N元词汇排列中,第N个词汇关于前N-1个词汇的条件概率,N为正整数;以及对条件概率的数据进行平滑处理,以使整理后的语料中未出现的N元词汇排列对应的条件概率不为零。

本发明面向印地语的多语言混合输入装置100中的各个模块的功能和作用的实现过程具体详情可参见上述方法中对应步骤的实现过程。对于装置实施例而言,由于其基本对应于方法实施例,前述对本发明的方法实施例的解释说明也适用于本发明的装置实施例。为避免冗余,在装置实施例中将不会对所有细节进行重复,相关未尽之处可参见上述结合图1到图3对本发明面向印地语的多语言混合输入方法实施例的相关描述。

本发明实施例的面向印地语的多语言混合输入装置,通过获取输入法界面键入的当前输入词汇的拉丁字符序列,而后根据第一语言模型,获取拉丁字符序列对应的拉丁字符形式的第一候选字符串列表,其中,第一语言模型为预先建立的以拉丁字符形式拼写印地语的语言模型,接着根据预先建立的印地语词汇的拉丁字符拼写形式和印地语字符拼写形式之间的映射关系,获取第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式,以及根据第一候选字符串列表和第一候选字符串列表中的拉丁字符拼写形式的印地语词汇所对应的印地语字符拼写形式,生成包括拉丁字符拼写形式和印地语字符拼写形式的词汇的第一候选词列表,最后在输入法界面展示第一候选词列表,并获取对第一候选词列表中的词汇的选择操作,从而将被选中的词汇作为输入词汇进行输入。由此,无需频繁切换输入模式来满足用户同时输入印地语和拉丁语的混合输入需求,提升多语言的混合输入效率,改善用户的输入体验。此外,根据映射关系,确定印地语字符拼写形式,可以提升输出结果的准确性。

为了实时上述实施例,本发明还提出一种非临时性计算机可读存储介质。

本发明实施例的非临时性计算机可读存储介质,其上存储有可执行指令,所述可执行指令在处理器上运行时,实现如本发明前述实施例提出的面向印地语的多语言混合输入方法。该存储介质可以作为设备的一部分设置在其上;或者当该设备可以被服务器远程控制时,该存储介质可以设置在对该设备进行控制的远程服务器上。

用于实现本发明方法的计算机指令的可以采用一个或多个计算机可读的介质的任意组合来承载。所谓非临时性计算机可读介质可以包括任何计算机可读介质,除了临时性地传播中的信号本身。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

为了实现上述实施例,本发明还提出一种计算机程序产品。

本发明实施例的计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,实现根据本发明前述实施例提出的面向印地语的多语言混合输入方法。

可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

为了实现上述实施例,本发明还提出一种计算设备。

本发明实施例的计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现根据本发明前述实施例提出的面向印地语的多语言混合输入方法。

该计算设备可以由计算机设备的中央控制单元实现,作为计算机设备的中央控制单元的功能中的一部分。也可以由单独的计算设备实现,与计算机设备的中央控制单元通信连接。该计算设备的实现可包括但不限于,单片机,可编程逻辑控制器(PLC),复杂可编程逻辑器件(CPLD),可编程门阵列(PGA),现场可编程门阵列(FPGA),专用神经网络芯片,等等。

上述存储介质和计算设备,其相关部分的具体实施方式可以从相应的本发明的面向印地语的多语言混合输入方法或装置的实施例中获得,并具有与相应的本发明的面向印地语的多语言混合输入方法或装置相似的有益效果,在此不再赘述。

本发明实施例的非临时性计算机可读存储介质,计算机程序产品和计算设备,可以参照本发明前述实施例具体描述的内容实现,并具有与本发明前述实施例提出的面向印地语的多语言混合输入方法类似的有益效果,在此不再赘述。

需要说明的是,在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,例如两个,三个等,除非另有明确具体的限定。

本技术领域的普通技术人员可以理解实现上述实施例的方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

在本说明书的描述中,流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一个实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。

尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1