首页 / 专利库 / 电脑编程 / 文本编辑器 / 一种词扩展方法、装置、设备及介质

一种词扩展方法、装置、设备及介质

阅读:282发布:2020-05-13

专利汇可以提供一种词扩展方法、装置、设备及介质专利检索,专利查询,专利分析的服务。并且本 申请 实施例 公开了一种词扩展方法、装置、设备以及介质,其中,该方法包括:获取待扩展的 种子 词以及该种子词的上下文;根据该种子词以及该种子词的上下文,通过词扩展模型获取输出向量,该输出向量用于表征候选词库中各个候选词与种子词之间的语义相似度;根据输出向量确定种子词的扩展词。该方法中采用的词扩展模型是利用 机器学习 算法 训练得到的神经网络,该模型在预测过程中既考虑了种子词自身的语义,又考虑了种子词的上下文语义,保证确定出的种子词的扩展词能够符合种子词的上下文语境,从而为各个 自然语言处理 应用提供能够满足业务需求的信息,提高自然语言处理应用的应用性能。,下面是一种词扩展方法、装置、设备及介质专利的具体信息内容。

1.一种词扩展方法,其特征在于,包括:
获取待扩展的种子词以及获取所述种子词的上下文;
根据所述种子词以及所述种子词的上下文,通过词扩展模型获取输出向量,所述输出向量用于表征候选词库中各候选词与所述种子词的语义相似度;所述词扩展模型是神经网络模型,其用于根据种子词对应的词向量以及上下文向量,预测所述候选词库中各候选词与种子词之间的语义相似度;
根据所述输出向量确定所述种子词的扩展词。
2.根据权利要求1所述的方法,其特征在于,所述词扩展模型包括:输入层和预测层;其中,
所述输入层包括:种子词编码器和上下文编码器;
所述种子词编码器以种子词作为输入且以种子词对应的词向量作为输出;所述上下文编码器以种子词的上下文作为输入,以种子词对应的上下文向量作为输出;
所述预测层包括:全连接层和分类层;
所述全连接层以种子词的语义特征向量作为输入,以包括候选词库中各候选词与种子词之间的特征相似度的相似度向量作为输出;其中,所述种子词的语义特征向量是根据所述词向量和所述上下文向量拼接生成的向量;
所述分类层以所述相似度向量作为输入,以对所述相似度向量归一化后的概率向量作为所述词扩展模型的输出向量。
3.根据权利要求1所述的方法,其特征在于,所述根据所述输出向量确定所述种子词的扩展词,包括:
根据所述输出向量中元素值的降序排序顺序,从所述候选词库中选择排序靠前的M个元素所对应的候选词,作为所述种子词的扩展词;其中,M为扩展词个数阈值
4.根据权利要求1所述的方法,其特征在于,所述获取待扩展的种子词以及获取所述种子词的上下文,包括:
获取查询语句,所述查询语句是指在搜索引擎中输入的用于查询信息的搜索条件;
从所述查询语句中提取关键词,作为待扩展的种子词,以及,从所述查询语句中提取所述种子词的上下文;
则所述方法还包括:
根据所述种子词的扩展词进行信息搜索,以返回搜索结果。
5.根据权利要求1所述的方法,其特征在于,所述获取待扩展的种子词以及获取所述种子词的上下文,包括:
获取文本语句,所述文本语句是指在文本编辑器中输入的文本信息中的语句;
从所述文本语句中提取关键词,作为待扩展的种子词,以及,从所述文本语句中提取所述种子词的上下文;
则所述方法还包括:
根据所述种子词的扩展词进行信息提示。
6.根据权利要求1所述的方法,其特征在于,所述获取待扩展的种子词以及获取所述种子词的上下文,包括:
获取问答语句,所述问答语句是指在问答系统输入界面上输入的语句;
从所述问答语句中提取关键词,作为待扩展的种子词,以及,从所述问答语句中提取所述种子词的上下文;
则所述方法还包括:
根据所述种子词的扩展词查找应答内容,并返回所述应答内容。
7.一种训练词扩展模型的方法,其特征在于,包括:
获取训练样本集,所述训练样本集中每个样本包括:种子词、种子词的上下文以及种子词对应的真实扩展词;
构建初始神经网络模型,根据所述训练样本集训练所述初始神经网络模型的参数以得到满足训练结束条件的神经网络模型,作为词扩展模型。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
从自然语料中提取满足训练条件的语句,针对所述满足训练条件的语句提取上下文和下位词集合,所述下位词集合中至少包括两个下位词;
将所述下位词集合中的一个下位词作为一个种子词,将所述下位词集合中除去所述一个下位词之外的其他下位词作为所述一个种子词对应的真实扩展词;
将所述一个种子词及其上下文以及所述一个种子词对应的真实扩展词,作为一个样本;
根据所述自然语料中各语句各自对应的样本生成样本训练集。
9.根据权利要求7所述的方法,其特征在于,所述初始神经网络模型包括:输入层和预测层;其中,
所述输入层包括:种子词编码器和上下文编码器;
所述种子词编码器以种子词作为输入且以种子词对应的词向量作为输出;所述上下文编码器以种子词的上下文作为输入,以种子词对应的上下文向量作为输出;
所述预测层包括:全连接层和分类层;
所述全连接层以种子词的预测语义特征向量作为输入,以包括候选词库中各候选词与种子词之间的特征相似度的预测相似度向量作为输出;其中,所述种子词的预测语义特征向量是根据所述词向量和所述上下文向量拼接生成的向量;
所述分类层以所述预测相似度向量作为输入,以对所述预测相似度向量归一化后的预测概率向量作为所述初始神经网络模型的输出向量。
10.根据权利要求7所述的方法,其特征在于,所述根据所述训练样本集训练所述初始神经网络模型的参数以得到满足训练结束条件的神经网络模型,作为词扩展模型,包括:
将所述训练样本集中的样本输入初始神经网络模型,获取所述初始神经网络模型输出的预测概率向量,所述预测概率向量是利用与样本对应的标签子集对样本进行预测得到的;其中,与样本对应的标签子集是针对样本从标签库中提取一个子集,所述标签子集中包括与样本相关的真实扩展词以及与样本不相关的候选词;
根据所述预测概率向量和所述标签子集的真实概率向量,计算损失函数,以最小化损失函数为训练目标,更新所述初始神经网络模型中的参数,直至神经网络达到收敛,得到词扩展模型。
11.一种词扩展装置,其特征在于,包括:
第一获取模,用于获取待扩展的种子词以及获取所述种子词的上下文;
第二获取模块,用于根据所述种子词以及所述种子词的上下文,通过词扩展模型,获取输出向量,所述输出向量用于表征候选词库中各候选词与所述种子词的语义相似度;所述词扩展模型是神经网络模型,其用于根据种子词对应的词向量以及上下文向量,预测所述候选词库中各候选词与种子词之间的语义相似度;
确定模块,用于根据所述输出向量确定所述种子词的扩展词。
12.一种训练词扩展模型的装置,其特征在于,包括:
获取模块,用于获取训练样本集,所述训练样本集中每个样本包括:种子词、种子词的上下文以及种子词对应的真实扩展词;
构建模块,用于构建初始神经网络模型,根据所述训练样本集训练所述初始神经网络模型的参数以得到满足训练结束条件的神经网络模型,作为词扩展模型。
13.一种设备,其特征在于,所述设备包括处理器以及存储器
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行权利要求1-6任一项所述的词扩展方法,或权利要求7-11任一项所述的训练词扩展模型的方法。

说明书全文

一种词扩展方法、装置、设备及介质

技术领域

[0001] 本申请涉及计算机技术领域,尤其涉及一种词扩展方法、装置、设备以及计算机可读存储介质。

背景技术

[0002] 目前搜索引擎、计算机辅助写作、自动对话系统等诸多自然语言处理应用中,通常需要对自然语言中的指定词进行同类词扩展,以便基于扩展出的同类词做进一步的操作,提高应用性能。所谓同类词扩展是指,针对一句话中的指定词扩展出与该指定词隐含语义相同或相近的其他词,例如,对于“大麦草富含基酸等营养”这句话,针对“氨基酸”这个词可以扩展出与“氨基酸”隐含语义相同或相近的同类词,如“维生素”、“叶绿素”等。
[0003] 现有的同类词扩展技术是集合扩展技术,该集合扩展技术主要是针对一句话中的指定词扩展出属于该指定词的隐含语义类中的词,作为同类词;该集合扩展技术主要是根据一定挖掘规则从大量的语料中挖掘出属于同一语义的同类词,例如将出现在一个句子中的同一行,以分号分隔的多个词挖掘为同类词。但该集合扩展技术并不考虑指定词的上下文语境,导致其扩展出的同类词并不能满足目前的应用需求。举个例子,针对“大麦草富含氨基酸等营养”这句话,利用该集合扩展技术针对“氨基酸”这个词,可能会扩展出“脂肪”这种属于营养类但是并不符合该指定词上下文(大麦草并不含脂肪)的词等。
[0004] 可见,在自然语言处理应用环境中,亟需研究出能够实现基于上下文语境的同类词扩展的方案,以提高各种应用的性能,促进自然语言处理应用技术的发展。发明内容
[0005] 本申请实施例提供了一种词扩展方法、相关设备以及系统,能够为各个自然语言处理应用提供满足业务需求的信息,提高自然语言处理应用的应用性能。
[0006] 有鉴于此,本申请第一方面提供了一种词扩展方法,所述方法包括:
[0007] 获取待扩展的种子词以及获取所述种子词的上下文;
[0008] 根据所述种子词以及所述种子词的上下文,通过词扩展模型获取输出向量,所述输出向量用于表征候选词库中各候选词与所述种子词的语义相似度;所述词扩展模型是神经网络模型,其用于根据种子词对应的词向量以及上下文向量,预测所述候选词库中各候选词与种子词之间的语义相似度;
[0009] 根据所述输出向量确定所述种子词的扩展词。
[0010] 本申请第二方面提供了一种训练词扩展模型的方法,所述方法包括:
[0011] 获取训练样本集,所述训练样本集中每个样本包括:种子词、种子词的上下文以及种子词对应的真实扩展词;
[0012] 构建初始神经网络模型,根据所述训练样本集训练所述初始神经网络模型的参数以得到满足训练结束条件的神经网络模型,作为词扩展模型。
[0013] 本申请第三方面提供了一种词扩展装置,所述装置包括:
[0014] 第一获取模,用于获取待扩展的种子词以及获取所述种子词的上下文;
[0015] 第二获取模块,用于根据所述种子词以及所述种子词的上下文,通过词扩展模型获取输出向量,所述输出向量用于表征候选词库中各候选词与所述种子词的语义相似度;所述词扩展模型是神经网络模型,其用于根据种子词对应的词向量以及上下文向量,预测所述候选词库中各候选词与种子词之间的语义相似度;
[0016] 确定模块,用于根据所述输出向量确定所述种子词的扩展词。
[0017] 本申请第四方面提供了一种训练词扩展模型的装置,包括:
[0018] 获取模块,用于获取训练样本集,所述训练样本集中每个样本包括:种子词、种子词的上下文以及种子词对应的真实扩展词;
[0019] 构建模块,用于构建初始神经网络模型,根据所述训练样本集训练所述初始神经网络模型的参数以得到满足训练结束条件的神经网络模型,作为词扩展模型。
[0020] 本申请第五方面提供了一种设备,所述设备包括处理器以及存储器
[0021] 所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
[0022] 所述处理器用于根据所述程序代码中的指令,执行如上述第一方面所述的词扩展方法的步骤,或者如上述第二方面所述的训练词扩展模型的步骤。
[0023] 本申请第六方面提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行上述第一方面所述的词扩展方法的步骤,或者如上述第二方面所述的训练词扩展模型的步骤。
[0024] 本申请第七方面提供了一种包括指令的计算机程序产品,当其在计算机上运行时,使得所述计算机执行上述第一方面所述的词扩展方法的步骤,或者如上述第二方面所述的训练词扩展模型的步骤。
[0025] 从以上技术方案可以看出,本申请实施例具有以下优点:
[0026] 本申请实施例中,提供了一种词扩展方法,在该方法中提出了利用词扩展模型针对待扩展的种子词预测出对应的扩展词,该词扩展模型是利用机器学习算法训练得到的神经网络,通过神经网络针对待扩展的种子词和其上下文中的信息编码为两个向量,即词向量和上下文向量,使用这两个向量在候选词库中预测出该种子词可能的扩展词。由于在预测过程中既考虑了种子词自身的语义,还引入了该种子词上下文的语义,从而保证上下文语境会影响到最终产生的扩展词,使得利用该词扩展模型预测出的扩展词能够符合种子词的上下文语境,从而能够为各自然语言处理应用提供满足业务需求的信息,以提高自然语言处理应用的应用性能。附图说明
[0027] 图1为本申请实施例中一种词扩展方法的应用场景示意图;
[0028] 图2为本申请实施例中一种词扩展方法的流程示意图;
[0029] 图3为本申请实施例中一种词扩展模型的架构示意图;
[0030] 图4为本申请实施例中一种训练词扩展模型的方法的流程示意图;
[0031] 图5为本申请实施例中一种词扩展模型训练过程的架构示意图;
[0032] 图6为本申请实施例中另一种词扩展方法的应用场景示意图;
[0033] 图7为本申请实施例中第一种词扩展装置的结构示意图;
[0034] 图8为本申请实施例中第二种词扩展装置的结构示意图;
[0035] 图9为本申请实施例中第三种词扩展装置的结构示意图;
[0036] 图10为本申请实施例中第四种词扩展装置的结构示意图;
[0037] 图11为本申请实施例中第一种训练词扩展模型的装置的结构示意图;
[0038] 图12为本申请实施例中第二种训练词扩展模型的装置的结构示意图;
[0039] 图13为本申请实施例中一种词扩展设备的结构示意图;
[0040] 图14为本申请实施例中另一种词扩展设备的结构示意图。

具体实施方式

[0041] 为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0042] 本申请的说明书权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0043] 采用现有的集合扩展技术进行同类词扩展时,经常容易出现扩展出的同类词不符合指定词的上下文语境,扩展出的同类词无法满足实际应用需求等技术问题。为了解决上述现有的同类词扩展技术存在的问题,本申请实施例提供了一种词扩展方法。
[0044] 下面先对本申请实施例提供的词扩展方法的核心技术思路进行介绍:
[0045] 本申请实施例提供的词扩展方法中提供了一种新的词扩展模型,该词扩展模型能够根据待扩展的种子词的词向量和该种子词的上下文向量,确定候选词库中各个候选词与待扩展的种子词之间的语义相似度,即在确定种子词的扩展词的过程中,同时将种子词自身以及种子词的上下文作为了参考因素。具体进行词扩展时,先获取待扩展的种子词以及该种子词的上下文;然后,将该种子词以及该种子词的上下文输入至上述词扩展模型中,该词扩展模型根据种子词对应的词向量以及上下文向量,预测候选词库中各个候选词与种子词之间的语义相似度,并将能够表达候选词库中各个候选词与种子词之间的语义相似度的向量作为输出向量;最终根据该词扩展模型输出的输出向量确定种子词的扩展词。
[0046] 相比于现有的集合扩展技术,本申请实施例提供的词扩展方法在预测种子词的扩展词的过程中,既考虑了种子词自身的语义,又考虑了该种子词的上下文语义,保证能够基于该种子词上下文语境的影响确定该种子词的扩展词,即使得基于该词扩展模型确定出的扩展词能够符合种子词的上下文语境,从而为各个自然语言处理应用提供能够满足业务需求的信息,提高自然语言处理应用的应用性能。
[0047] 应理解,本申请实施例提供的词扩展方法可以应用于具有自然语言处理功能的设备,如终端设备、服务器等。其中,终端设备具体可以为智能手机、计算机、个人数字助理(Personal Digital Assitant,PDA)、平板电脑等;服务器具体可以为应用服务器,也可以为Web服务器,在实际应用部署时,该服务器可以为独立服务器,也可以为集群服务器,该服务器可以同时为多个终端设备提供命名实体识别服务。
[0048] 为了便于理解本申请实施例提供的技术方案,下面以服务器作为执行主体为例,结合实际应用场景对本申请实施例提供的词扩展方法进行介绍。
[0049] 参见图1,图1为本申请实施例提供的词扩展方法的应用场景示意图。该应用场景中包括终端设备101和服务器102,其中,终端设备101用于将自身获取的待处理文本发送至服务器102,服务器102用于执行本申请实施例提供的词扩展方法,对待处理的文本中的种子词进行词扩展,得到该种子词的扩展词。
[0050] 当用户需要通过搜索引擎搜索与某一文本相关的内容时,用户可以在终端设备101上提供的文本输入栏中输入该文本,相应地,终端设备101获取到用户在文本输入栏中输入的文本后,将所获取的文本作为待处理文本发送至服务器102。
[0051] 服务器102接收到终端设备101发送的待处理文本后,获取该待处理文本中待扩展的种子词以及该种子词的上下文;然后,服务器102将获取到的种子词和种子词的上下文输入至自身运行的词扩展模型中,该词扩展模型为利用机器学习算法训练得到的神经网络模型,该词扩展模型通过对种子词和上下文进行编码处理,得到种子词对应的词向量和上下文向量,然后基于该种子词对应的词向量和该种子词的上下文向量,预测候选词库中各个候选词与种子词之间的语义相似度,进而输出能够表征候选词库中各个候选词与种子词之间的语义相似度的输出向量;最终,服务器102根据词扩展模型输出的能够表征各个候选词与种子词之间的语义相似度的输出向量,从各个候选词中选取该种子词的扩展词。
[0052] 需要说明的是,上述运行于服务器102中的词扩展模型在预测候选词库中各个候选词与种子词之间的语义相似度时,既考虑了种子词自身的语义,又考虑了种子词的上下文语义,保证能够基于该种子词上下文语境的影响确定该种子词的扩展词,即使得基于词扩展模型确定出的扩展词能够符合种子词的上下文语境,从而为自然语言处理应用提供能够满足业务需求的信息,提高了自然语言处理应用的应用性能。
[0053] 需要说明的是,上述图1所示场景仅为一种示例,在实际应用中,本申请实施例提供的词扩展方法还可以应用于终端设备,在此不对该词扩展方法的应用场景做任何具体限定。
[0054] 下面通过实施例对本申请提供的词扩展方法进行介绍。
[0055] 参见图2,图2为本申请实施例提供的一种词扩展方法的流程示意图。为了便于描述,下述实施例以终端设备作为执行主体进行描述,应理解,该词扩展方法的执行主体并不仅限于终端设备,还可以应用于服务器等具备自然语言处理功能的设备。如图2所示,该词扩展方法包括以下步骤:
[0056] 步骤201:获取待扩展的种子词以及获取所述种子词的上下文。
[0057] 其中,种子词为自然语句中能够被进行词扩展的关键词,该关键词通常为自然语句中有实质性含义的词,如名词、动词、形容词等,针对该种子词进行词扩展,可以扩展出若干个与该种子词的隐含语义相同或相近、且符合该种子词上下文语境的扩展词;例如,在搜索引擎应用中,通常需要对用户输入的查询语句进行分词处理,以确定该查询语句中的一些名词(如人名、地名、其他命名实体名称)、动词等具有实质性含义的词,这些名词、动词均可以作为该查询语句中的关键词,即种子词,进而针对所确定的种子词进行词扩展,以便后续基于这些种子词的扩展词进行信息搜索,提高搜索质量
[0058] 应理解,在一个自然语句中,可能存在一个种子词,也可能存在多个种子词,在此不对一个自然语句中存在的种子词的数量做任何限定。
[0059] 为了更形象的解释种子词及其上下文,下面结合一个具体实例进行说明。例如,针对自然语句“大麦草富含氨基酸等营养”,其中能够被扩展的关键词即种子词为“氨基酸”。
[0060] 相应地,种子词的上下文为自然语句中除掉种子词之后剩余的部分,仍以自然语句“大麦草富含氨基酸等营养”为例,除掉自然语句中的种子词“氨基酸”后,该自然语句中剩余的部分“大麦草富含[?]等营养”即为种子词“氨基酸”的上下文,其中,[?]表示种子词对应的占位符。
[0061] 终端设备获取到用户输入的自然语句后,可以通过对该自然语句进行语义分析等相关处理,确定出该自然语句中能够被扩展的关键词,将该关键词作为该自然语句中待扩展的种子词;并且,在确定出自然语句中待扩展的种子词后,终端设备可以直接将自然语句中除掉种子词之后的剩余部分作为该种子词的上下文。
[0062] 应理解,除了可以通过语义分析的方式确定种子词以及种子词的上下文以外,终端设备还可以采用其他方式确定自然语句中的种子词以及种子词的上下文,在此不对确定种子词以及种子词的上下文的方式做具体限定。
[0063] 步骤202:根据所述种子词以及所述种子词的上下文,通过词扩展模型获取输出向量。
[0064] 终端设备针对自然语句确定出种子词以及种子词的上下文后,将所确定的种子词以及种子词的上下文输入自身运行的词扩展模型中,该词扩展模型通过对种子词以及种子词的上下文进行相应地处理,输出能够表征候选词库中各个候选词与该种子词之间的语义相似度的输出向量。
[0065] 需要说明的是,上述词扩展模型为通过机器学习算法训练得到的神经网络模型,该神经网络模型能够将输入的种子词以及种子词的上下文,分别转换为种子词对应的词向量以及种子词对应的上下文向量;进而,该神经网络模型可以根据种子词对应的词向量以及种子词对应的上下文向量,预测候选词库中各个候选词与种子词之间的语义相似度。
[0066] 需要说明的是,上述候选词库由从所有自然语料中扒取的所有词汇构成,即该候选词库中包括的各个候选词实际上就是从自然语料中所扒取的所有词汇,在实际应用中,随着自然语料的更新,该候选词库中所包含的候选词也可以相应地更新。
[0067] 需要说明的是,上述词扩展模型的输出向量可以为能够表征候选词库中各个候选词与种子词之间的语义相似度的相似度向量,该相似度向量中包括候选词库中各个候选词与种子词之间的特征相似度;此外,上述词扩展模型的输出向量也可以为能够表征候选词库中各个候选词与种子词之间的语义相似度的概率向量,该概率向量需要通过对相似度向量做进一步计算处理获得,该概率向量中包括候选词库中各个候选词作为种子词的扩展词的概率。
[0068] 步骤203:根据所述输出向量确定所述种子词的扩展词。
[0069] 词扩展模型对输入的种子词以及种子词的上下文进行相应地处理后,输出能够表征候选词库中各候选词与种子词之间的语义相似度的输出向量,进而,终端设备可以根据该输出向量确定种子词的扩展词。
[0070] 具体实现时,若词扩展模型输出的输出向量为相似度向量,终端设备可以根据该相似度向量中包括的各个候选词与种子词之间的特征相似度,确定种子词的扩展词。应理解,若候选词库中某个候选词与种子词之间的特征相似度越高,则表明该候选词作为该种子词的扩展词的可能性越大;反之,若候选词库中某个候选词与种子词之间的特征相似度越低,则表明该候选词作为该种子词的扩展词的可能性越低。
[0071] 若词扩展模型输出的输出向量为概率向量,终端设备可以根据概率向量中包括的各个候选词作为种子词的扩展词的概率,确定种子词的扩展词。应理解,若候选词库中某个候选词作为种子词的扩展词的概率越高,则表明该候选词越有可能作为该种子词的扩展词;反之,若候选词库中某个候选词作为种子词的扩展词的概率越低,则表明该候选词越没有可能作为该种子词的候选词。
[0072] 在一种可能的实现方式中,为了避免针对一个种子词确定出大量的扩展词,并且在后续的处理过程中基于大量的扩展词做大量的计算处理,本实施例提供的词扩展方法在进行词扩展的过程中还可以对扩展词的数量进行限制。具体的,终端设备可以根据输出向量中元素值的降序排序顺序,从候选词库中选择排序靠前的M个元素对应的候选词,作为种子词的扩展词,其中,M为扩展词的个数阈值
[0073] 具体实现时,终端设备可以对根据输出向量中包括的各个元素值的大小,按照从大到小的顺序对输出向量中包含的各个元素进行排序,进而选取排序靠前的M个元素对应的候选词作为种子词的扩展词。此外,终端设备还可以根据输出向量中包括的各个元素值的大小,按照从小到大的顺序对输出向量中包含的各个元素进行排序,进而选取排序靠后的M个元素对应的候选词作为种子词的扩展词。
[0074] 应理解,M对应的具体数值可以根据实际需求进行设定,在此不对M对应的具体数值做任何限定。
[0075] 当输出向量为包含候选词库中各个候选词与种子词之间的特征相似度的相似度向量时,终端设备可以根据相似度向量中各个候选词对应的特征相似度的大小,按照降序排序的顺序对各个候选词对应的特征相似度进行排序,进而选择排序靠前的M个特征相似度对应的候选词,作为该种子词的扩展词。
[0076] 当输出向量为包含候选词库中各个候选词作为种子词的扩展词的概率的概率向量时,终端设备可以根据概率向量中各个候选词对应的概率的大小,按照降序排序的顺序对各个候选词对应的概率进行排序,进而选择排序靠前的M个概率对应的候选词作为种子词的扩展词。
[0077] 需要说明的是,在实际应用的很多应用场景下均存在针对种子词进行词扩展的需求,以便后续除了可以针对种子词进行相关处理外,还可以针对种子词的扩展词进行相关处理,从而提供更丰富的能够满足业务需求的信息,下面介绍三种常见的需要针对种子词进行词扩展的应用场景,以及各个应用场景下词扩展的具体实现方式。
[0078] 第一种应用场景,终端设备在用户使用搜索引擎查询某些内容时,获取用户输入的作为查询条件的自然语句,针对该自然语句中的种子词进行词扩展,以便后续可以针对自然语句中的种子词以及种子词的扩展词搜索相关内容,合理地扩大信息搜索范围。
[0079] 终端设备获取查询语句,该查询语句是指在搜索引擎中输入的用于查询信息的搜索条件;终端设备从该查询语句中提取关键词,作为待扩展的种子词,以及从该查询语句中提取该种子词的上下文。相应地,终端设备利用词扩展模型确定出该种子词的扩展词后,将用户输入的查询语句以及种子词的扩展词发送至服务器,以使服务器能够根据该查询语句以及种子词的扩展词,向终端设备返回相关搜索结果。
[0080] 具体实现时,终端设备可以从搜索引擎提供的输入栏中获取用户输入的查询语句,通过对该查询语句进行语义分析,从该查询语句中提取出可扩展的关键词作为待扩展的种子词,并且将该查询语句中除掉种子词的部分作为该种子词的上下文。然后,终端设备将已确定的种子词和种子词的上下文输入词扩展模型,词扩展模型通过对种子词和种子词的上下文进行相应地处理,输出能够表征候选词库中各候选词与种子词之间的语义相似度的输出向量;进而,终端设备根据该输出向量中各个元素值的大小确定该种子词的扩展词。确定出种子词的扩展词后,终端设备将用户输入的查询语句以及所确定的种子词的扩展词发送至服务器,以使服务器可以在根据查询语句进行相关信息搜索的基础上,还进一步根据种子词的扩展词进行信息搜索,合理地扩大信息搜索的范围,服务器在搜索得到查询语句以及种子词的扩展词的相关搜索结果后,向终端设备返回搜索到的搜索结果。
[0081] 为了便于进一步理解上述实现方式的具体实现过程,下面对上述实现方式的具体实现过程进行举例说明:
[0082] 假设用户在搜索引擎提供的输入栏中输入查询语句“梅西属于世界杯冠军球队”,终端设备获取到查询语句“梅西属于世界杯冠军球队”后,通过语义分析确定该查询语句中可扩展的关键词为“梅西”,并将“梅西”作为种子词,将“[?]属于世界杯冠军球队”作为种子词的上下文;终端设备将种子词“梅西”和种子词的上下文“[?]属于世界杯冠军球队”输入自身运行的词扩展模型,词扩展模型通过对种子词和种子词的上下文进行相应地处理,输出能够表征候选词库中各个候选词与种子词之间的语义相似度的输出向量,根据该输出向量,终端设备确定出其他符合种子词上下文语境的扩展词,即确定出其他与“世界杯冠军球队”相关的球星,例如“C罗”、“齐达内”和“罗纳尔多”等,将这些球星名作为“梅西”的扩展词。终端设备确定出种子词的扩展词后,相应地将用户输入的查询语句和“梅西”的扩展词发送至服务器,服务器根据查询语句和“梅西”的扩展词进行相关信息的搜索,并向终端设备返回搜索到的结果。
[0083] 第二种应用场景,终端设备获取用户在写作过程中输入的文本语句,针对该文本语句中的种子词进行词扩展,并将词扩展得到的种子词的扩展词推荐给用户,以为用户提供更丰富的写作资源。
[0084] 终端设备可以获取文本语句,该文本语句是指在文本编辑器中输入的文本信息中的语句;终端设备从该文本语句中提取关键词作为待扩展的种子词,以及从文本语句中提取种子词的上下文;相应地,在终端设备确定出种子词的扩展词后,根据该种子词的扩展词进行信息提示。
[0085] 具体实现时,终端设备可以获取用户通过文本编辑器输入的文本语句,通过对该文本语句进行语义分析,从文本语句中提取出可扩展的关键词作为种子词,并相应地将该文本语句中除掉种子词之后的剩余部分作为种子词的上下文;终端设备将确定出的种子词以及种子词的上下文输入自身运行的词扩展模型,词扩展模型通过对输入的种子词以及种子词的上下文进行相应地处理,输出能够表征候选词库中各个候选词与种子词之间的语义相似度的输出向量;终端设备根据该输出向量确定种子词的扩展词,进而,通过信息提示的方式向用户展示这些种子词的扩展词。
[0086] 为了便于进一步理解上述实现方式的具体实现过程,下面对上述实现方式的具体实现过程进行举例说明:
[0087] 用户在使用Word等office办公软件进行日常写作或学术、新闻写作时,终端设备可以获取用户通过文本编辑器输入的文本语句,假设用户输入的文本语句为“大麦草富含氨基酸等营养”,则终端设备相应地获取文本语句“大麦草富含氨基酸等营养”,并通过语义分析从该文本语句中提取出关键词“氨基酸”作为待扩展的种子词,将“大麦草富含[?]等营养”作为种子词的上下文;然后,终端设备将确定出的种子词“氨基酸”以及种子词的上下文“大麦草富含[?]等营养”输入自身运行的词扩展模型,词扩展模型通过对上述种子词以及种子词的上下文进行相应地处理,输出能够表征候选词库中各个候选词与种子词之间语义相似度的输出向量;进而,终端设备根据该输出向量,确定“氨基酸”的扩展词,并采用信息提示的形式显示“氨基酸”的扩展词,以向用户推送“氨基酸”的扩展词,便于用户在写作过程中基于推送的扩展词丰富写作内容。
[0088] 第三种应用场景,终端设备可以在用户使用自动问答系统时,针对用户输入的问答语句中的种子词进行词扩展,以便后续可以针对该问答语句中的种子词以及种子词的扩展词搜索相关的应答内容,扩大应答内容的搜索范围,向用户返回合理的应答内容。
[0089] 终端设备可以获取问答语句,该问答语句是指在问答系统输入界面上输入的语句;从该问答语句中提取关键词,作为待扩展的种子词,以及从问答语句中提取种子词的上下文;相应地,在终端设备确定出种子词的扩展词后,根据该种子词的扩展词查找应答内容,并返回应答内容。
[0090] 具体实现时,终端设备可以获取用户在问答系统界面上输入的语句,应理解,用户在问答系统界面上输入的语句可以为文本形式的自然语句,也可以为语音形式的自然语句,当用户输入的语句为为语音形式的自然语句时,终端设备可以通过语音转换等技术将该语音形式的自然语句,转换为对应的文本形式的自然语句,进而再执行后续的步骤。终端设备获取到文本形式的自然语句后,通过语义分析从该文本形式的自然语句中提取可扩展的关键词,将该关键词作为种子词,将该自然语句中除掉种子词之后剩余的部分作为种子词的上下文。终端设备将确定的种子词以及种子词的上下文输入至自身运行的词扩展模型,该词扩展模型通过对种子词以及种子词的上下文进行相应地处理,输出能够表征候选词库中各个候选词与种子词之间语义相似度的输出向量。进而,终端设备根据该输出向量确定种子词的扩展词,进而将用户在问答系统界面输入的语句以及经词扩展得到的种子词的扩展词,发送至服务器,以使服务器可以根据这些内容搜索相关应答内容,并向终端设备返回该应答内容。
[0091] 为了便于进一步理解上述实现方式的具体实现过程,下面对上述实现方式的具体实现过程进行举例说明:
[0092] 假设用户在终端设备提供的自动问答系统界面上,通过语音输入问答语句“苹果股价本周上涨”,终端设备获取到该问答语句后,对其进行语音转换得到对应的文本形式的“苹果股价本周上涨”。终端设备通过语义分析,从“苹果股价本周上涨”中提取出可扩展的关键词即种子词为“苹果”,相应地,“[?]股价本周上涨”为种子词的上下文。终端设备将种子词“苹果”以及种子词的上下文“[?]股价本周上涨”输入自身运行的词扩展模型,相应地,词扩展模型在对种子词“苹果”以及种子词的上下文“[?]股价本周上涨”进行相关处理后,输出能够表征候选词库中各个候选词与种子词“苹果”之间语义相似度的输出向量,根据该输出向量,终端设备可以确定出其他符合种子词上下文语境的扩展词,即确定出其他知名电子设备生产公司的名称,例如,“三星”、“小米”和“华为”等,将这些电子设备生产公司的名称作为“苹果”的扩展词。进而,终端设备将用户输入的问答语句以及上述确定出的扩展词发送至服务器,以使服务器根据这些内容搜索相关的应答内容,并向终端设备返回搜索到的应答内容。
[0093] 应理解,上述三种应用场景仅为本实施例提供的词扩展技术应用场景的示例,在实际应用中,本实施例提供的词扩展的技术还可以应用于其他应用场景中,在此不对本实施例提供的词扩展方法的应用场景做任何具体限定。
[0094] 上述本申请实施例提供的词扩展方法在预测种子词的扩展词的过程中,既考虑了种子词自身的语义,又考虑了该种子词的上下文语义,保证能够基于该种子词上下文语境的影响确定该种子词的扩展词,即使得基于该词扩展模型确定出的扩展词能够符合种子词的上下文语境,从而为各个自然语言处理应用提供能够满足业务需求的信息,提高自然语言处理应用的应用性能。
[0095] 如上文所述,本申请实施例提供的词扩展方法的实现主要依赖于词扩展模型,该词扩展模型能够通过对输入的种子词以及种子词的上下文进行相应地处理,输出能够表征候选词库中各个候选词与种子词之间语义相似度的输出向量。为了便于进一步理解本申请实施例提供的词扩展方法,下面结合附图对上述词扩展模型进行具体介绍。
[0096] 参见图3,图3为本申请实施例提供的词扩展模型300的架构示意图。如图3所示,该词扩展模型300包括输入层310和预测层320。
[0097] 其中,输入层310具体包括:种子词编码器311和上下文编码器312。
[0098] 种子词编码器311以种子词作为输入,以种子词对应的词向量作为输出;上下文编码器312以种子词的上下文作为输入,以种子词对应的上下文向量作为输出。
[0099] 输入层310所起的主要作用在于对输入至词扩展模型中的种子词以及种子词对应的上下文进行编码,分别得到的种子词对应的词向量以及种子词对应的上下文向量;进而,将所获得的种子词对应的词向量以及种子词对应的上下文向量拼接起来生成种子词的语义向量,即生成预测层的输入数据。
[0100] 其中,输入层310中包括的种子词编码器311主要用于对输入至词扩展模型中的种子词进行编码,生成种子词对应的词向量。应理解,针对一个自然语句,其中所包括的种子词的数量通常较少,因此,可以直接采用结构简单的向量平均编码器作为种子词编码器311,利用该向量平均编码器对输入的种子词对应的向量做平均处理,得到种子词对应的词向量。
[0101] 其中,输入层310中包括的上下文编码器312主要用于对输入至词扩展模型中的种子词对应的上下文进行编码,生成种子词对应的上下文向量。
[0102] 对于上下文编码器312,可以从考虑占位符和不考虑占位符两个度出发,选择采用不同结构的编码器作为上下文编码器312。此处,占位符指的是在自然语句中种子词原本所占据的位置
[0103] 当考虑占位符时,可以将引入位置特征的卷积神经网络(Convolutional Neural Network,CNN)编码器作为上下文编码器;具体的,可以在输入CNN层的每个词向量上拼接一个位置向量,该位置向量是根据该词向量对应的词汇与占位符之间的相对位置关系确定的,在训练过程中,该位置向量可以不断被更新。此外,还可以将context2vec编码器作为上下文编码器,该context2vec编码器使用两个长短期记忆(Long Short-Term Memory,LSTM)网络分别对占位符左边和右边的内容进行编码。
[0104] 当不考虑占位符时,可以直接选用向量平均编码器作为上下文编码器。在针对输入的种子词的上下文生成种子词对应的上下文向量时,可以直接将占位符去掉,或将占位符视为生僻词,从而将输入的种子词的上下文视为一个普通的句子。然后通过对种子词的上下文中各个词汇对应的向量进行平均处理,生成种子词对应的上下文向量。
[0105] 可选的,对于上下文编码器还可以采用基于注意机制的编码器,保证在编码过程中能够聚焦于句子中更重要的部分,获得更优化地上下文向量。
[0106] 在种子词编码器311生成种子词对应的词向量,且上下文编码器312生成种子词的上下文对应的上下文向量后,输入层310将种子词编码器311生成的种子词对应的词向量以及上下文编码器312生成的上下文向量拼接起来,生成种子词的语义特征向量,将该种子词的语义特征向量作为输入层的输出,输出至预测层320。
[0107] 输入层310具体计算种子词的语义特征向量的公式如式(1)所示:
[0108]
[0109] 其中,x为种子词的语义特征向量,s为种子词对应的词向量,C为种子词对应的上下文向量。
[0110] 需要说明的是,本实施例中的词扩展模型可以适用于各种语言,即可以对不同语言的种子词以及种子词的上下文进行编码,生成种子词对应的词向量以及种子词对应的上下文向量。
[0111] 其中,预测层320具体包括:全连接层321和分类层322。
[0112] 全连接层321以种子词的语义特征向量作为输入,以包括候选词库中各个候选词与种子词之间的特征相似度的相似度向量作为输出;其中,种子词的语义特征向量是根据种子词对应的词向量和上下文向量拼接生成的向量。
[0113] 分类层322以相似度向量作为输入,以对相似度向量归一化后的概率向量作为词扩展模型的输出向量。
[0114] 预测层320所起的作用主要在于根据输入层310输出的种子词的语义特征向量,确定能够表征候选词库中各个候选词与种子词之间语义相似度的概率向量作为词扩展模型的输出向量。其中,种子词的语义特征向量是输入层310根据种子词对应的词向量以及种子词对应的上下文向量拼接而成的向量。
[0115] 其中,预测层320中包含的全连接层321主要用于根据上述输入层310输出的种子词的语义特征向量,确定候选词库中各个候选词与种子词之间的特征相似度,进而,根据候选词库中各个候选词与种子词之间的特征相似度生成相似度向量。
[0116] 具体实现时,全连接层321利用自身的参数,对输入层310输出的种子词的语义特征向量进行处理,得到候选词库中各个候选词与种子词之间的特征相似度,为了便于描述下文中将各个候选词与种子词之间的特征相似度,简称为各个候选词对应的特征相似度;进而,根据候选词库中各个候选词对应的特征相似度生成相似度向量。需要说明的是,全连接层321自身的参数是在训练词扩展模型的训练过程中得到的,其实质上为候选词库中各个候选词对应的语义特征向量,可选的,全连接层的参数除了可以包括各个候选词对应的语义特征向量外,还可以包括各个语义特征向量对应的偏置参数。
[0117] 例如,假设候选词库为L,该候选词库L中包括大量从自然语料中扒取的候选词,针对每个候选词均存在一个对应的语义特征向量,并且针对每个候选词对应的语义特征向量还存在一个对应的偏置参数,候选词库中每个候选词对应的语义特征向量以及其对应的偏置参数实际上即为全连接层的参数;假设针对候选词库中第t个候选词,其对应的语义特征向量为wt,偏置参数为bt,则{wt,bt}t∈L即为此候选词在全连接层中对应的参数,利用{wt,bt}t∈L以及输入至全连接层的种子词的语义特征向量x,可以计算第t个候选词与种子词之间的特征相似度,该特征相似度为wtTx+bt;按照这种方法,全连接层可以计算候选词库中各个候选词与种子词之间的特征相似度,进而,根据各个候选词对应的特征相似度可以确定出相似度向量。
[0118] 其中,预测层320中包含的分类层322主要用于对全连接层321输出的相似度向量做进一步归一化处理,生成能够表征候选词库中各个候选词与种子词之间语义相似度的概率向量,作为词扩展模型的输出向量。
[0119] 具体实现时,分类层322可以根据相似度向量中包含的候选词库中各个候选词对应的特征相似度,计算候选词库中各个候选词对应的概率,该概率能够表征该候选词称为种子词的扩展词的可能性;进而,根据候选词库中各个候选词对应的概率,生成能够表征候选词库中各个候选词与种子词之间语义相似度的概率向量。
[0120] 可选的,在实际应用中可以采用softmax分类器作为分类层322,采用softmax分类器根据相似度向量中的各个候选词对应的特征相似度,计算各个候选词对应的概率时,可以采用式(2)所示的公式进行计算。
[0121]
[0122] 其中,P(t|s,C)表示候选词库中第t个候选词成为种子词s的扩展词的概率,为相似度向量中第t个候选词对应的特征相似度,t′表示候选词库中任意一个
候选词,相应地, 为相似度向量中任意一个候选词对应的特征相似度。
[0123] 由此,根据候选词库中各个候选词对应的成为扩展词的概率,即可生成能够作为词扩展模型的输出向量的概率向量。
[0124] 上述词扩展模型利用输入层中的种子词编码器根据输入的种子词生成种子词对应的词向量,利用输入层中的上下文编码器根据种子词的上下文生成种子词对应的上下文向量,然后,输入层将种子词对应的词向量和上下文向量拼接起来,生成种子词对应的语义特征向量,并将该种子词对应的语义特征向量输入至预测层;预测层中的全连接层利用自身的参数,对种子词对应的语义特征向量做处理生成相似度向量,进而,预测层中的分类层根据该相似度向量生成能够表征候选词库中各个候选词与种子词之间语义相似度的概率向量,将该概率向量作为词扩展模型的输出向量。词扩展模型在确定输出向量的过程中,既考虑了种子词自身的语义,又考虑了种子词的上下文语义,保证能够基于该种子词的上下文语境确定输出向量,进而保证了基于该输出向量确定出种子词能够符合种子词的上下文语境。
[0125] 应理解,上述词扩展模型是否能够准确地扩展出符合种子词上下文语境的扩展词,依赖于该词扩展模型的模型性能,而词扩展模型的模型性能的好坏取决于该词扩展模型的训练过程。
[0126] 下面对词扩展模型的训练方法进行介绍。参见图4,图4为本申请实施例提供的训练词扩展模型的方法的流程示意图,为了便于描述,下述实施例以服务器作为执行主体进行描述,应理解,该词扩展模型的训练方法的执行主体并不仅限于服务器,还可以应用于终端设备等具备模型训练功能的设备。如图4所示,该训练词扩展模型的方法包括以下步骤:
[0127] 步骤401:获取训练样本集。
[0128] 服务器训练词扩展模型时,需要预先获取用于训练词扩展模型的训练样本集,该训练样本集中包含大量的样本,且每个样本中均包括:种子词、种子词的上下文以及种子词对应的真实扩展词。
[0129] 应理解,服务器在训练词扩展模型之前,需要预先从网络上扒取大量的自然语料,基于这些自然语料生成样本,基于这些样本构建用于训练词扩展模型的训练样本集。具体构建训练样本集时,服务器可以先从自然语料中提取满足训练条件的语句,针对满足训练条件的语句提取上下文和下位词集合,该下位词集合中至少包括两个下位词。
[0130] 具体实现时,服务器在构建训练样本集之前先从网络中扒取大量自然语料,具体的,服务器可以从网页、新闻、百科等资源中扒取自然语料;在扒取到大量自然语料后,服务器进一步从所扒取的自然语料中提取满足训练条件的语句,这里满足训练条件的语句通常指的是包括至少两个同类词的自然语句;进而,服务器通过对上述满足训练条件的语句进行语义分析,从中提取出上下文和下位词集合,即将满足训练条件的语句中的所有同类词均作为下位词,利用这些下位词组成下位词集合,将除掉所有同类词的满足训练条件的语句的剩余部分作为上下文。
[0131] 应理解,从自然语料中筛选满足训练条件的语句的成本远远低于人工标注数据所需要的成本,因此,本申请实施例提供的词扩展模型训练方法从自然语料中获取训练数据,能够大大降低模型训练需要耗费的成本。
[0132] 在一种可能的实现方式中,服务器可以根据赫斯特Hearst模式的正则表达式,从自然语料中提取满足Hearst模式的语句,针对该满足Hearst模式的语句提取对应的上下文和下位词集合。
[0133] 需要说明的是,满足Hearst模式的语句的句式通常为“t1,t2…等h”或者“t1,t2…和其它h”,其中,t1,t2代表下位词,h代表上位词,以“大麦草富含维生素、抗化剂、酶、矿物质、氨基酸、叶绿素等营养”为例,其中,“维生素”、“抗氧化剂”、“酶”、“矿物质”、“氨基酸”和“叶绿素”均属于下位词,“营养”属于上位词。
[0134] 相应地,服务器从自然语料中获取到满足上述Hearst模式的语句后,可以将语句中的所有下位词提取出来,作为下位词集合,将语句中除掉所有下位词剩余的部分作为上下文。仍以“大麦草富含维生素、抗氧化剂、酶、矿物质、氨基酸、叶绿素等营养”为例,该语句的下位词集合中包含“维生素”、“抗氧化剂”、“酶”、“矿物质”、“氨基酸”和“叶绿素”、该语句的上下文为“大麦草富含[?]等营养”。
[0135] 应理解,服务器还可以采用机器学习的方法从自然语料中提取满足训练条件的语句,在此不对提取满足训练条件的语句的具体实现方式做任何限定。
[0136] 然后,服务器将下位词集合中的一个下位词作为种子词,将下位词集合中的除去这个下位词之外的其他下位词作为该种子词对应的真实扩展词;将该种子词、上下文以及该种子词对应的真实扩展词作为一个样本。
[0137] 具体的,服务器从满足训练条件的语句中提取出来上下文以及下位词集合后,从下位词集合中任选一个下位词作为种子词,将该下位词集合中的其他下位词作为该种子词的真实扩展词,进而,利用上述种子词、上下文以及种子词的真实扩展词组成样本。应理解,针对一个下位词集合,服务器可以按照上述方式生成若干个不同的样本,不同的样本中包括的种子词不同,针对一个下位词集合生成的样本的数量与该下位词集合中下位词的数量相等。
[0138] 例如,针对满足训练条件的语句“大麦草富含维生素、抗氧化剂、酶、矿物质、氨基酸、叶绿素等营养”,该语句对应的下位词集合包括“维生素”、“抗氧化剂”、“酶”、“矿物质”、“氨基酸”和“叶绿素”,该语句的上下文为“大麦草富含[?]等营养”。以“维生素”作为种子词的样本中包含的上下文为“大麦草富含[?]等营养”,包含的种子词的真实扩展词为“抗氧化剂”、“酶”、“矿物质”、“氨基酸”和“叶绿素”;以“抗氧化剂”作为种子词的样本中包含的上下文为“大麦草富含[?]等营养”,包含的种子词的真实扩展词为维生素”、“酶”、“矿物质”、“氨基酸”和“叶绿素”等等,在此不对针对此语句的样本进行一一列举。
[0139] 如此,按照上述方法可以针对自然语料中各个满足训练条件的语句,生成若干个与之对应的样本,进而,基于各个满足训练条件的语句对应的样本,生成用于训练词扩展模型的训练样本集。
[0140] 步骤402:构建初始神经网络模型,根据所述训练样本集训练所述初始神经网络模型的参数以得到满足训练结束条件的神经网络模型,作为词扩展模型。
[0141] 服务器训练词扩展模型时,需要构建初始神经网络模型作为被训练的词扩展初始模型,该初始神经网络模型的结构与上述词扩展模型的结构相同,同样包括输入层和预测层,且输入层中包括种子词编码器和上下文编码器,预测层中包括全连接层和分类层,其中,全连接层的参数由标签库中各个候选词对应的初始词向量和初始词频率构成,在模型训练的过程中,该初始神经网络模型中各部分的模型参数均可以随模型的优化而不断更新。
[0142] 构建完成初始神经网络模型后,服务器利用在步骤401中获取的训练样本集对该初始神经网络模型的模型参数进行训练,待所训练的初始神经网络模型满足训练结束条件后,根据满足训练结束条件的神经网络模型的模型结构和模型参数,构建可以投入实际应用的词扩展模型。
[0143] 需要说明的是,该初始神经网络模型能够实现的功能与词扩展模型能够实现的功能相同,该初始神经网络模型能够根据输入的种子词以及种子词的上下文,输出能反映标签库中各个标签与种子词之间的语义特征相似度的输出向量,其中,标签为服务器从大量自然语料中获取的下位词,标签库中包含从自然语料中提取的所有下位词,这里的标签库所包括的内容实际上与上文的候选词库中所包括的内容一致。
[0144] 训练该初始神经网络模型时,可以先从训练样本集中获取若干个用于训练的样本,将样本中的种子词以及种子词的上下文输入至该初始神经网络模型;初始神经网络模型通过对输入的种子词以及种子词的上下文做相应地处理,输出能够表征种子词与标签库中各个标签的语义特征相似度的概率向量,该概率向量中包括标签库中各个标签对应的能够成为扩展词的概率。服务器根据样本中该种子词的真实扩展词生成真实概率向量,在该真实概率向量中,标签库中包括的真实扩展词对应的概率为1,而标签库中其他标签对应的概率均为0。进而,服务器根据初始神经网络模型输出的概率向量和真实概率向量之间的误差,构建损失函数,进而根据该损失函数对初始神经网络中的模型参数进行调整,从而实现对该初始神经网络模型的优化。当初始神经网络模型满足训练结束条件时,即可根据当前神经网络模型的模型参数和模型结构,确定词扩展模型。
[0145] 具体判断初始神经网络模型是否满足训练结束条件时,可以利用测试样本对第一模型进行验证,其中,第一模型是利用训练样本集中的样本对初始神经网络模型进行第一轮训练优化得到的模型,具体的,将测试样本中的种子词和种子词的上下文输入至第一模型,利用该第一模型对该种子词和种子词的上下文进行相应地处理,得到第一模型输出的预测概率向量;进而,根据测试种子词的真实扩展词生成的真实概率向量,根据该真实概率向量与预测概率向量计算词扩展准确率,当词扩展准确率大于预设阈值时,即可认为该第一模型的模型性能较好已能够满足需求,则可以根据该第一模型的模型参数及网络结构,确定词扩展模型。
[0146] 需要说明的是,上述预设阈值可以根据实际情况进行设定,在此不对该预设阈值做具体限定。
[0147] 此外,判断神经网络模型是否满足训练结束条件时,还可以根据经多轮训练得到的多个模型,确定是否继续对模型进行训练,以获得模型性能最优的词扩展模型。具体的,可以利用测试样本分别对经多轮训练得到的多个模型进行验证,判断经各轮训练得到的模型的词扩展准确率之间差距较小,则认为模型的性能已经没有提升空间,则可以选取词扩展准确率最高的模型,根据该模型的模型参数以及网络结构,确定词扩展模型;若经各轮训练得到的神经网络模型的词扩展准确率之间具有较大的差距,则认为模型的性能还有提升的空间,可继续对模型进行训练,直到获得模型性能较稳定的性能最优的词扩展模型。
[0148] 需要说明的是,上述标签库中包含的标签数量极大,基于该标签库中所有的标签对初始神经网络模型进行训练需要耗费极大的计算量,并且优化训练初始神经网络模型需要耗费较多的时间,为了减少词扩展模型训练过程中耗费的计算量,减少词扩展模型训练过程中耗费的时间,本实施例提供的训练词扩展模型的方法还可以进一步从标签库中提取出标签子集,基于该标签子集对初始神经网络模型进行训练。
[0149] 具体的,服务器将训练样本集中的样本输入初始神经网络模型,获取该初始神经网络模型输出的预测概率向量,该预测概率向量是利用与样本对应的标签子集对样本进行预测得到的;其中,与样本对应的标签子集是针对样本从标签库中提取的一个子集,该标签子集中包括与样本相关的真实扩展词以及与样本不相关的候选词。
[0150] 服务器利用训练样本集中的某个样本对初始神经网络模型进行训练之前,服务器可以预先针对该样本从标签库中提取与之对应的标签子集,该标签子集中既包括与该样本相关的真实扩展词,又包括与该样本不相关的候选词。例如,针对包含种子词“维生素”、上下文“大麦草富含[?]等营养”,种子词的真实扩展词“抗氧化剂”、“酶”、“矿物质”、“氨基酸”和“叶绿素”的样本,服务器可以预先从标签库中提取标签子集,该标签子集中包括上述所有种子词的真实扩展词,还包括从标签库中随机选取的若干个与该样本不相关的标签。
[0151] 具体提取标签子集时,服务器可以采用Sampled Softmax函数从标签库中抽样出一个较小的标签子集,为了防止抽样得到的标签子集中包含大量极容易被判断为负标签的词汇,可以在利用Sampled Softmax函数抽取标签子集的基础上,将和种子词频繁共同出现的词抽取至标签子集中,具体的,可以采用如式(3)所示的公式计算标签库中各个词汇与种子词相关的分布:
[0152]
[0153] 其中,c(s,t)为标签满足训练条件的语句中种子词s与词汇t共同出现的次数,c(s)为种子词s在满足训练条件的语句中出现的次数,PN(t|s)为词汇t与种子词s之间的相关分布。
[0154] 由此,可以保证在抽取标签子集时能够抽取到较难被识别为负样本的词汇,加快模型的收敛,改善最终模型的预测效果。
[0155] 更进一步地,服务器还可以使用对抗网络来学习更复杂的各个词汇与种子词相关的分布,生成质量更高的负标签。
[0156] 构建初始神经网络模型时,将上述标签子集中所包含的标签对应的初始词向量和初始词频率,作为初始神经网络模型中全连接层的初始模型参数;训练初始神经网络模型时,将训练样本集中的样本输入该初始神经网络,即将样本中的种子词以及上下文输入该初始神经网络,初始神经网络模型通过对种子词以及上下文进行相关处理,输出预测概率向量。
[0157] 进而,服务器根据预测概率向量和标签子集的真实概率向量,计算损失函数,以最小化损失函数为训练目标,更新初始神经网络模型中的参数,直至神经网络达到收敛,得到词扩展模型。
[0158] 具体的,服务器可以预先确定标签子集的真实概率向量,该真实概率向量中包括标签子集中各个标签对应的成为扩展词的概率,应理解,标签子集中种子词的真实扩展词对应的概率为1,而标签子集中其他候选词对应的概率为0。
[0159] 在初始神经网络模型输出样本对应的预测概率向量后,服务器利用该预测概率向量和上述标签子集的真实概率向量,计算损失函数,并且通过不断地更新调整初始神经网络模型的模型参数,优化该损失函数,使该损失函数的输出值趋于最小化,待该神经网络达到收敛,即该神经网络模型满足训练结束条件后,根据当前神经网络模型的模型结构和模型参数生成词扩展模型。
[0160] 采用上述训练词扩展模型的方法对初始神经网络进行训练,利用初始神经网络模型对样本中的种子词以及上下文进行相应地处理,输出样本对应的预测概率向量,然后,根据该预测概率向量与该样本对应的真实概率向量,计算损失函数,根据该损失函数优化训练初始神经网络模型,待该初始神经网络模型满足训练结束条件时,根据该神经网络模型的模型结构和模型参数生成词扩展模型。在训练的过程中,基于种子词以及种子词的上下文对初始神经网络模型进行训练,保证所训练得到的词扩展模型能够同时考虑种子词自身的语义和种子词的上下文语义,进而基于该种子词的上下文语境确定输出向量,从而使得基于该输出向量确定出种子词能够符合种子词的上下文语境。
[0161] 如上文所述,采用本申请实施例提供的训练词扩展模型的方法,能够通过训练优化所构建的初始神经网络模型,获得能够投入实际应用的词扩展模型。为了便于进一步理解上述训练词扩展模型的方法,下面结合附图对上述词扩展模型的训练架构进行介绍。
[0162] 参见图5,图5为本申请实施例提供的初始神经网络模型训练过程的架构示意图。如图5所示,预先构建的初始神经网络模型5100包括:输入层5110和预测层5120。
[0163] 其中,输入层5110包括种子词编码器5111和上下文编码器5112。
[0164] 种子词编码器5111以种子词作为输入,以种子词对应的词向量作为输出;上下文编码器5112以种子词的上下文作为输入,以种子词对应的上下文向量作为输出。
[0165] 输入层5110所起的主要作用在于对输入至初始神经网络模型中的种子词以及种子词对应的上下文进行编码,分别得到的种子词对应的词向量以及种子词对应的上下文向量;进而,将所获得的种子词对应的词向量以及种子词对应的上下文向量拼接起来生成种子词的预测语义特征向量,即生成预测层的输入数据。
[0166] 其中,输入层5110中包括的种子词编码器5111主要用于对输入至初始神经网络模型中的种子词进行编码,生成种子词对应的词向量。
[0167] 可选的,该种子词编码器5111可以为向量平均编码器,用于对种子词中的所有词汇对应的向量取平均值以得到种子词的词向量。应理解,一个样本中所包含的种子词的数量通常较少,一般为一个或者两个,因此,可以直接采用结构简单的向量平均编码器作为种子词编码器5111,利用该向量平均编码器对输入的种子词对应的向量做平均计算处理,得到种子词对应的词向量。
[0168] 其中,输入层5110中包括的上下文编码器5112主要用于对输入至词扩展模型中的种子词对应的上下文进行编码,生成种子词对应的上下文向量。
[0169] 可选的,该上下文编码器5112可以为文本向量编码器,用于分别针对上下文中占位符左右两边的内容进行编码得到上下文的向量。具体的,文本向量编码器使用两个LSTM网络分别对上下文中占位符左边的内容以及占位符右边的内容进行编码,生成上下文的向量,其中,占位符指的是种子词原本在自然语句中占据的位置。
[0170] 可选的,该上下文编码器5112还可以为考虑位置特征的CNN编码器,该CNN编码器可以在输入CNN层的每个词向量上拼接一个位置向量,该位置向量是根据各个词向量对应的词汇与占位符之间的相对位置关系确定的。
[0171] 可选的,该上下文编码器5112也可以为向量平均编码器,该向量平均编码器可以直接将占位符去掉,或将占位符视为生僻词,将输入的上下文视为一个普通的句子,通过对上下文中各个词汇对应的向量做平均处理,生成种子词对应的上下文向量。
[0172] 在种子词编码器5111生成种子词对应的词向量,且上下文编码器5112生成种子词的上下文对应的上下文向量后,输入层5110将种子词编码器311生成的种子词对应的词向量以及上下文编码器312生成的上下文向量拼接起来,生成种子词的预测语义特征向量,将该种子词的预测语义特征向量作为输入层的输出,输出至预测层320。
[0173] 其中,预测层5120具体包括:全连接层5121和分类层5122。
[0174] 全连接层5121以种子词的预测语义特征向量作为输入,以包括标签库中各个候选词与种子词之间的特征相似度的预测相似度向量作为输出;其中,种子词的预测语义特征向量是根据种子词对应的词向量和上下文向量拼接生成的向量。
[0175] 分类层5122以预测相似度向量作为输入,以对预测相似度向量归一化后的预测概率向量作为初始神经网络模型的输出向量。
[0176] 预测层5120所起的作用主要在于根据输入层5110输出的种子词的预测语义特征向量,确定能够表征标签库中各个候选词与种子词之间语义相似度的预测概率向量作为初始神经网络模型的输出向量。其中,种子词的预测语义特征向量是输入层5110根据种子词对应的词向量以及种子词对应的上下文向量拼接而成的向量。
[0177] 其中,预测层5120中包含的全连接层5121主要用于根据上述输入层5110输出的种子词的预测语义特征向量,确定标签库中各个候选词与种子词之间的预测特征相似度,进而,根据标签库中各个候选词与种子词之间的特征相似度生成相似度向量。
[0178] 具体实现时,全连接层5121利用自身的参数,对输入层5110输出的种子词的预测语义特征向量进行处理,得到标签库中各个候选词与种子词之间的预测特征相似度;进而,根据标签库中各个候选词对应的预测特征相似度生成预测相似度向量。需要说明的是,全连接层5121的参数实际上由标签库中各个候选词对应的语义特征向量构成,可选的,全连接层5121的参数除了可以包括各候选词对应的语义特征向量外,还可以包括各个语义特征向量对应的偏置参数。该全连接层5121的参数可以在训练过程中不断被优化更新。
[0179] 其中,预测层5120中包含的分类层5122主要用于对全连接层5121输出的预测相似度向量做进一步归一化处理,生成能够表征标签库中各个候选词与种子词之间预测语义相似度的预测概率向量,作为初始神经网络模型的输出向量。
[0180] 具体实现时,分类层5122可以根据预测相似度向量中包含的标签库中各个候选词对应的预测特征相似度,计算标签库中各个候选词对应的概率,该概率能够表征该候选词称为种子词的扩展词的可能性;进而,根据标签库中各个候选词对应的概率,生成能够表征标签库中各个候选词与种子词之间语义相似度的预测概率向量。
[0181] 如图5所示,采用上述图4所示的训练词扩展模型的方法对上述初始神经网络模型5100进行模型训练,当初始神经网络模型5100满足训练结束条件时,即可根据当前神经网络模型的模型结构以及模型参数,构建可以投入实际应用的词扩展模型5200,该词扩展模型5200中包括:通过优化训练输入层5110而获得的输入层5210,以及通过优化训练预测层
5120而获得的预测层5220;其中,输入层5210中包括通过优化训练种子词编码器5111而获得的种子词编码器5211,以及通过优化训练上下文编码器5112而获得的上下文编码器
5212;预测层5220中包括通过优化训练全连接层5121而获得的全连接层5221,以及通过优化训练分类层5122而获得的分类层5222。
[0182] 为了进一步理解本申请实施例提供的词扩展方法,下面结合实际应用场景,对本申请实施例提供的词扩展方法进行介绍。
[0183] 参见图6,图6为本申请实施例提供的词扩展方法的应用场景示意图。该应用场景中包括终端设备6100和词扩展服务器6200。
[0184] 当用户需要通过某搜索引擎搜索某些内容时,用户可以在终端设备6100上显示的该搜索引擎提供的搜索栏中输入相关查询语句,假设用户在搜索栏中输入的查询语句为“大麦草富含氨基酸等营养”,相应地,终端设备6100获取查询语句“大麦草富含氨基酸等营养”,并将该查询语句发送至词扩展服务器6200。
[0185] 词扩展服务器6200接收到查询语句“大麦草富含氨基酸等营养”后,利用种子词提取模块6210对该查询语句进行语义分析,从中提取出可扩展的关键词作为种子词,将该查询语句中除掉种子词之外的部分作为种子词的上下文;即,提取可扩展的关键词“氨基酸”作为种子词,将查询语句中除“氨基酸”之外的部分“大麦草富含[?]等营养”作为种子词的上下文。
[0186] 词扩展服务器6200将种子词提取模块6210提取出的种子词以及种子词的上下文输入至词扩展模型6220中,词扩展模型6220通过对输入的种子词以及种子词的上下文进行相应地处理,输出能够用于表征候选词库中各个候选词与种子词之间的语义相似度的输出向量。
[0187] 词扩展模型6220具体对输入的种子词以及种子词的上下文进行相应地处理时,需要基于其中的输入层6221和预测层6222,确定能够表征候选词库中各个候选词与种子词之间的语义相似度的输出向量。
[0188] 具体的,词扩展模型6220利用输入层6221中的种子词编码器对输入的种子词“氨基酸”进行处理,得到种子词“氨基酸”对应的词向量,利用输入层6221中的上下文编码器对输入的种子词的上下文“大麦草富含[?]等营养”进行处理,得到种子词“氨基酸”对应的上下文向量;然后,输入层6221将种子词编码器输出的词向量和上下文编码器输出的上下文向量拼接起来,生成种子词的语义特征向量,并将该种子词的语义特征向量输入至预测层6222。
[0189] 预测层6222中的全连接层利用自身的参数对种子词的语义特征向量进行相关处理,生成候选词库中各个候选词与种子词之间的特征相似度,进而利用各个候选词对应的特征相似度生成相似度向量,此处,全连接层自身的参数实际上为候选词库中各个候选词对应的词向量和词频率;全连接层将生成的相似度向量发送至分类层,分类层相应地对该相似度向量做归一化处理,生成能够表征候选词库中各个候选词与种子词之间的特征相似度的概率向量,词扩展模型6220将该概率向量作为输出向量,输出至扩展词确定模块6230。
[0190] 扩展词确定模块6230根据接收的输出向量,确定候选词库中哪些候选词可以作为种子词的扩展词。具体实现时,扩展词确定模块6230可以根据概率向量中包含的候选词库中各个候选词对应的概率的大小,对各个候选词对应的概率进行降序排序,进而,选取排序靠前的M个概率值对应的候选词作为该种子词的扩展词,应理解,M的具体数值可以根据实际需求设置。
[0191] 由此,词扩展服务器6200确定出种子词的扩展词后,假设针对查询语句“大麦草富含氨基酸等营养”中的“氨基酸”所确定的扩展词包括‘维生素”、”叶绿素,则可以根据所确定出的这些扩展词执行信息搜索操作,从而合理地扩大信息搜索范围,保证提供满足用户需求的信息。
[0192] 针对上文描述的词扩展方法,本申请还提供了对应的词扩展装置,以便于上述词扩展方法在实际中的应用以及实现。
[0193] 参见图7,图7是与上文图2所示的词扩展方法对应的一种词扩展装置700的结构示意图,该词扩展装置700包括:
[0194] 第一获取模块701,用于获取待扩展的种子词以及获取所述种子词的上下文;
[0195] 第二获取模块702,用于根据所述种子词以及所述种子词的上下文,通过词扩展模型获取输出向量,所述输出向量用于表征候选词库中各候选词与所述种子词的语义相似度;所述词扩展模型是神经网络模型,其用于根据种子词对应的词向量以及上下文向量,预测所述候选词库中各候选词与种子词之间的语义相似度;
[0196] 确定模块703,用于根据所述输出向量确定所述种子词的扩展词。
[0197] 可选的,在图7所示的词扩展装置的基础上,所述词扩展模型包括:输入层和预测层;其中,
[0198] 所述输入层包括:种子词编码器和上下文编码器;
[0199] 所述种子词编码器以种子词作为输入且以种子词对应的词向量作为输出;所述上下文编码器以种子词的上下文作为输入,以种子词对应的上下文向量作为输出;
[0200] 所述预测层包括:全连接层和分类层;
[0201] 所述全连接层以种子词的语义特征向量作为输入,以包括候选词库中各候选词与种子词之间的特征相似度的相似度向量作为输出;其中,所述种子词的语义特征向量是根据所述词向量和所述上下文向量拼接生成的向量;
[0202] 所述分类层以所述相似度向量作为输入,以对所述相似度向量归一化后的概率向量作为所述词扩展模型的输出向量。
[0203] 可选的,在图7所示的词扩展装置的基础上,所述确定模块703具体用于:
[0204] 根据所述输出向量中元素值的降序排序顺序,从所述候选词库中选择排序靠前的M个元素所对应的候选词,作为所述种子词的扩展词;其中,M为扩展词个数阈值。
[0205] 可选的,在图7所示的词扩展装置的基础上,所述第一获取模块701具体用于:
[0206] 获取查询语句,所述查询语句是指在搜索引擎中输入的用于查询信息的搜索条件;
[0207] 从所述查询语句中提取关键词,作为待扩展的种子词,以及,从所述查询语句中提取所述种子词的上下文;
[0208] 相对应地,如图8所示,在图7所示的词扩展装置的基础上,所述词扩展装置还包括:
[0209] 搜索模块801,用于根据所述种子词的扩展词进行信息搜索,以返回搜索结果。
[0210] 可选的,在图7所示的词扩展装置的基础上,所述第一获取模块701具体用于:
[0211] 获取文本语句,所述文本语句是指在文本编辑器中输入的文本信息中的语句;
[0212] 从所述文本语句中提取关键词,作为待扩展的种子词,以及,从所述文本语句中提取所述种子词的上下文;
[0213] 相对应地,如图9所示,在图7所示的词扩展装置的基础上,所述词扩展装置还包括:
[0214] 提示模块901,用于根据所述种子词的扩展词进行信息提示。
[0215] 可选的,在图7所示的词扩展装置的基础上,所述第一获取模块701具体用于:
[0216] 获取问答语句,所述问答语句是指在问答系统输入界面上输入的语句;
[0217] 从所述问答语句中提取关键词,作为待扩展的种子词,以及,从所述问答语句中提取所述种子词的上下文;
[0218] 相对应地,如图10所示,在图7所示的词扩展装置的基础上,所述词扩展装置还包括:
[0219] 查找模块1001,用于根据所述种子词的扩展词查找应答内容,并返回所述应答内容。
[0220] 上述本申请实施例提供的词扩展装置在预测种子词的扩展词的过程中,既考虑了种子词自身的语义,又考虑了该种子词的上下文语义,保证能够基于该种子词上下文语境的影响确定该种子词的扩展词,即使得基于该词扩展模型确定出的扩展词能够符合种子词的上下文语境,从而为各个自然语言处理应用提供能够满足业务需求的信息,提高自然语言处理应用的应用性能。
[0221] 针对上文描述的训练词扩展模型的方法,本申请还提供了对应的训练词扩展模型的装置,以便于上述训练词扩展模型的方法在实际中的应用以及实现。
[0222] 参见图11,图11是与上文图4所示的训练词扩展模型的方法对应的一种训练词扩展模型的装置1100的结构示意图,该训练词扩展模型的装置1100包括:
[0223] 获取模块1101,用于获取训练样本集,所述训练样本集中每个样本包括:种子词、种子词的上下文以及种子词对应的真实扩展词;
[0224] 构建模块1102,用于构建初始神经网络模型,根据所述训练样本集训练所述初始神经网络模型的参数以得到满足训练结束条件的神经网络模型,作为词扩展模型。
[0225] 可选的,在图11所示的训练词扩展模型的装置的基础上,参见图12,本本申请实施例提供的另一种训练词扩展模型的装置1200,所述训练词扩展模型的装置1200还包括:
[0226] 提取模块1201,用于从自然语料中提取满足训练条件的语句,针对所述满足训练条件的语句提取上下文和下位词集合,所述下位词集合中至少包括两个下位词;
[0227] 种子词确定模块1202,用于将所述下位词集合中的一个下位词作为一个种子词,将所述下位词集合中除去所述一个下位词之外的其他下位词作为所述一个种子词对应的真实扩展词;
[0228] 样本确定模块1203,用于将所述一个种子词及其上下文以及所述一个种子词对应的真实扩展词,作为一个样本;
[0229] 生成模块1204,用于根据所述自然语料中各语句各自对应的样本生成样本训练集。
[0230] 可选的,在图12所示的训练词扩展模型的装置的基础上,所述提取模块1201具体用于:
[0231] 根据赫斯特Hearst模式的正则表达式,从所述自然语料中提取出满足Hearst模式的语句,针对满足Hearst模式的语句提取出对应的上下文和下位词集合。
[0232] 可选的,在图11所示的训练词扩展模型的装置的基础上,所述初始神经网络模型包括:输入层和预测层;其中,
[0233] 所述输入层包括:种子词编码器和上下文编码器;
[0234] 所述种子词编码器以种子词作为输入且以种子词对应的词向量作为输出;所述上下文编码器以种子词的上下文作为输入,以种子词对应的上下文向量作为输出;
[0235] 所述预测层包括:全连接层和分类层;
[0236] 所述全连接层以种子词的预测语义特征向量作为输入,以包括候选词库中各候选词与种子词之间的特征相似度的预测相似度向量作为输出;其中,所述种子词的预测语义特征向量是根据所述词向量和所述上下文向量拼接生成的向量;
[0237] 所述分类层以所述预测相似度向量作为输入,以对所述预测相似度向量归一化后的预测概率向量作为所述初始神经网络模型的输出向量。
[0238] 可选的,在上述图11所示的训练词扩展模型的装置的基础上,所述构建模块1102具体用于:
[0239] 将所述训练样本集中的样本输入初始神经网络模型,获取所述初始神经网络模型输出的预测概率向量,所述预测概率向量是利用与样本对应的标签子集对样本进行预测得到的;其中,与样本对应的标签子集是针对样本从标签库中提取一个子集,所述标签子集中包括与样本相关的真实扩展词以及与样本不相关的候选词;
[0240] 根据所述预测概率向量和所述标签子集的真实概率向量,计算损失函数,以最小化损失函数为训练目标,更新所述初始神经网络模型中的参数,直至神经网络达到收敛,得到词扩展模型。
[0241] 可选的,在上述图11所示的训练词扩展模型的装置的基础上,所述种子词编码器包括:向量平均编码器,用于对种子词中的所有词汇对应的向量取平均值以得到种子词的词向量;
[0242] 所述上下文编码器包括:文本向量编码器,用于分别针对上下文中占位符左右两边的内容进行编码得到上下文的向量。
[0243] 采用上述训练词扩展模型的装置对初始神经网络进行训练,利用初始神经网络模型对样本中的种子词以及上下文进行相应地处理,输出样本对应的预测概率向量,然后,根据该预测概率向量与该样本对应的真实概率向量,计算损失函数,根据该损失函数优化训练初始神经网络模型,待该初始神经网络模型满足训练结束条件时,根据该神经网络模型的模型结构和模型参数生成词扩展模型。在训练的过程中,基于种子词以及种子词的上下文对初始神经网络模型进行训练,保证所训练得到的词扩展模型能够同时考虑种子词自身的语义和种子词的上下文语义,进而基于该种子词的上下文语境确定输出向量,从而使得基于该输出向量确定出种子词能够符合种子词的上下文语境。
[0244] 本申请还提供了一种词扩展设备,该设备具体可以为服务器,参见图13,图13是本申请实施例提供的一种词扩展服务器结构示意图,该服务器1300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)1322(例如,一个或一个以上处理器)和存储器1332,一个或一个以上存储应用程序1342或数据1344的存储介质1330(例如一个或一个以上海量存储设备)。其中,存储器1332和存储介质1330可以是短暂存储或持久存储。存储在存储介质1330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1322可以设置为与存储介质1330通信,在服务器1300上执行存储介质1330中的一系列指令操作。
[0245] 服务器1300还可以包括一个或一个以上电源1326,一个或一个以上有线或无线网络接口1350,一个或一个以上输入输出接口1358,和/或,一个或一个以上操作系统1341,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
[0246] 上述实施例中由服务器所执行的步骤可以基于该图13所示的服务器结构。
[0247] 其中,CPU 1322用于执行如下步骤:
[0248] 获取待扩展的种子词以及获取所述种子词的上下文;
[0249] 根据所述种子词以及所述种子词的上下文,通过词扩展模型获取输出向量,所述输出向量用于表征候选词库中各候选词与所述种子词的语义相似度;所述词扩展模型是神经网络模型,其用于根据种子词对应的词向量以及上下文向量,预测所述候选词库中各候选词与种子词之间的语义相似度;
[0250] 根据所述输出向量确定所述种子词的扩展词。
[0251] 可选的,CPU1322还可以执行本申请实施例中词扩展方法任一具体实现方式的方法步骤。
[0252] 此外,本申请还提供了一种训练词扩展模型的设备,该设备具体可以为服务器,该服务器的结构与图13所示的词扩展设备的结构类似,其中的CPU用于执行以下步骤:
[0253] 获取训练样本集,所述训练样本集中每个样本包括:种子词、种子词的上下文以及种子词对应的真实扩展词;
[0254] 构建初始神经网络模型,根据所述训练样本集训练所述初始神经网络模型的参数以得到满足训练结束条件的神经网络模型,作为词扩展模型。
[0255] 可选的,CPU还可以执行本申请实施例中训练词扩展模型的方法任一具体实现方式的方法步骤。
[0256] 本申请实施例还提供了另一种词扩展设备,该词扩展设备可以为终端设备,如图14所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该终端可以为包括手机、平板电脑、个人数字助理(英文全称:
Personal Digital Assistant,英文缩写:PDA)、销售终端(英文全称:Point of Sales,英文缩写:POS)、车载电脑等任意终端设备,以终端为手机为例:
[0257] 图14示出的是与本申请实施例提供的终端相关的手机的部分结构的框图。参考图14,手机包括:射频(英文全称:Radio Frequency,英文缩写:RF)电路1410、存储器1420、输入单元1430、显示单元1440、传感器1450、音频电路1460、无线保真(英文全称:wireless fidelity,英文缩写:WiFi)模块1470、处理器1480、以及电源1490等部件。本领域技术人员可以理解,图14中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0258] 下面结合图14对手机的各个构成部件进行具体的介绍:
[0259] RF电路1410可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1480处理;另外,将设计上行的数据发送给基站。通常,RF电路1410包括但不限于天线、至少一个放大器收发信机耦合器低噪声放大器(英文全称:Low Noise Amplifier,英文缩写:LNA)、双工器等。此外,RF电路1410还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(英文全称:Global System of Mobile communication,英文缩写:GSM)、通用分组无线服务(英文全称:General Packet Radio Service,GPRS)、码分多址(英文全称:Code Division Multiple Access,英文缩写:CDMA)、宽带码分多址(英文全称:Wideband Code Division Multiple Access,英文缩写:WCDMA)、长期演进(英文全称:Long  Term 
Evolution,英文缩写:LTE)、电子邮件、短消息服务(英文全称:Short Messaging Service,SMS)等。
[0260] 存储器1420可用于存储软件程序以及模块,处理器1480通过运行存储在存储器1420的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器1420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0261] 输入单元1430可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1430可包括触控面板1431以及其他输入设备1432。触控面板1431,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1431上或在触控面板1431附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1431可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1480,并能接收处理器1480发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1431。除了触控面板1431,输入单元1430还可以包括其他输入设备1432。具体地,其他输入设备1432可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球鼠标、操作杆等中的一种或多种。
[0262] 显示单元1440可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1440可包括显示面板1441,可选的,可以采用液晶显示器(英文全称:Liquid Crystal Display,英文缩写:LCD)、有机发光二极管(英文全称:Organic Light-Emitting Diode,英文缩写:OLED)等形式来配置显示面板1441。进一步的,触控面板1431可覆盖显示面板1441,当触控面板1431检测到在其上或附近的触摸操作后,传送给处理器
1480以确定触摸事件的类型,随后处理器1480根据触摸事件的类型在显示面板1441上提供相应的视觉输出。虽然在图14中,触控面板1431与显示面板1441是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1431与显示面板1441集成而实现手机的输入和输出功能。
[0263] 手机还可包括至少一种传感器1450,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1441的亮度,接近传感器可在手机移动到边时,关闭显示面板
1441和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
[0264] 音频电路1460、扬声器1461,传声器1462可提供用户与手机之间的音频接口。音频电路1460可将接收到的音频数据转换后的电信号,传输到扬声器1461,由扬声器1461转换为声音信号输出;另一方面,传声器1462将收集的声音信号转换为电信号,由音频电路1460接收后转换为音频数据,再将音频数据输出处理器1480处理后,经RF电路1410以发送给比如另一手机,或者将音频数据输出至存储器1420以便进一步处理。
[0265] WiFi属于短距离无线传输技术,手机通过WiFi模块1470可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图14示出了WiFi模块1470,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
[0266] 处理器1480是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1420内的软件程序和/或模块,以及调用存储在存储器1420内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1480可包括一个或多个处理单元;优选的,处理器1480可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1480中。
[0267] 手机还包括给各个部件供电的电源1490(比如电池),优选的,电源可以通过电源管理系统与处理器1480逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
[0268] 尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
[0269] 在本申请实施例中,该终端所包括的处理器1480还具有以下功能:
[0270] 获取待扩展的种子词以及获取所述种子词的上下文;
[0271] 将所述种子词以及所述种子词的上下文输入词扩展模型,获取所述词扩展模型的输出向量,所述输出向量用于表征候选词库中各候选词与所述种子词的语义相似度;所述词扩展模型是神经网络模型,其用于根据种子词对应的词向量以及上下文向量,预测所述候选词库中各候选词与种子词之间的语义相似度;
[0272] 根据所述输出向量确定所述种子词的扩展词。
[0273] 可选的,处理器1480还可以执行本申请实施例中词扩展方法任一具体实现方式的方法步骤。
[0274] 此外,本申请还提供了一种训练词扩展模型的设备,该设备具体可以为终端设备,该终端设备的结构与图14所示的词扩展设备的结构类似,其中的处理器用于执行以下步骤:
[0275] 获取训练样本集,所述训练样本集中每个样本包括:种子词、种子词的上下文以及种子词对应的真实扩展词;
[0276] 构建初始神经网络模型,根据所述训练样本集训练所述初始神经网络模型的参数以得到满足训练结束条件的神经网络模型,作为词扩展模型。
[0277] 可选的,处理器还可以执行本申请实施例中训练词扩展模型的方法任一具体实现方式的方法步骤。
[0278] 本申请实施例还提供一种计算机可读存储介质,用于存储程序代码,该程序代码用于执行前述各个实施例所述的一种词扩展方法中的任意一种实施方式,或者一种训练词扩展模型的方法中的任意一种实施方式。
[0279] 本申请实施例还提供一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行前述各个实施例所述的一种词扩展方法中的任意一种实施方式,或者一种训练词扩展模型的方法中的任意一种实施方式。
[0280] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0281] 在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0282] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0283] 另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0284] 所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘只读存储器(英文全称:Read-Only Memory,英文缩写:ROM)、随机存取存储器(英文全称:Random Access Memory,英文缩写:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[0285] 以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈