System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种从文本中进行产品实体识别并链接的方法技术_技高网

一种从文本中进行产品实体识别并链接的方法技术

技术编号:40972735 阅读:2 留言:0更新日期:2024-04-18 21:21
本发明专利技术提供一种从文本中进行产品实体识别并链接的方法,涉及自然语言处理技术领域,本发明专利技术主要是对Bert模型进行了改进,其思想是使用span双指针网络模块代替CRF模块,加快模型的训练速度和识别精度,同时利用W2NER模型和经过微调后的复旦cpt模型更全面的获取文本中的复杂实体,并对三个模型的结果进行融合,获得识别的产品实体集合。将获得的实体集合输入到句向量模型SimCSE模型,学习产品实体在不同语境下的含义以及实体之间的交互信息,获得实体的准确向量表示最后。利用基于Bert的二分类模型来确定产品实体与真正的连接实体,替代了向量之间计算余弦距离,曼哈顿距离或欧氏距离的方法来确定相似度,更好的利用到产品实体向量中的信息,提升实体链接的准确率。

【技术实现步骤摘要】

本专利技术涉及自然语言处理,尤其涉及一种从文本中进行产品实体识别并链接的方法


技术介绍

1、实体链接,也叫实体链指,是指从非结构化数据中将预先定义好的实体类型(产品、人名、机构、地名等)识别出来,通常这一步也被叫做实体识别。获得表示实体的词语(即所谓实体提及,对某个实体的指称项),并从另一个包含若干实体的知识库(领域词库,知识图谱等)中找到实体提及所表示的正确实体。实体链接的目的是为了将文本中的实体与知识库中的实体进行对应,从而获得更多的实体属性信息以及实体关系信息,从而提高自然语言处理的效果,有助于构建知识图谱。

2、目前,针对文本中的实体链接方法,一般流程是首先利用预训练模型进行实体识别,即从文本中识别出所有的命名实体的名字,再利用词向量模型或句向量模型获得实体的向量表示,通过计算向量相似度为这些实体生成候选的实体集合,最后利用二分类模型确定集合里的得分最高的实体作为链接实体返回。在第一步即实体识别中,也可以使用基于规则的实体抽取方法进行实体识别。这套流程在不同的场景和应用中都具有一定的优势和局限性,需要根据具体情况对流程中的模型以及方法进行选择和优化。

3、具体来说,实体链接的难点在于两个方面,即多词一义和一词多义,多词一义是指实体可能有多个指标,实体的标准名、别名、名称缩写等都可以用来指代该实体,比如某公司主营业务中提及“看台展览服务”,而另一个公司主营业务中提及“展览展示服务”,但是实际上这两个产品实体是表达相同意思,也就是说这两个产品实体都可以链接到产品数据库中的同一个产品实体上;而一词多义是指一个指标可以指代多个实体,比如某公司主营业务包含水果类别的“苹果”,而另一公司主营业务可以代理“苹果”牌手机,那么“苹果”这个词在这两个公司中就分别指代了不同的产品实体,链接到产品数据库中也不会是相同的实体。


技术实现思路

1、针对现有技术的不足,本专利技术提供一种从文本中进行产品实体识别并链接的方法。

2、一种从文本中进行产品实体识别并链接的方法,包括以下步骤:

3、步骤s1:从互联网以及f10数据库中收集上市公司的公司名称以及主营业务描述;

4、步骤s2:对收集的主营业务文本进行产品实体抽取,按照字符串相似度和语义相似度的方法对所有实体选取候选链接实体,从候选链接实体中选择正确的链接实体与产品实体形成链接实体对,获得数据集;

5、步骤s3:将标注数据转换为json格式,对超过512字主营业务的进行分段,将产品实体按照其在主营业务文本中出现的顺序及进行排序,同时进行数据增强,将主营业务中出现的产品实体替换为其对应的链接实体;

6、步骤s4:对所得到的json数据进行划分,按照设定比例划分为训练集,验证集与测试集;

7、步骤s5:将bert模型后连接span模块,以半指针-半标注的结构预测实体的起始位置,同时标注过程中给出实体类别,即设置两个指针分别对应实体的起始位置和结束位置,采用严格解码形式,重叠实体选取逻辑回归值最大的一个,同时这两个指针标注出该实体的类别,在输出层分别用两个稠密的指针网络标注实体起始位置和所属类别,使用labelsmooth缓解过拟合问题,最后损失由两个指针网络的损失累加求和;

8、步骤s6:训练并验证w2ner模型,所述w2ner模型将ner任务转换预测字与字的关系类别,统一处理扁平实体、重叠实体和非连续实体三种ner任务;

9、步骤s6-1:从训练数据中获取主营业务文本,通过文本长度限制,添加[cls]以及[sep]标记,padding对齐以及对输入句子进行tokenizer处理这些预处理操作,获得bert模型所需要的input_ids以及attention_mask。同时针对每段文本都构建一个shape为[句子长度,句子长度]取值为true的矩阵grid_mask2d,并将word pair中两个字的绝对距离转换为区间上的距离,存入变量dist_inputs中。

10、步骤s6-2:input_ids与attention_mask输入到bert模型和bilstm构成的编码层中,在该编码层中,首先进入bert模型训练,模型最后4层的输出取平均获得bert_embs,再对其进行变形等处理得到word_reps,输入到bilstm获取上下文信息;编码层输出得到word_reps。

11、步骤s6-3:通过conditional layer normalization获取word pair中字与字的嵌入向量表示。输出表示如下:

12、outputs=[(inputs-mean)/std]*gamma+beta

13、inputs表示对编码层的输出word_reps在第二个维度上进行维度扩展,使维度变为[batch_size,batch内最大句子长度,1,lstm的隐藏层大小]。mean表示在inputs的最后一个维度上进行平均值计算所得到的值;std表在对inputs的最后一个维度上进行方差计算所得到的值;对编码层的输出word_reps在第一个维度上进行维度扩展得到cond,维度变为[batch_size,1,batch内最大句子长度,lstm的隐藏层大小],对cond进行两个等shape线性变换得到gamma与beta,维度保持不变。

14、理论计算公式如下:

15、

16、其中vij表示word pair中两个word的向量表示embedding,hi表示条件condition,hj表示单个字的嵌入向量,σ为hj的均值,μ为hj的方差。通过hi计算得到参数γij和βij:

17、γij=wγhi+bγ

18、βij=wβhi+bβ

19、其中wγ、wβ分别表示γij和βij的权重矩阵,bγ、bβ表示γij和βij的bias偏置项;

20、hj的均值和方差计算公式如下:

21、

22、

23、其中dh为单个字的嵌入向量的size,即lstm的隐藏层大小,hjk表示单个字j的嵌入向量在下标k处的值。

24、步骤s6-4:利用grid_mask2d得到变量reg_emb,变量reg_emb表示两个字所在的区域是矩阵的左下三角还是右上三角区域,体现出字之间的方向信息;

25、步骤s6-5:利用dist_inputs得到变量dist_emb,变量dist_emb表示两个字之间的相对距离的嵌入向量表示。

26、步骤s6-6:将cln的输出,变量reg_emb与变量dist_emb在最后一个维度拼接起来,输入到卷积层中;卷积层中首先是一个核为1*1的常规卷积,紧接着一个3*3的多层核的空洞卷积。卷积层输出conv_outps的维度为[batch_size,batch内最大句子长度,batch'内最大句子长度,卷积层特征*3];

27、步骤s6-7:将编码层输出word_本文档来自技高网...

【技术保护点】

1.一种从文本中进行产品实体识别并链接的方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种从文本中进行产品实体识别并链接的方法,其特征在于,所述步骤S6具体包括以下步骤:

3.根据权利要求1所述的一种从文本中进行产品实体识别并链接的方法,其特征在于,步骤S11中所述基于Bert的二分类模型是在Bert模型后添加一个分类层,分类层的输入在默认情况下取Bery输出结果中[CL]位置的向量,设定情况下取所有位置向量的均值,输出则是每个类别对应的logits值。

4.根据权利要求1所述的一种从文本中进行产品实体识别并链接的方法,其特征在于,所述步骤S11具体包括以下步骤:

【技术特征摘要】

1.一种从文本中进行产品实体识别并链接的方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种从文本中进行产品实体识别并链接的方法,其特征在于,所述步骤s6具体包括以下步骤:

3.根据权利要求1所述的一种从文本中进行产品实体识别并链接的方法,其特征在于,步骤s11中所述基于be...

【专利技术属性】
技术研发人员:颜为民陈伟成王广普张斌陈建
申请(专利权)人:财咨道信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1