CN113849661A - 实体嵌入数据的提取方法和装置、电子设备、存储介质 - Google Patents
实体嵌入数据的提取方法和装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN113849661A CN113849661A CN202111139516.0A CN202111139516A CN113849661A CN 113849661 A CN113849661 A CN 113849661A CN 202111139516 A CN202111139516 A CN 202111139516A CN 113849661 A CN113849661 A CN 113849661A
- Authority
- CN
- China
- Prior art keywords
- data
- similarity
- loss function
- entity
- embedded data
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Animal Behavior & Ethology (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
Abstract
本公开实施例提供实体嵌入数据的提取方法和装置、电子设备、存储介质,涉及人工智能技术领域。该实体嵌入数据的提取方法,包括:根据知识图谱的实体提取至少两个三元组;其中每一三元组包括实体、属性和属性值;将至少两个三元组的属性值进行拼接,得到文本数据;将所述文本数据映射至嵌入空间,得到初始嵌入数据;其中,每一属性值对应所述初始嵌入数据的维度;对所述初始嵌入数据进行数据增强处理,得到正例对;将所述正例对输入到预设的对比学习模型中进行训练,得到目标嵌入数据,通过本公开实施例提供的技术方案可以提高实体嵌入数据的质量。
Description
技术领域
本发明涉及人工智能技术领域,尤其涉及实体嵌入数据的提取方法和装置、电子设备和存储介质。
背景技术
在构建知识图谱的过程中,往往需要将文本向量化,因此基于文本数据的Word2Vec应运而生,Word2Vec通过浅神经网络语言模型将每个词用一个向量表示,通过构建输入层、映射层和输出层,利用神经网络学习可预测在该词上下文中出现概率最大的词语;通过对文本词库的训练将文本转化为n维向量空间中的向量,并通过在空间中的余弦相似度代表词语在语义上的接近程度。传统的Word2Vec方法得到的词向量往往存在一定的缺陷,例如无法很好的区分同义词、近义词等文本问题,得到的嵌入数据(embedding)质量往往都不是很高,该方法得到的embedding应用在下游任务中会使下游任务的质量大打折扣。
发明内容
本公开实施例的主要目的在于提出一种实体嵌入数据的提取方法和装置、电子设备和存储介质,提高实体嵌入数据的质量。
为实现上述目的,本公开实施例的第一方面提出了一种实体嵌入数据的提取方法,包括:
根据知识图谱的实体提取至少两个三元组;其中每一三元组包括实体、属性和属性值;
将至少两个三元组的属性值进行拼接,得到文本数据;
将所述文本数据映射至嵌入空间,得到初始嵌入数据;其中,每一属性值对应所述初始嵌入数据的维度;
对所述初始嵌入数据进行数据增强处理,得到正例对;
将所述正例对输入到预设的对比学习模型中进行训练,得到目标嵌入数据。
在一些实施例,所述对所述初始嵌入数据进行数据增强处理,得到正例对,包括:
根据所述初始嵌入数据得到第一样本数据和第二样本数据;其中,所述初始嵌入数据、所述一样本数据和所述第二样本数据相同;
将所述第一样本数据输入至dropout编码器进行数据增强处理,得到第一向量;
将所述第二样本数据输入至dropout编码器进行数据增强处理,得到第二向量;其中,所述第一向量与所述第二向量不同;
根据所述第一向量与所述第二向量形成所述正例对。
在一些实施例,所述将所述正例对输入到预设的对比学习模型中进行训练,得到目标嵌入数据,包括:
将所述正例对输入到所述对比学习模型;
通过所述对比学习模型的损失函数计算出所述正例对的第一相似度和负例对的第二相似度;
根据所述第一相似度和所述第二相似度对所述对比学习模型的损失函数进行优化,以更新所述对比学习模型;
通过更新后的对比学习模型输出所述目标嵌入数据。
在一些实施例,所述第一相似度和所述第二相似度均为余弦相似度,所述根据所述第一相似度和所述第二相似度对所述对比学习模型的损失函数进行优化,包括:
将所述第一相似度最大化为第一数值和将所述第二相似度最小化为第二数值,以对所述损失函数进行优化;其中,所述第一相似度为所述损失函数的分子,所述第一相似度和所述第二相似度为所述损失函数的分母,所述第一数值取值为1,所述第二数值取值为0。
在一些实施例,所述根据所述第一相似度和所述第二相似度对所述对比学习模型的损失函数进行优化,还包括:
根据所述损失函数进行反向传播,更新所述损失函数的损失参数,以对所述损失函数进行优化。
在一些实施例,所述方法还包括:构建所述对比学习模型,具体包括:
获取原始预训练模型;其中,所述预训练模型为BERT模型;
对所述预训练模型进行参数微调,以更新所述预训练模型,得到所述对比学习模型。
在一些实施例,所述预训练模型包括损失函数,所述对所述预训练模型进行参数微调,更新所述预训练模型,得到所述对比学习模型,包括:
根据所述正例对和负例对构建损失函数;
根据样本数据集对所述损失函数进行计算,对所述损失函数的损失参数进行微调;
将微调后的损失函数作为所述预训练模型的模型参数,以更新所述预训练模型,得到所述对比学习模型。
为实现上述目的,本公开的第二方面提出了一种实体嵌入数据的提取装置,包括:
三元组提取模块,用于根据知识图谱的实体提取至少两个三元组;其中每一三元组包括实体、属性和属性值;
文本拼接模块,用于将至少两个三元组的属性值进行拼接,得到文本数据;
文本嵌入模块,用于将所述文本数据映射至嵌入空间,得到初始嵌入数据;其中,每一属性值对应所述初始嵌入数据的维度;
数据增强模块,用于对所述初始嵌入数据进行数据增强处理,得到正例对;
对比学习模块,用于将所述正例对输入到预设的对比学习模型中进行训练,得到目标嵌入数据。
为实现上述目的,本公开的第三方面提出了一种电子设备,包括:
至少一个存储器;
至少一个处理器;
至少一个程序;
所述程序被存储在存储器中,处理器执行所述至少一个程序以实现本公开如上述第一方面所述的方法。
为实现上述目的,本公开的第四方面提出了一种存储介质,该存储介质是计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行:
如上述第一方面所述的方法。
本公开实施例提出的实体嵌入数据的提取方法和装置、电子设备、存储介质,根据知识图谱的实体提取至少两个三元组,并将至少两个三元组的属性值进行拼接,得到文本数据;将所述文本数据映射至嵌入空间,得到初始嵌入数据;对初始嵌入数据进行数据增强处理,得到正例对;并将正例对输入到预设的对比学习模型中进行训练,从而可以得到目标嵌入数据,由于基于知识图谱的三元组提取初始嵌入数据(embedding)时应用对比学习方法(对比学习模型进行训练)对初始嵌入数据(embedding)进行加工优化,可以提高实体嵌入数据(embedding)的质量。
附图说明
图1是本公开实施例提供的实体嵌入数据的提取方法的流程图。
图2是图1中的步骤104的流程图。
图3是图1中的步骤105的流程图。
图4是本公开另一实施例提供的实体嵌入数据的提取方法的部分流程图。
图5是本公开实施例提供的实体嵌入数据的提取装置法的功能模块图。
图6是本公开实施例提供的电子设备的硬件结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
首先,对本申请中涉及的若干名词进行解析:
知识图谱(Knowledge Graph):是通过将应用数学、图形学、信息可视化技术、信息科学等学科的理论与方法与计量学引文分析、共现分析等方法结合,并利用可视化的图谱形象地展示学科的核心结构、发展历史、前沿领域以及整体知识架构达到多学科融合目的现代理论。知识图谱主要目标是用来描述真实世界中存在的各种实体和概念,以及他们之间的强关系,我们用关系去描述两个实体之间的关联。在Web视角下,知识图谱如同简单文本之间的超链接一样,通过建立数据之间的语义链接,支持语义搜索。在自然语言处理视角下,知识图谱就是从文本中抽取语义和结构化的数据。在人工智能视角下,知识图谱是利用知识库来辅助理解人类语言的工具。在数据库视角下,知识图谱是利用图的方式去存储知识的方法。知识图谱是比较通用的语义知识的形式化描述框架,用节点表示语义符号,用边表示语义之间的关系。知识图谱旨在描述真实世界中存在的各种实体或概念及其关系,其构成一张巨大的语义网络图,节点表示实体或概念,边则由属性或关系构成。现在的知识图谱已被用来泛指各种大规模的知识库。知识图谱又被称作语义网络(semantic network),从早期开始,语义网络就推动了基于图的知识表示,例如,推动RDF标准的过程中,在这样一个基于图的知识表示体系里面,实体作为图的节点,节点之间的连线作为关系。在构建知识图谱的过程中,往往需要将文本向量化,因此基于文本数据的Word2Vec应运而生,其通过浅神经网络语言模型将每个词用一个向量表示,通过构建输入层、映射层和输出层,利用神经网络学习可预测在该词上下文中出现概率最大的词语。通过对文本词库的训练将文本转化为n维向量空间中的向量,并通过在空间中的余弦相似度代表词语在语义上的接近程度。
实体:指具有可区别性且独立存在的某种事物。如某一个人、某一个城市、某一种植物等、某一种商品等等。世界万物有具体事物组成,此指实体。实体是知识图谱中的最基本元素,不同的实体间存在不同的关系。
概念:某一类实体的集合。
语义类(概念):具有同种特性的实体构成的集合,如国家、民族、书籍、电脑等。概念主要指集合、类别、对象类型、事物的种类,例如人物、地理等。
关系:实体与实体之间、不同的概念与概念之间、概念与实体之间存在的某种相互关系。关系形式化为一个函数,它把kk个点映射到一个布尔值。在知识图谱上,关系则是一个把kk个图节点(实体、语义类、属性值)映射到布尔值的函数。
属性(值):实体指定属性的值,是从一个实体指向它的属性值。不同的属性类型对应于不同类型属性的边。属性值主要指对象指定属性的值。例如:“面积”、“人口”、“首都”是几种不同的属性。属性值主要指对象指定属性的值,例如960万平方公里等。
内容:内容通常作为实体和语义类的名字、描述、解释等,可以由文本、图像、音视频等来表达。
三元组:三元组({E,R})是知识图谱的一种通用表示方式;三元组的基本形式主要包括(实体1-关系-实体2)和(实体-属性-属性值)等。每个实体(概念的外延)可用一个全局唯一确定的ID来标识,每个属性-属性值对(attribute-value pair,AVP)可用来刻画实体的内在特性,而关系可用来连接两个实体,刻画它们之间的关联。例如,在一个知识图谱的例子中,中国是一个实体,北京是一个实体,中国-首都-北京是一个(实体-关系-实体)的三元组样例,北京是一个实体,人口是一种属性,2069.3万是属性值。北京-人口-2069.3万构成一个(实体-属性-属性值)的三元组样例。
自监督学习:自监督学习主要是利用辅助任务(pretext)从大规模的无监督数据中挖掘自身的监督信息,通过这种构造的监督信息对网络进行训练,从而可以学习到对下游任务有价值的表征。也就是说自监督学习的监督信息不是人工标注,而是算法在大规模无监督数据中自动构造监督信息,来进行监督学习或训练。
对比学习(Contrastive Learning)是自监督学习的一种,不需要依赖人工标注的类别标签信息,直接利用数据本身作为监督信息。对比学习是一种为深度学习模型描述相似和不同事物的任务的方法。利用对比学习方法,可以训练机器学习模型来区分相似和不同的图像。在图像领域的自监督学习分为两种类型:生成式自监督学习、判别式自监督学习。对比学习应用的是典型的判别式自监督学习。对比学习的核心要点是:通过自动构造相似实例和不相似实例,也就是正样本和负样本,学习将正样本和负样本在特征空间进行对比,使得相似的实例在特征空间中距离拉近,而不相似的实例在特征空间中的距离拉远,差异性变大,通过这样的学习过程得到的模型表征就可以去执行下游任务,在较小的标记数据集上进行微调,从而实现无监督的模型学习过程。对比学习的指导原则是:通过自动构造相似实例和不相似实例,通过学习得到一个学习模型,利用这个模型,使得相似的实例在投影空间中比较接近,而可不相似的实例在投影空间中距离比较远。
嵌入(embedding):embedding是一种向量表征,是指用一个低维的向量表示一个物体,该物体可以是一个词,或是一个商品,或是一个电影等等;这个embedding向量的性质是能使距离相近的向量对应的物体有相近的含义,比如embedding(复仇者联盟)和embedding(钢铁侠)之间的距离就会很接近,但embedding(复仇者联盟)和embedding(乱世佳人)的距离就会远一些。embedding实质是一种映射,从语义空间到向量空间的映射,同时尽可能在向量空间保持原样本在语义空间的关系,如语义接近的两个词汇在向量空间中的位置也比较接近。embedding能够用低维向量对物体进行编码还能保留其含义,常应用于机器学习,在机器学习模型构建过程中,通过把物体编码为一个低维稠密向量再传给DNN,以提高效率。
BERT(Bidirectional Encoder Representation from Transformers)模型:BERT模型进一步增加词向量模型泛化能力,充分描述字符级、词级、句子级甚至句间关系特征,基于Transformer构建而成。BERT中有三种embedding,即Token Embedding,SegmentEmbedding,Position Embedding;其中Token Embeddings是词向量,第一个单词是CLS标志,可以用于之后的分类任务;Segment Embeddings用来区别两种句子,因为预训练不光做LM还要做以两个句子为输入的分类任务;Position Embeddings,这里的位置词向量不是transfor中的三角函数,而是BERT经过训练学到的。但BERT直接训练一个positionembedding来保留位置信息,每个位置随机初始化一个向量,加入模型训练,最后就得到一个包含位置信息的embedding,最后这个position embedding和word embedding的结合方式上,BERT选择直接拼接。
batch(批量):Batch大小(即批量大小)是一个超参数,用于定义在更新内部模型参数之前要处理的样本数,也就是在模型的内部参数更新之前控制训练样本的数量。训练数据集可以分为一个或多个Batch,其中,当所有训练样本用于创建一个Batch时,学习算法称为批量梯度下降;当批量是一个样本的大小时,学习算法称为随机梯度下降;当批量大小超过一个样本且小于训练数据集的大小时,学习算法称为小批量梯度下降。Batch大小是在更新模型之前处理的多个样本。
数据增强:数据增强主要用来防止过拟合,用于dataset(数据集)较小时对数据集进行优化,通过数据增强,可以增加训练的数据量,提高模型的泛化能力,增加噪声数据,提升模型的鲁棒性。数据增强可以分为两类,离线增强和在线增强;其中,离线增强是直接对数据集进行处理,数据的数目会变成增强因子x原数据集的数目,离线增强常常用于数据集很小时;在线增强,主要用于获得batch数据之后,对这个batch的数据进行增强,如旋转、平移、翻折等相应的变化,由于有些数据集不能接受线性级别的增长,在线增强常用于较大数据集,很多机器学习框架已经支持了在线增强方式,并且可以使用GPU优化计算。
dropout(丢弃):dropout是一种防止模型过拟合的技术,是指在深度学习网络的训练过程中,对于神经网络单元,按照一定的概率将其暂时从网络中丢弃,从而可以让模型更鲁棒,因为它不会太依赖某些局部的特征(因为局部特征有可能被丢弃)。
mask(掩码、掩膜):mask是深度学习中的常见操作;简单而言,mask相当于在原始张量上盖上一层掩膜,从而屏蔽或选择一些特定元素,因此常用于构建张量的过滤器。线性激活函数Relu(根据输出的正负区间进行简单粗暴的二分)、dropout机制(根据概率进行二分)都可以理解为泛化的mask操作。
encoder:编码,就是将输入序列转化成一个固定长度的向量;解码(decoder),就是将之前生成的固定向量再转化成输出序列;其中,输入序列可以是文字、语音、图像、视频;输出序列可以是文字、图像。
simCSE模型(Simple Contrastive Learning of Sentence Embeddings):simCSE模型包括dropout编码器,可以用于实现数据增强。
Transformer模型:Transformer模型类似于Attention模型,也采用了encoer-decoder架构,但Transformer模型的结构相比于Attention更加复杂,通常包括多个encoder堆叠在一起,多个decoder层堆叠在一起。对于encoder,包含self-attention层和前馈神经网络两层,其中self-attention能帮助当前节点不仅仅只关注当前的词,从而能获取到上下文的语义;decoder不仅包含self-attention层和前馈神经网络这两层,还包含了attention层,attention层在在self-attention层和前馈神经网络的中间,attention层能帮助当前节点获取到当前需要关注的重点内容。
Transformer层:神经网络包括嵌入层(可以称为输入嵌入层(input embedding))和至少一个transformer层,至少一个transformer层可以为N个transformer层(N是大于0的整数);嵌入层包括输入嵌入层和位置编码(positional encoding)层,其中,在输入嵌入层,可以对当前输入中的各个词进行词嵌入处理,从而得到各个词的词嵌入向量;在位置编码层,可以获取各个词在该当前输入中的位置,进而对各个词的位置生成位置向量。每个transformer层包括依次相邻的注意力层、加和与归一化(add&norm)层、前馈(feedforward)层、add&norm层。在嵌入层(input embedding),对当前输入进行嵌入处理,得到多个特征向量;在注意力层,从transformer层的上一层获取P个输入向量,以P个输入向量中的任意的第一输入向量为中心,基于预设的注意力窗口范围内的各个输入向量与该第一输入向量之间的关联度,得到该第一输入向量对应的中间向量,如此确定出P个输入向量对应的P个中间向量;在池化层,将P个中间向量合并为Q个输出向量,其中至少一个transformer层中最后一个transformer层得到的多个输出向量用作当前输入的特征表示。在嵌入层,对当前输入(可以为文本输入,例如一段文本或一个句子;文本可以为中文/英文或其他语言文本)进行嵌入处理,得到多个特征向量。嵌入层在获取当前输入后,可以对该当前输入中各个词进行嵌入处理,可得到各个词的特征向量。
反向传播:反向传播的大致原理为:将训练集数据输入到神经网络的输入层,经过神经网络的隐藏层,最后达到神经网络的输出层并输出结果;由于神经网络的输出结果与实际结果有误差,则计算估计值与实际值之间的误差,并将该误差从输出层向隐藏层反向传播,直至传播到输入层;在反向传播的过程中,根据误差调整各种参数的值;不断迭代上述过程,直至收敛。
在知识图谱中,实体作为图的节点,节点之间的连线作为关系。在构建知识图谱的过程中,往往需要将文本向量化,因此基于文本数据的Word2Vec应运而生,Word2Vec通过浅神经网络语言模型将每个词用一个向量表示,通过构建输入层、映射层和输出层,利用神经网络学习可预测在该词上下文中出现概率最大的词语;通过对文本词库的训练将文本转化为n维向量空间中的向量,并通过在空间中的余弦相似度代表词语在语义上的接近程度。传统的Word2Vec方法得到的词向量往往存在一定的缺陷,例如无法很好的区分同义词、近义词等文本问题,得到的embedding质量往往都不是很高,应用在下游任务中会使下游任务的质量大打折扣。
基于此,本公开实施例提供一种实体嵌入数据的提取方法和装置、电子设备、存储介质,可以提高embedding的质量。
本公开实施例提供实体嵌入数据的提取方法和装置、电子设备、存储介质,具体通过如下实施例进行说明,首先描述本公开实施例中的实体嵌入数据的提取方法。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
本公开实施例提供的实体嵌入数据的提取方法,涉及人工智能技术领域,尤其涉及数据挖掘技术领域。本公开实施例提供的实体嵌入数据的提取方法可应用于终端中,也可应用于服务器端中,还可以是运行于终端或服务器端中的软件。在一些实施例中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机或者智能手表等;服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器;软件可以是实现实体嵌入数据的提取方法的应用等,但并不局限于以上形式。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
图1是本公开实施例提供的实体嵌入数据的提取方法的一个可选的流程图,图1中的方法可以包括但不限于包括步骤101至步骤105。
步骤101、根据知识图谱的实体提取至少两个三元组;其中每一三元组包括实体、属性和属性值;
步骤102、将至少两个三元组的属性值进行拼接,得到文本数据;
步骤103、将文本数据映射至嵌入空间,得到初始嵌入数据;其中,每一属性值对应初始嵌入数据的维度;
步骤104、对初始嵌入数据进行数据增强处理,得到正例对;
步骤105、将正例对输入到预设的对比学习模型中进行训练,得到目标嵌入数据。
在一实施例的步骤101中,根据知识图谱的实体提取对应的三元组,所提取的知识图谱的每一三元组包括实体、对应实体的属性、及属性值。例如,一首歌的歌手名、歌曲类型、对应专辑、歌曲的发行年份等特征信息可以表示为三元组,更具体地,请参阅表1所示,根据对应的实体“乱舞春秋”所提取到的四个三元组表示为(实体->属性->属性值)的形式:(乱舞春秋–歌手–周杰伦)、(乱舞春秋–流派–流行)、(乱舞春秋–专辑–七里香)、(乱舞春秋–发行年份–2004),在第一三元组中,实体为“乱舞春秋”,属性为“歌手”,属性值为“周杰伦”;在第二三元组中,实体为“乱舞春秋”,属性为“流派”,属性值为“流行”;在第三三元组中,实体为“乱舞春秋”,属性为“专辑”,属性值为“七里香”;在第四三元组中,实体为“乱舞春秋”,属性为“发行年份”,属性值为“2004”。
三元组 | 实体 | 属性 | 属性值 |
乱舞春秋–歌手–周杰伦 | 乱舞春秋 | 歌手 | 周杰伦 |
乱舞春秋–流派–流行 | 乱舞春秋 | 流派 | 流行 |
乱舞春秋–专辑–七里香 | 乱舞春秋 | 专辑 | 七里香 |
乱舞春秋–发行年份–2004 | 乱舞春秋 | 发行年份 | 2004 |
表1
在一实施例的步骤102中,将至少两个三元组的属性值进行拼接,得到文本数据;以表1为例进行说明,这四个三元组的属性值进行拼接后得到的文本数据:周杰伦流行七里香2004,即将第一属性值“周杰伦”、第二属性值“流行”、第三属性值“七里香”、第四属性值“2004”进行拼接得到,通过拼接后得到的文本数据“周杰伦流行七里香2004”可以很好地表示“七里香”这个实体。
通过步骤102将每个实体的所有属性值进行拼接后,可以得到文本数据,该文本数据是一个较长的文本,然后根据步骤103将文本数据映射至嵌入空间,对文本数据进行向量表示,从而可以得到初始嵌入数据,该初始嵌入数据即为初始embedding数据,其映射过程实现文本单词向量化;其中每一属性值对应于初始embedding数据的多个维度,即每一embedding数据包括了一个实体的所有标签。具体地,如表1所示,四个三元组的属性值拼接后得到的的文本数据“周杰伦流行七里香2004”在映射至嵌入空间后,得到了四维的初始嵌入数据,四个属性值“周杰伦”、“流行七里香2004”、“七里香、“2004”分别对应初始嵌入数据的四个维度。
在一些实施例中,步骤102之后,实体嵌入数据的提取方法可以包括但不限于包括:
将文本数据存储至数据库。
通过将文本数据储在相应的数据库中,以便于后续目标embedding数据的进一步构建。
本公开实施例主要通过三个阶段来实现,第一阶段是知识图谱中实体三元组的提取阶段,第二阶段是对初始嵌入数据进行数据增强,第三阶段是利用对比学习方法对embedding的训练优化阶段。在第一阶段,先根据知识图谱的实体提取至少两个三元组,将所有三元组实体的属性值进行拼接以得到较长的文本数据,再将文本数据映射至嵌入空间、并对文本数据进行向量表示,从而可以得到初始嵌入数据(即初始embedding数据),每一embedding数据包括了一个实体的所有标签。
在一些实施例的步骤104中,通过simCSE模型的dropout mask机制对初始嵌入数据进行数据增强处理;本公开实施例,通过simCSE模型的dropout mask机制替换了传统的数据增强方法,即将同一个样本数据两次输入dropout编码器得到的两个向量作为对比学习的正例对,效果就足够好了,因为比如BERT内部每次dropout都随机会生成一个不同的dropout mask,所以只需要将同一个样本数据(即本实施例的初始嵌入数据)输入至simCSE模型两次,得到的两个向量就是应用两次不同dropout mask的结果了。可以理解的是,SimCSE模型中的dropout mask,对于BERT模型本身,是一种网络模型的随机,是对模型参数W的mask,起到防止过拟合的作用。SimCSE模型巧妙的把dropout mask机制作为了一种noise,起到数据增强的作用,因为同一句话输入到带dropout编码器的模型两次,得到的句向量是不一样的,但是因为是相同的句子输入,最后句向量的语义期望是相同的,因此作为正例对,让模型去拉近它们之间的距离。
本公开实施例,在batch内部进行数据增强处理;一个batch内部的任意两个样本,经过dropout mask进行数据增强后得到的数据都是不一样的,因此,当一个句子两次输入到dropout编码器进行处理时,SimCSE模型中实际上是在一个batch内部中实现的,举例来说,若句子集[a,b]两次输入到dropout编码器进行处理,则实际上是[a,a,b,b]作为一个batch去输入,因为句子集[a,b]两次输入相当于是输入句子集[a,a,b,b]。
在一个batch中,经过数据增强处理得到的数据(即第一向量和第二向量)是正例对,未经过数据增强的其他数据为负例对。本公开实施例中,可以将一个batch中的其中一部分初始嵌入数据经过数据增强处理得到正例对,另一部分初始嵌入数据作为负例对。
具体地,请参阅图2,在一些实施例的步骤104中,对初始嵌入数据进行数据增强处理,可以包括但不限于包括:
步骤201、根据初始嵌入数据得到第一样本数据和第二样本数据;其中,初始嵌入数据、一样本数据和第二样本数据相同;
步骤202、将第一样本数据输入至dropout编码器进行数据增强处理,得到第一向量;
步骤203、将第二样本数据输入至dropout编码器进行数据增强处理,得到第二向量;其中,第一向量与第二向量不同;
步骤204、根据第一向量与第二向量形成正例对。
在一实施例中,通过随机采样dropout mask来生成正例对。
在一具体应用场景中,在进行对比学习的阶段,采用典型的batch内的对比学习方法,在batch内部进行数据增强处理,即将上述得到的完整的初始embedding数据进行数据增强处理,让正例的两个样本(第一样本数据和第二样本数据)有所差异。本公开实施例直接把dropout当作数据增强,即通过随机采样dropout mask来生成正例对,更具体地,将同一个样本重复两次输入到同一个带dropout编码器中(即相同的第一样本数据和第二样本数据分别输入至dropout编码器进行数据增强处理),从而可以得到两个不同的表示向量z(第一向量)和z′(第二向量),将第一向量与第二向量作为一个正例对<z,z′>。实际中,<z,z′>的句向量是不一样的,但是因为输入的句子是相同的,最后句向量的语义期望是相同的,因此作为正例对,让模型去拉近它们之间的距离。
请参阅图3,在一些实施例的步骤105中,将正例对输入到预设的对比学习模型中进行训练,得到目标嵌入数据,可以包括但不限于包括:
步骤301、将正例对输入到对比学习模型;
步骤302、通过对比学习模型的损失函数计算出正例对的第一相似度和负例对的第二相似度;
步骤303、根据第一相似度和第二相似度对对比学习模型的损失函数进行优化,以更新对比学习模型;
步骤304、通过更新后的对比学习模型输出目标嵌入数据。
具体地,在一些实施例的步骤303中,第一相似度和第二相似度均为余弦相似度,根据第一相似度和第二相似度对对比学习模型的损失函数进行优化,可以包括但不限于包括:
将第一相似度最大化为第一数值和将第二相似度最小化为第一数值,以对损失函数进行优化;其中,第一相似度为损失函数的分子,第一相似度和第二相似度为损失函数的分母,第一数值取值为1,第二数值取值为0。该损失函数中,分子是对应正例对的第一相似度,分母是第一相似度以及所有负例对的第二相似度,然后将分子和分母构成的分子式的分子式的值包装在-log()中,这样最大化分子且最小化分母,就能实现最小化损失函数。本公开实施例中,最小化损失函数infoNCE loss,就是最大化分子且最小化分母,也就是最大化正例对的第一相似度且最小化负例对的第二相似度,并对该损失函数进行最小化,实现对损失函数的优化。更具体地,损失函数为公式(1)所示:
该损失函数中,正例对是<z,z′>,N是batch的大小(N是变量),该损失函数表示的是第i个样本要与batch中的每个样本计算相似度,batch里的每个样本都会按照该损失函数进行计算,因此,该损失函数表示的是样本i的损失(loss);该损失函数中,分子是正例对的相似度,分母是正例对以及所有负例对的相似度,然后将该值包装在-log()中,这样最大化分子且最小化分母,就能实现最小化损失函数。
在一具体应用场景,第一相似度和第二相似度均为余弦相似度,z表示向量,S(z,z′)表示相似度;举例来说,训练预料是向量Z1和向量Z2相似,向量Z1分别和向量Z3、向量Z4、向量Z5、...向量Zn均不相似,Z3、Z4不相似,则计算出的相似度S(Z1,Z2)就会很大,相似度S(Z1,Z3)、S(Z1,Z4)、S(Z1,Z5)...S(Z1,Zn)就会很小;而模型的训练目标是让向量Z1和向量Z2之间的角度相同,向量Z1分别和向量Z3、向量Z4、向量Z5、...向量Zn之间的角度垂直,因此,在理想状态下,相似度S(Z1,Z2)的取值就是1,相似度S(Z1,Z3)、S(Z1,Z4)、S(Z1,Z5)...S(Z1,Zn)的取值就是0,从而损失函数(loss)就最小。
具体地,在一些实施例的步骤303中,根据第一相似度和第二相似度对对比学习模型的损失函数进行优化,可以包括但不限于包括:
根据损失函数进行反向传播,更新损失函数的损失参数,以对损失函数进行优化。
本公开实施例,根据损失函数进行反向传播,以通过优化损失函数更新对比学习模型,更新对比学习模型的内部参数(也即损失参数)。可以理解的是,反向传播原理可以应用常规的反向传播原理,本公开实施例不做限定。
请参阅图4,在一些实施例,实体嵌入数据的提取方法,还可以包括但不限于包括:
步骤401、获取预设的预训练模型;
步骤402、对预训练模型进行参数微调,以更新预训练模型,得到对比学习模型。
在一些实施例,预设的预训练模型可以是BERT模型;将BERT模型作为基础模型进行参数微调,以更新BERT模型,从而得到对比学习模型。该BERT模型作为encoder模型(编码模型),以将进行数据增强处理后得到的正例对进行对比学习,而该正例对是映射到嵌入空间中进行表示的数据,从而使语义相近的数据距离拉近,语义不相近的距离拉远。通过这种方式可以获得高质量的embedding。
具体地,步骤402中,对预训练模型进行参数微调,以更新预训练模型,得到对比学习模型,包括:
根据正例对和负例对构建损失函数;
根据样本数据集对损失函数进行计算,对损失函数的损失参数进行微调;
将微调后的损失函数作为预训练模型的模型参数,以更新预训练模型,得到对比学习模型。
应理解,还可以采用其他方式,将BERT模型作为基础模型进行训练,得到对比学习模型,例如可以采用知识蒸馏的方式进行训练,应理解,本公开实施可以采用常规的知识蒸馏的方式进行训练,本公开实施例不做限定。
在一实施例,根据正例对和负例对构建损失函数,具体包括:
获取正例对的第一相似度和负例对的第二相似度;
将第一相似度作为损失函数的分子,第一相似度和第二相似度作为损失函数的分母;其中,将第一相似度和所有负例对的第二相似度作为损失函数的分母。
更具体地,请参照公式(1)所示的损失函数:
该损失函数为infoNCE loss(info Noise Contrastive Estimation loss),其中,正例对是<z,z′>,N是batch的大小(N是变量),该损失函数表示的是第i个样本要与batch中的每个样本计算相似度,batch里的每个样本都会按照该损失函数进行计算,因此,该损失函数表示的是样本i的损失(loss);该损失函数中,分子是正例对的相似度,分母是正例对以及所有负例对的相似度,然后将该值包装在-log()中,这样最大化分子且最小化分母,就能实现最小化损失函数。本公开实施例中,最小化损失函数infoNCE loss,就是最大化分子且最小化分母,也就是最大化正例对的第一相似度且最小化负例对的第二相似度,并对该损失函数进行最小化。
具体地,在一应用场景,每个实体的所有属性值进行拼接,并利用simCSE模型映射成初始嵌入数据,即初始embedding数据,其中每一属性值对应于初始embedding数据的多个维度,即每一embedding数据包括了一个实体的所有标签。
随后,应用dropout mask方法对初始嵌入数据进行数据增强处理,并将数据增强处理后的初始嵌入数据输入到对比学习模型中进行训练,该对比学习模型是BERT模型也是encoder模型(编码模型),以将进行数据增强处理后的一组数据映射到嵌入空间中进行表示,从而使语义相近的数据距离拉近,语义不相近的距离拉远。通过这种方式可以获得高质量的embedding。
本公开实施提供的实体嵌入数据的提取方法,根据知识图谱的实体提取至少两个三元组,并将至少两个三元组的属性值进行拼接,得到文本数据;将文本数据映射至嵌入空间,得到初始嵌入数据;对初始嵌入数据进行数据增强处理,得到正例对;并将正例对输入到预设的对比学习模型中进行训练,从而可以得到目标嵌入数据,由于基于知识图谱的三元组提取初始嵌入数据(embedding)时应用对比学习方法(对比学习模型进行训练)对初始嵌入数据(embedding)进行加工优化,可以提高实体嵌入数据(embedding)的质量。
常规的基于开放数据集进行词向量训练的方法在特定领域的任务中无法准确判断某些领域特有词汇,从而影响后续下游任务分析的准确度。因此,训练一个面向特定领域的高质量embedding集具有十分重要的意义。因此,本公开实施例提出在基于知识图谱三元组提取embedding时,应用对比学习的方法对embedding进行加工优化,以得到性能更好的特征提取器。再将此embedding应用于后续的一系列下游任务中,可以大大提高下游任务的完成质量。
本公开实施例的目标是将知识图谱中实体的所有属性值都利用对比学习的方法(如一首歌的歌名、歌手名、歌曲类型、对应专辑、歌曲的发行年份等特征信息)映射成一个“概念向量”(即embedding数据),概念向量的的多个维度(属性值)用来共同表示一个标签,即该概念向量可以用来较好的描述该标签所代表的实体(如一首歌),在一定程度上提高embedding的质量。
本公开实施例主要通过三个阶段来实现,第一阶段是知识图谱中实体三元组的提取阶段,第二阶段是对初始嵌入数据进行数据增强,第三阶段是利用对比学习方法对进行数据增强处理后的初始嵌入数据进行训练,得到高质量的embedding。在第一阶段,知识图谱中实体三元组的提取阶段是将知识图谱中的实体与属性、属性值(如一首歌的歌手名、歌曲类型、对应专辑、歌曲的发行年份等特征信息)表示为三元组,该三元组包括实体、属性、属性值,即表示为(实体->属性->属性值)的形式,例如表1所示的示例,对应实体“乱舞春秋”的四个三元组的属性值进行拼接后得到的文本数据“周杰伦流行七里香2004”,可以很好地表示“七里香”这个实体。在第二阶段,应用simCSE模型的dropout mask机制对embedding进行数据增强。在第三阶段,由于增强后的embedding数据被射到同一个空间中,并进行对比学习(对比学习模型进行训练),使语义相近的距离拉近,语义不相近的距离拉远,通过这种方式,可以提高获得的embedding质量,从而更好地应用在用下游任务中。
本公开实施例利用知识图谱导出的三元组,对三元组的属性值进行拼接,得到文本数据,通过simCSE模型将文本数据映射至嵌入空间,得到初始嵌入数据(初始embedding数据),每一条初始embedding数据包括了一个实体的所有标签。然后,应用dropout mask方法对初始embedding数据进行数据增强后输入到对比学习模型(该对比学习模型为BERT模型且为encoder模型)中进行训练,从而可以获得高质量的embedding,以便于用于下游任务中。
本公开实施例,利用知识图谱提取三元组后,利用simCSE模型的dropout mask机制对embedding的训练在一定程度上可以大大提高embedding的质量;并且由于提取三元组的知识图谱属于特定领域的知识图谱,在该垂直领域进行embedding的训练,便于下游的推荐系统、情感分析等垂直任务对该垂直领域特定的关键词进行更好识别,提高效率与准确率。
本公开实施例,通过自监督学习的对比学习,拉近相似的样本,推开不相似的样本,从而从样本中学习到一个好的语义表示空间。
请参阅图5,本公开实施例还提供一种实体嵌入数据的提取装置,可以实现上述实体嵌入数据的提取方法,该装置包括:
三元组提取模块501,用于根据知识图谱的实体提取至少两个三元组;其中每一三元组包括实体、属性和属性值;
文本拼接模块502,用于将至少两个三元组的属性值进行拼接,得到文本数据;
文本嵌入模块503,用于将文本数据映射至嵌入空间,得到初始嵌入数据;其中,每一属性值对应初始嵌入数据的维度;
数据增强模块504,用于对初始嵌入数据进行数据增强处理,得到正例对;
对比学习模块505,用于将所述正例对输入到预设的对比学习模型中进行训练,得到目标嵌入数据。
本申请实施例的实体嵌入数据的提取装置用于执行上述实施例中的实体嵌入数据的提取方法,其具体处理过程与上述实施例中的实体嵌入数据的提取方法相同,此处不再一一赘述。
本公开实施例还提供了一种电子设备,包括:
至少一个存储器;
至少一个处理器;
至少一个程序;
所述程序被存储在存储器中,处理器执行所述至少一个程序以实现本公开实施上述的实体嵌入数据的提取方法。该电子设备可以为包括手机、平板电脑、个人数字助理(Personal Digital Assistant,简称PDA)、车载电脑等任意智能终端。
请参阅图6,图6示意了另一实施例的电子设备的硬件结构,电子设备包括:
处理器601,可以采用通用的CPU(CentralProcessingUnit,中央处理器)、微处理器、应用专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本公开实施例所提供的技术方案;
存储器602,可以采用ROM(ReadOnlyMemory,只读存储器)、静态存储设备、动态存储设备或者RAM(RandomAccessMemory,随机存取存储器)等形式实现。存储器602可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器602中,并由处理器601来调用执行本公开实施例的实体嵌入数据的提取方法;
输入/输出接口603,用于实现信息输入及输出;
通信接口604,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信;和
总线605,在设备的各个组件(例如处理器601、存储器602、输入/输出接口603和通信接口604)之间传输信息;
其中处理器601、存储器602、输入/输出接口603和通信接口604通过总线605实现彼此之间在设备内部的通信连接。
本公开实施例还提供了一种存储介质,该存储介质是计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令用于使计算机执行上述实体嵌入数据的提取方法。
本公开实施例提出的实体嵌入数据的提取方法、实体嵌入数据的提取装置、电子设备、存储介质,根据知识图谱的实体提取至少两个三元组,并将至少两个三元组的属性值进行拼接,得到文本数据;将所述文本数据映射至嵌入空间,得到初始嵌入数据;对初始嵌入数据进行数据增强处理,得到正例对;并将正例对输入到预设的对比学习模型中进行训练,从而可以得到目标嵌入数据,由于基于知识图谱的三元组提取初始嵌入数据(embedding)时应用对比学习方法(对比学习模型进行训练)对初始嵌入数据(embedding)进行加工优化,可以提高实体嵌入数据(embedding)的质量。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本公开实施例描述的实施例是为了更加清楚的说明本公开实施例的技术方案,并不构成对于本公开实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本公开实施例提供的技术方案对于类似的技术问题,同样适用。
本领域技术人员可以理解的是,图1-4中示出的技术方案并不构成对本公开实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序的介质。
以上参照附图说明了本公开实施例的优选实施例,并非因此局限本公开实施例的权利范围。本领域技术人员不脱离本公开实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本公开实施例的权利范围之内。
Claims (10)
1.一种实体嵌入数据的提取方法,其特征在于,包括:
根据知识图谱的实体提取至少两个三元组;其中每一三元组包括实体、属性和属性值;
将至少两个三元组的属性值进行拼接,得到文本数据;
将所述文本数据映射至嵌入空间,得到初始嵌入数据;其中,每一属性值对应所述初始嵌入数据的维度;
对所述初始嵌入数据进行数据增强处理,得到正例对;
将所述正例对输入到预设的对比学习模型中进行对比学习,得到目标嵌入数据。
2.根据权利要求1所述的方法,其特征在于,所述对所述初始嵌入数据进行数据增强处理,得到正例对,包括:
根据所述初始嵌入数据得到第一样本数据和第二样本数据;其中,所述初始嵌入数据、所述第一样本数据和所述第二样本数据相同;
将所述第一样本数据输入至dropout编码器进行数据增强处理,得到第一向量;
将所述第二样本数据输入至dropout编码器进行数据增强处理,得到第二向量;其中,所述第一向量与所述第二向量不同;
根据所述第一向量与所述第二向量形成所述正例对。
3.根据权利要求1或2所述的方法,其特征在于,所述将所述正例对输入到预设的对比学习模型中进行训练,得到目标嵌入数据,包括:
将所述正例对输入到所述对比学习模型;
通过所述对比学习模型的损失函数计算出所述正例对的第一相似度和负例对的第二相似度;
根据所述第一相似度和所述第二相似度对所述对比学习模型的损失函数进行优化,以更新所述对比学习模型;
通过更新后的对比学习模型输出所述目标嵌入数据。
4.根据权利要求3所述的方法,其特征在于,所述第一相似度和所述第二相似度均为余弦相似度,所述根据所述第一相似度和所述第二相似度对所述对比学习模型的损失函数进行优化,包括:
将所述第一相似度最大化为第一数值和将所述第二相似度最小化为第二数值,以对所述损失函数进行优化;其中,所述第一相似度为所述损失函数的分子,所述第一相似度和所述第二相似度为所述损失函数的分母,所述第一数值取值为1,所述第二数值取值为0。
5.根据权利要求3所述的方法,其特征在于,所述根据所述第一相似度和所述第二相似度对所述对比学习模型的损失函数进行优化,还包括:
根据所述损失函数进行反向传播,更新所述损失函数的损失参数,以对所述损失函数进行优化。
6.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:构建所述对比学习模型,具体包括:
获取原始预训练模型;其中,所述预训练模型为BERT模型;
对所述预训练模型进行参数微调,以更新所述预训练模型,得到所述对比学习模型。
7.根据权利要求6所述的方法,其特征在于,所述预训练模型包括损失函数,所述对所述预训练模型进行参数微调,更新所述预训练模型,得到所述对比学习模型,包括:
根据所述正例对和负例对构建损失函数;
根据样本数据集对所述损失函数进行计算,对所述损失函数的损失参数进行微调;
将微调后的损失函数作为所述预训练模型的模型参数,以更新所述预训练模型,得到所述对比学习模型。
8.一种实体嵌入数据的提取装置,其特征在于,包括:
三元组提取模块,用于根据知识图谱的实体提取至少两个三元组;其中每一三元组包括实体、属性和属性值;
文本拼接模块,用于将至少两个三元组的属性值进行拼接,得到文本数据;
文本嵌入模块,用于将所述文本数据映射至嵌入空间,得到初始嵌入数据;其中,每一属性值对应所述初始嵌入数据的维度;
数据增强模块,用于对所述初始嵌入数据进行数据增强处理,得到正例对;
对比学习模块,用于将所述正例对输入到预设的对比学习模型中进行训练,得到目标嵌入数据。
9.一种电子设备,其特征在于,包括:
至少一个存储器;
至少一个处理器;
至少一个程序;
所述程序被存储在存储器中,处理器执行所述至少一个程序以实现:
如权利要求1至7任一项所述的方法。
10.一种存储介质,所述存储介质为计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行:
如权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111139516.0A CN113849661A (zh) | 2021-09-26 | 2021-09-26 | 实体嵌入数据的提取方法和装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111139516.0A CN113849661A (zh) | 2021-09-26 | 2021-09-26 | 实体嵌入数据的提取方法和装置、电子设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113849661A true CN113849661A (zh) | 2021-12-28 |
Family
ID=78980646
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111139516.0A Pending CN113849661A (zh) | 2021-09-26 | 2021-09-26 | 实体嵌入数据的提取方法和装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113849661A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114780719A (zh) * | 2022-03-28 | 2022-07-22 | 京东城市(北京)数字科技有限公司 | 文本分类模型的训练方法、文本分类方法及装置 |
CN114818671A (zh) * | 2022-03-10 | 2022-07-29 | 中国电子科技集团公司第十研究所 | 一种融合价值堆叠的异构知识动态表示学习方法 |
CN115100390A (zh) * | 2022-08-24 | 2022-09-23 | 华东交通大学 | 一种联合对比学习与自监督区域定位的图像情感预测方法 |
CN115394435A (zh) * | 2022-09-09 | 2022-11-25 | 北京大学 | 基于深度学习的关键临床指标实体识别方法和系统 |
-
2021
- 2021-09-26 CN CN202111139516.0A patent/CN113849661A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114818671A (zh) * | 2022-03-10 | 2022-07-29 | 中国电子科技集团公司第十研究所 | 一种融合价值堆叠的异构知识动态表示学习方法 |
CN114818671B (zh) * | 2022-03-10 | 2023-05-26 | 中国电子科技集团公司第十研究所 | 一种融合价值堆叠的异构知识动态表示学习方法 |
CN114780719A (zh) * | 2022-03-28 | 2022-07-22 | 京东城市(北京)数字科技有限公司 | 文本分类模型的训练方法、文本分类方法及装置 |
CN115100390A (zh) * | 2022-08-24 | 2022-09-23 | 华东交通大学 | 一种联合对比学习与自监督区域定位的图像情感预测方法 |
CN115394435A (zh) * | 2022-09-09 | 2022-11-25 | 北京大学 | 基于深度学习的关键临床指标实体识别方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113792818B (zh) | 意图分类方法、装置、电子设备及计算机可读存储介质 | |
CN113887215A (zh) | 文本相似度计算方法、装置、电子设备及存储介质 | |
CN113849661A (zh) | 实体嵌入数据的提取方法和装置、电子设备、存储介质 | |
CN110309267A (zh) | 基于预训练模型的语义检索方法和系统 | |
CN114358007A (zh) | 多标签识别方法、装置、电子设备及存储介质 | |
KR102379660B1 (ko) | 딥러닝 기반 의미역 분석을 활용하는 방법 | |
CN114897060B (zh) | 样本分类模型的训练方法和装置、样本分类方法和装置 | |
CN114519395A (zh) | 模型的训练方法和装置、文本摘要生成方法和装置、设备 | |
CN114238571A (zh) | 模型的训练方法、知识分类方法、装置、设备、介质 | |
CN114691864A (zh) | 文本分类模型训练方法及装置、文本分类方法及装置 | |
WO2023173555A1 (zh) | 模型的训练方法、文本分类方法和装置、设备、介质 | |
CN113722512A (zh) | 基于语言模型的文本检索方法、装置、设备及存储介质 | |
CN114612921A (zh) | 表单识别方法、装置、电子设备和计算机可读介质 | |
CN115510232A (zh) | 文本语句分类方法和分类装置、电子设备及存储介质 | |
CN115759119A (zh) | 一种金融文本情感分析方法、系统、介质和设备 | |
CN113392191B (zh) | 一种基于多维度语义联合学习的文本匹配方法和装置 | |
CN114358020A (zh) | 疾病部位识别方法、装置、电子设备及存储介质 | |
CN114490949A (zh) | 基于bm25算法的文档检索方法、装置、设备及介质 | |
CN110287396B (zh) | 文本匹配方法及装置 | |
CN111930819A (zh) | Etl脚本生成方法和装置 | |
CN114398903B (zh) | 意图识别方法、装置、电子设备及存储介质 | |
CN114722774B (zh) | 数据压缩方法、装置、电子设备及存储介质 | |
CN114491076B (zh) | 基于领域知识图谱的数据增强方法、装置、设备及介质 | |
CN115270900A (zh) | 一种用户意图识别方法和装置、电子设备、存储介质 | |
CN114998041A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40062561 Country of ref document: HK |