CN116702774A - 文本抽取方法、装置及服务器 - Google Patents
文本抽取方法、装置及服务器 Download PDFInfo
- Publication number
- CN116702774A CN116702774A CN202310817553.5A CN202310817553A CN116702774A CN 116702774 A CN116702774 A CN 116702774A CN 202310817553 A CN202310817553 A CN 202310817553A CN 116702774 A CN116702774 A CN 116702774A
- Authority
- CN
- China
- Prior art keywords
- sentence
- model
- entity
- text
- key
- 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
- 238000000605 extraction Methods 0.000 title claims abstract description 106
- 239000013598 vector Substances 0.000 claims abstract description 68
- 238000000034 method Methods 0.000 claims abstract description 45
- 230000006870 function Effects 0.000 claims description 49
- 238000013145 classification model Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 9
- 238000007781 pre-processing Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 7
- 230000000306 recurrent effect Effects 0.000 claims description 5
- 238000003062 neural network model Methods 0.000 claims description 4
- 230000011218 segmentation Effects 0.000 claims description 4
- 238000003058 natural language processing Methods 0.000 abstract description 4
- 230000008569 process Effects 0.000 description 13
- 239000004973 liquid crystal related substance Substances 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000012549 training Methods 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 230000008520 organization Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 102000002274 Matrix Metalloproteinases Human genes 0.000 description 1
- 108010000684 Matrix Metalloproteinases Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- 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/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/194—Calculation of difference between files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
Abstract
本发明提供了一种文本抽取方法、装置及服务器,涉及自然语言处理的技术领域,该方法包括:获取待处理文本以提取句子特征向量;将句子特征向量输入至动态预测模型,计算动态预测得分,将动态预测得分大于得分阈值的句子确定为关键句;对关键句进行事件类型分类,得到关键句的事件类型;抽取每个关键句中的实体;将关键句中的实体按照事件类型进行划分,得到每个事件类型下的实体组合,对事件类型的实体组合进行角色识别,以识别出实体组合中的至少一个实体的角色信息。本发明提供的文本抽取方法、装置及服务器,可以有效避免出现多余的实体,降低多余实体的干扰,从而提高文本抽取的准确性。
Description
技术领域
本发明涉及自然语言处理的技术领域,尤其是涉及一种文本抽取方法、装置及服务器。
背景技术
目前,常用的文本抽取算法方案中,一般是基于文本的全文信息进行事件分类和实体元素识别,这种方法存在的问题是可能识别出多余的实体,即一般的任务场景下,人们会更关注从文本中识别出关键信息和摘要信息,而且多余的实体会干扰和影响实体元素角色识别的准确性。
另一个难点在于基于触发词方案的多标签事件抽取任务中,如果文本没有触发词,则无法提取出事件信息,这样会出现漏检的可能。而从文本中找出能清晰代表事件类型的触发词是非常耗时和困难的。因此在无触发词的场景下,实现多标签事件抽取是有很大挑战性的,严重影响了文本抽取的效率和准确性。
发明内容
有鉴于此,本发明的目的在于提供一种文本抽取方法、装置及服务器,以缓解上述技术问题。
第一方面,本发明实施例提供了一种文本抽取方法,所述方法应用于文本抽取模型,所述文本抽取模型包括依次连接的文本预处理模型、动态预测模型、事件分类模型、实体抽取模型、元素连接模型和角色识别模型;所述方法包括:获取待处理文本,提取所述待处理文本的句子特征向量;将每个句子特征向量输入至动态预测模型,计算每个句子的动态预测得分,将所述动态预测得分大于得分阈值的句子确定为关键句;对每个关键句进行事件类型分类,得到每个所述关键句的事件类型;以及,抽取每个所述关键句中的实体;将所述关键句中的实体按照所述事件类型进行划分,得到每个事件类型下的实体组合,其中,所述实体组合中包括该事件类型对应的至少一个所述实体;对每个所述事件类型的所述实体组合进行角色识别,以识别出所述实体组合中的至少一个所述实体的角色信息。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,上述文本预处理模型包括BERT模型;上述提取所述待处理文本的句子特征向量的步骤,包括:对所述待处理文本进行分句处理,得到所述待处理文本中的每个句子的句向量,以及,对每个句子的位置进行编码,生成所述句子的位置编码向量;将每个所述句向量和对应的所述位置编码向量输入至预先训练好的所述BERT模型,将所述BERT模型顶层输出的向量作为每个句子的句子特征向量。
结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,上述动态预测模型包括以下模型之一:线性全连接模型、Transformer模型、递归神经网络模型;上述将每个句子特征向量输入至动态预测模型,计算每个句子的动态预测得分的步骤,包括:获取预设的所述动态预测模型;通过所述动态预测模型基于所述句子特征向量获取所述句子的文档级特征,并按照所述动态预测模型的预测公式计算每个句子的动态预测得分。
结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,上述对每个关键句进行事件类型分类,得到每个所述关键句的事件类型的步骤,包括:通过所述事件分类模型基于所述句子特征向量计算每个所述关键句与预先设置的事件类型标签的相似度;根据所述相似度确定所述关键句所属的事件类型,其中,所述关键句所属的事件类型为所述相似度最大的事件类型标签所对应的事件类型。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,上述实体抽取模型包括条件随机场CRF模型;抽取每个所述关键句的实体的步骤,包括:通过预先设置的所述CRF模型抽取所述关键句中的实体名称。
结合第一方面的第三种可能的实施方式,本发明实施例提供了第一方面的第五种可能的实施方式,其中,上述将所述关键句的实体按照所述事件类型进行划分,得到每个事件类型下的实体组合的步骤,包括:在所述元素连接模型中计算所述实体与所述事件类型标签之间的语义距离;将所述语义距离大于预设阈值对应的所述实体划分至所述事件类型下的实体组合中。
结合第一方面,本发明实施例提供了第一方面的第六种可能的实施方式,其中,上述角色识别模型设置有角色分类器;对每个所述事件类型的所述实体组合进行角色识别的步骤,包括:获取预先设置的所述角色分类器;将所述实体输入至所述角色分类器,通过所述角色分类器对所述实体进行角色识别。
结合第一方面,本发明实施例提供了第一方面的第七种可能的实施方式,其中,上述方法还包括:构建关键句抽取损失函数和事件抽取损失函数;根据所述关键句抽取损失函数和事件抽取损失函数构建总任务损失函数;基于所述总任务损失函数对所述文本抽取模型中包括的各个模型进行更新。
第二方面,本发明实施例还提供一种文本抽取装置,所述装置设置有文本抽取模型,所述文本抽取模型包括依次连接的文本预处理模型、动态预测模型、事件分类模型、实体抽取模型、元素连接模型和角色识别模型;所述装置包括:获取模块,用于获取待处理文本,提取所述待处理文本的句子特征向量;关键句模块,用于将每个句子特征向量输入至预先设置的动态预测模型,计算每个句子的动态预测得分,将所述动态预测得分大于得分阈值的句子确定为关键句;抽取模块,用于对每个关键句进行事件类型分类,得到每个所述关键句的事件类型;以及,抽取每个所述关键句的实体;元素连接模块,用于将所述关键句的实体按照所述事件类型进行划分,得到每个事件类型下的实体组合,其中,所述实体组合中包括该事件类型对应的至少一个所述实体;角色识别模块,用于对每个所述事件类型的所述实体组合进行角色识别,以识别出所述实体组合中的至少一个所述实体的角色信息。
第三方面,本发明实施例还提供一种服务器,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的方法的步骤。
第四方面,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述第一方面所述的方法的步骤。
本发明实施例带来了以下有益效果:
本发明实施例提供的文本抽取方法、装置及服务器,能够获取待处理文本并提取待处理文本的句子特征向量,将每个句子特征向量输入至预先设置的动态预测模型,计算每个句子的动态预测得分,并将动态预测得分大于得分阈值的句子确定为关键句;然后对每个关键句进行事件类型分类,得到每个关键句的事件类型;以及,抽取每个关键句的实体;将关键句的实体按照事件类型进行划分,得到每个事件类型下的实体组合,对每个事件类型的实体组合进行角色识别,以最终识别出实体组合中的至少一个实体的角色信息,以完成对待处理文本的抽取过程,并且,由于整个文本抽取过程是基于关键句进行的,因此,可以有效避免出现多余的实体,降低多余实体的干扰,从而提高文本抽取的准确性。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种文本抽取方法的流程图;
图2为本发明实施例提供的另一种文本抽取方法的流程图;
图3为本发明实施例提供的一种文本抽取装置的结构示意图;
图4为本发明实施例提供的一种服务器的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,对于文本的抽取方案中,多是基于全文信息进行的,这种方法存在的问题是可能识别出多余的实体,不仅多余的实体会干扰最终的抽取结果,同时也会影响实体元素的角色识别准确性。
基于此,本发明实施例提供的一种文本抽取方法、装置及服务器,可以有效缓解上述技术问题。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种文本抽取方法进行详细介绍。
在一种可能的实施方式中,本发明实施例提供了一种文本抽取方法,该方法一般运行于服务器,且,服务器配置有文本抽取模型,具体地,本发明实施例中的文本抽取模型包括依次连接的文本预处理模型、动态预测模型、事件分类模型、实体抽取模型、元素连接模型和角色识别模型,以执行对文本的抽取过程。
在实际使用时,文本抽取也就可以称为事件抽取,事件抽取(Event Extraction,EE)是NLP(Natural Language Processing,自然语言处理)领域中一种经典的信息抽取任务,在商业、军事等领域的情报工作中应用非常广泛,文本抽取或者事件抽取的过程,可以从描述事件信息的文本中识别并抽取出事件信息并以结构化的形式呈现出来,例如,包括事件发生的时间、地点、参与角色以及与之相关的动作或者状态的改变等等。
具体地,图1示出了一种文本抽取方法的流程图,如图1所示,该方法包括以下步骤:
步骤S102,获取待处理文本,提取待处理文本的句子特征向量;
其中,本发明实施例中的待处理文本,一般是用于描述某种事件的文本,如商业事件、法律事件、体育报道等等,具体以实际使用情况为准,本发明实施例对此不进行限制。
步骤S104,将每个句子特征向量输入至动态预测模型,计算每个句子的动态预测得分,将动态预测得分大于得分阈值的句子确定为关键句;
步骤S106,对每个关键句进行事件类型分类,得到每个关键句的事件类型;以及,抽取每个关键句中的实体;
其中,该步骤中,实际是对关键句进行事件类型的判断和事件元素的提取过程,其中,每个关键句的实体相当于关键句的事件元素,每个关键句可以包括一个实体,也可以包括多个实体,或者不包括实体,具体以实际使用情况为准,本发明实施例对此不进行限制。
步骤S108,将关键句中的实体按照事件类型进行划分,得到每个事件类型下的实体组合;
其中,实体组合中包括该事件类型对应的至少一个实体;
步骤S110,对每个事件类型的实体组合进行角色识别,以识别出实体组合中的至少一个所述实体的角色信息。
其中,上述步骤S106中的事件类型的划分,实际是一个分类任务,从整篇文本,或者文档来说,事件类型一般指的是具体什么事件,比如,并购事件、股东减持等等。
本发明实施例中,采用的是多事件类型的划分,即对每个关键句都进行事件类型分类,使整个文本包含多个事件类型标签。
进一步,上述步骤S106中,抽取的每个关键句的实体,相当于是该关键句的事件元素,也称为事实体,比如并购事件中有并购时间,并购公司名称,并购价格等都属于实体,一般文本中会出现多个实体,有些并不是事件的。另外同样的实体,在事件中可能有不同的确切的含义,比如并购事件中并购时间,付款时间都是不同的,因此,本发明实施例中,上述步骤S108中,可以进一步对实体进行划分,以及在步骤S110中,对于划分之后的实体在进行进一步的角色识别,以提高文本抽取的准确性。
并且,本发明实施例中,在进行文本抽取时,利用的是文本的关键句进行事件抽取,可以有效减少冗余的无效信息。并且,只使用关键句进行后续的事件类型分类,可以排除很多无效消息的识别和干扰,且在很多应用场景中,任务仅需要识别出文本的关键信息,以及对关键信息进行结构化提取,如,包括人名、地名、机构名、时间等,而非需要全文中所有的实体信息。因此,本发明实施例提供的文本抽取方法,不仅可以有效识别出文本中的关键信息,同时也能提高计算效率,减少多余计算的干扰。
进一步,本发明实施例中,使用的是BERTSUM原理对文本进行预处理,即,本发明实施例中,文本预处理模型包括BERT模型,以通过BERT模型提取待处理文本的句子特征向量。
具体地,如图2所示的另一种文本抽取方法的流程图,对本发明实施例中的整体文本抽取过程进行详细说明。具体地,如图2所示,包括以下步骤:
步骤S202,获取待处理文本;
步骤S204,对待处理文本进行分句处理,得到待处理文本中的每个句子的句向量,以及,对每个句子的位置进行编码,生成句子的位置编码向量;
步骤S206,将每个句向量和对应的位置编码向量输入至预先训练好的BERT模型,将BERT模型顶层输出的向量作为每个句子的句子特征向量。
其中,上述步骤S204中的分句处理,也是基于BERTSUM原理对文本进行分句的过程,具体地,在分句时,需要在句子的开始和结束位置分别插入标签[CLS]和[SEP],并且,对每个句子的位置进行编码时,对于每个句子,表示为senti,其中,i表示句子的位置,如果i为奇数,则句子的位置编码向量为EA,如果i为偶数,则句子的位置编码向量为EB。比如,输入的文本包含5个句子:[sent1,sent2,sent3,sent4,sent5],那么对应的句子的位置编码向量为[EA,EB,EA,EB,EA]。
进一步,上述步骤S206中,实际是通过BERT模型对每个句子的句向量和位置编码向量进行融合的过程,并且,本发明实施例中,使用的是BERT模型的顶层,即,经过BERT模型,可以得到来自BERT模型顶层的第i个[CLS]标记的向量Ti,作为每个句子senti的句子特征向量。
经过上述BERT模型得到的句子特征向量,可以继续执行下述步骤,使用动态预测模型计算动态预测得分。
步骤S208,获取预设的动态预测模型;通过动态预测模型基于句子特征向量获取句子的文档级特征,并按照动态预测模型的预测公式计算每个句子的动态预测得分,将动态预测得分大于得分阈值的句子确定为关键句;
具体地,本发明实施例中的动态预测模型包括以下模型之一:线性全连接模型、Transformer模型、递归神经网络模型;这些模型可以与BERT模型的输出层连接,作为一种输出结构使用,在模型训练阶段,可以与BERT模型共同进行微调训练,并且,在实际使用时,对于上述几个模型,动态预测模型是进行中择一使用的,具体使用哪个模型可以根据具体情况进行设置,本发明实施例对此不进行限制,并且,以下对上述几个模型进行分别说明:
(1)线性全连接模型
该线性全连接模型可以作为一个BERT模型的全连接层,即在BERT模型的输出上添加一个线性全连接层,并使用预设的sigmoid函数获得动态预测得分,其中,线性全连接模型的预测公式表示为:
其中,表示动态预测得分,σ表示sigmoid函数,σ=f(x),表示为:/>W0是预设的权重参数,b0是预设的偏置参数,Ti是来自BERT模型顶层的第i个[CLS]标记的向量,即句子特征向量。
(2)Transformer模型
其中,当选中使用该模型时,相当于在BERT模型的输出上添加一个或多个Transformer层,然后从BERT模型的输出中提取专注于关键句抽取任务的文档级特征,并且,Transformer模型的预测公式表示为:
其中,
hi L表示来自L层Transformer模型的顶层的句向量senti,LN表示归一化层layernormalization,FFN是前馈神经网络层Feed Forward Network。T为上述句子特征向量,PosEmb函数为在句子特征向量中增加位置编码向量的函数,MHAtt函数为多头注意力函数,L为Transformer模型的层数,最后仍然接一个sigmoid函数的全连接层,其中,本发明实施例中,全连接层的sigmoid函数可以表示为f(x)=wx+b的形式。
(3)递归神经网络模型
当选中使用该模型时,相当于在BERT模型的输出上添加一个递归神经网络层,也称为LSTM层,该LSTM层可以学习特定于关键句抽取任务的特征,获得每一步输出的句子特征向量后,再使用一个sigmoid函数计算预测分数,其具体计算公式如下:
Ci=σ(Fi)⊙Ci-1
+σ(Ii)⊙tanh(Gi-1)
hi=σ(Ot)⊙tanh(LNc(Ct))
其中,Fi,Ii,Oi分别为遗忘门、输入门和输出门;Gi,Ci,hi分别为隐藏向量、记忆向量和输出向量;LNh,LNx,LNc分别为不同的layer normalization操作,Wh为LNh层的权重参数,Wx为LNx层的权重参数,最后仍然接一个sigmoid函数的全连接层。
进一步,基于上述各个模型,为了便于与BERT模型共同进行微调训练,还需进一步构建关键句抽取损失函数,作为整个动态预测模型的损失函数,具体地,本发明实施例中的关键句抽取损失函数采用的是动态预测得分对真实标签Yi的二值分类交叉熵,本发明实施例中,在得到每个关键句的动态预测得分后,可以计算二值分类交叉熵损失,来更新动态预测模型的参数。其中,关键句抽取损失函数表示为:
其中,n表示关键句的数量。
进一步,基于上述步骤得到关键句之后,可以继续执行下述步骤,以对关键句的事件类型进行划分。
步骤S210,通过事件分类模型基于句子特征向量计算每个关键句与预先设置的事件类型标签的相似度;
步骤S212,根据相似度确定关键句所属的事件类型;
其中,本发明实施例中的关键句所属的事件类型为相似度最大的事件类型标签所对应的事件类型。
具体实现时,本发明实施例中,使用的是多事件类型的识别过程,最终使整个文本中包含多个事件类型的标签。
在实际使用时,需要先对每个事件类型进行定义和描述,生成本发明实施例中的事件类型标签,比如,企业破产事件表示“某公司或企业破产,负债达到或超过所占有的全部资产,不能清偿到期债务”。再对事件定义关键词,比如企业破产的关键词包括企业破产、破产清算、破产申请、破产拍卖等。将上述定义合并作为该事件类型的语义文本,输入到BERT模型中,获取[CLS]标签的语义表示,而随着BERT模型的训练,其语义表示也会随着学习的不断深入而改变。
进一步,在计算相似度时,对上述步骤中获取的关键句,其句子特征向量表示为a,表征每个事件类型的语义表示的事件类型标签表示为b,则相似度可以用余弦相似度表示,其表达式可以表示为:
如果关键句的句子特征向量与某一个事件类型标签的余弦相似度最大,且该余弦相似度大于预设的相似度阈值,则该关键句所属的事件类型为该事件类型标签所对应的事件类型。
进一步,对于上述事件分类模型的计算过程,也有对应的损失函数,表示为如果关键句的句子特征向量a属于某个事件类型标签b,则相似度变大,yb表示是否属于事件类型标签b,其具体的损失函数表示为:Lcls=-(yblog(sigmoid(cos(a,b)))+(1-yb)log(1-sigmoid(cos(a,b))))。
步骤S214,通过预先设置的CRF模型抽取关键句中的实体名称;
本发明实施例中,实体抽取模型包括条件随机场CRF(conditional randomfield)模型;在抽取关键句的实体时,是基于该CRF模型实现的。具体实现时,该CRF模型旨在抽取关键句中的实体名称,比如人名、地名、机构名、时间等。
具体地,该CRF模型也对应有损失函数,该损失函数一般使用交叉熵来计算,具体表示为:
其中,n表示样本中有n个token,xi表示样本第i个token,p(xi)是每个样本的token对应的标签,q(xi)是token预测的概率分布,对应于本发明实施例中的文本抽取,p(xi)表示文本中第i个token是否是实体的真实概率分布,q(xi)表示文本中第i个token是否是实体的预测概率分布。
具体实现时,在执行上述步骤S212和步骤S214时,可以先执行步骤S212,后执行步骤S214,或者,先执行步骤S214,后执行步骤S212,具体的执行过程可以根据实际使用情况进行设置,本发明实施例对此不进行限制。
步骤S216,将关键句的实体按照事件类型进行划分,得到每个事件类型下的实体组合;
具体实现时,该步骤S216的计算过程是对整个待处理文本的关键句按照事件类型进行的划分,且,该步骤S216是在元素连接模型中进行的,具体地,该元素连接模型计算时,可以计算实体与事件类型标签之间的语义距离;然后将语义距离大于预设阈值对应的实体划分至事件类型下的实体组合中。
在实际使用时,上述步骤S212和步骤S214中,仅仅是识别除了关键句所属的事件类型,以及关键句的实体,但是关键句的实体具体属于哪个事件类型是未知的,即,哪个事件类型包含哪些实体是未知的,需要通过上述步骤S216进行进一步划分。
具体地,在对实体进行划分时,通常假设相同的模型参数的语义空间中,属于同一事件类型的实体相互接近,根据这个假设,将上述步骤中的事件类型标签作为该事件类型的伪触发词,并将同一事件类型中的实体组合作为一个连接整体,即一个实体组合表示一个事件类型中存在的实体。
具体地,在计算语义距离时,将实体作为事件的元素,可以将上述CRF模型抽取的关键句中的实体名称表示为ei,事件类型标签表示为ej,计算ei、ej两两之间的语义距离,其计算公式表示为
其中,表示相似矩阵,即本发明实施例中的语义距离,Ws、We、bs、be表示语义空间的线性投影的可训练参数。
进一步,该元素连接模型的损失函数使用二元交叉熵来计算,具体表示为:
其中,yA (i,j)表示Ai,j中的第(i,j)个位置元素的真实标签,,此处真实标签为0或1,表示第i个实体和第j个实体是否有连接,表示Ai,j中的元素数量。
相似矩阵范围是0~1,Ai,j表示当/>中元素大于或等于γ则记为1,否则记为0。为了对相似矩阵进一步解码,一般设置γ作为判断阈值,即上述语义距离的预设阈值,大于或等于γ则表示元素相似,即,两个实体之间有连接,小于γ则表示元素不相似,即,两个实体之间没有连接。
步骤S218,对每个事件类型的实体组合进行角色识别,,以识别出实体组合中的至少一个实体的角色信息。
其中,本发明实施例中,角色识别是通过角色识别模型实现的,并且,角色识别模型设置有角色分类器;上述步骤S218中,在进行角色识别时,需要获取该预先设置的角色分类器;然后将上述实体输入至角色分类器,通过角色分类器对实体进行角色识别。
在实际使用时,上述步骤S218的角色识别过程,是对实体组合中的实体进行进一步的角色识别,以借贷事件为例,经过步骤S216的实体划分过程,可以将借贷双方都划分到一个实体组合中,而步骤S218的过程,则是对出借人一方和借款人一方进行进一步的就是识别,以最终得到角色信息。
具体实现时,上述角色分类器通常是基于前馈神经网络(feed-forward network,FFN)实现的,并结合一个sigmoid函数,可以实现角色分类器的功能,具体公式如下:
其中,ck表示实体组合,实体表示为εk,rj表示预测为事件类型j中的角色。
进一步,上述角色分类器的前馈神经网络的损失函数一般表示为
其中,表示实体组合ck中最匹配的真实角色的标签。/>表示实体属于某个事件类型j中的角色的预测概率分布。tj表示第j个事件类型。
在实际使用时,由于前述的各个模型均有对应的损失函数,为了便于对上述所有模型共同进行微调训练,本发明实施例中还包括构建总任务损失函数的过程,具体地,可以先构建关键句抽取损失函数和事件抽取损失函数;然后根据关键句抽取损失函数和事件抽取损失函数构建总任务损失函数;并最终基于总任务损失函数对文本抽取模型中包括的各个模型进行更新。
具体实现时,由前述可知,本发明实施例中的关键句抽取损失函数表示为L1;而事件抽取损失函数则包括前述事件分类模型的损失函数、实体抽取模型的损失函数、元素连接模型的损失函数、角色识别模型中角色分类器的损失函数的加权求和,具体地,事件抽取损失函数表示为L2:
L2=α·Lcls+β·Lner+θ·Lcomb+δ·Lrole
其中,α、β、θ、δ是可调节的超参数。
进一步,总任务损失函数表示为:
LOSS=μ·L1+τ·L2
即,总任务损失函数表示为关键句抽取损失函数与事件抽取损失函数的加权求和,其中μ、τ是可调节超参数。
综上,本发明实施例提供的文本抽取方法,能够获取待处理文本并提取待处理文本的句子特征向量,将每个句子特征向量输入至预先设置的动态预测模型,计算每个句子的动态预测得分,并将动态预测得分大于得分阈值的句子确定为关键句;然后对每个关键句进行事件类型分类,得到每个关键句的事件类型;以及,抽取每个关键句的实体;将关键句的实体按照事件类型进行划分,得到每个事件类型下的实体组合,对每个事件类型的实体组合进行角色识别,以最终识别出实体组合中的至少一个实体的角色信息,以完成对待处理文本的抽取过程,并且,由于整个文本抽取过程是基于关键句进行的,因此,可以有效避免出现多余的实体,可以降低多余实体的干扰,从而提高文本抽取的准确性。
进一步,本发明实施例中还提供一种文本抽取装置,所述装置设置有文本抽取模型,所述文本抽取模型包括依次连接的文本预处理模型、动态预测模型、事件分类模型、实体抽取模型、元素连接模型和角色识别模型;具体地,如图3所示的一种文本抽取装置的结构示意图,该装置包括:
获取模块30,用于获取待处理文本,提取所述待处理文本的句子特征向量;
关键句模块32,用于将每个句子特征向量输入至动态预测模型,计算每个句子的动态预测得分,将所述动态预测得分大于得分阈值的句子确定为关键句;
抽取模块34,用于对每个关键句进行事件类型分类,得到每个所述关键句的事件类型;以及,抽取每个所述关键句中的实体;
元素连接模块36,用于将所述关键句中的实体按照所述事件类型进行划分,得到每个事件类型下的实体组合,其中,所述实体组合中包括该事件类型对应的至少一个所述实体;
角色识别模块38,用于对每个所述事件类型的所述实体组合进行角色识别,以识别出所述实体组合中的至少一个所述实体的角色信息。
本发明实施例提供的文本抽取装置,与上述实施例提供的文本抽取方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
进一步,本发明实施例还提供了一种服务器,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述方法的步骤。
进一步,本发明实施例还提供了一种服务器的结构示意图,如图4所示,为该服务器的结构示意图,其中,该服务器包括处理器41和存储器40,该存储器40存储有能够被该处理器41执行的计算机可执行指令,该处理器41执行该计算机可执行指令以实现上述方法。
在图4示出的实施方式中,该服务器还包括总线42和通信接口43,其中,处理器41、通信接口43和存储器40通过总线42连接。
其中,存储器40可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口43(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线42可以是ISA(IndustryStandard Architecture,工业标准体系结构)总线、PCI(Peripheral ComponentInterconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线42可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器41可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器41中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器41可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessor,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器41读取存储器中的信息,结合其硬件完成前述方法。
本发明实施例所提供的文本抽取方法、装置及服务器的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种文本抽取方法,其特征在于,所述方法应用于文本抽取模型,所述文本抽取模型包括依次连接的文本预处理模型、动态预测模型、事件分类模型、实体抽取模型、元素连接模型和角色识别模型;所述方法包括:
获取待处理文本,提取所述待处理文本的句子特征向量;
将每个句子特征向量输入至动态预测模型,计算每个句子的动态预测得分,将所述动态预测得分大于得分阈值的句子确定为关键句;
对每个关键句进行事件类型分类,得到每个所述关键句的事件类型;以及,抽取每个所述关键句中的实体;
将所述关键句中的实体按照所述事件类型进行划分,得到每个事件类型下的实体组合,其中,所述实体组合中包括该事件类型对应的至少一个所述实体;
对每个所述事件类型的所述实体组合进行角色识别,以识别出所述实体组合中的至少一个所述实体的角色信息。
2.根据权利要求1所述的方法,其特征在于,所述文本预处理模型包括BERT模型;
提取所述待处理文本的句子特征向量的步骤,包括:
对所述待处理文本进行分句处理,得到所述待处理文本中的每个句子的句向量,以及,
对每个句子的位置进行编码,生成所述句子的位置编码向量;
将每个所述句向量和对应的所述位置编码向量输入至预先训练好的所述BERT模型,将所述BERT模型顶层输出的向量作为每个句子的句子特征向量。
3.根据权利要求1所述的方法,其特征在于,所述动态预测模型包括以下模型之一:线性全连接模型、Transformer模型、递归神经网络模型;
将每个句子特征向量输入至动态预测模型,计算每个句子的动态预测得分的步骤,包括:
获取预设的所述动态预测模型;
通过所述动态预测模型基于所述句子特征向量获取所述句子的文档级特征,并按照所述动态预测模型的预测公式计算每个句子的动态预测得分。
4.根据权利要求1所述的方法,其特征在于,对每个关键句进行事件类型分类,得到每个所述关键句的事件类型的步骤,包括:
通过所述事件分类模型基于所述句子特征向量计算每个所述关键句与预先设置的事件类型标签的相似度;
根据所述相似度确定所述关键句所属的事件类型,其中,所述关键句所属的事件类型为所述相似度最大的事件类型标签所对应的事件类型。
5.根据权利要求1所述的方法,其特征在于,所述实体抽取模型包括条件随机场CRF模型;
抽取每个所述关键句的实体的步骤,包括:
通过预先设置的所述CRF模型抽取所述关键句中的实体名称。
6.根据权利要求4所述的方法,其特征在于,将所述关键句的实体按照所述事件类型进行划分,得到每个事件类型下的实体组合的步骤,包括:
在所述元素连接模型中计算所述实体与所述事件类型标签之间的语义距离;
将所述语义距离大于预设阈值对应的所述实体划分至所述事件类型下的实体组合中。
7.根据权利要求1所述的方法,其特征在于,所述角色识别模型设置有角色分类器;
对每个所述事件类型的所述实体组合进行角色识别的步骤,包括:
获取预先设置的所述角色分类器;
将所述实体输入至所述角色分类器,通过所述角色分类器对所述实体进行角色识别。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
构建关键句抽取损失函数和事件抽取损失函数;
根据所述关键句抽取损失函数和事件抽取损失函数构建总任务损失函数;
基于所述总任务损失函数对所述文本抽取模型中包括的各个模型进行更新。
9.一种文本抽取装置,其特征在于,所述装置设置有文本抽取模型,所述文本抽取模型包括依次连接的文本预处理模型、动态预测模型、事件分类模型、实体抽取模型、元素连接模型和角色识别模型;
所述装置包括:
获取模块,用于获取待处理文本,提取所述待处理文本的句子特征向量;
关键句模块,用于将每个句子特征向量输入至动态预测模型,计算每个句子的动态预测得分,将所述动态预测得分大于得分阈值的句子确定为关键句;
抽取模块,用于对每个关键句进行事件类型分类,得到每个所述关键句的事件类型;以及,抽取每个所述关键句中的实体;
元素连接模块,用于将所述关键句中的实体按照所述事件类型进行划分,得到每个事件类型下的实体组合,其中,所述实体组合中包括该事件类型对应的至少一个所述实体;
角色识别模块,用于对每个所述事件类型的所述实体组合进行角色识别,以识别出所述实体组合中的至少一个所述实体的角色信息。
10.一种服务器,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述权利要求1-8任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310817553.5A CN116702774A (zh) | 2023-07-04 | 2023-07-04 | 文本抽取方法、装置及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310817553.5A CN116702774A (zh) | 2023-07-04 | 2023-07-04 | 文本抽取方法、装置及服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116702774A true CN116702774A (zh) | 2023-09-05 |
Family
ID=87825776
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310817553.5A Pending CN116702774A (zh) | 2023-07-04 | 2023-07-04 | 文本抽取方法、装置及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116702774A (zh) |
-
2023
- 2023-07-04 CN CN202310817553.5A patent/CN116702774A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Minh et al. | Deep learning approach for short-term stock trends prediction based on two-stream gated recurrent unit network | |
CN109101537B (zh) | 基于深度学习的多轮对话数据分类方法、装置和电子设备 | |
Chen et al. | Encoding candlesticks as images for pattern classification using convolutional neural networks | |
US11562147B2 (en) | Unified vision and dialogue transformer with BERT | |
CN110377733B (zh) | 一种基于文本的情绪识别方法、终端设备及介质 | |
CN113627151B (zh) | 跨模态数据的匹配方法、装置、设备及介质 | |
Ranparia et al. | Fake job prediction using sequential network | |
CN113378090B (zh) | 一种互联网网站相似度分析方法、装置以及可读存储介质 | |
Dael et al. | Stock Market Prediction Using Generative Adversarial Networks (GANs): Hybrid Intelligent Model. | |
CN113761910A (zh) | 一种融合情感特征的评论文本细粒度情感分析方法 | |
Jabreel et al. | Target-dependent Sentiment Analysis of Tweets using a Bi-directional Gated Recurrent Unit. | |
Sharma et al. | Credit card fraud detection using deep learning based on auto-encoder | |
CN115618875A (zh) | 一种基于命名实体识别的舆情评分方法、系统及存储介质 | |
CN116702774A (zh) | 文本抽取方法、装置及服务器 | |
CN115017894A (zh) | 一种舆情风险识别方法及装置 | |
Zulkifley et al. | A Survey on Stock Market Manipulation Detectors Using Artificial Intelligence. | |
CN112115258B (zh) | 一种用户的信用评价方法、装置、服务器及存储介质 | |
Deebadi | Understanding Impact of Twitter Feed on Bitcoin Price and Trading Patterns | |
Grönberg | Extracting salient named entities from financial news articles | |
Khang et al. | Detecting fraud transaction using ripper algorithm combines with ensemble learning model | |
Ghous et al. | Exchange stock price prediction using time series data: A survey | |
Eom et al. | Time-Weighted Cumulative LSTM Method Using Log Data for Predicting Credit Card Customer Turnover | |
Floratos et al. | Online Knowledge Distillation for Financial Timeseries Forecasting | |
CN116304058B (zh) | 企业负面信息的识别方法、装置、电子设备及存储介质 | |
CN116757159B (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 |