CN108845682A - 一种输入预测方法及装置 - Google Patents

一种输入预测方法及装置 Download PDF

Info

Publication number
CN108845682A
CN108845682A CN201810687793.7A CN201810687793A CN108845682A CN 108845682 A CN108845682 A CN 108845682A CN 201810687793 A CN201810687793 A CN 201810687793A CN 108845682 A CN108845682 A CN 108845682A
Authority
CN
China
Prior art keywords
text
node
prediction
morpheme
scoring
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810687793.7A
Other languages
English (en)
Other versions
CN108845682B (zh
Inventor
李晓旭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingsoft Internet Security Software Co Ltd
Original Assignee
Beijing Kingsoft Internet Security Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Kingsoft Internet Security Software Co Ltd filed Critical Beijing Kingsoft Internet Security Software Co Ltd
Priority to CN201810687793.7A priority Critical patent/CN108845682B/zh
Publication of CN108845682A publication Critical patent/CN108845682A/zh
Application granted granted Critical
Publication of CN108845682B publication Critical patent/CN108845682B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0237Character input methods using prediction or retrieval techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请实施例提供了一种输入预测方法及装置。应用于服务器的方法包括:接收客户端发送的当前文本;从预设的预测模型中确定以所述当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分;根据各个待选预测文本的评分,从各个待选预测文本中选择目标预测文本;将选择的目标预测文本发送至客户端;其中,每个目标路径包括边和边指向的节点的语素;预测模型包括:各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分;每个边的评分表示在该边的始端节点的语素后出现该边的末端节点的语素的概率。应用本申请实施例提供的方案,能够提高预测文本的准确性。

Description

一种输入预测方法及装置
技术领域
本申请涉及输入法技术领域,特别是涉及一种输入预测方法及装置。
背景技术
为了提升用户使用输入法时的便捷性,在输入法客户端中常常设置有词预测功能,即基于用户当前输入的文本,预测用户所要输入的下一个文本的功能,所预测的文本可以称为预测文本。当输入法客户端(即应用程序)确定出预测文本后,将预测文本展示给用户,以供用户选择输入。
在相关技术中,输入法客户端多采用统计语言模型来确定当前输入的文本的预测文本。即根据搜集的语料统计得到各个文本及后接文本的对应关系,将该对应关系保存在安装输入法客户端的终端设备中。当输入法客户端检测到用户当前输入的文本时,通过查找该对应关系得到预测文本。
由于终端设备的处理性能以及存储空间的限制,上述对应关系不可能太大,这就导致确定的预测文本不够准确。
发明内容
本申请实施例的目的在于提供了一种输入预测方法及装置,以提高预测文本的准确性。具体的技术方法如下。
第一方面,本申请实施例提供了一种输入预测方法,该方法包括:
接收客户端发送的当前文本;
从预设的预测模型中确定以所述当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分;其中,每个目标路径包括边和边指向的节点的语素;所述预测模型包括:各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分;每个边的评分表示在该边的始端节点的语素后出现该边的末端节点的语素的概率;
根据各个待选预测文本的评分,从各个待选预测文本中选择目标预测文本;
将选择的目标预测文本发送至客户端。
可选的,所述从预设的预测模型中确定以所述当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分的步骤,包括:
从预设的预测模型中确定所述当前文本所在的节点,作为第一级别的节点;
将所述第一级别的节点作为当前级别的节点,从所述预测模型中确定以所述当前级别的节点为始端的各个边指向的末端节点,作为下一级别的节点;
判断所述下一级别是否为预设级别;
如果是,则确定以所述第一级别的节点为始端、包含各个级别的节点的各个待选路径以及对应的路径评分;根据各个路径评分,从各个待选路径中选择目标路径;将各个目标路径上的各个语素组成待选预测文本,将各个目标路径的路径评分作为对应待选预测文本的评分;
如果否,则以所述下一级别的节点作为当前级别的节点,返回执行所述从所述预测模型中确定以所述当前级别的节点为始端的各个边指向的末端节点的步骤。
可选的,在从各个待选预测文本中选择目标预测文本之后,还包括:
将各个目标预测文本与预设的专有语素库中的各个专有语素进行匹配;
根据匹配成功的各个专有语素以及各个目标预测文本,确定各个最终预测文本;
将各个最终预测文本发送至所述客户端。
可选的,所述根据匹配成功的各个专有语素以及各个目标预测文本,确定各个最终预测文本的步骤,包括:
将匹配成功的各个专有语素替换匹配的目标预测文本,得到各个最终预测文本;和/或,
根据匹配成功的各个专有语素对匹配的目标预测文本进行修正,将修正后的各个目标预测文本作为最终预测文本;和/或,
将匹配成功的各个专有语素与各个目标预测文本均作为最终预测文本。
可选的,在接收所述客户端发送的当前文本之后,还包括:
判断所述当前文本是否为所述当前文本对应的语言类型中的完整语素,如果是,则执行所述从预设的预测模型中确定以所述当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分的步骤。
可选的,每个语素均包括至少一个元素;当所述当前文本不为所述语言类型中的完整语素时,还包括:
从预设的补全模型中确定以所述当前文本为始端的各个目标路径上各个元素组成的待选补全文本;其中,每个目标路径包括边和边指向的节点的元素;所述补全模型包括:各个元素所在的节点、节点与节点之间有方向的边;
从各个待选补全文本中确定最终补全文本,并将确定的最终补全文本发送至所述客户端。
可选的,所述从各个待选补全文本中确定最终补全文本的步骤,包括:
获取所述客户端发送的所述当前文本的前一文本;
从所述预测模型中确定以所述前一文本为始端、以各个待选补全文本为末端的各个边的评分,将确定的各个边的评分作为对应的待选补全文本的评分;
根据各个待选补全文本的评分,从各个待选补全文本中确定最终补全文本。
第二方面,本申请实施例还提供了一种输入预测方法,该方法包括:
向服务器发送输入的当前文本;
接收所述服务器发送的与所述当前文本对应的目标预测文本;其中,所述目标预测文本为:所述服务器根据各个待选预测文本的评分从各个待选预测文本中选择;所述各个待选预测文本为:所述服务器从预设的预测模型中确定的以所述当前文本为始端的各个目标路径上各个语素组成的文本;所述预测模型包括:各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分;每个边的评分表示在该边的始端节点的语素后出现该边的末端节点的语素的概率;
显示所述目标预测文本。
第三方面,本申请实施例提供了一种输入预测装置,该装置包括:
第一接收模块,用于接收客户端发送的当前文本;
第一确定模块,用于从预设的预测模型中确定以所述当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分;其中,每个目标路径包括边和边指向的节点的语素;所述预测模型包括:各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分;每个边的评分表示在该边的始端节点的语素后出现该边的末端节点的语素的概率;
选择模块,用于根据各个待选预测文本的评分,从各个待选预测文本中选择目标预测文本;
第一发送模块,用于将选择的目标预测文本发送至客户端。
可选的,所述第一确定模块,具体用于:
从预设的预测模型中确定所述当前文本所在的节点,作为第一级别的节点;
将所述第一级别的节点作为当前级别的节点,从所述预测模型中确定以所述当前级别的节点为始端的各个边指向的末端节点,作为下一级别的节点;
判断所述下一级别是否为预设级别;
如果是,则确定以所述第一级别的节点为始端、包含各个级别的节点的各个待选路径以及对应的路径评分;根据各个路径评分,从各个待选路径中选择目标路径;将各个目标路径上的各个语素组成待选预测文本,将各个目标路径的路径评分作为对应待选预测文本的评分;
如果否,则以所述下一级别的节点作为当前级别的节点,从所述预测模型中确定以所述当前级别的节点为始端的各个边指向的末端节点。
可选的,还包括:
匹配模块,用于在从各个待选预测文本中选择目标预测文本之后,将各个目标预测文本与预设的专有语素库中的各个专有语素进行匹配;
第二确定模块,还用于根据匹配成功的各个专有语素以及各个目标预测文本,确定各个最终预测文本;
所述第一发送模块,还用于将各个最终预测文本发送至所述客户端。
可选的,所述第二确定模块,具体用于:
将匹配成功的各个专有语素替换匹配的目标预测文本,得到各个最终预测文本;和/或,
根据匹配成功的各个专有语素对匹配的目标预测文本进行修正,将修正后的各个目标预测文本作为最终预测文本;和/或,
将匹配成功的各个专有语素与各个目标预测文本均作为最终预测文本。
可选的,所述装置还包括:
判断模块,用于在接收所述客户端发送的当前文本之后,判断所述当前文本是否为所述当前文本对应的语言类型中的完整语素,如果是,则从预设的预测模型中确定以所述当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分。
可选的,每个语素均包括至少一个元素;所述装置还包括:
第三确定模块,用于当所述当前文本不为所述语言类型中的完整语素时,从预设的补全模型中确定以所述当前文本为始端的各个目标路径上各个元素组成的待选补全文本;其中,每个目标路径包括边和边指向的节点的元素;所述补全模型包括:各个元素所在的节点、节点与节点之间有方向的边;
第四确定模块,用于从各个待选补全文本中确定最终补全文本;
所述第一发送模块,还用于将确定的最终补全文本发送至所述客户端。
可选的,所述第四确定模块,具体用于:
获取所述客户端发送的所述当前文本的前一文本;
从所述预测模型中确定以所述前一文本为始端、以各个待选补全文本为末端的各个边的评分,将确定的各个边的评分作为对应的待选补全文本的评分;
根据各个待选补全文本的评分,从各个待选补全文本中确定最终补全文本。
第四方面,本申请实施例提供了一种输入预测装置,该装置包括如下步骤:
第二发送模块,用于向服务器发送输入的当前文本;
第二接收模块,用于接收所述服务器发送的与所述当前文本对应的目标预测文本;其中,所述目标预测文本为:所述服务器根据各个待选预测文本的评分从各个待选预测文本中选择;所述各个待选预测文本为:所述服务器从预设的预测模型中确定的以所述当前文本为始端的各个目标路径上各个语素组成的文本;所述预测模型包括:各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分;每个边的评分表示在该边的始端节点的语素后出现该边的末端节点的语素的概率;
显示模块,用于显示所述目标预测文本。
第五方面,本申请实施例提供了一种服务器,该服务器包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第一方面提供的输入预测方法。
第六方面,本申请实施例提供了一种终端设备,该终端设备包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第二方面提供的输入预测方法。
第七方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面提供的输入预测方法。
第八方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第二方面提供的输入预测方法。
本申请实施例提供的输入预测方法及装置,可以接收客户端发送的当前文本,从预测模型中确定以当前文本为始端的各个目标路径上各个语素组成的待预测文本,根据各个待选预测文本的评分,从各个待选预测文本中选择目标预测文本,将目标预测文本发送至客户端。本申请实施例中,客户端在确定预测文本时,通过服务器来确定,由于服务器相比于终端设备具有更高的处理能力和更大的存储空间,并且由于服务器用于确定预测文本的预测模型包括各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分,即预测模型中语素与语素之间的关系更丰富,因此本实施例确定的预测文本更准确。当然,实施本申请的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种输入预测方法的流程示意图;
图2为本申请实施例提供的预测模型的一种结构示意图;
图3为本申请实施例提供的另一种输入预测方法的流程示意图;
图4为本申请实施例提供的补全模型的一种结构示意图;
图5为本申请实施例提供的再一种输入预测方法的流程示意图;
图6为本申请实施例提供的一种输入预测装置的结构示意图;
图7为本申请实施例提供的另一种输入预测装置的结构示意图;
图8为本申请实施例提供的服务器的一种结构示意图;
图9为本申请实施例提供的终端设备的一种结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了提高预测文本的准确性,本申请实施例提供了一种输入预测方法及装置。下面通过具体实施例,对本申请进行详细说明。
图1为本申请实施例提供的输入预测方法的一种流程示意图。该方法应用于服务器。该方法包括如下步骤S101~S104。
步骤S101:接收客户端发送的当前文本。
其中,客户端可以是安装在终端设备中的输入法应用程序。终端设备可以为智能手机、平板电脑等设备。输入法向服务器发送的当前文本可以为用户输入的当前文本。当客户端接收到用户输入的当前文本时,为了方便用户的输入,可以推测用户在当前文本之后想要输入的文本,即确定当前文本的预测文本,并显示给用户,这样用户可以从显示的预测文本中进行选择,节省了输入文本的时间,可以给用户良好的输入体验。
当前文本可以是当前文本对应的语言类型中的一个或多个语素。语素可以理解为语言中最小的音义结合体。例如,汉语中的“人”“书”“白”“尴尬”等为语素,语素可以是一个字,也可以是两个及两个以上的字组成的词;英语中的I、you、ok、take care等为语素,语素可以是一个单词,也可以是词组。当前文本的语言类型为英语时,则当前文本可以是一个或多个单词;当前文本的语言类型为汉语时,则当前文本可以是字或词。
客户端可以在接收到预测触发指令时,将当前文本发送至服务器。例如,当客户端接收到用户输入的I和空格时,触发客户端将当前文本I发送至服务器;或者,当客户端接收到用户输入的I时,触发客户端将当前文本I发送至服务器;也可以是,当客户端接收到用户输入的触发指令时,例如用户点击了预测按钮,均就可以触发客户端将当前文本I发送至服务器。
步骤S102:从预设的预测模型中确定以当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分。
其中,每个目标路径包括边和边指向的节点的语素。预测模型包括:各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分。每个边的评分表示在该边的始端节点的语素后出现该边的末端节点的语素的概率。每个边的评分可以是0到1之间的值。在英语语言中,每个节点中的语素可以是单个单词,也可以是词组,或者短句子。在汉语语言中,每个节点中的语素可以是单个字,也可以是词或词组,或者短句子。
参见图2,图2为预测模型的一种结构示意图。其中,每个圆圈为一个节点,每个节点中存在一个单词或词组,节点和节点之间有方向的边采用箭头线代替,箭头的方向即为边的方向。节点和节点之间可以存在两个方向相反的边。每个边的评分未显示出来。例如,I和want之间的边的评分,表示I后出现want的概率。当当前文本为I时,以I为始端的路径可以有很多条,例如I→want→it,I→want→to,I→want→that,I→want→a,I→love→it,I→love→that,I→love→to等等。目标路径可以为以I为始端的所有路径中的部分路径或全部路径。上述各条路径上各个语素组成的待选预测文本可以分别包括:want it,wantto,want that,want a,love it,love that,love to。各个待选预测文本的评分可以为根据对应的目标路径中各个边的评分确定。例如,want it的评分,可以为I→want的边的评分1与want→it的边的评分2的乘积或平均值等。
步骤S103:根据各个待选预测文本的评分,从各个待选预测文本中选择目标预测文本。
在选择目标预测文本时,可以将评分最高的第一数量个待预测文本选择为目标预测文本,也可以将评分大于第一评分阈值的待预测文本选择为目标预测文本,还可以将上述两种方式进行结合来选择目标预测文本。第一数量和第一评分阈值均可以为预设值。
步骤S104:将选择的目标预测文本发送至客户端。
客户端可以接收服务器发送的目标预测文本,并显示该目标预测文本。
由上述内容可知,本实施例可以接收客户端发送的当前文本,从预测模型中确定以当前文本为始端的各个目标路径上各个语素组成的待预测文本,根据各个待选预测文本的评分,从各个待选预测文本中选择目标预测文本,将目标预测文本发送至客户端。本实施例中,客户端在确定预测文本时,通过服务器来确定,由于服务器相比于终端设备具有更高的处理能力和更大的存储空间,并且由于服务器用于确定预测文本的预测模型包括各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分,即预测模型中语素与语素之间的关系更丰富,因此本实施例确定的预测文本更准确。
相比于在终端设备的本地预测,在服务器端预测时使用的模型可以更大,进而提高预测的准确度。
在本申请的另一实施例中,图1所示实施例中,步骤S102,从预设的预测模型中确定以当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分的步骤,可以包括以下步骤1a~步骤5a。
步骤1a:从预设的预测模型中确定当前文本所在的节点,作为第一级别的节点。
步骤2a:将第一级别的节点作为当前级别的节点,从预测模型中确定以当前级别的节点为始端的各个边指向的末端节点,作为下一级别的节点。
步骤3a:判断上述下一级别是否为预设级别;如果是,则执行步骤4a,如果否,则执行步骤5a。
其中,预设级别可以为预设值,预设级别可以根据实际需求设定。当预设级别设置得较大时,待选预测文本的个数越多,相应的计算量也越大。因此,可以适当地设定预设级别,兼顾待选预测文本的数量和计算量。例如,预设级别可以为3或2等值。
步骤4a:确定以第一级别的节点为始端、包含各个级别的节点的各个待选路径以及对应的路径评分,根据各个路径评分,从各个待选路径中选择目标路径;将各个目标路径上的各个语素组成待选预测文本,将各个目标路径的路径评分作为对应待选预测文本的评分。
其中,各个级别可以包括第一级别、第二级别、第三级别和第四级别等。每个待选路径还可以包括方向为从上一级别的节点指向下一级别的节点的边。
在确定各个待选路径的路径评分时,可以将每个待选路径包含的边的评分的乘积或平均值或经过其他操作后的值作为该待选路径的路径评分。
从各个待选路径中选择目标路径时,可以将路径评分最高的第二数量个待选路径选择为目标路径,也可以将路径评分大于第二评分阈值的待选路径选择为目标路径,还可以将上述两种方式进行结合来选择目标路径。第二数量和第二评分阈值均可以为预设值。
步骤5a:以下一级别的节点作为当前级别的节点,返回执行步骤2a中从预测模型中确定以当前级别的节点为始端的各个边指向的末端节点的步骤。
例如,针对参见图2所示的预测模型,已知当前文本为I,预设级别为3,则以I作为第一级别的节点,以I为始端的边包括4个,即I→am,I→want,I→love和I→like这4个边,并将am,want,love和like作为第二级别的节点。由于第二级别不为预设级别3,则继续以第二级别的节点为当前级别的节点,从预测模型中确定以am为始端的am→a这一个边,以want为始端的want→a,to,it和that这四个边,以love为始端的love→a,to,it和you这四个边,以及以like为始端的like→a,to,it,that和you这五个边。这些边的级别3等于预设级别,因此可以确定以I为始端,包含第二、第三级别的节点的各个待选路径包括:I→am→a,I→want→a,I→want→to,I→want→it,I→want→that,I→love→a,I→love→to,I→love→it,I→love→you,I→like→a,I→like→to,I→like→it,I→like→that,I→like→you。每个待选路径的评分采用该待选路径包含的各边的评分的乘积的方式确定。每个待选路径的路径评分分别为:0.1,0.2,0.25,0.11,0.59,0.23,0.33,0.43,0.65,0.34,0.89,0.47,0.91,0.77。路径评分中最高的3个评分分别为0.89、0.91和0.77,则目标路径为I→like→to,I→like→that和I→like→you。对应的,3个待选预测文本及评分分别为:liketo-0.89,like that-0.91和like you-0.77。
由于级别越多时,从第一级别到最后一个级别的可能性越多,在从预测模型中确定以第一级别的节点为始端的各个边指向的节点作为末端节点时,可以根据预测模型中以第一级别的节点为始端的所有边的评分,从以第一级别的节点为始端的所有边中选择目标边,以目标边的末端节点作为第二级别的节点。为了减少计算量,从以第一级别的节点为始端的所有边中选择目标边时,可以将该所有边中评分最大的指定数量个边选择为目标边。例如,以第一级别的节点为始端的边一共有50个,指定数量为3,则可以将50个边中评分最高的3个边作为目标边。
为了减少计算量,在第二级别之后、预设级别之前的各个级别中,也可以根据边或者包含边的路径的评分选择部分末端节点进行操作。预设级别为设置的最大级别。例如,当最大级别为4时,在以第二级别为当前级别时,可以从所有第二级别的节点为始端的所有边中选择目标边,将目标边的末端节点作为第三级别。其中,在选择目标边时,也可以选择评分最高的预设数量个边。该预设数量可以比指定数量大。
例如,预设级别为4,针对图2,当前文本为I,则I为第一级别的节点,以该节点I为始端的边有4条,可以从这4条中选择评分最高的3条,例如从这4个中选择评分最高的3个边,即I→am,I→want和I→like这3个边,并将am,want和like作为第二级别的节点。由于第二级别不为预设级别3,则继续以第二级别的节点为当前级别的节点,从预测模型中确定以am为始端的am→a这一个边,以want为始端的want→a,to,it和that这四个边,以及以like为始端的like→a,to,it,that和you这五个边。第二级别的节点为始端的边一共有1+4+5=10个。此时,为了减少计算量,可以从这10个边中再次进行选择。选择时,可以根据am→a,want→a,want→to,want→it,want→that,like→a,like→to,like→it,like→that,like→you这10个边的评分进行选择,也可以根据I→am→a,I→want→a,I→want→to,I→want→it,I→want→that,I→like→a,I→like→to,I→like→it,I→like→that,I→like→you这10个路径的路径评分进行选择。
综上,在本实施例提供了从预测模型中确定各个目标路径及待选预测文本的方式,能够结合预测模型的数据方式,更准确地确定待选预测文本和对应的评分。
在本申请的另一实施例中,图1所示实施例中,在从各个待选预测文本中选择目标预测文本之后,该方法还可以包括以下步骤1b~3b。
步骤1b:将各个目标预测文本与预设的专有语素库中的各个专有语素进行匹配。
其中,专有语素库可以为命名实体词汇库和/或常用词汇库。命名实体词汇库中包括各个命名实体。命名实体可以理解为人名、机构名、地名以及其他所有以名称为标识的实体。更广泛的命名实体还包括数字、日期、货币、地址等。例如,命名实体词汇库可以包括actor、film、singer、song、television和tourist等。
常用词汇库包括各个常用词汇。常用词汇可以是从维基百科的内容作为语料确定的。常用词汇可以理解为出现的频率非常高的词汇。
将目标预测文本与专业语素进行匹配时,可以采用预设的字符串相似度算法确定目标预测文本与专业语素之间的相似度,当该相似度大于预设相似度阈值时,认为目标预测文本与专业语素匹配成功。例如,字符串相似度算法可以为编辑距离算法(LevenshteinDistance)或欧氏距离算法(Euclidean distance)等。
步骤2b:根据匹配成功的各个专有语素以及各个目标预测文本,确定各个最终预测文本。本步骤可以包括以下多种实施方式。
一种方式是,将匹配成功的各个专有语素替换匹配的目标预测文本,得到各个最终预测文本。例如,匹配成功的一个专有语素为Right Here Waiting(歌曲名称),对应的目标预测文本为right here wait,则可以将Right Here Waiting替换right here wait作为最终预测文本。
另一种方式是,根据匹配成功的各个专有语素对匹配的目标预测文本进行修正,将修正后的各个目标预测文本作为最终预测文本。例如,匹配成功的一个专有语素为RightHere Waiting,对应的目标预测文本为right here waiting for you,则可以根据该专有语素对目标预测文本进行缩短处理,得到right here waiting。
再一种方式是,将匹配成功的各个专有语素与各个目标预测文本均作为最终预测文本。
步骤3b:将各个最终预测文本发送至客户端。
综上,本实施例中,可以将专业语素库作为最终预测文本的影响因素,从而提升预测性能,使得到的最终预测文本更准确。
在本申请的另一实施例中,图1所示实施例中,在接收客户端发送的当前文本之后,还包括:
判断当前文本是否为当前文本对应的语言类型中的完整语素,如果是,则执行步骤S102,即从预设的预测模型中确定以当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分。
当前文本对应的语言类型可以为英语语言类型、汉语语言类型、俄语语言类型或印度英语语言类型等。语素可以理解为由元素构成,元素可以理解为构成语素的最小单元。例如,在英语语言中,元素可以为构成每个单词的26个字母。在汉语语言中,元素可以为构成每个汉字的基本笔画。在英语语言中,当当前文本为lo或li、y、w时,认为当前文本为不完整语素。在汉语语言中,当当前文本为构成汉字的部分笔画时,认为当前文本为不完整语素。为了方便说明,本申请实施例中多以英语语言为例对输入预测方法进行说明。
由于预测模型中的最小单元为语素,因此为了更好地为用户预测文本,可以在当前文本为完整语素时,执行步骤S102。当当前文本为不完整语素时,可以不予以处理。也可以执行以下实施例,为用户补全文本。
在本申请的另一实施例中,对图1所示实施例加以改进可以得到图3所示实施例。该实施例具体包括以下步骤S301~S307。
步骤S301:接收客户端发送的当前文本。
步骤S302:判断当前文本是否为当前文本对应的语言类型中的完整语素,如果是,则执行步骤S303,如果否,则执行步骤S306。
步骤S303:从预设的预测模型中确定以当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分。
步骤S304:根据各个待选预测文本的评分,从各个待选预测文本中选择目标预测文本。
步骤S305:将选择的目标预测文本发送至客户端。
其中,上述步骤S301、步骤S303~步骤S305分别与图1所示实施例中的步骤101~步骤104相同,具体说明可以参见图1所示实施例,此处不再赘述。
步骤S306:从预设的补全模型中确定以当前文本为始端的各个目标路径上各个元素组成的待选补全文本。
其中,每个目标路径包括边和边指向的节点的元素。补全模型包括:各个元素所在的节点、节点与节点之间有方向的边。在英语语言中,每个节点的元素可以是单个字母,也可以是多个字母的组合。在汉语语言中,每个节点的元素可以是单个笔画,也可以是多个笔画的组合。
参见图4,图4为补全模型的一种结构示意图。其中,每个圆圈为一个节点,每个节点中存在一个字母,节点和节点之间有方向的边采用箭头线代替,箭头的方向即为边的方向。节点和节点之间可以存在两个方向相反的边,例如i与l之间存在两个方向相反的边。当当前文本为l时,以l为始端的路径可以有很多条,例如l→i→k→e,l→i→v→e,l→o→s→e,l→o→v→e,l→o→r→e,,l→o→ok,l→u→r→e等。目标路径可以为以l为始端的所有路径中的部分路径或全部路径。上述各条路径上各个元素组成的待选补全文本可以分别为:like,live,lose,love,lore,look,lure。
本实施例中,每个语素均包括至少一个元素。当当前文本不为语言类型中的完整语素时,执行补全文本的方案,当当前文本为语言类型中的完整语素时,执行预测文本的方案。
在从补全模型中确定以当前文本为始端的各个目标路径上各个元素组成的待选补全文本时,具体可以包括:
步骤S307:从各个待选补全文本中确定最终补全文本,并将确定的最终补全文本发送至客户端。
综上,在本实施例中,当当前文本为语言类型中的完整语素时,从预测模型中确定各个目标预测文本,即执行预测文本的方案;当当前文本不为语言类型中的完整语素时,从补全模型中确定各个最终补全文本,即执行补全文本的方案。本实施例能够针对所输入的文本的情况执行不同的方案,为用户提供更合理、准确的预测服务。并且,本实施例中的补全模型包括各个元素所在的节点以及节点与节点之间有方向的边,这种形式的补全模型可以得到更多的待选补全文本,补全性能更强。
在本申请的另一实施例中,图4所示实施例中,步骤S307中的从各个待选补全文本中确定最终补全文本的步骤,可以包括以下步骤1c~3c。
步骤1c:获取客户端发送的当前文本的前一文本。
由于从补全模型中确定的各个待选预测文本的数量可能非常多,为了方便客户端向用户展示补全文本,可以从待选补全文本中选择部分作为最终补全文本。在选择时可以根据待选补全文本的评分进行。
服务器在接收到客户端每次发送的当前文本时,均可以将当前文本存储在缓存中。当前文本的前一文本,可以理解为,客户端在当前文本之前发送的与当前文本时间最接近的文本。
本实施例可以从缓存中获取上述前一文本。例如,假设用户想输入的内容为Ilove,客户端接收到用户输入的文本为I l,则当前文本为l,I为当前文本l的前一文本,可以从缓存中获取I。
步骤2c:从预测模型中确定以前一文本为始端、以各个待选补全文本为末端的各个边的评分,将确定的各个边的评分作为对应的待选补全文本的评分。
例如,待选补全文本为like、love和live,则可以从预测模型中确定I所在的节点,以该节点为始端确定末端分别为like、love和live的三个边,将这三个边的评分0.55,0.64和0.23,则可以将0.55,0.64和0.23分别作为like、love和live的评分。
当当前文本就是第一个文本,即不存在前一文本时,可以随机从所有待选补全文本中选择特定数量个待选补全文本作为最终补全文本。
步骤3c:根据各个待选补全文本的评分,从各个待选补全文本中确定最终补全文本。
其中,各个待选补全文本的评分可以理解为待选补全文本出现的概率。
在确定最终补全文本时,可以将评分最高的第三数量个待选补全文本确定为最终补全文本,也可以将评分大于第三评分阈值的待选补全文本确定为最终补全文本,还可以将上述两种方式进行结合来确定最终补全文本。第三数量和第二评分阈值均可以为预设值。
综上,本实施例中,可以从预测模型中确定各个待选补全文本的评分,根据该评分对待选补全模型进行选择,确定可能性最大的最终补全文本,并发送至客户端。
上述实施例提到的预测模型和补全模型可以是预先构建的模型。在构建模型时,可以预先收集大量语料,采用OpenFST工具进行模型构建。其中,语料可以理解为语言材料,即语言实例。大量的语料中包含语言的上下文关系,这些语料中的上下文关系可以代表现实世界中的上下文关系。因此,收集的语料越多,语料中的上下文关系越接近现实世界中的上下文关系。即根据这样的语料构建的模型越接近理想的模型。
OpenFST是一种用于构建、组合、优化和搜索加权有限状态转换器(FST)的库。加权的有限状态是自动机,每个转换均由一个输入标签、一个输出标签和一个重量组成。有限状态转换器用于表示字符串对之间的二元关系,权重表示转换之间的成本。
下面结合具体实例对预测模型和补全模型的构建过程再做详细说明。
对收集到的语料数据进行数据清洗(去重)、数据整理(排序)、格式转化等操作,得到用于构建模型的预处理后的语料。针对预处理后的语料,可以通过统计各个词汇的出现频率,并通过词频阈值限制对各个词汇进行过滤,可以得到过滤后的词汇以及对应的词频,然后转化为构建FST所需格式。同时,收集该语言类型中的命名实体词汇和维基常用词汇,用于构建专有语素库,以便提升预测性能。
上述得到的用于构建模型的语料文件中的数据为:词汇(包括单词或词组)以及对应的词频。由于需要进行n-gram模型处理,因此语料文件被读取为n-gram的排序列表及其词频,格式为w1…wk cnt,其中,w1…wk是n-gram的k个单词,cnt是该n-gram的计数。例如,w1…wk cnt表示w1…wk在语料文件中的词频为cnt。语料列表中的n元组必须按字典顺序排列。n-gram为一种语言处理工具。
对语料文件进行n-gram处理,主要包括以下内容:
(1)对语料文件进行n-gram处理,n-gram中的n设置为5,即根据当前词的前五个词确定当前词的评分。
(2)读取(1)中生成的n-gram格式文件,生成适用的FST文件格式。
(3)对语料文件中的文本进行标记,生成OpenFST格式的词表,该词表中已经得到各个节点的评分(即出现概率)。
构建补全模型,主要包括如下内容:
(1)基于上述词表生成字符表。
(2)基于字符表和词表,通过词典转换器,将字母映射到相应的词语标记,生成FST格式的文件。本步骤可以理解为,生成字母之间的有向连接关系。
(3)对FST格式的文件进行确定化和最小化的编码处理,生成补全模型。
构建语言模型,主要包括如下内容:
(1)对n-gram进行模型参数估计,使用ngrammake工具对生成的词表进行规范和平滑处理。本实施例使用的为Knesser-Ney平滑方法。本步骤中,对词表中只有一个末端节点的始端节点进行合并始末端节点的处理。
(2)对(1)中生成的FST文件进行重标记和类型转换,得到最终的预测模型。即,对词表进行合并始末端节点的处理后,重新进行节点标记,并将重新进行节点标记后的文件转换成需要的目标类型。
在本申请的一个实例中,服务器可以为云服务器,客户端安装在终端设备中。客户端通过网络向服务器发送用户输入的文本,服务器确定单词的预测文本。例如,下面的测试用例为用户通过客户端输入的文本,云预测结果为云服务器确定的测试用例的预测结果。
在英语语言中,
测试用例:Good 云预测结果:moring;night
测试用例:How are 云预测结果:you;you doing
在俄语语言中,
测试用例:Конечно я же лю 云预测结果:люблю любя
测试用例:Вике написала она с 云预测结果:сказала
测试用例:Сбербанк 云预测结果:онлайн
在印度英语语言中,
测试用例:Im wait 云预测结果:waiting;waiting for
测试用例:Cute g 云预测结果:girls;girl girls
测试用例:Pass ho j 云预测结果:jayega
图5为本申请实施例提供的另一种输入预测方法的流程示意图。该实施例应用于终端设备中的客户端,该方法包括以下步骤S501~S503。
步骤S501:向服务器发送输入的当前文本。
客户端可以在预测条件满足时,向服务器发送输入的当前文本。预测条件包括:用户输入当前文本后的停顿时间大于预设时间阈值,或者,预测按钮被触发等。客户端向服务器发送的当前文本可以是用户输入的当前文本。
步骤S502:接收服务器发送的与当前文本对应的目标预测文本。
其中,目标预测文本为:服务器根据各个待选预测文本的评分从各个待选预测文本中选择;各个待选预测文本为:服务器从预设的预测模型中确定的以当前文本为始端的各个目标路径上各个语素组成的文本。预测模型包括:各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分;每个边的评分表示在该边的始端节点的语素后出现该边的末端节点的语素的概率。
步骤S503:显示目标预测文本。
综上,本实施例中,客户端在确定预测文本时通过服务器来确定,由于服务器相比于终端设备具有更高的处理能力和更大的存储空间,并且由于服务器用于确定预测文本的预测模型包括各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分,即预测模型中语素与语素之间的关系更丰富,因此本实施例确定的预测文本更准确。
图5和图1所示实施例是基于同一发明构思得到的两侧实施例,相关内容可以相互参照。
图6为本申请实施例提供的输入预测装置的一种结构示意图。该装置应用于服务器。该实施例与图1所示方法实施例相对应,该装置包括:
第一接收模块601,用于接收客户端发送的当前文本;
第一确定模块602,用于从预设的预测模型中确定以所述当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分;其中,每个目标路径包括边和边指向的节点的语素;所述预测模型包括:各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分;每个边的评分表示在该边的始端节点的语素后出现该边的末端节点的语素的概率;
选择模块603,用于根据各个待选预测文本的评分,从各个待选预测文本中选择目标预测文本;
第一发送模块604,用于将选择的目标预测文本发送至客户端。
在本申请的另一实施例中,图6所示实施例中,第一确定模块602具体用于:
从预设的预测模型中确定所述当前文本所在的节点,作为第一级别的节点;
将所述第一级别的节点作为当前级别的节点,从所述预测模型中确定以所述当前级别的节点为始端的各个边指向的末端节点,作为下一级别的节点;
判断所述下一级别是否为预设级别;
如果是,则确定以所述第一级别的节点为始端、包含各个级别的节点的各个待选路径以及对应的路径评分;根据各个路径评分,从各个待选路径中选择目标路径;将各个目标路径上的各个语素组成待选预测文本,将各个目标路径的路径评分作为对应待选预测文本的评分;
如果否,则以所述下一级别的节点作为当前级别的节点,从所述预测模型中确定以所述当前级别的节点为始端的各个边指向的末端节点。
在本申请的另一实施例中,图6所示实施例中,装置还包括:
匹配模块(图中未示出),用于在从各个待选预测文本中选择目标预测文本之后,将各个目标预测文本与预设的专有语素库中的各个专有语素进行匹配;
第二确定模块(图中未示出),还用于根据匹配成功的各个专有语素以及各个目标预测文本,确定各个最终预测文本;
第一发送模块604,还用于将各个最终预测文本发送至所述客户端。
在本申请的另一实施例中,图6所示实施例中,第二确定模块具体用于:
将匹配成功的各个专有语素替换匹配的目标预测文本,得到各个最终预测文本;和/或,
根据匹配成功的各个专有语素对匹配的目标预测文本进行修正,将修正后的各个目标预测文本作为最终预测文本;和/或,
将匹配成功的各个专有语素与各个目标预测文本均作为最终预测文本。
在本申请的另一实施例中,图6所示实施例中,装置还包括:
判断模块(图中未示出),用于在接收所述客户端发送的当前文本之后,判断所述当前文本是否为所述当前文本对应的语言类型中的完整语素,如果是,则从预设的预测模型中确定以所述当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分。
在本申请的另一实施例中,图6所示实施例中,每个语素均包括至少一个元素;该装置还包括:
第三确定模块(图中未示出),用于当所述当前文本不为所述语言类型中的完整语素时,从预设的补全模型中确定以所述当前文本为始端的各个目标路径上各个元素组成的待选补全文本;其中,每个目标路径包括边和边指向的节点的元素;所述补全模型包括:各个元素所在的节点、节点与节点之间有方向的边;
第四确定模块(图中未示出),用于从各个待选补全文本中确定最终补全文本;
第一发送模块604,还用于将确定的最终补全文本发送至所述客户端。
在本申请的另一实施例中,图6所示实施例中,第四确定模块具体用于:
获取所述客户端发送的所述当前文本的前一文本;
从所述预测模型中确定以所述前一文本为始端、以各个待选补全文本为末端的各个边的评分,将确定的各个边的评分作为对应的待选补全文本的评分;
根据各个待选补全文本的评分,从各个待选补全文本中确定最终补全文本。
由于上述装置实施例是基于方法实施例得到的,与该方法具有相同的技术效果,因此装置实施例的技术效果在此不再赘述。对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
图7为本申请实施例提供的一种输入预测装置的结构示意图。该装置应用于客户端。该实施例与图5所示方法实施例相对应。该装置包括如下步骤:
第二发送模块701,用于向服务器发送输入的当前文本;
第二接收模块702,用于接收所述服务器发送的与所述当前文本对应的目标预测文本;其中,所述目标预测文本为:所述服务器根据各个待选预测文本的评分从各个待选预测文本中选择;所述各个待选预测文本为:所述服务器从预设的预测模型中确定的以所述当前文本为始端的各个目标路径上各个语素组成的文本;所述预测模型包括:各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分;每个边的评分表示在该边的始端节点的语素后出现该边的末端节点的语素的概率;
显示模块703,用于显示所述目标预测文本。
由于上述装置实施例是基于方法实施例得到的,与该方法具有相同的技术效果,因此装置实施例的技术效果在此不再赘述。对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
图8为本申请实施例提供的服务器的一种结构示意图。该服务器包括处理器801、通信接口802、存储器803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信;
存储器803,用于存放计算机程序;
处理器801,用于执行存储器803上所存放的程序时,实现本申请实施例提供的输入预测方法。该方法包括:
接收客户端发送的当前文本;
从预设的预测模型中确定以所述当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分;其中,每个目标路径包括边和边指向的节点的语素;所述预测模型包括:各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分;每个边的评分表示在该边的始端节点的语素后出现该边的末端节点的语素的概率;
根据各个待选预测文本的评分,从各个待选预测文本中选择目标预测文本;
将选择的目标预测文本发送至客户端。
综上,本实施例中客户端在确定预测文本时通过服务器来确定,由于服务器相比于终端设备具有更高的处理能力和更大的存储空间,并且由于服务器用于确定预测文本的预测模型包括各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分,即预测模型中语素与语素之间的关系更丰富,因此本实施例确定的预测文本更准确。
图9为本申请实施例提供的终端设备的一种结构示意图。该终端设备包含处理器901、通信接口902、存储器903和通信总线904,其中,处理器901,通信接口902,存储器903通过通信总线904完成相互间的通信;
存储器903,用于存放计算机程序;
处理器901,用于执行存储器903上所存放的程序时,实现本申请实施例提供的输入预测方法。该方法包括:
向服务器发送输入的当前文本;
接收所述服务器发送的与所述当前文本对应的目标预测文本;其中,所述目标预测文本为:所述服务器根据各个待选预测文本的评分从各个待选预测文本中选择;所述各个待选预测文本为:所述服务器从预设的预测模型中确定的以所述当前文本为始端的各个目标路径上各个语素组成的文本;所述预测模型包括:各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分;每个边的评分表示在该边的始端节点的语素后出现该边的末端节点的语素的概率;
显示所述目标预测文本。
综上,本实施例中客户端在确定预测文本时通过服务器来确定,由于服务器相比于终端设备具有更高的处理能力和更大的存储空间,并且由于服务器用于确定预测文本的预测模型包括各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分,即预测模型中语素与语素之间的关系更丰富,因此本实施例确定的预测文本更准确。
上述电子设备提到的通信总线904可以是外设部件互连标准(PeripheralComponent Interconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线904可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口902用于上述电子设备与其他设备之间的通信。
存储器903可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器903还可以是至少一个位于远离前述处理器的存储装置。
上述处理器901可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现本申请实施例提供的输入预测方法。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本申请的保护范围内。

Claims (10)

1.一种输入预测方法,其特征在于,所述方法包括:
接收客户端发送的当前文本;
从预设的预测模型中确定以所述当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分;其中,每个目标路径包括边和边指向的节点的语素;所述预测模型包括:各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分;每个边的评分表示在该边的始端节点的语素后出现该边的末端节点的语素的概率;
根据各个待选预测文本的评分,从各个待选预测文本中选择目标预测文本;
将选择的目标预测文本发送至客户端。
2.根据权利要求1所述的方法,其特征在于,所述从预设的预测模型中确定以所述当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分的步骤,包括:
从预设的预测模型中确定所述当前文本所在的节点,作为第一级别的节点;
将所述第一级别的节点作为当前级别的节点,从所述预测模型中确定以所述当前级别的节点为始端的各个边指向的末端节点,作为下一级别的节点;
判断所述下一级别是否为预设级别;
如果是,则确定以所述第一级别的节点为始端、包含各个级别的节点的各个待选路径以及对应的路径评分;根据各个路径评分,从各个待选路径中选择目标路径;将各个目标路径上的各个语素组成待选预测文本,将各个目标路径的路径评分作为对应待选预测文本的评分;
如果否,则以所述下一级别的节点作为当前级别的节点,返回执行所述从所述预测模型中确定以所述当前级别的节点为始端的各个边指向的末端节点的步骤。
3.根据权利要求1所述的方法,其特征在于,在从各个待选预测文本中选择目标预测文本之后,还包括:
将各个目标预测文本与预设的专有语素库中的各个专有语素进行匹配;
根据匹配成功的各个专有语素以及各个目标预测文本,确定各个最终预测文本;
将各个最终预测文本发送至所述客户端。
4.根据权利要求3所述的方法,其特征在于,所述根据匹配成功的各个专有语素以及各个目标预测文本,确定各个最终预测文本的步骤,包括:
将匹配成功的各个专有语素替换匹配的目标预测文本,得到各个最终预测文本;和/或,
根据匹配成功的各个专有语素对匹配的目标预测文本进行修正,将修正后的各个目标预测文本作为最终预测文本;和/或,
将匹配成功的各个专有语素与各个目标预测文本均作为最终预测文本。
5.根据权利要求1所述的方法,其特征在于,在接收所述客户端发送的当前文本之后,还包括:
判断所述当前文本是否为所述当前文本对应的语言类型中的完整语素,如果是,则执行所述从预设的预测模型中确定以所述当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分的步骤。
6.根据权利要求5所述的方法,其特征在于,每个语素均包括至少一个元素;当所述当前文本不为所述语言类型中的完整语素时,还包括:
从预设的补全模型中确定以所述当前文本为始端的各个目标路径上各个元素组成的待选补全文本;其中,每个目标路径包括边和边指向的节点的元素;所述补全模型包括:各个元素所在的节点、节点与节点之间有方向的边;
从各个待选补全文本中确定最终补全文本,并将确定的最终补全文本发送至所述客户端。
7.根据权利要求6所述的方法,其特征在于,所述从各个待选补全文本中确定最终补全文本的步骤,包括:
获取所述客户端发送的所述当前文本的前一文本;
从所述预测模型中确定以所述前一文本为始端、以各个待选补全文本为末端的各个边的评分,将确定的各个边的评分作为对应的待选补全文本的评分;
根据各个待选补全文本的评分,从各个待选补全文本中确定最终补全文本。
8.一种输入预测方法,其特征在于,所述方法包括:
向服务器发送输入的当前文本;
接收所述服务器发送的与所述当前文本对应的目标预测文本;其中,所述目标预测文本为:所述服务器根据各个待选预测文本的评分从各个待选预测文本中选择;所述各个待选预测文本为:所述服务器从预设的预测模型中确定的以所述当前文本为始端的各个目标路径上各个语素组成的文本;所述预测模型包括:各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分;每个边的评分表示在该边的始端节点的语素后出现该边的末端节点的语素的概率;
显示所述目标预测文本。
9.一种输入预测装置,其特征在于,所述装置包括:
第一接收模块,用于接收客户端发送的当前文本;
第一确定模块,用于从预设的预测模型中确定以所述当前文本为始端的各个目标路径上各个语素组成的待选预测文本,以及各个待选预测文本的评分;其中,每个目标路径包括边和边指向的节点的语素;所述预测模型包括:各个语素所在的节点、节点与节点之间有方向的边以及每个边的评分;每个边的评分表示在该边的始端节点的语素后出现该边的末端节点的语素的概率;
选择模块,用于根据各个待选预测文本的评分,从各个待选预测文本中选择目标预测文本;
第一发送模块,用于将选择的目标预测文本发送至客户端。
10.根据权利要求9所述的装置,其特征在于,所述第一确定模块,具体用于:
从预设的预测模型中确定所述当前文本所在的节点,作为第一级别的节点;
将所述第一级别的节点作为当前级别的节点,从所述预测模型中确定以所述当前级别的节点为始端的各个边指向的末端节点,作为下一级别的节点;
判断所述下一级别是否为预设级别;
如果是,则确定以所述第一级别的节点为始端、包含各个级别的节点的各个待选路径以及对应的路径评分;根据各个路径评分,从各个待选路径中选择目标路径;将各个目标路径上的各个语素组成待选预测文本,将各个目标路径的路径评分作为对应待选预测文本的评分;
如果否,则以所述下一级别的节点作为当前级别的节点,从所述预测模型中确定以所述当前级别的节点为始端的各个边指向的末端节点。
CN201810687793.7A 2018-06-28 2018-06-28 一种输入预测方法及装置 Active CN108845682B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810687793.7A CN108845682B (zh) 2018-06-28 2018-06-28 一种输入预测方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810687793.7A CN108845682B (zh) 2018-06-28 2018-06-28 一种输入预测方法及装置

Publications (2)

Publication Number Publication Date
CN108845682A true CN108845682A (zh) 2018-11-20
CN108845682B CN108845682B (zh) 2022-02-25

Family

ID=64200956

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810687793.7A Active CN108845682B (zh) 2018-06-28 2018-06-28 一种输入预测方法及装置

Country Status (1)

Country Link
CN (1) CN108845682B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111831806A (zh) * 2020-07-02 2020-10-27 北京小米松果电子有限公司 语义完整性确定方法、装置、电子设备和存储介质
EP3852013A1 (en) * 2020-01-16 2021-07-21 Baidu Online Network Technology (Beijing) Co., Ltd. Method, apparatus, and storage medium for predicting punctuation in text

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101681198A (zh) * 2007-05-21 2010-03-24 微软公司 提供相关文本自动完成
CN104272222A (zh) * 2012-01-16 2015-01-07 触摸式有限公司 输入文本的系统和输入文本的方法
EP2887237A1 (en) * 2013-12-19 2015-06-24 Facebook, Inc. Generating recommended search queries on online social networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101681198A (zh) * 2007-05-21 2010-03-24 微软公司 提供相关文本自动完成
CN104272222A (zh) * 2012-01-16 2015-01-07 触摸式有限公司 输入文本的系统和输入文本的方法
EP2887237A1 (en) * 2013-12-19 2015-06-24 Facebook, Inc. Generating recommended search queries on online social networks

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MIAO-MIAO ZHU ET AL.: "Design of a Chinese Input Method on the Remote Controller Based on the Embedded System", 《2012 INTERNATIONAL WORKSHOP ON INFORMATION AND ELECTRONICS ENGINEERING(IWIEE)》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3852013A1 (en) * 2020-01-16 2021-07-21 Baidu Online Network Technology (Beijing) Co., Ltd. Method, apparatus, and storage medium for predicting punctuation in text
US11216615B2 (en) 2020-01-16 2022-01-04 Baidu Online Network Technology (Beijing) Co., Ltd. Method, device and storage medium for predicting punctuation in text
CN111831806A (zh) * 2020-07-02 2020-10-27 北京小米松果电子有限公司 语义完整性确定方法、装置、电子设备和存储介质
CN111831806B (zh) * 2020-07-02 2024-04-09 北京小米松果电子有限公司 语义完整性确定方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
CN108845682B (zh) 2022-02-25

Similar Documents

Publication Publication Date Title
JP7127106B2 (ja) 質問応答処理、言語モデルの訓練方法、装置、機器および記憶媒体
CN111460083B (zh) 文档标题树的构建方法、装置、电子设备及存储介质
CN110019732B (zh) 一种智能问答方法以及相关装置
US20180365321A1 (en) Method and system for highlighting answer phrases
CN104281649B (zh) 一种输入方法、装置及电子设备
CN109726274B (zh) 问题生成方法、装置及存储介质
TW202020691A (zh) 特徵詞的確定方法、裝置和伺服器
CN111783468B (zh) 文本处理方法、装置、设备和介质
CN111488740B (zh) 一种因果关系的判别方法、装置、电子设备及存储介质
CN108846138B (zh) 一种融合答案信息的问题分类模型构建方法、装置和介质
CN103268313A (zh) 一种自然语言的语义解析方法及装置
KR20210038467A (ko) 이벤트 테마 생성 방법, 장치, 기기 및 저장 매체
US20220129448A1 (en) Intelligent dialogue method and apparatus, and storage medium
CN111666461B (zh) 检索地理位置的方法、装置、设备和计算机存储介质
CN115455171B (zh) 文本视频的互检索以及模型训练方法、装置、设备及介质
CN110209781B (zh) 一种文本处理方法、装置以及相关设备
KR20210046594A (ko) 정보 푸시 방법 및 장치
CN108845682A (zh) 一种输入预测方法及装置
CN108932233A (zh) 翻译文生成方法、翻译文生成装置以及翻译文生成程序
CN111385188A (zh) 对话元素的推荐方法、装置、电子设备和介质
CN112948573B (zh) 文本标签的提取方法、装置、设备和计算机存储介质
CN113536156B (zh) 搜索结果排序方法、模型构建方法、装置、设备和介质
CN112925912A (zh) 文本处理方法、同义文本召回方法及装置
CN112527963A (zh) 基于词典的多标签情感分类方法及装置、设备、存储介质
CN110442696B (zh) 查询处理方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant