输入方法和装置与流程

文档序号:12461729阅读:158来源:国知局
输入方法和装置与流程

本申请涉及计算机技术领域,具体涉及文字输入方法技术领域,尤其涉及输入方法和装置。



背景技术:

现有的输入方法,对于用户输入长句的处理过程如下:为了控制计算量,对用户输入的各个音节根据词频选出候选词,然后,遍历各个音节的候选词,根据各个候选词之间的转移权重,计算各个路径的长句权重。

然而,现有的输入方式通常是根据词频选出候选词,经常会造成得不到用户期望的结果。比如,用户输入“xianzhuozi”,期望得到“掀桌子”,但是,对于“xian”这个音节,根据词频选取的话,“掀”作为低频词并未被选作候选词。因此,无论对“xian”的候选词如何与“桌子”的转移权重,均不能得到用户期望的结果。从而,存在着输入效率低的问题。



技术实现要素:

本申请的目的在于提出一种改进的输入方法和装置,来解决以上背景技术部分提到的技术问题。

第一方面,本申请提供了一种输入方法,上述方法包括:获取用户输入的字符串,并对上述字符串进行处理,得到音节序列;根据预先建立的词库中音节与词条的对应关系,确定上述音节序列中各个音节的对应词条,其中,上述词库包括词条、音节与词条的对应关系、词条之间的转移权重,其中,上述转移权重用于表征由两个词条组成的词条对中的在前词条出现的情况下在后词条出现的概率;根据上述音节序列中相邻音节的对应词条两两之间的转移权重,为相邻音节中的在前音节确定候选词条;选取上述音节序列的最后一个音节的预定数目个对应词条作为上述最后一个音节的候选词条;根据各个音节的候选词条之间的转移权重,从各个音节的候选词条中选取词条生成上述音节序列对应的句子。

第二方面,本申请提供了一种输入装置,上述装置包括:处理单元,用于获取用户输入的字符串,并对上述字符串进行处理,得到音节序列;对应词条确定单元,用于根据预先建立的词库中音节与词条的对应关系,确定上述音节序列中各个音节的对应词条,其中,上述词库包括词条、音节与词条的对应关系、词条之间的转移权重,其中,上述转移权重用于表征由两个词条组成的词条对中的在前词条出现的情况下在后词条出现的概率;候选词确定单元,用于根据上述音节序列中相邻音节的对应词条两两之间的转移权重,为相邻音节中的在前音节确定候选词条;选取单元,用于选取上述音节序列的最后一个音节的预定数目个对应词条作为上述最后一个音节的候选词条;生成单元,用于根据各个音节的候选词条之间的转移权重,从各个音节的候选词条中选取词条生成上述音节序列对应的句子。

本申请提供的输入方法和装置,通过首先对用户输入的字符串处理得到音节序列;然后确定音节序列中各个音节的对应词条;根据上述音节序列中相邻音节的对应词条两两之间的转移权重,为相邻音节中的在前音节确定候选词条,选取上述音节序列的最后一个音节的预定数目个对应词条作为上述最后一个音节的候选词条,利用确定的候选词条构建词图,减少了词图的词条量,提高了词图中词条准确率,再遍历词图,根据各个音节的候选词条之间的转移权重,从各个音节的候选词条中选取词条生成上述音节序列对应的句子,可以提高长句的生成效率并且提高生成的长句的正确率,进而提高了输入效率。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1是本申请可以应用于其中的示例性系统架构图;

图2是根据本申请的输入方法的一个实施例的流程图;

图3a-图3d是根据本申请的输入方法的一个应用场景的示意图;

图4a是根据本申请的输入方法的又一个实施例的流程图;

图4b是根据本申请的输入方法的又一个实施例的子流程图;

图4c是根据本申请的输入方法的又一个实施例的子流程图;

图5a是根据本申请的输入方法的再一个实施例的流程图;

图5b是根据本申请的输入方法的再一个实施例的子流程图;

图6是根据本申请的输入装置的一个实施例的结构示意图;

图7是适于用来实现本申请实施例的终端设备的计算机系统的结构示意图。

具体实施方式

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

图1示出了可以应用本申请的输入方法或用于灰度发布的装置的实施例的示例性系统架构100。

如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105、106。网络104用以在终端设备101、102、103和服务器105、106之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户110可以使用终端设备101、102、103通过网络104与服务器105、106交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种客户端应用,例如输入法类应用、视频播放类应用、搜索引擎类应用、购物类应用、即时通信工具、邮箱客户端、社交平台软件等。

终端设备101、102、103可以是具有显示屏并且支持交互功能的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。

服务器105、106可以是提供各种服务的服务器,例如对终端设备101、102、103提供支持的后台服务器。后台服务器可以接收终端设备的词库更新请求并根据词库更新请求等数据处理,并将处理结果(例如更新的词库)反馈给终端设备。

需要说明的是,本申请中实施例所提供的输入方法一般由终端设备101、102、103执行,相应地,输入装置一般设置于终端设备101、102、103中。

应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。

继续参考图2,其示出了根据本申请的输入方法的一个实施例的流程200。上述的输入方法,包括以下步骤:

步骤210,获取用户输入的字符串,并对字符串进行处理,得到音节序列。

在本实施例中,输入方法运行于其上的电子设备(例如图1所示的终端设备)可以首先获取用户输入的字符串,然后对接收到的字符串进行处理,最后得到音节序列。

在本实施例中,用户输入的字符串可以是用户在键盘上点击或手写的字符串。作为示例,如果用户利用全拼输入法,用户在键盘上点击“xianzhuozi”这一串字符,则用户输入的字符串可以为“xianzhuozi”。如果用户利用双拼输入法,用户在键盘上点击“xmvozi”这一串字符,则用户输入的字符串可以为“xmvozi”。

在本实施例的一些可选的实现方式中,对接收到的字符串进行处理得到音节序列可以通过以下方式实现:基于正向最大匹配方式,对上述字符串进行切分;补全切分后的字符串的音节信息,得到音节序列。

本领域技术人员可以理解,如何基于正向最大匹配方式,对字符串进行切分,是本领域的常用技术手段,在此不再赘述。

需要说明的是,正向最大匹配的方式划分出音节序列中的音节,可以是以与单个汉字对应的拼音,还可以是多个字组成的词对应的拼音。

在本实施例的一些可选的实现方式中,补全切分后的字符串的音节信息,得到音节序列,可以包括:对于音节序列中的最后一个音节的韵母,在预先建立的韵母关系表中获取与该韵母对应的对应韵母;将最后一个音节的声母和上述对应韵母组成一个扩展音节,将扩展音节和上述最后一个音节共同作为上述音节序列新的最后一个音节。

在本实施例的一些可选的实现方式中,预先建立的韵母关系表可以包括韵母之间的对应关系,例如,可以将韵母“a”与韵母“an”之间可以建立对应关系,韵母“an”作为韵母“a”的对应韵母;可以将韵母“an”与韵母“ang”之间建立对应关系,韵母“ang”作为韵母“an”的对应韵母。

在本实施例的一些可选的实现方式中,对应韵母中的字母的数量大于音节中的韵母中的数量;即韵母关系表中一韵母中的字母数量低于这个韵母的对应韵母的字母数量。如此扩展音节的目的是对用户未输入完整的音节进行预测。现有技术中,已有利用模糊音扩展音节的方式,该方式是基于用户对于韵母分辨不清设置的,例如韵母“an”、韵母“an”与韵母“ang”之间对于某些用户来说分辨有困难,当用户输入“an”时,扩展出“a”和“ang”的韵母。而本实现方式当用户输入“an”时,只扩展出“ang”的韵母。因此,本实现方式中扩展音节的方法不同于现有技术中基于模糊音扩展音节。

步骤220,根据预先建立的词库中音节与词条的对应关系,确定音节序列中各个音节的对应词条。

在本实施例中,输入方法运行于其上的电子设备(例如图1所示的终端设备)可以根据预先建立的词库中音节与词条的对应关系,确定音节序列中各个音节的对应词条。

在本实施例中,上述词库包括词条、音节与词条的对应关系、词条之间的转移权重,其中,上述转移权重用于表征由两个词条组成的词条对中的在前词条出现的情况下在后词条出现的概率。关于如何计算两个词条见的转移权重,是本领域技术人员所公知的,在此不再赘述。

在本实施例的一些可选的实现方式中,上述词库还包括词条的词频,其中,上述词频用于表征词条在词库中的出现频率。

在本实施例的一些可选的实现方式中,对于音节序列中的单个音节,可以将词库中所有与该音节有对应关系的词条作为该音节的对应词条。

在本实施例的一些可选的实现方式中,对于音节序列中的单个音节,从在上述词库中与该音节的有对应关系的词条中,按照词频由大到小的顺序,选取预定数目个与该音节由对应关系的词条作为该音节的对应词条。

步骤230,根据音节序列中相邻音节的对应词条两两之间的转移权重,为相邻音节中的在前音节确定候选词条。

在本实施例中,输入方法运行于其上的电子设备(例如图1所示的终端设备)可以从词库中获取音节序列中相邻音节的对应词条两两之间的转移权重,然后根据转移权重,为相邻音节中的在前音节确定候选词条。

作为示例,在音节序列“wo ai zhong guo”中,“wo ai”是相邻音节,“ai zhong”是相邻音节,“zhong guo”是相邻音节。“wo”是相邻音节中的在前音节。

作为示例,对于“wo ai”这一对相邻音节,在前音节“wo”的对应词条可以是“我”“握”,在后音节“ai”的对应词条可以是“爱”“唉”。相邻音节“wo ai”的对应词条两两之间的转移权重可以包括:在前音节的对应词条“我”和在后音节的对应词条“爱”之间的转移权重、在前音节的对应词条“我”和在后音节的对应词条“唉”之间的转移权重、在前音节的对应词条“握”和在后音节的对应词条“爱”之间的转移权重、在前音节的对应词条“握”和在后音节的对应词条“爱”之间的转移权重。

在本实施例的一些可选的实现方式中,然后根据转移权重,为相邻音节中的在前音节确定候选词条可以是:选取转移权重较大的在前音节的对应词条和在后音节的对应词条组成的词条对,将选取出的词条对中的在前音节对应词条确定为在前词条的候选词条。

作为示例,在前音节的对应词条“我”和在后音节的对应词条“爱”之间的转移权重高于其他词条对的转移权重,其他词条对包括“我唉”“握爱”“握唉”。

本领域技术人员可以理解,音节的候选词条用于构建词图,遍历词图可以得到与音节序列对应的句子。构建的词图中的词条量影响得到与音节序列对应的句子的速度。利用相邻音节的对应词条之间的转移概率确定在前音节的候选词条,可以在减少词图中在前音节的词条量的同时,提高词图中在前音节的词条的准确程度。

步骤240,选取音节序列的最后一个音节的预定数目个对应词条作为最后一个音节的候选词条。

在本实施例中,输入方法运行于其上的电子设备(例如图1所示的终端设备)可以选取上述音节序列的最后一个音节的预定数目个词条作为最后一个音节的候选词条。

在本实施例中,上述音节序列除了最后一个音节之外,其他音节都可以作为相邻音节中的在前音节,步骤230确定了相邻音节中的在前音节的候选词条,即步骤230确定了音节序列中除最后一个音节之外的其他音节的候选词条。步骤240用于确定最后一个音节的候选词条。

在本实施例的一些可选的实现方式中,可以从上述最后一个音节的对应词条中,按照词频由大到小的顺序选取预定数目个词条,作为上述最后一个音节的候选词条。

在本实施例的一些可选的实现方式中,可以根据上述最后一个音节的对应词条和上述最后一个音节的前一音节的对应词条之间的转移权重,确定上述最后一个音节的候选词条。

步骤250,根据各个音节的候选词条之间的转移权重,从各个音节的候选词条中选取词条生成音节序列对应的句子。

在本实施例中,输入方法运行于其上的电子设备(例如图1所示的终端设备)可以根据各个音节的候选词条,从各个音节的候选词条中选取词条,利用选取出的词条生成音节序列对应的句子。

在这里,句子可以是多个词语组成的词语串,不一定是主谓宾齐全的具有完整意义的词语串。

在本实施例的一些可选的实现方式中,步骤250可以通过以下方式实现:遍历上述音节序列中各个音节的候选词条;生成以各个音节的候选词条为节点的路径,其中,生成的路径的各个节点均属于不同的音节;确定各个路径的长句权重,其中,上述长句权重根据路径中节点之间的转移权重确定;选取长句权重最大的路径中的候选词条生成上述音节序列对应的句子。

在本实施例的一些可选的实现方式中,根据路径中节点之间的转移权重确定路径的长句权重可以通过以下方式实现:可以将路径的节点之间的转移权重之和作为长句权重。

构建出词图之后,如何由词图得到一条可能性最大的路径,是本技术人员所公知的,在此不再赘述。

继续参见图3a-图3d,其是根据本实施例的输入方法的应用场景的示意图。在图3a-图3d的应用场景中,用户输入字符串“ceshipinyinshurufa”,对字符串进行划分得到音节序列“ce shi pin yin shu ru fa”。从词库中确定各个音节的对应词条。

根据音节序列中相邻音节的对应词条两两之间的转移权重,为相邻音节中的在前音节确定候选词条,利用各个音节的候选词条构建如图3a所示的词图,候选词条列在音节的下方。作为示例,“ce”的候选词条为“测”、“册”,“shi”的候选词条为“式”“试”,“pin”的候选词条为“拼”“频”,“yin”的候选词条为“音”“引”,“shu”的候选词条为“输”“书”,“ru”的候选词条为“入”“如”,“fa”的候选词条为“法”“发”。

遍历词条,生成以各个音节的候选词条为节点的路径。如图3b和图3c所示,对于一条路径,从每个音节的候选词条中选取一个候选词条作为该路径的节点。对于本应用场景的词图,总共有27条路径。图3b示出了生成的路径“测试频引书如发”,图3c示出了生成的路径“测试拼音引书如发”。

确定各个路径的长句权重,找到长句权重最大的路径,利用长句权重最大的路径中的各个词条生成与音节序列对应的句子,如图3d所示的路径“测试拼音输入法”。

本申请的上述实施例提供的方法,通过首先对用户输入的字符串处理得到音节序列;然后确定音节序列中各个音节的对应词条;根据上述音节序列中相邻音节的对应词条两两之间的转移权重,为相邻音节中的在前音节确定候选词条,选取上述音节序列的最后一个音节的预定数目个对应词条作为上述最后一个音节的候选词条,利用确定的候选词条构建词图,减少了词图的词条量,提高了词图中词条准确率,再遍历词图,根据各个音节的候选词条之间的转移权重,从各个音节的候选词条中选取词条生成上述音节序列对应的句子,可以提高长句的生成效率并且提高生成的长句的正确率,进而提高了输入效率。

进一步参考图4a,其示出了输入方法的又一个实施例的流程400。该输入方法的流程400,包括以下步骤:

步骤410,获取用户输入的字符串,并对字符串进行处理,得到音节序列。

步骤410的实现细节可以参考对步骤210的说明,在此不再赘述。

步骤420,根据预先建立的词库中音节与词条的对应关系,确定音节序列中各个音节的对应词条。

步骤420的实现细节可以参考对步骤220的说明,在此不再赘述。

步骤430,选取音节序列的最后一个音节的预定数目个对应词条作为最后一个音节的候选词条。

在本实施例中,输入方法运行于其上的电子设备(例如图1所示的终端设备)可以选取上述音节序列的最后一个音节的预定数目个词条作为最后一个音节的候选词条。

在本实施例的一些可选的实现方式中,步骤430可以通过以下方式实现:从上述最后一个音节的对应词条中,按照词频由大到小的顺序选取预定数目个词条,作为上述最后一个音节的候选词条。

在本实施例的一些可选的实现方式中,步骤430可以通过以下方式实现:根据上述最后一个音节的对应词条和上述最后一个音节的前一音节的对应词条之间的转移权重,确定上述最后一个音节的候选词条。

在本实施例的一些可选的实现方式中,根据上述最后一个音节的对应词条和上述最后一个音节的前一音节的对应词条之间的转移权重,确定上述最后一个音节的候选词条,如图4b所示,可以通过步骤431-步骤434实现:

步骤431,遍历最后一个音节的对应词条和最后一个音节的前一音节的对应词条,生成由上述最后一个音节的对应词条和上述最后一个音节的前一音节的对应词条两两组成的词条对。

作为示例,最后一个音节为“fan”,“fan”的对应词条包括“饭”和“反”;最后一个音节的前一音节为“chi”,“chi”的对应词条包括“吃”“持”。遍历生成的词条对,词条对可以是“吃饭”“持饭”“吃反”“持反”。在这里,词条对由上述最后一个音节的对应词条和上述最后一个音节的前一音节的对应词条两两组成。

步骤432,确定生成的词条对中最后一个音节的对应词条和最后一个音节的前一音节的对应词条之间的转移概率。

作为示例,遍历生成的词条对可以包括“吃饭”“持饭”“吃反”“持反”,确定“吃饭”之间的转移概率,确定“持饭”之间的转移概率,确定“吃反”之间的转移概率,确定“持反”之间的转移概率。

步骤433,按照转移概率由大到小的顺序选取预定数目个词条对。

作为示例,可以先对词条对按照转移概率由大到小的顺序排序,得到顺序为“吃饭”“持反”“持饭”“吃反”,然后选取预定数目个转移概率较大的词条对,例如可以选取两个词条对,选取出的词条对为“吃饭”“持反”。

步骤434,将选取出的词条对中上述最后一个音节的对应词条确定为上述最后一个音节的候选词条。

作为示例,选取出的词条对为“吃饭”“持反”,可以将选取出的词条对中最后一个音节的对应词条,分别为“饭”“反”,确定为最后一个音节的候选词条。

步骤440,将最后一个音节确定为当前音节。

在本实施例中,输入方法运行于其上的电子设备(例如图1所示的终端设备)可以将最后一个音节确定为当前音节。

步骤450,执行确定在前音节的候选词的步骤。

在本实施例中,步骤450包括步骤451-步骤453:

步骤451,根据当前音节的候选词条和当前音节的前一音节的对应词条之间的转移概率,确定前一音节的候选词条。

在本实施例中,当前音节的候选词条相对于当前的对应词条,数量较少。如果当前音节是最后一个音节,则当前音节的候选词条已经在步骤430中确定。如果当前音节不是最后一个音节,则当前音节的候选词已在上一循环中确定;上一循环是指以当前音节的后一音节作为当前音节时,执行的步骤451到步骤453的这一过程。

作为示例,当前音节为“ai”,当前音节的对应词条为“爱”“唉”,当前词条的候选词条为“爱”。当前音节的前一音节为“wo”,当前音节的前一音节的对应词条为“我”“握”,根据“我爱”之间的转移概率、“握爱”之间的转移概率,当前音节的前一音节为“wo”确定候选词条为“我”。

在本实施例的一些可选的实现方式中,步骤451根据当前音节的候选词条和上述当前音节的前一音节的对应词条之间的转移概率,确定上述前一音节的候选词条,如图4c所示,可以包括步骤4511-步骤4514:

步骤4511,遍历上述当前音节的候选词条和上述当前音节的前一音节的对应词条,生成由上述当前音节的候选词条与上述前一音节的对应词条两两组成的词条对。

作为示例,当前音节为“fan”,“fan”的对应词条包括“饭”和“反”;当前音节的前一音节为“chi”,“chi”的对应词条包括“吃”“持”。遍历生成的词条对,词条对可以是“吃饭”“持饭”“吃反”“持反”。在这里,词条对由上述当前音节的对应词条和上述当前音节的前一音节的对应词条两两组成。

步骤4512,确定生成的词条对中当前音节的候选词条与前一音节的对应词条之间的转移概率。

作为示例,遍历生成的词条对可以包括“吃饭”“持饭”“吃反”“持反”,确定“吃饭”之间的转移概率,确定“持饭”之间的转移概率,确定“吃反”之间的转移概率,确定“持反”之间的转移概率。

步骤4513,按照转移概率由大到小的顺序,选取预定数目个词条对。

作为示例,可以先对词条对按照转移概率由大到小的顺序排序,得到顺序为“吃饭”“吃反”“持反”“持饭”,然后选取预定数目个转移概率较大的词条对,例如可以选取两个词条对,选取出的词条对为“吃饭”“吃反”。

步骤4514,将选取出的词条对中的上述前一音节的对应词条确定为上述前一音节的候选词条。

作为示例,选取出的词条对为“吃饭”“吃反”,可以将选取出的词条对中在前音节的对应词条“吃”,确定为当前音节的前一音节的候选词条。

步骤452,确定前一音节是否是上述音节序列的第一个音节。

在本实施例中,上述电子设备确定上述当前音节的前一音节是否是上述音节序列的第一个音节。

如果当前音节的前一音节是否是上述音节序列的第一个音节,则说明上述音节序列的各个音节的候选词条均已确定。

步骤453,响应于上述前一音节是第一个音节,输出确定的与音节对应的候选词条。

在本实施例中,响应于上述前一音节是第一个音节,输出确定的与音节对应的候选词条。

步骤460,响应于上述前一音节不是上述第一个音节,将上述前一音节作为当前音节,继续执行确定在前音节的候选词条的步骤。

在本实施例中,上述电子设备响应于上述前一音节不是上述第一个音节,将上述前一音节作为当前音节,继续执行确定在前音节的候选词条的步骤450。

步骤470,根据各个音节的候选词条之间的转移权重,从各个音节的候选词条中选取词条生成上述音节序列对应的句子。

步骤470的实现细节可以参考和步骤250中的说明,在此不再赘述。

从图4a中可以看出,与图2对应的实施例相比,本实施例中的输入方法的流程400突出了对从后往前,确定音节序列各个音节的候选词条,并且在相邻音节的在前音节的候选词条时,利用从在后音节的对应词条筛选出的候选词条,生成相邻音节的词条对相对于利用在后音节的对应词条数量减少,进而确定转移概率的计算量减少,从而提高了确定候选词条的效率。

进一步参考图5a,其示出了输入方法的又一个实施例的流程500。该输入方法的流程500,包括以下步骤:

步骤510,获取用户输入的字符串,并对字符串进行处理,得到音节序列。

步骤510的实现细节可以参考对步骤210的说明,在此不再赘述。

步骤520,根据预先建立的词库中音节与词条的对应关系,确定上述音节序列中各个音节的对应词条。

步骤520的实现细节可以参考对步骤220的说明,在此不再赘述。

步骤530,将上述音节序列的第一个音节确定为当前音节。

步骤540,执行确定当前音节的候选词条的步骤。

在本实施例中,步骤540可以包括以下步骤541-步骤543:

步骤541,根据当前音节的对应词条和上述当前音节的后一音节的对应词条之间的转移概率,确定上述当前音节的候选词条。

在本实施例中,如图5b所示,步骤541可以通过步骤5411-步骤5414实现:

步骤5411,遍历当前音节的对应词条和当前音节的后一音节的对应词条,生成由当前音节的对应词条和后一音节的对应词条两两组成的词条对。

作为示例,当前音节为“chi”,“chi”的对应词条包括“吃”“持”;当前音节的后一个音节为“fan”,“fan”的对应词条包括“饭”和“反”。遍历生成的词条对,词条对可以是“吃饭”“持饭”“吃反”“持反”。在这里,词条对由上述当前音节的对应词条和当前音节的后一个音节的对应词条两两组成。

步骤5412,确定生成的词条对中当前音节的对应词条和后一音节的对应词条之间的转移概率。

作为示例,遍历生成的词条对可以包括“吃饭”“持饭”“吃反”“持反”,确定“吃饭”之间的转移概率,确定“持饭”之间的转移概率,确定“吃反”之间的转移概率,确定“持反”之间的转移概率。

步骤5413,按照转移概率由大到小的顺序选取预定数目个词条对。

作为示例,可以先对词条对按照转移概率由大到小的顺序排序,得到顺序为“吃饭”“吃反”“持反”“持饭”,然后选取预定数目个转移概率较大的词条对,例如可以选取两个词条对,选取出的词条对为“吃饭”“吃反”。

步骤5414,将选取出的词条对中的上述当前音节的对应词条作为上述当前音节的候选词条。

作为示例,选取出的词条对为“吃饭”“吃反”,可以将选取出的词条对中在前音节的对应词条“吃”,确定为当前音节候选词条;可以将选取出的词条对中在前音节的对应词条“饭”和“反”,确定为当前音节的后一音节的候选词条。

步骤542,确定后一音节是否是音节序列的最后一个音节。

如果当前音节的后一音节是音节序列的最后一个音节,则说明已经为音节序列的除最后一个音节外的其他音节确定候选词条。

步骤543,响应于上述后一音节是上述最后一个音节,输出确定的与音节对应的候选词条。

响应于上述后一音节是上述最后一个音节,输出与音节对应的候选词条。

步骤550,响应于上述后一音节不是上述最后一个音节,将上述后一音节作为当前音节,继续执行确定在前音节的候选词的步骤。

在本实施例中,上述电子设备响应于上述后一音节不是上述最后一个音节,将上述后一音节作为当前音节,继续执行确定在前音节的候选词的步骤540。

步骤560,从音节序列的最后一个音节的对应词条中为最后一个音节确定候选词条。

在本实施例的一些可选的实现方式中,步骤560可以通过以下方式实现:响应于上述后一音节是上述最后一个音节,从由上述最后一个音节的对应词条和上述最后一个音节的前一音节的对应词条组成的词条对中,按照转移概率由大到小的顺序选取预定数目个词条对;将选取出的词条对中上述最后一个音节的对应词条作为上述最后一个音节的候选词条。

在本实施例的一些可选的实现方式中,步骤560可以通过以下方式实现:从上述最后一个音节的对应词条中,按照词频由大到小的顺序选取预定数目个词条,作为上述最后一个音节的候选词条。

步骤570,根据各个音节的候选词条之间的转移权重,从各个音节的候选词条中选取词条生成上述音节序列对应的句子。

步骤570的实现细节可以参考和步骤250中的说明,在此不再赘述。

从图5a中可以看出,与图2对应的实施例相比,本实施例中的输入方法的流程500突出了对从前往后,确定音节序列各个音节的候选词条,并且在相邻音节的在前音节的候选词条时,利用在后音节的对应词条进行确定,在后音节的对应词条相对于在后音节的候选词条保留了相对较多的词条,进而确定在前音节的候选词条确定的更准确,从而提高了确定候选词条的效率。

进一步参考图6,作为对上述各图所示方法的实现,本申请提供了一种输入装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。

如图6所示,本实施例上述的输入装置600包括:处理单元601、对应词条确定单元602、候选词确定单元603、选取单元604和生成单元605。其中,处理单元601,用于获取用户输入的字符串,并对上述字符串进行处理,得到音节序列;对应词条确定单元602,用于根据预先建立的词库中音节与词条的对应关系,确定上述音节序列中各个音节的对应词条,其中,上述词库包括词条、音节与词条的对应关系、词条之间的转移权重,其中,上述转移权重用于表征由两个词条组成的词条对中的在前词条出现的情况下在后词条出现的概率;候选词确定单元603,用于根据上述音节序列中相邻音节的对应词条两两之间的转移权重,为相邻音节中的在前音节确定候选词条;选取单元604,用于选取上述音节序列的最后一个音节的预定数目个对应词条作为上述最后一个音节的候选词条;生成单元605,用于根据各个音节的候选词条之间的转移权重,从各个音节的候选词条中选取词条生成上述音节序列对应的句子。

在本实施例中,输入装置600的处理单元601,可以首先获取用户输入的字符串,然后对接收到的字符串进行处理,最后得到音节序列。

在本实施例中,输入装置600的对应词条确定单元602,可以根据预先建立的词库中音节与词条的对应关系,确定音节序列中各个音节的对应词条。在这里,上述词库包括词条、音节与词条的对应关系、词条之间的转移权重,其中,上述转移权重用于表征由两个词条组成的词条对中的在前词条出现的情况下在后词条出现的概率。关于如何计算两个词条见的转移权重,是本领域技术人员所公知的,在此不再赘述。

在本实施例中,输入装置600的候选词确定单元603,可以从词库中获取音节序列中相邻音节的对应词条两两之间的转移权重,然后根据转移权重,为相邻音节中的在前音节确定候选词条。

在本实施例中,输入装置600的选取单元604,可以选取上述音节序列的最后一个音节的预定数目个词条作为最后一个音节的候选词条。

在本实施例中,输入装置600的生成单元605,可以根据各个音节的候选词条,从各个音节的候选词条中选取词条,利用选取出的词条生成音节序列对应的句子。

在本实施例的一些可选的实现方式中,上述词库还包括词条的词频,其中,上述词频用于表征词条在词库中的出现频率;以及上述选取单元,进一步用于:从上述最后一个音节的对应词条中,按照词频由大到小的顺序选取预定数目个词条,作为上述最后一个音节的候选词条;或者,根据上述最后一个音节的对应词条和上述最后一个音节的前一音节的对应词条之间的转移权重,确定上述最后一个音节的候选词条。

在本实施例的一些可选的实现方式中,上述选取单元,进一步用于:遍历最后一个音节的对应词条和最后一个音节的前一音节的对应词条,生成由上述最后一个音节的对应词条和上述最后一个音节的前一音节的对应词条两两组成的词条对;确定生成的词条对中最后一个音节的对应词条和最后一个音节的前一音节的对应词条之间的转移概率;按照转移概率由大到小的顺序选取预定数目个词条对;将选取出的词条对中上述最后一个音节的对应词条确定为上述最后一个音节的候选词条。

在本实施例的一些可选的实现方式中,上述候选词确定单元包括逆向确定子单元(未示出),用于:将上述最后一个音节确定为当前音节;执行确定在前音节的候选词的步骤:根据当前音节的候选词条和上述当前音节的前一音节的对应词条之间的转移概率,确定上述前一音节的候选词条;确定上述前一音节是否是上述音节序列的第一个音节;响应于上述前一音节是上述第一个音节,输出确定的与音节对应的候选词条;响应于上述前一音节不是上述第一个音节,将上述前一音节作为当前音节,继续执行确定在前音节的候选词条的步骤。

在本实施例的一些可选的实现方式中,上述候选词确定单元包括正向确定子单元(未示出),用于:将上述音节序列的第一个音节确定为当前音节;执行确定在前音节的候选词条的步骤:根据当前音节的对应词条和上述当前音节的后一音节的对应词条之间的转移概率,确定上述当前音节的候选词条;确定上述后一音节是否是上述音节序列的最后一个音节;响应于上述后一音节是上述最后一个音节,输出确定的与音节对应的候选词条;响应于上述后一音节不是上述最后一个音节,将上述后一音节作为当前音节,继续执行确定在前音节的候选词的步骤。

在本实施例的一些可选的实现方式中,上述处理单元,进一步用于:对于音节序列中的最后一个音节的韵母,在预先建立的韵母关系表中获取与该韵母对应的对应韵母,其中,上述对应韵母中的字母数量大于该韵母的字母数量;将最后一个音节的声母和上述对应韵母组成一个扩展音节,将扩展音节和上述最后一个音节共同作为上述音节序列新的最后一个音节。

在本实施例的一些可选的实现方式中,上述生成单元,进一步用于:遍历上述音节序列中各个音节的候选词条;生成以各个音节的候选词条为节点的路径;确定各个路径的长句权重,其中,上述长句权重根据路径中节点之间的转移权重确定;选取长句权重最大的路径中的候选词条生成上述音节序列对应的句子。

本实施例的输入装置的各个单元的实现细节和技术效果,可以参考本申请其他实施例中的说明,在此不再赘述。

下面参考图7,其示出了适于用来实现本申请实施例的终端设备的计算机系统700的结构示意图。

如图7所示,计算机系统700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有系统700操作所需的各种程序和数据。CPU 701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。

以下部件连接至I/O接口705:包括键盘、鼠标、触控屏、手写笔等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。

特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,上述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(CPU)701执行时,执行本申请的方法中限定的上述功能。

附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个单元、程序段、或代码的一部分,上述单元、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括处理单元、对应词条确定单元、候选词确定单元、选取单元和生成单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,处理单元还可以被描述为“用于获取用户输入的字符串,并对上述字符串进行处理,得到音节序列的单元”。

作为另一方面,本申请还提供了一种非易失性计算机存储介质,该非易失性计算机存储介质可以是上述实施例中上述装置中所包含的非易失性计算机存储介质;也可以是单独存在,未装配入终端中的非易失性计算机存储介质。上述非易失性计算机存储介质存储有一个或者多个程序,当上述一个或者多个程序被一个设备执行时,使得上述设备:获取用户输入的字符串,并对上述字符串进行处理,得到音节序列;根据预先建立的词库中音节与词条的对应关系,确定上述音节序列中各个音节的对应词条,其中,上述词库包括词条、音节与词条的对应关系、词条之间的转移权重,其中,上述转移权重用于表征由两个词条组成的词条对中的在前词条出现的情况下在后词条出现的概率;根据上述音节序列中相邻音节的对应词条两两之间的转移权重,为相邻音节中的在前音节确定候选词条;选取上述音节序列的最后一个音节的预定数目个对应词条作为上述最后一个音节的候选词条;根据各个音节的候选词条之间的转移权重,从各个音节的候选词条中选取词条生成上述音节序列对应的句子。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

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