CN112000788B - 一种数据处理方法、装置以及计算机可读存储介质 - Google Patents

一种数据处理方法、装置以及计算机可读存储介质 Download PDF

Info

Publication number
CN112000788B
CN112000788B CN202010837649.4A CN202010837649A CN112000788B CN 112000788 B CN112000788 B CN 112000788B CN 202010837649 A CN202010837649 A CN 202010837649A CN 112000788 B CN112000788 B CN 112000788B
Authority
CN
China
Prior art keywords
document
node
nodes
sample
vector
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.)
Active
Application number
CN202010837649.4A
Other languages
English (en)
Other versions
CN112000788A (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.)
Tencent Cloud Computing Changsha Co Ltd
Original Assignee
Tencent Cloud Computing Changsha 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 Tencent Cloud Computing Changsha Co Ltd filed Critical Tencent Cloud Computing Changsha Co Ltd
Priority to CN202010837649.4A priority Critical patent/CN112000788B/zh
Publication of CN112000788A publication Critical patent/CN112000788A/zh
Application granted granted Critical
Publication of CN112000788B publication Critical patent/CN112000788B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/194Calculation of difference between files

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种数据处理方法、装置以及计算机可读存储介质,该方法包括:获取包括图节点的隐式文本图;隐式文本图中的图节点包括已有文档对应的文档节点和已有文档包含的文档单词对应的单词节点;在隐式文本图中,获取目标文档包含的文档单词对应的单词节点,作为目标文档对应的目标邻居节点;从隐式文本图中获取目标邻居节点对应的文档单词的单词特征向量,根据隐式文本图,生成目标文档与目标邻居节点对应的文档单词之间的目标关联特征信息;将目标文档的文档特征向量、单词特征向量、以及目标关联特征信息,输入向量生成模型;在向量生成模型中,生成目标文档的文档检索向量。采用本申请,可提高所获取到的目标文档的文档检索向量的准确性。

Description

一种数据处理方法、装置以及计算机可读存储介质
技术领域
本申请涉及数据处理的技术领域,尤其涉及一种数据处理方法、装置以及计算机可读存储介质。
背景技术
在很多客户端场景中,经常会遇到检索与某个文档相似的其他文档的场景。例如,可以将用户在客户端录入的问题作为一个文档,客户端可以检索与该问题对应的回答,检索到的该问题的回答即为与该问题相似的文档。
现有技术中,通常是通过神经网络模型分别提取每个文档(可以包括问题对应的文档以及回答对应的文档)的文档特征,以生成每个文档分别对应的文档向量,进而即可根据不同文档的文档向量之间的向量距离,来判断不同文档之间是否相似。
由此可见,现有技术中,每个文档的文档向量仅是通过文档自身的文档特征所生成的,因此每个文档的文档向量所包含的文档特征较为单一,从而导致所生成的每个文档的文档向量并不准确,进而导致在根据每个文档的文档向量来判断每个文档之间是否相似时,其判断结果也不准确。
发明内容
本申请提供了一种数据处理方法、装置以及计算机可读存储介质,可提高所生成的目标文档的文档检索向量的准确性,进而提高所获取到的与目标文档相似的文档的准确性。
本申请一方面提供了一种数据处理方法,包括:
获取包括图节点的隐式文本图;隐式文本图中的图节点包括已有文档对应的文档节点、以及已有文档包含的文档单词对应的单词节点;
在隐式文本图中,获取目标文档包含的文档单词对应的单词节点,作为目标文档对应的目标邻居节点;
从隐式文本图中获取目标邻居节点对应的文档单词的单词特征向量,根据隐式文本图,生成目标文档与目标邻居节点对应的文档单词之间的目标关联特征信息;
将目标文档的文档特征向量、单词特征向量、以及目标关联特征信息,输入向量生成模型;向量生成模型,是通过隐式文本图中单词节点之间的连接关系、以及文档节点与单词节点之间的连接关系训练得到;隐式文本图中具有连接关系的图节点之间互为邻居节点;隐式文本图中互为邻居节点的图节点之间具备对应的关联特征信息;
在向量生成模型中,生成目标文档的文档检索向量;目标文档的文档检索向量用于检索与目标文档相似的文档。
本申请一方面提供了一种数据处理方法,包括:
获取包括图节点的的隐式文本图;隐式文本图中的图节点,包括至少两个已有文档对应的文档节点、以及至少两个已有文档包含的文档单词对应的单词节点;隐式文本图中,包括至少两个文档节点与至少两个单词节点之间的连接关系、以及至少两个单词节点相互之间的连接关系;具有连接关系的图节点之间具有对应的关联特征信息;
在隐式文本图中的文档节点和单词节点中获取样本节点;
将隐式文本图中,与样本节点具有连接关系的图节点,确定为样本节点的邻居样本图节点;
将隐式文本图中,样本节点对应的样本特征向量、邻居样本图节点对应的样本特征向量、以及样本节点与邻居样本图节点之间的关联特征信息,输入初始向量生成模型;
基于初始向量生成模型,生成样本节点对应的文档检索向量;
获取样本节点对应的文档检索向量的向量准确评估参数;
根据向量准确评估参数以及样本节点对应的文档检索向量,修正初始向量生成模型的模型参数,得到向量生成模型。
其中,上述方法还包括:
当样本节点为隐式文本图中的单词节点,且邻居样本图节点为隐式文本图中的文档节点时,获取样本节点对应的文档单词在邻居样本图节点对应的已有文档中的出现次数、以及至少两个已有文档中目标已有文档的文档数量;目标已有文档为包括样本节点对应的文档单词的已有文档;
根据出现次数和文档数量,确定样本节点对应的文档单词与邻居样本图节点对应的已有文档之间的词频参数;
将词频参数,确定为样本节点与邻居样本图节点之间的关联特征信息。
其中,样本节点与邻居样本图节点之间的连接关系,是在样本节点与邻居样本图节点之间的关联特征信息的数值大于关系建立阈值时,所建立的。
本申请一方面提供了一种数据处理装置,包括:
获取模块,用于获取包括图节点的隐式文本图;隐式文本图中的图节点包括已有文档对应的文档节点、以及已有文档包含的文档单词对应的单词节点;
邻居获取模块,用于在隐式文本图中,获取目标文档包含的文档单词对应的单词节点,作为目标文档对应的目标邻居节点;
信息获取模块,用于从隐式文本图中获取目标邻居节点对应的文档单词的单词特征向量,根据隐式文本图,生成目标文档与目标邻居节点对应的文档单词之间的目标关联特征信息;
数据输入模块,用于将目标文档的文档特征向量、单词特征向量、以及目标关联特征信息,输入向量生成模型;向量生成模型,是通过隐式文本图中单词节点之间的连接关系、以及文档节点与单词节点之间的连接关系训练得到;隐式文本图中具有连接关系的图节点之间互为邻居节点;隐式文本图中互为邻居节点的图节点之间具备对应的关联特征信息;
向量生成模块,用于在向量生成模型中,生成目标文档的文档检索向量;目标文档的文档检索向量用于检索与目标文档相似的文档。
其中,邻居获取模块,包括:
分词单元,用于对目标文档进行文档分词,得到目标文档包含的文档单词;
邻居确定单元,用于将隐式文本图中,与目标文档包含的文档单词相同的文档单词所对应的单词节点,确定为目标文档对应的目标邻居节点。
其中,已有文档的文档数量为至少两个;信息获取模块,包括:
信息获取单元,用于获取目标邻居节点对应的文档单词在目标文档中的出现次数,获取隐式文本图的至少两个已有文档中,目标已有文档的文档数量:目标已有文档为包含目标邻居节点对应的文档单词的已有文档;
参数确定单元,用于根据出现次数和文档数量,确定目标文档与目标邻居节点对应的文档单词之间的词频参数;
关联信息确定单元,用于将词频参数,确定为目标文档与目标邻居节点对应的文档单词之间的目标关联特征信息。
其中,目标文档的文档检索向量中包括至少两个元素位置分别对应的元素值;上述装置还包括:
向量获取模块,用于获取已有文档的文档检索向量和已有文档包含的文档单词的文档检索向量;
参考向量确定模块,用于将已有文档的文档检索向量和已有文档包含的文档单词的文档检索向量,均确定为参考检索向量;参考检索向量中包括至少两个元素位置分别对应的元素值;
中位数确定模块,用于根据参考检索向量中每个元素位置分别对应的元素值,确定每个元素位置分别对应的中位数;
哈希码生成模块,用于根据每个元素位置分别对应的中位数、以及目标文档的文档检索向量,生成目标文档的文档哈希码;目标文档的文档哈希码用于检索与目标文档相似的文档;目标文档的文档哈希码的维度低于目标文档的文档检索向量的维度。
其中,哈希码生成模块,包括:
第一码值标记单元,用于将目标文档的文档检索向量中每个元素位置分别对应的元素值中,大于所对应的中位数的元素值,标记为第一码值;
第二码值标记单元,用于将目标文档的文档检索向量中每个元素位置分别对应的元素值中,小于或等于所对应的中位数的元素值,标记为第二码值;
哈希码生成单元,用于根据每个元素位置分别对应的第一码值或第二码值,生成目标文档的文档哈希码。
其中,目标文档为文档检索客户端获取到的询问文本信息;上述装置还包括:
哈希码获取模块,用于获取已有文档的文档哈希码;
汉明距离获取模块,用于获取目标文档的文档哈希码和已有文档的文档哈希码之间的汉明距离;汉明距离表征目标文档与已有文档之间的文档相似度;
相似文档确定模块,用于当汉明距离小于或等于汉明距离阈值时,将已有文档确定为目标文档的相似文档;
输出模块,用于将相似文档发送至文档检索客户端,以使文档检索客户端在客户端页面中,对询问文本信息和相似文档进行关联输出。
其中,向量生成模块,包括:
影响权重生成单元,用于根据目标文档的文档特征向量、单词特征向量和目标关联特征信息,在向量生成模型中,生成目标邻居节点对应的文档单词针对目标文档的节点影响权重;节点影响权重表征目标邻居节点对应的文档单词在目标文档中的重要程度;
向量加权单元,用于根据节点影响权重,对单词特征向量进行加权求和,得到参考总向量;
高斯分布构建单元,用于构建参考总向量所属的高斯分布;
均值向量确定单元,用于将高斯分布的均值向量,确定为目标文档对应的文档检索向量。
本申请一方面提供了一种数据处理装置,包括:
文本图获取模块,用于获取包括图节点的的隐式文本图;隐式文本图中的图节点,包括至少两个已有文档对应的文档节点、以及至少两个已有文档包含的文档单词对应的单词节点;隐式文本图中,包括至少两个文档节点与至少两个单词节点之间的连接关系、以及至少两个单词节点相互之间的连接关系;具有连接关系的图节点之间具有对应的关联特征信息;
样本节点获取模块,用于在隐式文本图中的文档节点和单词节点中获取样本节点;
邻居节点确定模块,用于将隐式文本图中,与样本节点具有连接关系的图节点,确定为样本节点的邻居样本图节点;
样本输入模块,用于将隐式文本图中,样本节点对应的样本特征向量、邻居样本图节点对应的样本特征向量、以及样本节点与邻居样本图节点之间的关联特征信息,输入初始向量生成模型;
样本向量生成模块,用于基于初始向量生成模型,生成样本节点对应的文档检索向量;
评估参数获取模块,用于获取样本节点对应的文档检索向量的向量准确评估参数;
参数修正模块,用于根据向量准确评估参数以及样本节点对应的文档检索向量,修正初始向量生成模型的模型参数,得到向量生成模型。
其中,上述装置还包括:
概率获取模块,用于当样本节点和邻居样本图节点,均为隐式文本图中的单词节点时,获取样本节点对应的文档单词与邻居样本图节点对应的文档单词在至少两个已有文档中的共现概率、样本节点对应的文档单词在至少两个已有文档中的第一出现概率、以及邻居样本图节点对应的文档单词在至少两个已有文档中的第二出现概率;
互信息生成模块,用于根据共现概率、第一出现概率和第二出现概率,确定样本节点对应的文档单词与邻居样本图节点对应的文档单词之间的单词互信息;单词互信息,表征样本节点对应的文档单词与邻居样本图节点对应的文档单词之间的关联程度;
第一关联信息确定模块,用于将单词互信息,确定为样本节点与邻居样本图节点之间的关联特征信息。
其中,上述装置还包括:
词频信息获取模块,用于当样本节点为隐式文本图中的单词节点,且邻居样本图节点为隐式文本图中的文档节点时,获取样本节点对应的文档单词在邻居样本图节点对应的已有文档中的出现次数、以及至少两个已有文档中目标已有文档的文档数量;目标已有文档为包括样本节点对应的文档单词的已有文档;
词频参数确定模块,用于根据出现次数和文档数量,确定样本节点对应的文档单词与邻居样本图节点对应的已有文档之间的词频参数;
第二关联信息确定模块,用于将词频参数,确定为样本节点与邻居样本图节点之间的关联特征信息。
其中,样本节点与邻居样本图节点之间的连接关系,是在样本节点与邻居样本图节点之间的关联特征信息的数值大于关系建立阈值时,所建立的。
其中,样本向量生成模块,包括:
样本权重生成单元,用于根据样本节点对应的样本特征向量、邻居样本图节点对应的样本特征向量、以及样本节点与邻居样本图节点之间的关联特征信息,在初始向量生成模型中,生成邻居样本图节点针对样本节点的节点影响权重;节点影响权重,表征邻居样本图节点针对样本节点的重要程度;
总向量获取单元,用于根据节点影响权重,对邻居样本图节点对应的样本特征向量进行加权求和,得到样本节点对应的参考总向量;
分布构建单元,用于构建参考总向量所属的高斯分布;
检索向量确定单元,用于将高斯分布的均值向量,确定为样本节点对应的文档检索向量。
其中,评估参数获取模块,包括:
节点文档确定单元,用于将样本节点对应的已有文档或文档单词,确定为样本节点对应的节点文档;
采样单元,用于对样本节点对应的高斯分布进行采样,得到样本节点对应的节点隐向量;
还原单元,用于获取在根据节点隐向量,生成样本节点对应的节点文档时的文档还原概率,获取在根据节点隐向量,生成样本节点对应的邻居样本图节点时的邻居还原概率;
联合概率确定单元,用于根据文档还原概率和邻居还原概率,确定样本节点对应的联合概率分布;
评估参数确定单元,用于根据联合概率分布,确定样本节点对应的文档检索向量的向量准确评估参数。
本申请一方面提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行本申请中一方面中的方法。
本申请一方面提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令被处理器执行时使该处理器执行上述一方面中的方法。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述一方面等各种可选方式中提供的方法。
本申请可以通过包括已有文档对应的文档节点和该已有文档所包含的文档单词对应的单词节点的隐式文本图,来训练得到向量生成模型。由于隐式文本图中具有文档节点与单词节点之间的连接关系、以及不同单词节点之间的连接关系,其中,文档节点与单词节点之间的连接关系可以包含已有文档自身的文档特征;单词节点与单词节点之间的连接关系可以表征不同已有文档之间的关联关系。因此,通过本申请所提供的隐式文本图来训练得到向量生成模型,可以使得该向量生成模型不仅可以学习到已有文档本身的文档特征,也可以学习到不同已有文档之间的关联关系,因此,通过该向量生成模型可以生成目标文档更准确的文档检索向量,进而通过该目标文档的文档检索向量可以检索得到与目标文档更相似的其他文档。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种网络架构的结构示意图;
图2是本申请提供的一种获取目标文档的相似文档的场景示意图;
图3是本申请提供的一种数据处理方法的流程示意图;
图4是本申请提供的一种隐式文本图的结构示意图;
图5是本申请提供的一种获取文档检索向量的场景示意图;
图6是本申请提供的一种终端页面的页面示意图;
图7是本申请提供的一种获取文档哈希码的场景示意图;
图8是本申请提供的一种获取文档哈希码的场景示意图;
图9是本申请提供的一种数据处理方法的流程示意图;
图10是本申请提供的一种模型训练过程的场景示意图;
图11是本申请提供的一种模型结构的结构示意图;
图12是本申请提供的一种数据处理装置的结构示意图;
图13是本申请提供的一种数据处理装置的结构示意图;
图14是本申请提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
本申请中主要涉及到了人工智能中的机器学习。其中,机器学习(MachineLearning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
本申请中所涉及到的机器学习主要是指,通过机器学习来训练得到向量生成模型,该向量生成模型可以用于生成文档的文档检索向量,进而可以通过所生成的文档的文档检索向量,来检索与文档相似的其他文档,具体请参见下述。
请参见图1,图1是本申请实施例提供的一种网络架构的结构示意图。如图1所示,网络架构可以包括服务器200和终端设备集群,终端设备集群可以包括一个或者多个终端设备,这里将不对终端设备的数量进行限制。如图1所示,多个终端设备具体可以包括终端设备100a、终端设备101a、终端设备102a、…、终端设备103a;如图1所示,终端设备100a、终端设备101a、终端设备102a、…、终端设备103a均可以与服务器200进行网络连接,以便于每个终端设备可以通过网络连接与服务器200之间进行数据交互。
如图1所示的服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备可以是:智能手机、平板电脑、笔记本电脑、桌上型电脑、智能电视等智能终端。下面以终端设备100a与服务器200之间的通信为例,进行本申请实施例的具体描述。
请一并参见图2,图2是本申请提供的一种获取目标文档的相似文档的场景示意图。如图2所示,服务器200可以通过隐式文本图G1来训练初始向量生成模型102b,以得到向量生成模型103b。该向量生成模型103b可以用于生成任何一个文档的文档检索向量,该文档检索向量就是文档的向量表示,该文档检索向量可以用于检索与所属的文档相似的其他文档。下面描述如何训练初始向量生成模型102b,以得到向量生成模型103b。
服务器200可以通过已有文档来创建隐式文本图G1,该已有文档可以是文档数据库中所存在的所有文档。可以将隐式文本图G1中的节点均称之为隐式文本图G1中的图节点,隐式文本图G1中的图节点可以包括已有文档对应的文档节点以及该已有文档所包含的文档单词对应的单词节点。一个已有文档与一个文档节点之间一一对应,一个文档单词与一个单词节点之间一一对应。
如图2所示,隐式文本图G1中的图节点具体包括文档节点1、文档节点2、文档节点3、单词节点1、单词节点2、单词节点3、单词节点4和单词节点5。其中,文档节点1对应于一个已有文档,文档节点2对应于一个已有文档,文档节点3对应于一个已有文档。
其中,在隐式文本图G1中,某个文档节点可以与该个文档节点所属的已有文档中包含的文档单词对应的单词节点具有连接关系。具体的,文档节点1与单词节点1和单词节点2均具有连接关系,这表明文档节点1对应的已有文档中包括单词节点1对应的文档单词和单词节点2对应的文档单词。文档节点2与单词节点2、单词节点3和单词节点5具有连接关系,这表明文档节点2对应的已有文档中包括单词节点2对应的文档单词、单词节点3对应的文档单词以及单词节点5对应的文档单词。文档节点3与单词节点2、单词节点3和单词节点4均具有连接关系,这表明文档节点3对应的已有文档中包括单词节点2对应的文档单词、单词节点3对应的文档单词和单词节点4对应的文档单词。举个例子,若某个已有文档为“今天天气晴朗”,则该个已有文档所包含的文档单词就可以包括文档单词“今天”、文档单词“天气”以及文档单词“晴朗”。
其中,在隐式文本图G1中,单词节点与单词节点之间的连接关系是通过单词节点对应的文档单词在所有已有文档中的共现概率所确定的。其中,可以通过任意两个单词节点对应的文档单词在所有已有文档中的共现概率,计算该任意两个单词节点对应的文档单词之间的互信息(可以称之为单词互信息)。若计算得到的互信息大于0,则该互信息对应的两个单词节点之间就具有连接关系,若计算得到的互信息小于或者等于0,则该互信息对应的两个单词节点之间就不具有连接关系。其中,计算两个单词节点对应的文档单词之间的互信息的具体过程可以参见下述步骤S203。
由于隐式文本图G1中包括文档节点与单词节点之间的连接关系、以及单词节点与单词节点之间的连接关系,而不包括文档节点与文档节点之间的连接关系,使得不同已有文档之间隐式的关联关系,可以通过不同已有文档所包含的相同的文档单词来推导,而不同已有文档之间隐式的关联关系在隐式文本图G1中,就体现在单词节点与单词节点之间的连接关系上。已有文档自身的文档特征在隐式文本图G1中,就体现在已有文档的文档节点与所属的文档单词对应的单词节点之间的连接关系上。
其中,在隐式文本图G1中,具有连接关系的图节点之间互为邻居节点。因此,如区域101b所示,文档节点1的邻居节点包括单词节点1和单词节点2;单词节点1的邻居节点包括文档节点1;单词节点2的邻居节点包括文档节点1、文档节点2、单词节点3和文档节点3;文档节点2的邻居节点包括单词节点2、单词节点3和单词节点5;单词节点5的邻居节点包括文档节点2;单词节点3的邻居节点包括单词节点2、文档节点3和文档节点2;文档节点3的邻居节点包括单词节点2、单词节点3和单词节点4;单词节点4的邻居节点包括文档节点3。
其中,隐式文本图G1中,每个图节点都可以与自己进行连接形成一个闭环,换句话说,可以理解为,隐式文本图G1中,每个图节点均与自己具有连接关系。因此,隐式文本图G1中的每个图节点的邻居节点还可以包括自己,例如文档节点1的邻居节点除了可以包括单词节点1和单词节点2之外,还可以包括文档节点1。
服务器200可以通过隐式文本图G1中每个图节点与其邻居节点之间的关系,来训练初始向量生成模型102b,以得到向量生成模型103b。通过隐式文本图G1训练得到的向量生成模型103b,可以学习到隐式文本图G1的图结构特征,该图结构特征也就是隐式文本图G1中图节点之间的连接关系,因此,向量生成模型不仅可以学习到每个图节点对应的已有文档或者文档单词自身的特征(通过文档节点与单词节点之间的连接关系体现),还能学习到每个图节点对应的已有文档或者文档单词相互之间的关联特征(通过单词节点与单词节点之间的连接关系体现)。
因此,后续在通过向量生成模型103b来生成目标文档的文档检索向量时,同时考量了目标文档自身的特征,也考量了目标文档与其他已有文档之间的关联特征,因此,保证了所获取到的目标文档的文档检索向量的准确性。其中,目标文档可以是任意一个文档,通过隐式文本图G1训练初始向量生成模型102b以得到向量生成模型103b的具体过程,可以参见下述图9对应的实施例中的步骤S201-步骤S207。
在训练得到了向量生成模型103b之后,即可对向量生成模型103b进行应用,请参见下述。
终端设备100a可以获取到用户所录入的问题,用户通过向终端设备100a录入问题,以检索该问题对应的回答。例如,用户向终端设备100a录入的问题可以是“感冒怎么治”,该问题的回答可以是描述如何治疗感冒的回答。终端设备100a可以将用户所录入的问题发送给服务器200,服务器200可以将所获取到的问题作为目标文档。
如区域104b所示,服务器200可以对该目标文档进行分词,得到目标文档包含的一个或多个文档单词,此处对目标文档进行分词,可以得到目标文档中包含单词节点1对应的文档单词以及单词节点3对应的节点单词。如区域105b所示,服务器200可以在隐式文本图G1中,获取与该目标文档包含的文档单词相同的文档单词对应的单词节点,作为目标文档的邻居节点,可以将目标文档的邻居节点称之为目标邻居节点。因此,目标邻居节点就包括单词节点1和单词节点3,此外,目标邻居节点还可以包括目标文档自己对应的文档节点。其中,可以理解的是,隐式文本图G1创建好了之后就可以保持不变,即隐式文本图G1中并不会新增目标文档自己对应的文档节点,因此,目标文档自己对应的文档节点可以理解为是在隐式文本图G1之外模拟出的一个文档节点。
服务器200可以将目标文档与其目标邻居节点之间的邻居关系输入向量生成模型103b,进而向量生成模型103b就可以生成目标文档的文档检索向量106b。同样,服务器200也可以通过训练好的向量生成模型103b,生成隐式文本图中的每个已有文档的文档检索向量。
如区域107b所示,服务器200可以获取目标文档的文档检索向量与每个已有文档的文档检索向量之间的向量距离。如区域108b所示,服务器200可以将所属的向量距离小于向量距离阈值(可以自行进行设置)的已有文档,作为目标文档的相似文档,该相似文档可以是检索出的目标文档对应的回答。
服务器200可以将检索出的目标文档的相似文档发送给终端设备100a,终端设备100a可以在终端页面中对目标文档和目标文档的相似文档进行关联输出显示,以向用户展示其所录入的问题(目标文档)的回答(目标文档的相似文档)。
其中,可以理解的是,上述训练初始向量生成模型102b以得到向量生成模型103b的过程,可以是由服务器200所执行的,也可以是终端设备100a所执行的,还可以是由服务器200和终端设备100a共同执行。训练初始向量生成模型102b以得到向量生成模型103b的过程的执行主体,根据实际应用场景决定,对此不做限制。
采用本申请所提供的方法,由于预先创建了隐式文本图G1,并且该隐式文本图G1中不仅可以包括文档节点,还可以包括单词节点,因此,后续在获取到一个新文档(例如目标文档)时,可以在隐式文本图G1中快速地获取到该目标文档的邻居节点,因此可以提高生成目标文档的文档检索向量的效率。此外,通过隐式文本图G1训练得到的向量生成模型103b,可以学习到已有文档自身的文档特征,也可以学习到已有文档与已有文档之间的关联特征,因此,通过向量生成模型103b可以生成目标文档准确的文档检索向量。
请参见图3,图3是本申请提供的一种数据处理方法的流程示意图,该数据处理方法的执行主体可以是服务器,也可以终端设备,还可以同时包括服务器和终端设备。此处以该数据处理方法的执行主体为服务器(可以是任意一个服务器或者是多个服务器构成的服务器集群)为例,进行本申请实施例的具体描述。如图3所示,该方法可以包括:
步骤S101,获取包括图节点的隐式文本图;隐式文本图中的图节点包括已有文档对应的文档节点、以及已有文档包含的文档单词对应的单词节点;
具体的,隐式文本图可以是服务器预先就已经创建好的,服务器可以直接从数据库中获取到隐式文本图。隐式文本图可以是服务器通过数据库中的已有文档进行创建的。由于本申请所提供的数据处理方法可以应用在任意的文档检索的场景中,例如应用于文本相似度匹配的场景中或者应用于信息搜索等任务中。因此,用于创建隐式文本图的已有文档的类型可以根据实际应用场景决定,对此不做限制。
例如,若是想要将隐式文本图应用在医疗问答领域中,则用于创建隐式文本图的已有文档的文档类型可以是医疗相关的类型,例如已有文档可以是医疗学术类型的文章或者医生针对某种病症的回答文本等。再例如,若是想要将隐式文本图应用在科技信息检索的场景中,则用于创建隐式文本图的已有文档的文档类型可以是与科学技术相关的类型,例如已有文档可以是科技信息普及的相关文章或者科技论坛中的相关文章等。
隐式文本图中可以包括已有文档对应的文档节点、以及已有文档包含的文档单词的单词节点。其中,已有文档可以有多个(至少两个),一个已有文档对应于一个文档节点,一个文档单词对应于一个单词节点。其中,可以对已有文档进行分词,得到已有文档中包含的一个或者多个文档单词,例如,若已有文档为“头晕怎么治疗”,则对该已有文档进行分词,可以得到该已有文档中包含的文档单词“头晕”、文档单词“怎么”以及文档单词“治疗”。
隐式文本图中包含文档节点与单词节点之间的连接关系,还包含单词节点与单词节点之间的连接关系。其中,可以将隐式文本图中的文档节点和单词节点统称为隐式文本图中的图节点,如何构建隐式文本图中的图节点之间的连接关系的过程,可以参见下述步骤S203。通过隐式文本图中图节点之间的连接关系,可以体现每个已有文档自身的文档特征,还可以体现不同已有文档之间隐式的关联关系。
步骤S102,在隐式文本图中,获取目标文档包含的文档单词对应的单词节点,作为目标文档对应的目标邻居节点;
具体的,目标文档可以是任意一个文档,例如目标文档可以是用户在客户端录入的一个问题,如“皮肤过敏怎么办”,因此,服务器获取到的目标文档可以是客户端向其发送的。服务器可以对目标文档进行分词,得到目标文档中所包含的一个或者多个文档单词。服务器可以将隐式文本图中,与目标文档包含的文档单词相同的文档单词对应的单词节点,作为目标文档的邻居节点,可以将目标文档的邻居节点称之为目标邻居节点。
可以理解的是,由于隐式文本图是通过大量的已有文档所创建的,隐式文本图所包含的已有文档的文档单词具有完备性,因此,目标文档所包含的文档单词通常在隐式文本图中都是可以找到的,即目标文档所包含的文档单词对应的单词节点在隐式文本图中都是可以找到的。
步骤S103,从隐式文本图中获取目标邻居节点对应的文档单词的单词特征向量,根据隐式文本图,生成目标文档与目标邻居节点对应的文档单词之间的目标关联特征信息;
具体的,隐式文本图中还可以包括每个图节点对应的特征向量,每个图节点对应的特征向量,也就是每个图节点对应的已有文档或者文档单词的特征向量,其中,获取隐式文本图中每个图节点对应的特征向量的原理,也可以参见下述步骤S201。
其中,可以将隐式文本图中单词节点对应的特征向量,均称之为单词特征向量。服务器可以从隐式文本图中,获取到目标文档的目标邻居节点对应的文档单词的单词特征向量。
可以将目标文档与目标邻居节点对应的文档单词之间的关联特征信息,称之为目标关联特征信息,服务器还可以根据隐式文本图,生成目标文档与目标邻居节点对应的文档单词之间的目标关联特征信息,一个目标邻居节点与目标文档之间具有一个目标关联特征信息。此处以获取一个目标邻居节点与目标文档之间的目标关联特征信息的过程进行说明:服务器可以获取隐式文本图所属的已有文档(可以是多个)中,目标已有文档的文档数量,该目标已有文档指包含目标邻居节点(1个目标邻居节点)对应的文档单词的已有文档。例如,隐式文本图所属的已有文档中,有10个已有文档中都包含目标邻居节点对应的文档单词,则目标已有文档的文档数量就为10。
服务器还可以获取到目标邻居节点(1个目标邻居节点)对应的文档单词,在目标文档中的出现次数,进而服务器就可以将目标邻居节点对应的文档单词在目标文档中的出现次数,除以目标已有文档的文档数量,即可得到目标文档与目标邻居节点对应的文档单词之间的词频参数(TF-IDF的值)。该词频参数与目标邻居节点对应的文档单词在目标文档中的出现次数成正比,与目标已有文档的文档数量成反比。该词频参数的数值越大,表明对应的目标邻居节点所属的文档单词在目标文档中就越重要,该词频参数的数值越小,表明对应的目标邻居节点所属的文档单词在目标文档中就越不重要。通过该词频参数的计算方式也可以知道,若目标邻居节点对应的文档单词在越多的已有文档中出现了,则表明该目标邻居节点对应的文档单词在目标文档中越不重要。
服务器可以将目标文档与目标邻居节点对应的文档单词之间的词频参数,作为目标文档与目标邻居节点对应的文档单词之间的目标关联特征信息。一个目标邻居节点与目标文档之间对应于一个词频参数。
实际上,由于目标邻居节点对应的文档单词也包含在目标文档中,因此上述目标已有文档的文档数量还应该加上目标文档的文档数量(即加1),但是由于隐式文本图是通过大量的已有文档创建得到,因此,加上目标文档的文档数量(即加1)之后,对最终所得到的目标文档与目标邻居节点对应的文档单词之间的词频参数的影响不大,因此,仅通过隐式文本图来获取目标已有文档的文档数量即可。
其中,目标文档可以是隐式文本图所包含的已有文档,也可以是新文档(即不是隐式文本图所包含的已有文档)。可以理解为,不论目标文档是已有文档还是新文档,都可以保持隐式文本图不变。而在隐式文本图之外,模拟出了一个目标文档的文档节点,目标文档的文档节点与目标邻居节点之间具有连接关系(即有连边),目标文档与目标邻居节点对应的文档单词之间的目标关联特征信息,即为目标文档的文档节点与目标邻居节点之间的边权重。
步骤S104,将目标文档的文档特征向量、单词特征向量、以及目标关联特征信息,输入向量生成模型;向量生成模型,是通过隐式文本图中单词节点之间的连接关系、以及文档节点与单词节点之间的连接关系训练得到;隐式文本图中具有连接关系的图节点之间互为邻居节点;隐式文本图中互为邻居节点的图节点之间具备对应的关联特征信息;
具体的,服务器还可以获取到目标文档的特征向量,获取目标文档的特征向量的原理与获取图节点对应的特征向量的原理相同,具体也可以参见下述步骤S201。可以将目标文档的特征向量,称之为目标文档的文档特征向量。
服务器可以将上述获取到的目标文档的文档特征向量、目标文档的目标邻居节点的单词特征向量、以及目标文档与目标邻居节点对应的文档单词之间的目标关联特征信息,输入向量生成模型。该向量生成模型用于生成文档的向量表示,该向量表示也就是文档的文档检索向量。
该向量生成模型是通过上述隐式文本图训练得到,隐式文本图中具有连接关系的图节点之间互为邻居节点,隐式文本图中互为邻居节点的图节点之间具备其对应的关联特征信息,该关联特征信息就可以理解为是具有连接关系的图节点之间连边的边权重。其中,如何获取隐式文本图中具有连接关系的图节点之间的关联特征信息的过程,可以参见下述步骤S201,如何通过隐式文本图训练得到向量生成模型的过程,也请参见下述图9对应的实施例中的步骤S201-步骤S207。
请参见图4,图4是本申请提供的一种隐式文本图的结构示意图。如图4所示,隐式文本图中可以包括文档节点1、文档节点2、文档节点3、单词节点1、单词节点2、单词节点3、单词节点4、单词节点5和单词节点6。其中,文档节点1与单词节点1、单词节点2和单词节点3具有连接关系,表明文档节点1的邻居节点包括单词节点1、单词节点2和单词节点3。文档节点3与单词节点2、单词节点3和单词节点6具有连接关系,表明文档节点3的邻居节点包括单词节点2、单词节点3和单词节点6。文档节点2与单词节点1、单词节点4和单词节点5之间具有连接关系,表明文档节点2的邻居节点包括单词节点1、单词节点4和单词节点5。
其中,单词节点1与文档节点1和文档节点2之间具有连接关系,表明单词节点1的邻居节点包括文档节点1和文档节点2。单词节点2与文档节点1、单词节点3和文档节点3之间具有连接关系,表明单词节点2的邻居节点包括文档节点1、单词节点3和文档节点3。单词节点3与文档节点1、单词节点2和文档节点3之间具有连接关系,表明单词节点3的邻居节点包括文档节点1、单词节点2和文档节点3。单词节点4与文档节点2之间具有连接关系,表明单词节点4的邻居节点包括文档节点2。单词节点5与文档节点2之间具有连接关系,表明单词节点5的邻居节点包括文档节点2。单词节点6与文档节点3之间具有连接关系,表明单词节点6的邻居节点包括文档节点3。此外,每个图节点的邻居节点均还可以包括自己。
其中,具有连接关系的图节点之间具有对应的关联特征信息,此处,文档节点1与单词节点1之间具有关联特征信息1;文档节点1与单词节点2之间具有关联特征信息2;文档节点1与单词节点3之间具有关联特征信息3;单词节点2与单词节点3之间具有关联特征信息4;单词节点3与文档节点3之间具有关联特征信息5;单词节点2与文档节点3之间具有关联特征信息6;文档节点3与单词节点6之间具有关联特征信息7;单词节点5与文档节点2之间具有关联特征信息8;单词节点4与文档节点2之间具有关联特征信息9;单词节点1与文档节点2之间具有关联特征信息10。此外,每个图节点与自己之间也可以对应有一个关联特征信息,例如该关联特征信息可以固定设置为1。
步骤S105,在向量生成模型中,生成目标文档的文档检索向量;目标文档的文档检索向量用于检索与目标文档相似的文档;
具体的,向量生成模型可以根据所输入的目标文档的文档特征向量、目标文档的目标邻居节点的单词特征向量、以及目标文档与目标邻居节点对应的文档单词之间的目标关联特征信息,生成每个目标邻居节点分别针对目标文档的节点影响权重。该节点影响权重越大,表明对应的目标邻居节点所属的文档单词在目标文档中就越重要,反之,该节点影响权重越小,表明对应的目标邻居节点所属的文档单词在目标文档中就越不重要。
其中,还可以设置向量生成模型的算法,将目标文档对应的文档节点也作为目标文档自己的邻居节点,目标文档与目标文档自己之间的关联特征信息可以设置为1,因此,向量生成模型还可以生成目标文档自己对应的节点影响权重。该节点影响权重可以理解为是向量生成模型为目标文档的每个邻居节点打的分数。其中,如何通过向量生成模型生成节点影响权重的具体原理,可以参见下述步骤S205。
向量生成模型可以通过目标文档的每个邻居节点分别对应的节点影响权重,对每个邻居节点分别对应的特征向量进行加权求和(即相乘再求和),即可得到一个总的向量,可以将该总的向量称之为参考总向量。例如,目标邻居节点对应的单词特征向量包括单词特征向量1和单词特征向量2,单词特征向量1对应的节点影响权重为节点影响权重a1,单词特征向量对应的节点影响权重为节点影响权重a2,目标文档的文档特征向量对应的节点影响权重为节点影响权重a3,则目标文档对应的参考总向量就为:单词特征向量1*节点影响权重a1+单词特征向量2*节点影响权重a2+文档特征向量*节点影响权重a3。
向量生成模型可以将上述目标文档对应的参考总向量,构建为一个高斯分布,该高斯分布为一个高维的高斯分布,因此,该高斯分布的均值是一个向量。向量生成模型可以输出该高斯分布的均值(可以称之为均值向量),作为目标文档的文档检索向量。
请参见图5,图5是本申请提供的一种获取文档检索向量的场景示意图。首先,如框100c所示,服务器可以获取到目标文档的文档检索向量、目标邻居节点对应的文档单词的单词特征向量、以及目标文档与目标邻居节点对应的文档单词之间的关联特征信息。服务器可以将框100c中获取到的数据输入到向量生成模型101c,向量生成模型101c可以根据服务器所输入的数据,生成每个目标邻居节点对应的权重。如框102c所示,若一共有n个目标邻居节点,则向量生成模型可以生成目标邻居节点1对应的节点影响权重1、目标邻居节点2对应的节点影响权重2、……以及目标邻居节点n对应的节点影响权重n。实际上,向量生成模型101c还可以将模拟的目标文档对应的文档节点,作为目标文档自己的邻居节点,因此,向量生成模型101c还可以生成目标文档对应的节点影响权重。其中,在生成目标文档的节点影响权重时,可以以“1”作为目标文档与目标文档自己之间的关联特征信息。
接着,向量生成模型101c还可以根据所生成的每个节点影响权重,对对应的特征向量进行加权。如框103c所示,向量生成模型101c可以使用节点影响权重1对目标邻居节点1对应的单词特征向量进行加权(即相乘),得到加权向量1;向量生成模型101c还可以使用节点影响权重2对目标邻居节点2对应的单词特征向量进行加权(即相乘),得到加权向量2;……;向量生成模型101c还可以使用节点影响权重n对目标邻居节点n的单词特征向量进行加权(即相乘),得到加权向量n。实际上,向量生成模型还可以使用目标文档对应的节点影响权重,对目标文档的文档特征向量进行加权(即相乘),得到目标文档对应的加权向量。
如框104c所示,向量生成模型101c可以对上述得到的加权向量1、加权向量2、……、加权向量n以及目标文档对应的加权向量进行求和,即可得到参考总向量。如框105c所示,向量生成模型101c可以将参考总向量构建为一个高维的高斯分布,该高维的高斯分布的均值向量即为目标文档的文档检索向量。如框106c所示,向量生成模型101c可以输入该高斯分布的均值向量,作为目标文档的文档检索向量。
同样的,可以将隐式文本图中的单词节点对应的文档单词也作为文档,服务器可以在隐式文本图中,获取到与每个图节点(包括文档节点和单词节点)具有连接关系的图节点,分别作为每个图节点的邻居节点。进而服务器可以通过与获取目标文档同样的方式,获取到每个图节点对应的文档检索向量,具体包括已有文档的文档检索向量以及已有文档包含的文档单词的文档检索向量。
服务器可以直接获取目标文档的文档检索向量与已有文档的文档检索向量之间的向量距离,服务器可以将所属的文档检索向量与目标文档的文档检索向量之间的向量距离小于向量距离阈值的已有文档,作为目标文档的相似文档。若目标文档是由客户端获取到的用户录入的一个问题,则目标文档的相似文档就可以是该问题的回答。服务器可以将获取到的目标文档的相似文档发送给客户端,客户端可以在客户端页面上向用户展示其所录入的问题的回答(即目标文档的相似文档)。
更多的,由于文档检索向量的维度通常较高,若直接获取文档检索向量之间的向量距离,来得到目标文档的相似文档,会使得检索速度较慢,因此,服务器可以将上述目标文档的文档检索向量和已有文档的文档检索向量,都转换为哈希码(可以称之为文档哈希码)。将文档检索向量转换为文档哈希码,也就是将文档检索向量从高维向量空间,映射到了低维的汉明空间。因此,通过计算目标文档的文档哈希码与已有文档的文档哈希码之间的汉明距离,可以快速获取到目标文档的相似文档。
其中,目标文档的文档哈希码与已有文档的文档哈希码之间的汉明距离,可以表征目标文档与已有文档之间的文档相似度,汉明距离越小,表明文档相似度越大,反之,汉明距离越大,表明文档相似度越小。因此,服务器可以将所属的文档哈希码与目标文档的文档哈希码之间的汉明距离小于或者等于汉明距离阈值的已有文档,作为目标文档的相似文档。其中,汉明距离阈值可以自行进行设置。
其中,目标文档可以是文档检索客户端获取到的询问文本信息,该询问文本信息可以是文档检索客户端获取到的用户录入的想要检索相关资料的文本信息。因此,服务器获取到的目标文档的相似文档,可以是与该询问文本信息相关的资料,服务器可以将目标文档的相似文档发送给文档检索客户端。文档检索端在获取到目标文档的相似文档后,可以在客户端页面中,对询问文本信息和目标文档的相似文档进行关联输出,输出的方式可以是进行文档显示,也可以是进行文档语音播放。
请参见图6,图6是本申请提供的一种终端页面的页面示意图。如图6所示,终端页面101d和终端页面108d均为终端设备100d的终端页面。终端设备100d可以获取到用户在终端页面101d的检索框111d中所录入的文本信息,此处终端设备100d获取到用户在检索框111d中录入的文本信息为“皮肤过敏要注意什么”。终端设备100d可以将所获取到的文本信息“皮肤过敏要注意什么”发送给服务器。如框102d所示,服务器在获取到文本信息“皮肤过敏要注意什么”之后,可以将该文本信息“皮肤过敏要注意什么”作为目标文档。
服务器可以通过隐式文本图获取到目标文档的目标邻居节点,进而服务器就可以将目标文档的文档检索向量、目标文档的目标邻居节点对应的单词特征向量、以及目标文档与目标邻居节点之间的关联特征信息,输入向量生成模型103d。通过向量生成模型103d即可生成目标文档的文档检索向量104d。将该文档检索向量104d映射到汉明空间,可以得到目标文档的文档哈希码105d。
服务器可以计算目标文档的文档哈希码105d与已有文档的文档哈希码之间的汉明距离。服务器可以将对应的汉明距离小于汉明距离阈值(可以自行设置)的已有文档,作为目标文档的相似文档107d。服务器可以将相似文档107d返回给终端设备100d,终端设备100d可以在终端页面108d中对目标文档和其相似文档107d进行关联显示输出。如终端页面108d所示,目标文档的相似文档107d可以包括文档109d和文档110d。其中,文档109d具体为平台医疗团队针对问题“孩子皮肤过敏吃什么好”的回答,文档110d具体为任职于xxx医院的副主任医师张一针对问题“皮肤过敏涂什么”的回答。
下面描述如何根据目标文档的文档检索向量,生成目标文档的文档哈希码。可以理解的是,生成已有文档的文档哈希码的方式与生成目标文档的文档哈希码的方式相同:
还可以将上述得到的每个图节点对应的文档检索向量,均称之为参考检索向量,服务器可以通过所有参考检索向量得到一个矩阵,该矩阵中每一行就为一个参考检索向量。可以通过该矩阵来生成目标文档的哈希码,请参见下述。
目标文档的文档检索向量中可以包括至少两个元素位置分别对应的元素值,其中,目标文档的文档检索向量的维度是多少,目标文档的文档检索向量中的元素位置就有几个。例如,若目标文档的文档检索向量的维度为1*n,表明目标文档的文档检索向量中一共包括n个元素,一个元素对应于一个元素位置,一个元素对应有一个元素值,因此,一共有n个元素位置。若目标文档的文档检索向量为[4,5,6],则该文档检索向量包括3个元素,即包括3个元素位置分别对应的元素值,第1个元素位置对应的元素值为4,第2个元素位置对应的元素值为5,第3个元素位置对应的元素值为6。
同样,参考检索向量的维度与目标文档的文档检索向量的维度是相同的,参考检索向量中也包括至少两个元素位置分别对应的元素值。由参考检索向量构成的矩阵中的每一列分别对应于一个元素位置,换句话说,该矩阵中的同一列中的元素包括所有参考检索向量中同一元素位置对应的元素值。例如,该矩阵中的第1列中的元素包括所有参考检索向量中第1个元素位置对应的元素值。
因此,可以获取由参考检索向量构成的矩阵中,每一列所包含的元素值中的中位数,一个元素位置对应有一个中位数。该中位数也就是将该矩阵中一列中的元素值按照从大到小或者从小到大的顺序进行排列之后,处于中间位置的元素值。若处于中间位置的元素值有两个,则中位数就为该两个元素值的平均值。因此通过上述过程,就可以获取到每个元素位置分别对应的中位数。
其中,需要进行说明的是,在得到每个元素位置分别对应的中位数的过程中,在计算每个图节点对应的文档检索向量时,都是在隐式文本图中获取与每个图节点具有连接关系的图节点作为其邻居节点来进行计算的。因此,对于隐式文本图中的单词节点而言,其邻居节点可以有多个,该多个邻居节点可以包括其他单词节点,也可以包括文档节点。而若是目标文档中的文档单词只包含某个单词节点对应的文档单词时,目标文档的邻居节点就只有其所包含的这个文档单词对应的1个单词节点。
服务器可以对目标文档的文档检索向量中每个元素位置分别对应的元素值,与每个元素位置分别对应的中位数之间的大小进行对比,若对比出目标文档的文档检索向量中的某个元素位置对应的元素值,大于该元素位置所对应的中位数,则可以将该元素位置标记为第一码值,该第一码值可以为“1”。反之,若对比出目标文档的文档检索向量中的某个元素位置对应的元素值,小于或者等于该元素位置所对应的中位数,则可以将该元素位置标记为第二码值,该第二码值可以为“0”。因此,服务器可以根据每个元素位置分别对应的第一码值或者第二码值,生成目标文档的文档哈希码。目标文档的文档哈希码就为由第二码值“0”和第一码值“1”构成的字符串。两个文档哈希码之间的汉明距离就为该两个文档哈希码之间相同元素位置处的元素值不同的个数。例如,若文档哈希码1为“01101”,文档哈希码2为“11100”,则文档哈希码1与文档哈希码2中第2个元素位置和第3个元素位置处的元素值都为1,且第4个元素位置处的元素值都为0。而文档哈希码1的第1个元素位置处的元素值为0,不同于文档哈希码2的第1个元素位置处的元素值为1。文档哈希码1的第5个元素位置处的元素值为1,不同于文档哈希码2的第5个元素位置处的元素值为0。因此,文档哈希码1和文档哈希码2中有两个元素位置处的元素值不同,文档哈希码1与文档哈希码2之间的汉明距离就为2。
请参见图7,图7是本申请提供的一种获取文档哈希码的场景示意图。矩阵123e是根据所有参考检索向量所得到的,矩阵123e中包括3个参考检索向量,分别为矩阵123e第1行的参考检索向量106e、第2行的参考检索向量107e、以及第3行的参考检索向量108e。
矩阵123e中的第1列中的元素值包括参考检索向量106e中第1个元素位置的元素值0.1、参考检索向量107e中第1个元素位置的元素值0.7、以及参考检索向量108e中第1个元素位置的元素值1.3。矩阵123e中的第2列中的元素值包括参考检索向量106e中第2个元素位置的元素值0.2、参考检索向量107e中第2个元素位置的元素值1.8、以及参考检索向量108e中第2个元素位置的元素值1.4。
矩阵123e中的第3列中的元素值包括参考检索向量106e中第3个元素位置的元素值0.3、参考检索向量107e中第3个元素位置的元素值0.9、以及参考检索向量108e中第3个元素位置的元素值1.5。矩阵123e中的第4列中的元素值包括参考检索向量106e中第4个元素位置的元素值0.4、参考检索向量107e中第4个元素位置的元素值1.0、以及参考检索向量108e中第4个元素位置的元素值1.6。
矩阵123e中的第5列中的元素值包括参考检索向量106e中第5个元素位置的元素值0.5、参考检索向量107e中第5个元素位置的元素值1.1、以及参考检索向量108e中第5个元素位置的元素值1.7。矩阵123e中的第6列中的元素值包括参考检索向量106e中第6个元素位置的元素值1.6、参考检索向量107e中第6个元素位置的元素值1.2、以及参考检索向量108e中第6个元素位置的元素值1.8。
因此,对矩阵123e的第1列中的元素值按照从小到大排列可以得到序列109e,可以将序列109e中处于中间位置的元素值0.7,作为第1个元素位置对应的中位数115e。对矩阵123e的第2列中的元素值按照从小到大排列可以得到序列110e,可以将序列110e中处于中间位置的元素值1.4,作为第2个元素位置对应的中位数116e。对矩阵123e的第3列中的元素值按照从小到大排列可以得到序列111e,可以将序列111e中处于中间位置的元素值0.9,作为第3个元素位置对应的中位数117e。
对矩阵123e的第4列中的元素值按照从小到大排列可以得到序列112e,可以将序列112e中处于中间位置的元素值1.0,作为第4个元素位置对应的中位数118e。对矩阵123e的第5列中的元素值按照从小到大排列可以得到序列113e,可以将序列113e中处于中间位置的元素值1.1,作为第5个元素位置对应的中位数119e。对矩阵123e的第6列中的元素值按照从小到大排列可以得到序列114e,可以将序列114e中处于中间位置的元素值1.2,作为第6个元素位置对应的中位数120e。
接着,可以对目标文档的文档检索向量121e中每个元素值与对应元素位置的中位数进行对比。文档检索向量121e中第1个元素位置的元素值为0.6,小于所对应的中位数0.7,则将第1个元素位置标记为第二码值0;文档检索向量121e中第2个元素位置的元素值为1.2,小于所对应的中位数1.4,则将第2个元素位置标记为第二码值0;文档检索向量121e中第3个元素位置的元素值为1.5,大于所对应的中位数0.9,则将第3个元素位置标记为第一码值1;文档检索向量121e中第4个元素位置的元素值为0.8,小于所对应的中位数1.0,则将第4个元素位置标记为第二码值0;文档检索向量121e中第5个元素位置的元素值为1.7,大于所对应的中位数1.1,则将第5个元素位置标记为第一码值1;文档检索向量121e中第6个元素位置的元素值为1.1,小于所对应的中位数1.2,则将第6个元素位置标记为第二码值0。
因此,最终所得到的目标文档的文档哈希码就为文档哈希码122e(即字符串001010)。
请参见图8,图8是本申请提供的一种获取文档哈希码的场景示意图。如图8所示,矩阵100f是通过所有参考检索向量构成的,矩阵100f中包括参考检索向量104f,参考检索向量105f、参考检索向量106f和参考检索向量107f。
对矩阵100f中第1列的元素值按照从小到大的顺序进行排列,可以得到序列108f。如框111f所示,序列108f中处于中间位置的元素值包括元素值0.6和元素值0.8,因此,如框114f所示,第1个元素位置对应的中位数就为(0.6+0.8)/2等于0.7。对矩阵100f中第2列的元素值按照从小到大的顺序进行排列,可以得到序列109f。如框112f所示,序列109f中处于中间位置的元素值包括元素值1.4和元素值1.8,因此,如框115f所示,第2个元素位置对应的中位数就为(1.4+1.8)/2等于1.6。对矩阵100f中第3列的元素值按照从小到大的顺序进行排列,可以得到序列110f。如框113f所示,序列110f中处于中间位置的元素值包括元素值0.7和元素值0.9,因此,如框116f所示,第3个元素位置对应的中位数就为(0.7+0.9)/2等于0.8。
因此,可以对目标文档的文档检索向量117f中的每个元素值与对应元素位置处的中位数进行对比。文档检索向量117f中第1个元素位置的元素值0.8大于对应元素位置处的中位数0.7,则可以对第1个元素位置标记为第一码值1(如框118f所示);文档检索向量117f中第2个元素位置的元素值1.3小于对应元素位置处的中位数1.6,则可以对第2个元素位置标记为第二码值0(如框119f所示);文档检索向量117f中第3个元素位置的元素值0.9大于对应元素位置处的中位数0.8,则可以对第3个元素位置标记为第一码值1(如框120f所示)。
因此,最终根据文档检索向量117f生成的目标文档的文档哈希码就为文档哈希码121f。
本申请可以通过包括已有文档对应的文档节点和该已有文档所包含的文档单词对应的单词节点的隐式文本图,来训练得到向量生成模型。由于隐式文本图中具有文档节点与单词节点之间的连接关系、以及不同单词节点之间的连接关系,其中,文档节点与单词节点之间的连接关系可以包含已有文档自身的文档特征;单词节点与单词节点之间的连接关系可以表征不同已有文档之间的关联关系。因此,通过本申请所提供的隐式文本图来训练得到向量生成模型,可以使得该向量生成模型不仅可以学习到已有文档本身的文档特征,也可以学习到不同已有文档之间的关联关系,因此,通过该向量生成模型可以生成目标文档更准确的文档检索向量,进而通过该目标文档的文档检索向量可以检索得到与目标文档更相似的其他文档。
请参见图9,图9是本申请提供的一种数据处理方法的流程示意图,该数据处理方法的执行主体可以是服务器,也可以终端设备,还可以同时包括服务器和终端设备。此处以该数据处理方法的执行主体为服务器(可以是任意一个服务器或者是多个服务器构成的服务器集群)为例,进行本申请实施例的具体描述。如图9所示,该方法可以包括:
步骤S201,获取包括图节点的的隐式文本图;隐式文本图中的图节点,包括至少两个已有文档对应的文档节点、以及至少两个已有文档包含的文档单词对应的单词节点;隐式文本图中,包括至少两个文档节点与至少两个单词节点之间的连接关系、以及至少两个单词节点相互之间的连接关系;具有连接关系的图节点之间具有对应的关联特征信息;
具体的,该隐式文本图即为上述图3对应的实施例中步骤S101中的隐式文本图。该隐式文本图中可以包括至少两个已有文档分别对应的文档节点,以及该至少两个已有文档所包含的文档单词分别对应的单词节点。在隐式文本图中,一个文档节点可以与该文档节点所属的已有文档包含的文档单词对应的单词节点具有连接关系。而单词节点除了与文档节点之间可以具有连接关系之外,单词节点与单词节点之间还可以具有连接关系,而不同单词节点之间的连接关系,是基于不同单词节点分别对应的文档单词在所有已有文档中的共现概率所确定的。如何确定单词节点与单词节点之间是否具有连接关系的具体过程,可以参见下述步骤S203。
其中,可以理解的是,具有连接关系的图节点之间也具有其对应的关联特征信息,由于具有连接关系的图节点之间有连边(连接的边),因此,具有连接关系的图节点之间的关联特征信息,可以理解为具有连接关系的图节点之间的连边的权重,一条连边对应于一个关联特征信息。如何确定具有连接关系的图节点之间的关联特征信息的过程,也可以参见下述步骤S203。
步骤S202,在隐式文本图中的文档节点和单词节点中获取样本节点;
具体的,服务器可以在隐式文本图中获取到样本节点,该样本节点可以是隐式文本图中任意一个文档节点或者任意一个单词节点。可以理解的是,服务器可以依次在隐式文本图中获取样本节点,并通过每个获取到的样本节点来训练初始向量生成模型。换句话说,隐式文本图中每个图节点都会作为样本节点,对初始向量生成模型进行训练。通过每个样本节点来训练初始向量生成模型的原理相同,因此,下述以一个样本节点对初始向量生成模型进行训练的过程为例进行说明。
步骤S203,将隐式文本图中,与样本节点具有连接关系的图节点,确定为样本节点的邻居样本图节点;
具体的,服务器可以将与样本节点具有连接关系的图节点,作为样本节点的邻居节点,可以将样本节点的邻居节点称之为邻居样本图节点。下面描述如何计算样本节点与其邻居节点之间的关联特征信息,可以理解的是,计算任意两个图节点之间的关联特征信息的原理,与计算样本节点与其邻居节点之间的关联特征信息的原理相同。
其中,若样本节点为隐式文本图中的单词节点时,样本节点的邻居样本图节点可以为单词节点也可以为文档节点。若邻居样本图节点也为隐式文本图中的单词节点时,可以计算样本节点与其邻居样本图节点之间的互信息(即PMI,可以称之为单词互信息),作为样本节点与其邻居样本图节点之间的关联特征信息。可以将样本节点记为节点i,将邻居样本图节点记为节点j,则计算节点i与节点j之间的互信息PMI(i,j)的过程,请参见下述公式(1):
PMI(i.j)=log pij-log(pipj) (1)
其中,pij表示节点i对应的文档单词与节点j对应的文档单词在所有已有文档中的共现概率。例如,若同时包含节点i对应的文档单词与节点j对应的文档单词的已有文档的数量为n1,所有已有文档的数量为n2,则pij可以等于n1/n2。pi表示节点i对应的文档单词在所有已有文档中的出现概率,可以将节点i对应的文档单词在所有已有文档中的出现概率称之为第一出现概率。pj表示节点j对应的文档单词在所有已有文档中的出现概率,可以将节点j对应的文档单词在所有已有文档中的出现概率称之为第二出现概率。因此,将上述共现概率、第一出现概率和第二出现概率带入上述公式(1),即可得到节点i与节点j之间的互信息PMI(i,j)。
上述过程即为计算单词节点与单词节点之间的关联特征信息的过程。样本节点与邻居样本图节点之间的单词互信息,可以表征样本节点对应的文档单词与邻居样本图节点对应的文档单词之间的关联程度,单词互信息的数值越大,表明关联程度越大,单词互信息的数值越小,表明关联程度越小。
其中,若样本节点为隐式文本图中的单词节点,且邻居样本图节点为隐式文本图中的文档节点,则服务器可以计算样本节点与邻居样本图节点之间的TF-IDF值(词频参数),作为样本节点与邻居样本图节点之间的关联特征信息。因此,若将样本节点记为节点i,将邻居样本图节点记为节点j,则可以将样本节点与邻居样本图节点之间的词频参数记为TF-IDF(i,j)。其中,样本节点与邻居样本图节点之间的词频参数,可以表征样本节点对应的文档单词在邻居样本图节点对应的已有文档中的重要程度,词频参数越大,表明越重要,词频参数越小,表明越不重要。
具体为,服务器可以获取样本节点对应的文档单词在邻居样本图节点对应的已有文档中的出现次数。服务器还可以获取所有已有文档中目标已有文档的文档数量,该目标已有文档指包含样本节点对应的文档单词的已有文档。服务器可以将样本节点对应的文档单词在邻居样本图节点对应的已有文档中的出现次数,除以目标已有文档的文档数量,所得到的值,作为样本节点与邻居样本图节点之间的关联特征信息。
例如,若样本节点对应的文档单词在邻居样本图节点对应的已有文档中的出现次数为m1,包含样本节点对应的文档单词的目标已有文档的文档数量为m2,则样本节点与邻居样本图节点之间的关联特征信息为m1/m2。
上述过程即为计算单词节点与文档节点之间的关联特征信息的过程。
由于可以理解为,隐式文本图中每个图节点均与自己具有连接关系,因此,每个图节点的邻居节点均可以包括自己,因此,可以设置每个图节点与自己之间的关联特征信息,例如都设置为1。
其中,需要进行说明的是,可以计算隐式文本图中任意两个单词节点之间的单词互信息,若两个单词节点之间的单词互信息大于0,则可以建立该两个单词节点之间的连接关系,若两个单词节点之间的单词互信息小于或者等于0,则该两个单词节点之间不具有连接关系。因此,可以理解为,隐式文本图中具有连接关系的图节点之间的关联特征信息均大于0。
若将隐式文本图中所有文档节点构成的集合记为Vd,将隐式文本图中所有单词节点构成的集合记为Vw,则可以将样本节点i与其邻居样本图节点j之间的关联特征信息aij表示为下述公式(2):
其中,公式(2)中的第1行表示样本节点和邻居样本图节点都为隐式文本图中的单词节点时,样本节点与邻居样本图节点之间的关联特征信息;公式(2)中的第2行表示样本节点为隐式文本图中的单词节点,且邻居样本图节点为隐式文本图中的文档节点时,样本节点与邻居样本图节点之间的关联特征信息;可以理解的是,样本节点为隐式文本图中的文档节点,且邻居样本图节点为隐式文本图中的单词节点时,样本节点与邻居样本图节点之间的关联特征信息也为公式(2)中第2行所表示的词频参数;公式(2)中的第3行样本节点与样本节点自己之间的关联特征信息为1;公式(2)中的第4行表示除了公式(1)中前3行的情况之外的其他情况图节点之间的关联特征信息都为0,即没有关联特征信息。
因此,通过上述过程即可知道,隐式文本图中哪些图节点之间具有连接关系,哪些图节点之间不具有连接关系。
此外,服务器还可以计算每个图节点对应的已有文档或者文档单词的特征向量。若图节点为文档节点,则图节点对应于其所属的已有文档;若图节点为单词节点,则图节点对应于其所属的文档单词。其中,可以将每个图节点对应的已有文档或者文档单词的TF-IDF(词频-逆文档频率)特征向量,作为每个图节点对应的特征向量,可以将单词节点对应的特征向量称之为单词特征向量。得到每个图节点对应的TF-IDF特征向量时,可以将文档单词也看作是包含一个文档单词的文档。其中,某个文档的TF-IDF特征向量,是通过该文档中所包含的每个文档单词在该文档中的出现次数得到,TF-IDF特征向量表征了该文档中所包含的每个文档单词在该文档中的重要性。
可选的,还可以将每个图节点对应的已有文档或者文档单词的词嵌入向量(可以通过词向量模型word2evc或者词向量模型GLOVE得到),作为每个图节点对应的特征向量。或者,可选的,还可以将每个图节点对应的已有文档或者文档单词的bm25(一种用来评价搜索词和文档之间相关性的算法)特征向量,作为每个图节点对应的特征向量。
其中,可以理解的是,上述图3对应的实施例中目标文档的文档特征向量的获取方式,与此处图节点对应的特征向量的获取方式相同,例如目标文档的文档特征向量可以是目标文档的TF-IDF特征向量,或者是目标文档的词嵌入向量,或者是目标文档的bm25特征向量。
隐式文本图中包括了已有文档对应的文档节点、已有文档包含的文档单词对应的单词节点、每个图节点对应的特征向量以及具有连接关系的任意两个图节点之间的关联特征信息(即边权重),因此,可以将隐式文本图表示为下述公式(3)的形式:
G=(V,X,A) (3)
其中,公式(3)中的V表示隐式文本图中的所有的图节点的集合,V=Vw+Vd。公式(3)中的X表示由每个图节点对应的特征向量构成的特征矩阵,X中的一行就代表一个图节点对应的特征向量,X的维度就为1*(所有图节点的数量)。公式(3)中的A表示邻接矩阵,A中包含了任意两个图节点之间的关联特征信息(边权重),在A中没有连接关系的图节点之间的关联特征信息就为0。
步骤S204,将隐式文本图中,样本节点对应的样本特征向量、邻居样本图节点对应的样本特征向量、以及样本节点与邻居样本图节点之间的关联特征信息,输入初始向量生成模型;
具体的,可以将隐式文本图中样本节点对应的特征向量称之为样本节点的样本特征向量,可以将隐式文本图中邻居样本图节点的特征向量称之为邻居样本图节点的样本特征向量。
服务器可以从隐式文本图中获取到样本节点对应的样本特征向量、邻居样本图节点对应的样本特征向量、以及样本节点与邻居样本图节点之间的关联特征信息。服务器可以将从隐式文本图中获取到的样本节点对应的样本特征向量、邻居样本图节点对应的样本特征向量、以及样本节点与邻居样本图节点之间的关联特征信息,输入初始向量生成模型。该初始向量生成模型的模型结构可以是CNN(卷积神经网络)模型结构、RNN(循环神经网络)模型结构或者其他任意线性结构的模型结构。
步骤S205,基于初始向量生成模型,生成样本节点对应的文档检索向量;
具体的,初始向量生成模型可以根据服务器所输入的样本节点对应的样本特征向量、邻居样本图节点对应的样本特征向量、以及样本节点与邻居样本图节点之间的关联特征信息,生成样本节点对应的文档检索向量。样本节点对应的文档检索向量也就是样本节点对应的已有文档或者文档单词的文档检索向量。其中,初始向量生成模型生成样本节点对应的文档检索向量的过程,与上述图3对应的实施例中向量生成模型生成目标文档的文档检索向量的过程相同,请参见下述的具体描述。
首先,本申请可以采用基于注意力机制的图卷积神经网络的方法来得到每个邻居样本图节点的节点影响权重,具体为初始向量生成模型可以生成样本节点的每个邻居样本图节点分别对应的节点影响权重,该节点影响权重表征了邻居样本图节点对样本节点的重要程度,或者,换种说法,该节点影响权重可以表征邻居样本图节点与样本节点之间的关联程度。节点影响权重越大,表明关联程度越大,节点影响权重越小,表明关联程度越小。每个邻居样本图节点对应的节点影响权重可以理解为是初始向量生成模型基于注意力机制的方法,获取到的每个邻居样本图节点的节点参数。
但是需要进行说明的是,使用注意力机制的方法来得到每个邻居样本图节点的节点参数只是本申请提供的可选的方法之一,在其他场景中,还可以通过池化的方法或者计算均值的方法来得到每个邻居样本图节点的节点参数。
假设样本节点的邻居样本图节点包括节点j,将样本节点记为节点i,则初始向量生成模型生成样本节点i的邻居样本图节点j的节点影响权重αj的过程可以参见下述公式(4):
其中,公式(4)中的exp表示指数函数,ReLU表示激活函数,xi表示样本节点i对应的特征向量,xj表示样本节点的邻居样本图节点j对应的特征向量。Ni表示样本节点i所有邻居样本图节点的集合,aij表示样本节点i与邻居样本图节点j之间的关联特征信息,aik表示样本节点i与邻居样本图节点k之间的关联特征信息。公式(4)中的参数a和参数W都是初始向量生成模型需要学习的模型参数。
公式(4)中分母部分表示初始向量生成模型通过softmax层(分类层),所生成的所有邻居样本图节点分别对应的分数之和。公式(4)中分子部分表示初始向量生成模型通过softmax层(分类层),所生成的邻居样本图节点j对应的分数。因此,可以理解的是,初始向量生成模型最终所生成的样本节点与每个邻居样本图节点之间的节点影响权重是通过归一化的,换句话说,所有邻居样本图节点分别对应的节点影响权重之和等于1。
因此,通过上述公式(4)所描述的原理,即可得到样本节点的每个邻居样本图节点分别对应的节点影响权重。
接着,初始向量生成模型可以通过每个邻居样本图节点分别对应的节点影响权重,对每个邻居样本图节点分别对应的特征向量进行加权求和(即相乘求和),即可得到样本节点对应的参考总向量。例如,若邻居样本图节点一共包括邻居样本图节点1和邻居样本图节点2,邻居样本图节点1对应的节点影响权重为q1,邻居样本图节点2对应的节点影响权重为q2,则参考总向量就为邻居样本图节点1对应的特征向量乘上q1再加上邻居样本图节点2对应的特征向量乘上q2。
为了使得初始向量生成模型在用于生成文档的哈希码时,该哈希码蕴含隐式文本图的结构信息,因此,在得到样本节点对应的参考总向量之后,该参考总向量可以理解为是后验分布,可以构建该后验分布对应的高斯分布。该高斯分布为一个高维的高斯分布,因此该高斯分布的均值为一个向量,可以将该高斯分布的均值称之为均值向量,该高斯分布的均值向量就是初始向量生成模型所生成的样本节点对应的文档检索向量。在构建参考总向量所属的高斯分布时,获取该高斯分布的均值和方差的具体过程还可以参见下述公式(5):
其中,μφ即为构建的高斯分布的均值,即为构建的高斯分布的方差,αj即为邻居样本图节点j的节点影响权重,参数W与上述公式(4)中的参数W相同,都是初始向量生成模型需要学习的模型参数,xj表示样本节点的邻居样本图节点j对应的特征向量,公式(5)中的/>部分即为加权求和得到的参考总向量。为了便于模型计算,可以将所构建的高斯分布的协方差(即方差)表示为对角矩阵diag,因此,最终得到的高斯分布可以表示为下述公式(6)的形式:
其中,公式(6)中的z为高斯分布中的未知量。
其中,上述获取到样本节点对应的文档检索向量的过程可以称之为推断过程,由上述图3对应的实施例中的描述可知,在应用通过训练初始向量生成模型所得到的向量生成模型时,可以只有推断过程,即只有生成目标文档的文档检索向量的过程。而在训练初始向量生成模型时,不仅包括获取样本节点对应的文档检索向量的推断过程,还包括生成过程,该生成过程为通过所生成的文档检索向量这一结果,反向生成样本节点的邻居节点以及样本节点对应的已有文档或者文档单词的过程,具体请参见下述步骤S206。
步骤S206,获取样本节点对应的文档检索向量的向量准确评估参数;
具体的,接下来,初始向量生成模型可以获取上述所生成的样本节点对应的文档检索向量的向量准确评估参数,该向量准确评估参数表征了初始向量生成模型所生成的样本节点的文档检索向量的准确性,该向量准确评估参数可以用于对初始向量生成模型的模型参数进行修正。获取该向量准确评估参数的过程就可以理解为是上述生成过程。
下面描述如何得到样本节点对应的文档检索向量的向量准确评估参数的过程:
可以将样本节点对应的已有文档或者文档单词,统称为样本节点对应的节点文档。可以理解的是,若样本节点为文档节点,则样本节点对应于已有文档,若样本节点为单词节点,则样本节点对应于文档单词。
首先,可以从对上述构建的样本节点对应的参考总向量所属的高斯分布进行采样(即抽样),得到样本节点对应的隐变量,该隐变量为一个向量,可以将该隐变量称之为节点隐向量。
接着,初始向量生成模型可以通过该节点隐向量,反向生成样本节点对应的节点文档,并得到生成该节点文档的概率,可以将该概率称之为文档还原概率。其中,通过节点隐向量反向生成样本节点对应的节点文档是指,通过节点隐向量反向生成样本节点对应的节点文档中的每个文档单词,样本节点对应的节点文档中的一个文档单词对应于一个文档还原概率,该文档还原概率表示通过节点隐向量生成对应文档单词的概率。或者,可以将该文档还原概率理解为是通过节点隐向量对对应的文档单词的还原度,文档还原概率越大,还原度越大,文档还原概率越小,还原度就越小。
其中,可以将样本节点对应的节点文档中所包含的每个文档单词均表示为一个one-hot(一种编码方式)向量,每个文档单词的one-hot向量的维度是1*(隐式文本图中包含的所有文档单词的总数量),一个文档单词对应于one-hot向量中的一个元素位置,因此,一个文档单词的one-hot向量中,只有该文档单词对应的元素位置处的元素值为1,其他文档单词对应的元素位置处的元素值为0。
假设样本节点对应的节点文档中包括文档单词wi,因此初始向量生成模型生成文档单词wi的文档还原概率p(wi|z)的过程可以参见下述公式(7):
其中,公式(7)中的z表示从高斯分布中抽样得到的节点隐向量,exp表示指数函数,参数W、参数bi和参数bj均为模型参数。公式(7)中的wi表示文档单词wi的one-hot向量,h1表示样本节点对应的已有文档中所有文档单词构成的集合。因此,可以看出最终所得到的每个文档单词的文档还原概率都是进行归一化的。
更多的,初始向量生成模型还可以通过上述节点隐向量,反向生成样本节点对应的邻居样本图节点,并得到生成该邻居样本图节点的概率,可以将该概率称之为邻居还原概率。样本节点对应的一个邻居样本图节点对应于一个邻居还原概率,该邻居还原概率表示通过节点隐向量生成对应邻居样本图节点的概率。或者,可以将该邻居还原概率理解为是通过节点隐向量对对应的邻居样本图节点的还原度,邻居还原概率越大,还原度越大,邻居还原概率越小,还原度就越小。
其中,可以将样本节点的每个邻居样本图节点也均表示为一个one-hot(一种编码方式)向量,每个邻居样本图节点的one-hot向量的维度是1*(隐式文本图中所有图节点的总数量),一个邻居样本图节点对应于one-hot向量中的一个元素位置,因此,一个邻居样本图节点的one-hot向量中,只有该邻居样本图节点对应的元素位置处的元素值为1,其他邻居样本图节点对应的元素位置处的元素值为0。
假设样本节点的邻居样本图节点包括邻居样本图节点nj,因此初始向量生成模型生成邻居样本图节点nj的邻居还原概率p(nj|z)的过程可以参见下述公式(8):
其中,公式(8)中的z表示从高斯分布中抽样得到的节点隐向量,exp表示指数函数,参数W、参数cj和参数ck均为模型参数。公式(8)中的nj表示文档单词nj的one-hot向量,公式(8)中的nk表示文档单词nk的one-hot向量,h2表示样本节点的所有邻居样本图节点构成的集合。因此,可以看出最终所得到的每个邻居样本图节点的邻居还原概率都是进行归一化的。
在得到上述样本节点对应的节点文档中的每个文档单词的文档还原概率、以及样本节点的每个邻居样本图节点的邻居还原概率之后,可以得到样本节点对应的联合概率分布L,请参见下述公式(9):
其中,p(z)表示先验分布,p(z)可以为一个标准的高斯分布。表示样本节点对应的节点文档中所有文档单词分别对应的文档还原概率的乘积,p(x|z)表示通过节点隐向量z生成样本节点对应的完整的节点文档的概率,p(x|z)等于/> 表示样本节点的每个邻居样本图节点分别对应的邻居还原概率的乘积,p(N|z)表示通过节点隐向量z生成样本节点全部的邻居样本图节点的概率,p(N|z)等于
因此,初始向量生成模型可以将联合概率分布L中与/>的乘积,作为针对所样本节点对应的文档检索向量的向量准确评估参数,可以将该向量准确评估参数记为pθ
步骤S207,根据向量准确评估参数以及样本节点对应的文档检索向量,修正初始向量生成模型的模型参数,得到向量生成模型;
具体的,初始向量生成模型可以通过上述所得到的向量准确评估参数、和样本节点对应的文档检索向量,来修正初始向量生成模型的模型参数。其中,初始向量生成模型的目标函数可以是采用的最大似然函数,该最大似然函数也就是使得初始向量生成模型在反向生成样本节点对应的节点文档和邻居样本图节点的概率达到最大,使得初始向量生成模型通过节点隐向量生成样本节点对应的节点文档和邻居样本图节点时,对样本节点对应的节点文档和邻居样本图节点的还原度达到最大。初始向量生成模型的目标函数D如下述公式(10)所示:
D=Elogpθ-KL[qφ||p(z)] (10)
其中,qφ表示通过上述样本节点对应的参考总向量构建的高斯分布,E表示高斯分布qφ的期望。pθ表示上述获取到的向量准确评估参数,p(z)表示一个标准的高斯分布,KL表示一个运算符,用于计算高斯分布qφ与高斯分布p(z)之间的距离(即差异)。KL[qφ||p(z)]可以理解为是目标函数中的正则化向,用于对高斯分布qφ进行额外调整。
初始向量生成模型在调整模型参数时,就是要使得上述目标函数D尽可能达到最大值,通过让目标函数D尽可能达到最大值,可以使得初始向量生成模型在反向生成样本节点对应的节点文档和邻居样本图节点时,对样本节点对应的节点文档和邻居样本图节点的还原度最高。当通过隐式文本图中所有图节点与其邻居节点对初始向量生成模型训练完成时,可以将训练完成的初始向量生成模型,作为向量生成模型。该向量生成模型也就是上述图3对应的实施例中的向量生成模型,该向量生成模型可以用于生成目标文档的文档检索向量。
请参见图10,图10是本申请提供的一种模型训练过程的场景示意图。如图10所示,可以通过隐式文本图G2对初始向量生成模型101h进行训练。隐式文本图G2中可以包括5个图节点,该5个图节点分别为图节点1、图节点2、图节点3、图节点4和图节点5。隐式文本图G2中包括每个图节点对应的特征向量,具体包括图节点1对应特征向量、图节点2对应特征向量、图节点3对应特征向量、图节点4对应特征向量和图节点5对应特征向量。隐式文本图G2中还包括具有连接关系的任意两个图节点之间的关联特征信息(即边权重),具体包括图节点1与图节点2之间的关联特征信息0.5,图节点1与图节点3之间的关联特征信息0.3,图节点2与图节点3之间的关联特征信息0.2,图节点3与图节点4之间的关联特征信息3,以及图节点4与图节点5之间的关联特征信息5。
服务器可以从隐式文本图G2中获取到样本节点,以及该样本节点的邻居样本图节点。服务器可以将隐式文本图G2中样本节点对应的特征向量、邻居样本图节点对应的特征向量、以及样本节点与邻居样本图节点之间的关联特征信息,输入初始向量生成模型101h,初始向量生成模型101h可以生成每个邻居样本图节点分别对应的节点影响权重(如框102h所示)。
如框103h所示,初始向量生成模型101h可以通过每个邻居样本图节点分别对应的节点影响权重,对每个邻居样本图节点对应的特征向量进行加权求和,得到参考总向量。
继而,初始向量生成模型101h可以构建样本节点对应的参考总向量所属的高斯分布。如框105h所示,初始向量生成模型101h可以对所构建的高斯分布进行采样,得到样本节点对应的节点隐向量。如框106h所示,初始向量生成模型101h可以通过采样得到的节点隐向量,反向生成样本节点对应的节点文档和邻居样本图节点(也就是得到上述文档还原概率和邻居还原概率)。进而,初始向量生成模型101h就可以通过该文档还原概率和邻居还原概率,得到针对样本节点对应的文档检索向量(即所构建的高斯分布的均值)的向量准确评估参数107h。
初始向量生成模型101h可以将所得到的向量准确评估参数107h和所构建的高斯分布进行反向传播,以修正初始向量生成模型101h的模型参数。当对初始向量生成模型101h的模型参数修正完成,即可得到向量生成模型108h。
请参见图11,图11是本申请提供的一种模型结构的结构示意图。如图11所示的模型结构可以是上述初始向量生成模型的模型结构,该模型结构中包括两个部分,一个部分为编码器,一个部分为解码器。该编码器用于执行上述推断过程,即通过样本节点的邻居样本图节点100k,得到样本节点对应的文档检索向量101k。该解码器用于执行上述生成过程,即反向生成样本节点对应的节点文档103k和邻居样本图节点102k,也就是得到上述文档还原概率和邻居还原概率。其中,解码器可以是卷积神经网络(CNN)、长短时记忆网络(LSTM)、循环神经网络(RNN)或者门控循环单元(GRU)等。
可以理解的是,在训练初始向量生成模型的过程中,会同时用到图11所示的模型结构中的编码器和解码器,在对初始向量生成模型训练完成,得到向量生成模型,对向量生成模型的应用过程中,只会用到编码器。
请参见下述表1,下述表1中包括在数据集合Reuters21578(一种文本分类数据集)上测试的,通过本申请提供的向量生成模型来得到文档的文档哈希码的质量(精度)、以及通过现有的其他效果较好模型来得到文档的文档哈希码的质量。表1中的数值越大,表明所生成的文档哈希码的质量越高。
表1
由上可知,不论所生成的文档哈希码的大小是多少,采用本申请所提供的向量生成模型所得到的文档的文档哈希码的质量,都要优于采用现有其他模型(包括VDSH编码器、BMSH编码以及、与本申请相同的神经网络模型但不是通过隐式文本图训练得到的模型)所得到的文档的文档哈希码的质量。
请参见下述表2,下述表2中包括本申请中提出的采用文档的文档哈希码来检索文档的相似文档时的精度和速度、以及现有技术中采用文档的文档向量(例如文档检索向量同类型的向量)来检索文档的相似文档时的精度和速度。
由下述表2可知,通过文档的文档哈希码来检索该文档的相似文档、与通过文档的向量表示来检索文档的相似文档的精度相差不大,前者的精度为0.946,后者的精度为0.9226。但是,由于文档哈希码的维度远远小于文档的向量表示的维度,因此,通过文档的文档哈希码来检索该文档的相似文档的速度,却是通过文档的向量表示来检索文档的相似文档的速度快100倍不止。因此,通过文档的文档哈希码来检索该文档的相似文档,更适用于实时的相似文档检索的场景中。
表2
本申请可以通过包括已有文档对应的文档节点和该已有文档所包含的文档单词对应的单词节点的隐式文本图,来训练得到向量生成模型。由于隐式文本图中具有文档节点与单词节点之间的连接关系、以及不同单词节点之间的连接关系,其中,文档节点与单词节点之间的连接关系可以包含已有文档自身的文档特征;单词节点与单词节点之间的连接关系可以表征不同已有文档之间的关联关系。因此,通过本申请所提供的隐式文本图来训练得到向量生成模型,可以使得该向量生成模型不仅可以学习到已有文档本身的文档特征,也可以学习到不同已有文档之间的关联关系,因此,通过该向量生成模型可以生成目标文档更准确的文档检索向量,进而通过该目标文档的文档检索向量可以检索得到与目标文档更相似的其他文档。
请参见图12,图12是本申请提供的一种数据处理装置的结构示意图。如图12所示,该数据处理装置1可以包括:获取模块101、邻居获取模块102、信息获取模块103、数据输入模块104和向量生成模块105;
获取模块101,用于获取包括图节点的隐式文本图;隐式文本图中的图节点包括已有文档对应的文档节点、以及已有文档包含的文档单词对应的单词节点;
邻居获取模块102,用于在隐式文本图中,获取目标文档包含的文档单词对应的单词节点,作为目标文档对应的目标邻居节点;
信息获取模块103,用于从隐式文本图中获取目标邻居节点对应的文档单词的单词特征向量,根据隐式文本图,生成目标文档与目标邻居节点对应的文档单词之间的目标关联特征信息;
数据输入模块104,用于将目标文档的文档特征向量、单词特征向量、以及目标关联特征信息,输入向量生成模型;向量生成模型,是通过隐式文本图中单词节点之间的连接关系、以及文档节点与单词节点之间的连接关系训练得到;隐式文本图中具有连接关系的图节点之间互为邻居节点;隐式文本图中互为邻居节点的图节点之间具备对应的关联特征信息;
向量生成模块105,用于在向量生成模型中,生成目标文档的文档检索向量;目标文档的文档检索向量用于检索与目标文档相似的文档。
其中,获取模块101、邻居获取模块102、信息获取模块103、数据输入模块104和向量生成模块105的具体功能实现方式请参见图3对应的实施例中的步骤S101-步骤S105,这里不再进行赘述。
其中,邻居获取模块102,包括:分词单元1021和邻居确定单元1022;
分词单元1021,用于对目标文档进行文档分词,得到目标文档包含的文档单词;
邻居确定单元1022,用于将隐式文本图中,与目标文档包含的文档单词相同的文档单词所对应的单词节点,确定为目标文档对应的目标邻居节点。
其中,分词单元1021和邻居确定单元1022的具体功能实现方式请参见图3对应的实施例中的步骤S102,这里不再进行赘述。
其中,已有文档的文档数量为至少两个;信息获取模块103,包括:信息获取单元1031、参数确定单元1032和关联信息确定单元1033;
信息获取单元1031,用于获取目标邻居节点对应的文档单词在目标文档中的出现次数,获取隐式文本图的至少两个已有文档中,目标已有文档的文档数量:目标已有文档为包含目标邻居节点对应的文档单词的已有文档;
参数确定单元1032,用于根据出现次数和文档数量,确定目标文档与目标邻居节点对应的文档单词之间的词频参数;
关联信息确定单元1033,用于将词频参数,确定为目标文档与目标邻居节点对应的文档单词之间的目标关联特征信息。
其中,信息获取单元1031、参数确定单元1032和关联信息确定单元1033的具体功能实现方式请参见图3对应的实施例中的步骤S103,这里不再进行赘述。
其中,目标文档的文档检索向量中包括至少两个元素位置分别对应的元素值;上述装置1还包括:向量获取模块106、参考向量确定模块107、中位数确定模块108和哈希码生成模块109;
向量获取模块106,用于获取已有文档的文档检索向量和已有文档包含的文档单词的文档检索向量;
参考向量确定模块107,用于将已有文档的文档检索向量和已有文档包含的文档单词的文档检索向量,均确定为参考检索向量;参考检索向量中包括至少两个元素位置分别对应的元素值;
中位数确定模块108,用于根据参考检索向量中每个元素位置分别对应的元素值,确定每个元素位置分别对应的中位数;
哈希码生成模块109,用于根据每个元素位置分别对应的中位数、以及目标文档的文档检索向量,生成目标文档的文档哈希码;目标文档的文档哈希码用于检索与目标文档相似的文档;目标文档的文档哈希码的维度低于目标文档的文档检索向量的维度。
其中,向量获取模块106、参考向量确定模块107、中位数确定模块108和哈希码生成模块109的具体功能实现方式请参见图3对应的实施例中的步骤S105,这里不再进行赘述。
其中,哈希码生成模块109,包括:第一码值标记单元1091、第二码值标记单元1092和哈希码生成单元1093;
第一码值标记单元1091,用于将目标文档的文档检索向量中每个元素位置分别对应的元素值中,大于所对应的中位数的元素值,标记为第一码值;
第二码值标记单元1092,用于将目标文档的文档检索向量中每个元素位置分别对应的元素值中,小于或等于所对应的中位数的元素值,标记为第二码值;
哈希码生成单元1093,用于根据每个元素位置分别对应的第一码值或第二码值,生成目标文档的文档哈希码。
其中,第一码值标记单元1091、第二码值标记单元1092和哈希码生成单元1093的具体功能实现方式请参见图3对应的实施例中的步骤S105,这里不再进行赘述。
其中,目标文档为文档检索客户端获取到的询问文本信息;上述装置1还包括:哈希码获取模块110、汉明距离获取模块111、相似文档确定模块112和输出模块113;
哈希码获取模块110,用于获取已有文档的文档哈希码;
汉明距离获取模块111,用于获取目标文档的文档哈希码和已有文档的文档哈希码之间的汉明距离;汉明距离表征目标文档与已有文档之间的文档相似度;
相似文档确定模块112,用于当汉明距离小于或等于汉明距离阈值时,将已有文档确定为目标文档的相似文档;
输出模块113,用于将相似文档发送至文档检索客户端,以使文档检索客户端在客户端页面中,对询问文本信息和相似文档进行关联输出。
其中,哈希码获取模块110、汉明距离获取模块111、相似文档确定模块112和输出模块113的具体功能实现方式请参见图3对应的实施例中的步骤S105,这里不再进行赘述。
其中,向量生成模块105,包括:影响权重生成单元1051、向量加权单元1052、高斯分布构建单元1053和均值向量确定单元1054;
影响权重生成单元1051,用于根据目标文档的文档特征向量、单词特征向量和目标关联特征信息,在向量生成模型中,生成目标邻居节点对应的文档单词针对目标文档的节点影响权重;节点影响权重表征目标邻居节点对应的文档单词在目标文档中的重要程度;
向量加权单元1052,用于根据节点影响权重,对单词特征向量进行加权求和,得到参考总向量;
高斯分布构建单元1053,用于构建参考总向量所属的高斯分布;
均值向量确定单元1054,用于将高斯分布的均值向量,确定为目标文档对应的文档检索向量。
其中,影响权重生成单元1051、向量加权单元1052、高斯分布构建单元1053和均值向量确定单元1054的具体功能实现方式请参见图3对应的实施例中的步骤S105,这里不再进行赘述。
本申请可以通过包括已有文档对应的文档节点和该已有文档所包含的文档单词对应的单词节点的隐式文本图,来训练得到向量生成模型。由于隐式文本图中具有文档节点与单词节点之间的连接关系、以及不同单词节点之间的连接关系,其中,文档节点与单词节点之间的连接关系可以包含已有文档自身的文档特征;单词节点与单词节点之间的连接关系可以表征不同已有文档之间的关联关系。因此,通过本申请所提供的隐式文本图来训练得到向量生成模型,可以使得该向量生成模型不仅可以学习到已有文档本身的文档特征,也可以学习到不同已有文档之间的关联关系,因此,通过该向量生成模型可以生成目标文档更准确的文档检索向量,进而通过该目标文档的文档检索向量可以检索得到与目标文档更相似的其他文档。
请参见图13,图13是本申请提供的一种数据处理装置的结构示意图。如图13所示,该数据处理装置2可以包括:文本图获取模块201、样本节点获取模块202、邻居节点确定模块203、样本输入模块204、样本向量生成模块205、评估参数获取模块206和参数修正模块207;
文本图获取模块201,用于获取包括图节点的的隐式文本图;隐式文本图中的图节点,包括至少两个已有文档对应的文档节点、以及至少两个已有文档包含的文档单词对应的单词节点;隐式文本图中,包括至少两个文档节点与至少两个单词节点之间的连接关系、以及至少两个单词节点相互之间的连接关系;具有连接关系的图节点之间具有对应的关联特征信息;
样本节点获取模块202,用于在隐式文本图中的文档节点和单词节点中获取样本节点;
邻居节点确定模块203,用于将隐式文本图中,与样本节点具有连接关系的图节点,确定为样本节点的邻居样本图节点;
样本输入模块204,用于将隐式文本图中,样本节点对应的样本特征向量、邻居样本图节点对应的样本特征向量、以及样本节点与邻居样本图节点之间的关联特征信息,输入初始向量生成模型;
样本向量生成模块205,用于基于初始向量生成模型,生成样本节点对应的文档检索向量;
评估参数获取模块206,用于获取样本节点对应的文档检索向量的向量准确评估参数;
参数修正模块207,用于根据向量准确评估参数以及样本节点对应的文档检索向量,修正初始向量生成模型的模型参数,得到向量生成模型。
其中,文本图获取模块201、样本节点获取模块202、邻居节点确定模块203、样本输入模块204、样本向量生成模块205、评估参数获取模块206和参数修正模块207的具体功能实现方式请参见图9对应的实施例中的步骤S201-步骤S207,这里不再进行赘述。
其中,上述装置2还包括:概率获取模块208、互信息生成模块209和第一关联信息确定模块210;
概率获取模块208,用于当样本节点和邻居样本图节点,均为隐式文本图中的单词节点时,获取样本节点对应的文档单词与邻居样本图节点对应的文档单词在至少两个已有文档中的共现概率、样本节点对应的文档单词在至少两个已有文档中的第一出现概率、以及邻居样本图节点对应的文档单词在至少两个已有文档中的第二出现概率;
互信息生成模块209,用于根据共现概率、第一出现概率和第二出现概率,确定样本节点对应的文档单词与邻居样本图节点对应的文档单词之间的单词互信息;单词互信息,表征样本节点对应的文档单词与邻居样本图节点对应的文档单词之间的关联程度;
第一关联信息确定模块210,用于将单词互信息,确定为样本节点与邻居样本图节点之间的关联特征信息。
其中,概率获取模块208、互信息生成模块209和第一关联信息确定模块210的具体功能实现方式请参见图9对应的实施例中的步骤S203,这里不再进行赘述。
其中,上述装置2还包括:词频信息获取模块211、词频参数确定模块212和第二关联信息确定模块213;
词频信息获取模块211,用于当样本节点为隐式文本图中的单词节点,且邻居样本图节点为隐式文本图中的文档节点时,获取样本节点对应的文档单词在邻居样本图节点对应的已有文档中的出现次数、以及至少两个已有文档中目标已有文档的文档数量;目标已有文档为包括样本节点对应的文档单词的已有文档;
词频参数确定模块212,用于根据出现次数和文档数量,确定样本节点对应的文档单词与邻居样本图节点对应的已有文档之间的词频参数;
第二关联信息确定模块213,用于将词频参数,确定为样本节点与邻居样本图节点之间的关联特征信息。
其中,词频信息获取模块211、词频参数确定模块212和第二关联信息确定模块213的具体功能实现方式请参见图9对应的实施例中的步骤S203,这里不再进行赘述。
其中,样本节点与邻居样本图节点之间的连接关系,是在样本节点与邻居样本图节点之间的关联特征信息的数值大于关系建立阈值时,所建立的。
其中,样本向量生成模块205,包括:样本权重生成单元2051、总向量获取单元2052、分布构建单元2053和检索向量确定单元2054;
样本权重生成单元2051,用于根据样本节点对应的样本特征向量、邻居样本图节点对应的样本特征向量、以及样本节点与邻居样本图节点之间的关联特征信息,在初始向量生成模型中,生成邻居样本图节点针对样本节点的节点影响权重;节点影响权重,表征邻居样本图节点针对样本节点的重要程度;
总向量获取单元2052,用于根据节点影响权重,对邻居样本图节点对应的样本特征向量进行加权求和,得到样本节点对应的参考总向量;
分布构建单元2053,用于构建参考总向量所属的高斯分布;
检索向量确定单元2054,用于将高斯分布的均值向量,确定为样本节点对应的文档检索向量。
其中,样本权重生成单元2051、总向量获取单元2052、分布构建单元2053和检索向量确定单元2054的具体功能实现方式请参见图9对应的实施例中的步骤S205,这里不再进行赘述。
其中,评估参数获取模块206,包括:节点文档确定单元2061、采样单元2062、还原单元2063、联合概率确定单元2064和评估参数确定单元2065;
节点文档确定单元2061,用于将样本节点对应的已有文档或文档单词,确定为样本节点对应的节点文档;
采样单元2062,用于对样本节点对应的高斯分布进行采样,得到样本节点对应的节点隐向量;
还原单元2063,用于获取在根据节点隐向量,生成样本节点对应的节点文档时的文档还原概率,获取在根据节点隐向量,生成样本节点对应的邻居样本图节点时的邻居还原概率;
联合概率确定单元2064,用于根据文档还原概率和邻居还原概率,确定样本节点对应的联合概率分布;
评估参数确定单元2065,用于根据联合概率分布,确定样本节点对应的文档检索向量的向量准确评估参数。
其中,节点文档确定单元2061、采样单元2062、还原单元2063、联合概率确定单元2064和评估参数确定单元2065的具体功能实现方式请参见图9对应的实施例中的步骤S206,这里不再进行赘述。
本申请可以通过包括已有文档对应的文档节点和该已有文档所包含的文档单词对应的单词节点的隐式文本图,来训练得到向量生成模型。由于隐式文本图中具有文档节点与单词节点之间的连接关系、以及不同单词节点之间的连接关系,其中,文档节点与单词节点之间的连接关系可以包含已有文档自身的文档特征;单词节点与单词节点之间的连接关系可以表征不同已有文档之间的关联关系。因此,通过本申请所提供的隐式文本图来训练得到向量生成模型,可以使得该向量生成模型不仅可以学习到已有文档本身的文档特征,也可以学习到不同已有文档之间的关联关系,因此,通过该向量生成模型可以生成目标文档更准确的文档检索向量,进而通过该目标文档的文档检索向量可以检索得到与目标文档更相似的其他文档。
请参见图14,图14是本申请提供的一种计算机设备的结构示意图。如图14所示,计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图14所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图14所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现前文图3和图9中任一个所对应实施例中对数据处理方法的描述。应当理解,本申请中所描述的计算机设备1000也可执行前文图12所对应实施例中对数据处理装置1的描述、以及前文图13所对应实施例中对数据处理装置2的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请还提供了一种计算机可读存储介质,且计算机可读存储介质中存储有前文提及的数据处理装置1和数据处理装置2所执行的计算机程序,且计算机程序包括程序指令,当处理器执行程序指令时,能够执行前文图3和图9中任一个所对应实施例中对数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖范围。

Claims (13)

1.一种数据处理方法,其特征在于,包括:
获取包括图节点的隐式文本图;所述隐式文本图中的图节点包括已有文档对应的文档节点、以及所述已有文档包含的文档单词对应的单词节点;
在所述隐式文本图中,获取目标文档包含的文档单词对应的单词节点,作为所述目标文档对应的目标邻居节点;
从所述隐式文本图中获取所述目标邻居节点对应的文档单词的单词特征向量,根据所述隐式文本图,生成所述目标文档与所述目标邻居节点对应的文档单词之间的目标关联特征信息;
将所述目标文档的文档特征向量、所述单词特征向量、以及所述目标关联特征信息,输入向量生成模型;所述向量生成模型,是通过所述隐式文本图中单词节点之间的连接关系、以及所述文档节点与单词节点之间的连接关系训练得到;所述隐式文本图中具有连接关系的图节点之间互为邻居节点;所述隐式文本图中互为邻居节点的图节点之间具备对应的关联特征信息;
在所述向量生成模型中,生成所述目标文档对应的文档检索向量;所述目标文档的文档检索向量用于检索与所述目标文档相似的文档;
其中,所述在所述向量生成模型中,生成所述目标文档对应的文档检索向量,包括:
根据所述目标文档的文档特征向量、所述单词特征向量和所述目标关联特征信息,在所述向量生成模型中,生成所述目标邻居节点对应的文档单词针对所述目标文档的节点影响权重;所述节点影响权重表征所述目标邻居节点对应的文档单词在所述目标文档中的重要程度;根据所述节点影响权重,对所述单词特征向量进行加权求和,得到参考总向量;构建所述参考总向量所属的高斯分布;将所述高斯分布的均值向量,确定为所述目标文档对应的文档检索向量。
2.根据权利要求1所述的方法,其特征在于,所述在所述隐式文本图中,获取目标文档包含的文档单词对应的单词节点,作为所述目标文档对应的目标邻居节点,包括:
对所述目标文档进行文档分词,得到所述目标文档包含的文档单词;
将所述隐式文本图中,与所述目标文档包含的文档单词相同的文档单词所对应的单词节点,确定为所述目标文档对应的所述目标邻居节点。
3.根据权利要求1所述的方法,其特征在于,所述已有文档的文档数量为至少两个;所述根据所述隐式文本图,生成所述目标文档与所述目标邻居节点对应的文档单词之间的目标关联特征信息,包括:
获取所述目标邻居节点对应的文档单词在所述目标文档中的出现次数,获取所述隐式文本图的至少两个已有文档中,目标已有文档的文档数量:所述目标已有文档为包含所述目标邻居节点对应的文档单词的已有文档;
根据所述出现次数和所述文档数量,确定所述目标文档与所述目标邻居节点对应的文档单词之间的词频参数;
将所述词频参数,确定为所述目标文档与所述目标邻居节点对应的文档单词之间的目标关联特征信息。
4.根据权利要求1所述的方法,其特征在于,所述目标文档的文档检索向量中包括至少两个元素位置分别对应的元素值;所述方法还包括:
获取所述已有文档的文档检索向量和所述已有文档包含的文档单词的文档检索向量;
将所述已有文档的文档检索向量和所述已有文档包含的文档单词的文档检索向量,均确定为参考检索向量;所述参考检索向量中包括所述至少两个元素位置分别对应的元素值;
根据所述参考检索向量中每个元素位置分别对应的元素值,确定所述每个元素位置分别对应的中位数;
根据所述每个元素位置分别对应的中位数、以及所述目标文档的文档检索向量,生成所述目标文档的文档哈希码;所述目标文档的文档哈希码用于检索与所述目标文档相似的文档;所述目标文档的文档哈希码的维度低于所述目标文档的文档检索向量的维度。
5.根据权利要求4所述的方法,其特征在于,所述根据所述每个元素位置分别对应的中位数、以及所述目标文档的文档检索向量,生成所述目标文档的文档哈希码,包括:
将所述目标文档的文档检索向量中所述每个元素位置分别对应的元素值中,大于所对应的中位数的元素值,标记为第一码值;
将所述目标文档的文档检索向量中所述每个元素位置分别对应的元素值中,小于或等于所对应的中位数的元素值,标记为第二码值;
根据所述每个元素位置分别对应的第一码值或第二码值,生成所述目标文档的文档哈希码。
6.根据权利要求5所述的方法,其特征在于,所述目标文档为文档检索客户端获取到的询问文本信息;所述方法还包括:
获取所述已有文档的文档哈希码;
获取目标文档的文档哈希码和已有文档的文档哈希码之间的汉明距离;所述汉明距离表征所述目标文档与所述已有文档之间的文档相似度;
当所述汉明距离小于或等于汉明距离阈值时,将所述已有文档确定为所述目标文档的相似文档;
将所述相似文档发送至所述文档检索客户端,以使所述文档检索客户端在客户端页面中,对所述询问文本信息和所述相似文档进行关联输出。
7.一种数据处理方法,其特征在于,包括:
获取包括图节点的的隐式文本图;所述隐式文本图中的图节点,包括至少两个已有文档对应的文档节点、以及所述至少两个已有文档包含的文档单词对应的单词节点;所述隐式文本图中,包括至少两个文档节点与至少两个单词节点之间的连接关系、以及所述至少两个单词节点相互之间的连接关系;具有连接关系的图节点之间具有对应的关联特征信息;
在所述隐式文本图中的文档节点和单词节点中获取样本节点;
将所述隐式文本图中,与所述样本节点具有连接关系的图节点,确定为所述样本节点的邻居样本图节点;
将所述隐式文本图中,所述样本节点对应的样本特征向量、所述邻居样本图节点对应的样本特征向量、以及所述样本节点与所述邻居样本图节点之间的关联特征信息,输入初始向量生成模型;
基于所述初始向量生成模型,生成所述样本节点对应的文档检索向量;
获取所述样本节点对应的文档检索向量的向量准确评估参数;
根据所述向量准确评估参数以及所述样本节点对应的文档检索向量,修正所述初始向量生成模型的模型参数,得到向量生成模型;
其中,所述基于所述初始向量生成模型,生成所述样本节点对应的文档检索向量,包括:
根据所述样本节点对应的样本特征向量、所述邻居样本图节点对应的样本特征向量、以及所述样本节点与所述邻居样本图节点之间的关联特征信息,在所述初始向量生成模型中,生成所述邻居样本图节点针对所述样本节点的节点影响权重;所述节点影响权重,表征所述邻居样本图节点针对所述样本节点的重要程度;根据所述节点影响权重,对所述邻居样本图节点对应的样本特征向量进行加权求和,得到所述样本节点对应的参考总向量;构建所述参考总向量所属的高斯分布;将所述高斯分布的均值向量,确定为所述样本节点对应的文档检索向量。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
当所述样本节点和所述邻居样本图节点,均为所述隐式文本图中的单词节点时,获取所述样本节点对应的文档单词与所述邻居样本图节点对应的文档单词在所述至少两个已有文档中的共现概率、所述样本节点对应的文档单词在所述至少两个已有文档中的第一出现概率、以及所述邻居样本图节点对应的文档单词在所述至少两个已有文档中的第二出现概率;
根据所述共现概率、所述第一出现概率和所述第二出现概率,确定所述样本节点对应的文档单词与所述邻居样本图节点对应的文档单词之间的单词互信息;所述单词互信息,表征所述样本节点对应的文档单词与所述邻居样本图节点对应的文档单词之间的关联程度;
将所述单词互信息,确定为所述样本节点与所述邻居样本图节点之间的关联特征信息。
9.根据权利要求7所述的方法,其特征在于,所述获取所述样本节点对应的文档检索向量的向量准确评估参数,包括:
将所述样本节点对应的已有文档或文档单词,确定为所述样本节点对应的节点文档;
对所述样本节点对应的所述高斯分布进行采样,得到所述样本节点对应的节点隐向量;
获取在根据所述节点隐向量,生成所述样本节点对应的所述节点文档时的文档还原概率,获取在根据所述节点隐向量,生成所述样本节点对应的所述邻居样本图节点时的邻居还原概率;
根据所述文档还原概率和所述邻居还原概率,确定所述样本节点对应的联合概率分布;
根据所述联合概率分布,确定所述样本节点对应的文档检索向量的所述向量准确评估参数。
10.一种数据处理装置,其特征在于,包括:
获取模块,用于获取包括图节点的隐式文本图;所述隐式文本图中的图节点包括已有文档对应的文档节点、以及所述已有文档包含的文档单词对应的单词节点;
邻居获取模块,用于在所述隐式文本图中,获取目标文档包含的文档单词对应的单词节点,作为所述目标文档对应的目标邻居节点;
信息获取模块,用于从所述隐式文本图中获取所述目标邻居节点对应的文档单词的单词特征向量,根据所述隐式文本图,生成所述目标文档与所述目标邻居节点对应的文档单词之间的目标关联特征信息;
数据输入模块,用于将所述目标文档的文档特征向量、所述单词特征向量、以及所述目标关联特征信息,输入向量生成模型;所述向量生成模型,是通过所述隐式文本图中单词节点之间的连接关系、以及所述文档节点与单词节点之间的连接关系训练得到;所述隐式文本图中具有连接关系的图节点之间互为邻居节点;所述隐式文本图中互为邻居节点的图节点之间具备对应的关联特征信息;
向量生成模块,用于在所述向量生成模型中,生成所述目标文档对应的文档检索向量;所述目标文档的文档检索向量用于检索与所述目标文档相似的文档;
其中,所述向量生成模块具体用于:根据所述目标文档的文档特征向量、所述单词特征向量和所述目标关联特征信息,在所述向量生成模型中,生成所述目标邻居节点对应的文档单词针对所述目标文档的节点影响权重;所述节点影响权重表征所述目标邻居节点对应的文档单词在所述目标文档中的重要程度;根据所述节点影响权重,对所述单词特征向量进行加权求和,得到参考总向量;构建所述参考总向量所属的高斯分布;将所述高斯分布的均值向量,确定为所述目标文档对应的文档检索向量。
11.一种数据处理装置,其特征在于,包括:
文本图获取模块,用于获取包括图节点的的隐式文本图;所述隐式文本图中的图节点,包括至少两个已有文档对应的文档节点、以及所述至少两个已有文档包含的文档单词对应的单词节点;所述隐式文本图中,包括至少两个文档节点与至少两个单词节点之间的连接关系、以及所述至少两个单词节点相互之间的连接关系;具有连接关系的图节点之间具有对应的关联特征信息;
样本节点获取模块,用于在所述隐式文本图中的文档节点和单词节点中获取样本节点;
邻居节点确定模块,用于将所述隐式文本图中,与所述样本节点具有连接关系的图节点,确定为所述样本节点的邻居样本图节点;
样本输入模块,用于将所述隐式文本图中,所述样本节点对应的样本特征向量、所述邻居样本图节点对应的样本特征向量、以及所述样本节点与所述邻居样本图节点之间的关联特征信息,输入初始向量生成模型;
样本向量生成模块,用于基于所述初始向量生成模型,生成所述样本节点对应的文档检索向量;
评估参数获取模块,用于获取所述样本节点对应的文档检索向量的向量准确评估参数;
参数修正模块,用于根据所述向量准确评估参数以及所述样本节点对应的文档检索向量,修正所述初始向量生成模型的模型参数,得到向量生成模型;
其中,所述样本向量生成模块具体用于:根据所述样本节点对应的样本特征向量、所述邻居样本图节点对应的样本特征向量、以及所述样本节点与所述邻居样本图节点之间的关联特征信息,在所述初始向量生成模型中,生成所述邻居样本图节点针对所述样本节点的节点影响权重;所述节点影响权重,表征所述邻居样本图节点针对所述样本节点的重要程度;根据所述节点影响权重,对所述邻居样本图节点对应的样本特征向量进行加权求和,得到所述样本节点对应的参考总向量;构建所述参考总向量所属的高斯分布;将所述高斯分布的均值向量,确定为所述样本节点对应的文档检索向量。
12.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1-9中任一项所述方法的步骤。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时,执行权利要求1-9任一项所述的方法。
CN202010837649.4A 2020-08-19 2020-08-19 一种数据处理方法、装置以及计算机可读存储介质 Active CN112000788B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010837649.4A CN112000788B (zh) 2020-08-19 2020-08-19 一种数据处理方法、装置以及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010837649.4A CN112000788B (zh) 2020-08-19 2020-08-19 一种数据处理方法、装置以及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN112000788A CN112000788A (zh) 2020-11-27
CN112000788B true CN112000788B (zh) 2024-02-09

Family

ID=73472783

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010837649.4A Active CN112000788B (zh) 2020-08-19 2020-08-19 一种数据处理方法、装置以及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN112000788B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112765352A (zh) * 2021-01-21 2021-05-07 东北大学秦皇岛分校 基于具有自注意力机制的图卷积神经网络文本分类方法
CN115495017B (zh) * 2022-09-26 2023-06-13 成都坐联智城科技有限公司 一种基于大数据的数据存储方法及系统
CN116401600A (zh) * 2023-03-07 2023-07-07 深圳市丰宜科技有限公司 工单系统的同步节点信息的获取方法、装置及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003330966A (ja) * 2002-05-13 2003-11-21 Nippon Telegr & Teleph Corp <Ntt> 文書分析方法及び装置及び文書分析プログラム及び文書分析プログラムを格納した記憶媒体
US8423538B1 (en) * 2009-11-02 2013-04-16 Google Inc. Clustering query refinements by inferred user intent
JP2013239132A (ja) * 2012-05-17 2013-11-28 Nippon Hoso Kyokai <Nhk> 類似度算出装置、類似番組検索装置、およびそのプログラム
CN104199829A (zh) * 2014-07-25 2014-12-10 中国科学院自动化研究所 情感数据分类方法和系统
CN110705260A (zh) * 2019-09-24 2020-01-17 北京工商大学 一种基于无监督图神经网络结构的文本向量生成方法
CN110717047A (zh) * 2019-10-22 2020-01-21 湖南科技大学 一种基于图卷积神经网络的Web服务分类方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1225517B1 (en) * 2001-01-17 2006-05-17 International Business Machines Corporation System and methods for computer based searching for relevant texts
US8375061B2 (en) * 2010-06-08 2013-02-12 International Business Machines Corporation Graphical models for representing text documents for computer analysis
US9436760B1 (en) * 2016-02-05 2016-09-06 Quid, Inc. Measuring accuracy of semantic graphs with exogenous datasets

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003330966A (ja) * 2002-05-13 2003-11-21 Nippon Telegr & Teleph Corp <Ntt> 文書分析方法及び装置及び文書分析プログラム及び文書分析プログラムを格納した記憶媒体
US8423538B1 (en) * 2009-11-02 2013-04-16 Google Inc. Clustering query refinements by inferred user intent
JP2013239132A (ja) * 2012-05-17 2013-11-28 Nippon Hoso Kyokai <Nhk> 類似度算出装置、類似番組検索装置、およびそのプログラム
CN104199829A (zh) * 2014-07-25 2014-12-10 中国科学院自动化研究所 情感数据分类方法和系统
CN110705260A (zh) * 2019-09-24 2020-01-17 北京工商大学 一种基于无监督图神经网络结构的文本向量生成方法
CN110717047A (zh) * 2019-10-22 2020-01-21 湖南科技大学 一种基于图卷积神经网络的Web服务分类方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Graph Convolution Networks for Text Classification;Yao L, Mao C, Luo Y;Proceedings of the AAAI conference on artifical intelligence;第33卷(第1期);全文 *
图卷积神经网络理论与应用;仝宗和;袁立宁;王洋;;信息技术与信息化(02);全文 *
基于关键词的文本向量化与分类算法研究;苏玉龙;张著洪;;贵州大学学报(自然科学版)(03);全文 *
基于图的文档检索技术研究;王力男;中国优秀硕士学位论文全文数据库 信息科技辑;全文 *
基于多层Markov网络的信息检索模型;廖亚男;王明文;左家莉;吴根秀;甘丽新;;中文信息学报(01);全文 *

Also Published As

Publication number Publication date
CN112000788A (zh) 2020-11-27

Similar Documents

Publication Publication Date Title
CN112487182B (zh) 文本处理模型的训练方法、文本处理方法及装置
CN107562792B (zh) 一种基于深度学习的问答匹配方法
CN112000788B (zh) 一种数据处理方法、装置以及计算机可读存储介质
CN109614471B (zh) 一种基于生成式对抗网络的开放式问题自动生成方法
CN109871538A (zh) 一种中文电子病历命名实体识别方法
CN110033022A (zh) 文本的处理方法、装置和存储介质
CN112069302B (zh) 会话意图识别模型的训练方法、会话意图识别方法及装置
CN112015868B (zh) 基于知识图谱补全的问答方法
CN108804677A (zh) 结合多层级注意力机制的深度学习问题分类方法及系统
CN111078847A (zh) 电力用户意图识别方法、装置、计算机设备和存储介质
CN110222838B (zh) 文档排序方法、装置、电子设备及存储介质
JP7393060B2 (ja) 注意メカニズムを融合したパーソナライズド検索方法及び検索システム
CN112559706B (zh) 对话生成模型的训练方法、对话方法、设备以及存储介质
CN113392640B (zh) 一种标题确定方法、装置、设备及存储介质
Chen et al. An augmented reality question answering system based on ensemble neural networks
CN111651579B (zh) 信息查询方法、装置、计算机设备和存储介质
CN112580369A (zh) 语句复述方法、训练语句复述模型的方法及其装置
CN114492451B (zh) 文本匹配方法、装置、电子设备及计算机可读存储介质
US11948387B2 (en) Optimized policy-based active learning for content detection
CN112989803B (zh) 一种基于主题向量学习的实体链接预测方法
JP2020086548A (ja) 処理装置、処理方法、及び処理プログラム
Bachrach et al. An attention mechanism for answer selection using a combined global and local view
CN112199481A (zh) 一种采用pcc对话模型的单用户个性化对话方法和系统
CN108959467B (zh) 一种基于强化学习的问句和答案句相关度的计算方法
CN116561314A (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