CN113836930A - 一种中文危险化学品命名实体识别方法 - Google Patents
一种中文危险化学品命名实体识别方法 Download PDFInfo
- Publication number
- CN113836930A CN113836930A CN202111143088.9A CN202111143088A CN113836930A CN 113836930 A CN113836930 A CN 113836930A CN 202111143088 A CN202111143088 A CN 202111143088A CN 113836930 A CN113836930 A CN 113836930A
- Authority
- CN
- China
- Prior art keywords
- bert
- bilstm
- self
- layer
- chinese
- 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
- 239000000126 substance Substances 0.000 title claims abstract description 74
- 238000000034 method Methods 0.000 title claims abstract description 37
- 239000013598 vector Substances 0.000 claims abstract description 73
- 239000000383 hazardous chemical Substances 0.000 claims abstract description 40
- 238000012549 training Methods 0.000 claims abstract description 37
- 238000003062 neural network model Methods 0.000 claims abstract description 23
- 230000007246 mechanism Effects 0.000 claims abstract description 20
- 238000005065 mining Methods 0.000 claims abstract description 7
- 238000004140 cleaning Methods 0.000 claims abstract description 6
- 230000006870 function Effects 0.000 claims description 52
- 239000011159 matrix material Substances 0.000 claims description 17
- 230000004913 activation Effects 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 9
- 231100000647 material safety data sheet Toxicity 0.000 claims description 8
- 230000001537 neural effect Effects 0.000 claims description 8
- 230000001413 cellular effect Effects 0.000 claims description 7
- 230000002457 bidirectional effect Effects 0.000 claims description 5
- 238000009826 distribution Methods 0.000 claims description 5
- 230000001965 increasing effect Effects 0.000 claims description 5
- 238000001914 filtration Methods 0.000 claims description 4
- 238000010606 normalization Methods 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 125000004432 carbon atom Chemical group C* 0.000 claims description 2
- 230000009193 crawling Effects 0.000 claims description 2
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000002372 labelling Methods 0.000 description 4
- 230000007547 defect Effects 0.000 description 3
- 239000003814 drug Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- NWIBSHFKIJFRCO-WUDYKRTCSA-N Mytomycin Chemical compound C1N2C(C(C(C)=C(N)C3=O)=O)=C3[C@@H](COC(N)=O)[C@@]2(OC)[C@@H]2[C@H]1N2 NWIBSHFKIJFRCO-WUDYKRTCSA-N 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 239000007789 gas Substances 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 239000002341 toxic gas Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- MPNXSZJPSVBLHP-UHFFFAOYSA-N 2-chloro-n-phenylpyridine-3-carboxamide Chemical compound ClC1=NC=CC=C1C(=O)NC1=CC=CC=C1 MPNXSZJPSVBLHP-UHFFFAOYSA-N 0.000 description 1
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 229960004857 mitomycin Drugs 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 230000003313 weakening effect Effects 0.000 description 1
Images
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
- G06F40/295—Named entity recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- 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
- G06N3/044—Recurrent networks, e.g. Hopfield networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Biomedical Technology (AREA)
- Machine Translation (AREA)
Abstract
本发明涉及一种中文危险化学品命名实体识别方法,包括步骤:获取危险化学品语料;对获取的危险化学品语料进行数据清洗和预处理,构建危化品数据集;构建BERT‑BiLSTM‑self‑Attention‑CRF神经网络模型;对识别文本进行命名实体识别。本发明的有益效果是:提出了一种基于BERT的中文危险化学品命名实体识别模型,该模型在BiLSTM‑CRF模型的基础上,利用预训练语言模型BERT获取危险化学品领域的文本字符级别编码,得到基于上下文信息的字向量,然后引入注意力机制,增强模型挖掘文本的全局和局部特征的能力。在自行构建的危险化学品语料库上的实验结果表面,该模型在各项指标上显著优于其他命名实体识别方法。
Description
技术领域
本发明属于命名实体识别技术领域,尤其涉及一种中文危险化学品命名实体识别方法。
背景技术
众所周知,化学工业的迅速发展推动了其它工业的进步,但同时其造成的化学事故的规模和频率也在逐年上升。为了从信息化和智能化角度入手,缓解危化品安全生产的监管压力,可以通过建立危化品领域知识图谱来辅助工作人员进行判断推理。而命名实体识别则是构建知识图谱的重要前提。
命名实体识别任务目的是从目标文本中识别出符合预定义语义类型的实体,是自然语言处理的一项基本任务,为下游的任务提供服务。目前,命名实体识别方法主要有四种方式:1)基于规则的方式,该方式不需要标注数据,但是依赖手工制作的规则;2)无监督学习方法,该方法依赖无监督学习,不需要手工的标记数据;3)基于特征的统计机器学习方法,该方法依赖特征选择。常见的命名实体识别模型有马尔可夫模型、支持向量机、条件随机场等;4)基于深度学习的方法,这也是现如今最常用的方法,主流模型是BiLSTM-CRF模型。与基于特征的方法比较,深度学习算法更能自动的发现隐藏特征,并且效果也更好。
但是BiLSTM-CRF模型的缺点在于,词嵌入层的词向量无法对一词多义的词进行很好的表达,从而影响最终结果的准确率。同时,BiLSTM模型在进行全局的特征提取时,会忽略掉词间的部分局部特征,使得语义表达不完整,也会影响最终的结果。同时,目前并没有针对中文危险化学品领域的命名实体识别的相关研究,由于中文危险化学品领域的标签数据匮乏,现有的方法直接应用于中文危险化学品领域效果并不理想,实体的识别精度不高。
中国发明专利(申请号:2019103673769,专利名称:具体涉及一种基于中医古籍文献的中医命名实体识别方法及识别***),通过利用预训练模型BERT,基于小样本训练集,节省了人工标注的成本,提高了识别效果及准确率,为之后对中医古籍医案的全面利用打下了基础。
发明内容
本发明的目的是克服现有技术中的不足,提供一种中文危险化学品命名实体识别方法。
这种中文危险化学品命名实体识别方法,具体包括以下步骤:
S1、获取危险化学品语料;
S2、对步骤S1获取的危险化学品语料进行数据清洗和预处理,构建危化品数据集;
S3、构建BERT-BiLSTM-self-Attention-CRF神经网络模型;使用步骤S2得到的危化品数据集,对构建好的BERT-BiLSTM-self-Attention-CRF神经网络模型进行训练;
S3.1、输入危化品数据集中的字符,对字符进行向量表示,生成BERT输入编码向量;BERT输入编码向量由字嵌入(WordPiece嵌入)、分段嵌入和位置嵌入的编码字向量融合而成;将BiLSTM层的输入由Word2Vec预训练词向量(BERT以前常用的词向量嵌入技术)替换为BERT预训练语言模型输出的字嵌入向量;
BERT的网络架构是多层Transformer结构,BERT进行自注意力计算的方法为:
S3.2、将BERT预训练语言模型输出的字嵌入向量输入到BiLSTM层中,BiLSTM层采用双向的LSTM神经单元,BiLSTM层的LSTM神经单元结构的遗忘门、输入门、输出门的具体公式如下:
ft=σ(Wf[ht-1,xt]+bf)
it=σ(Wi[ht-1,xt]+bi)
ot=σ(Wo[ht-1,xt]+bo)
上式中:ft、it、ot分别表示遗忘门、输入门和输出门;Wf、Wi、Wo分别表示遗忘门、输入门和输出门对应的权重矩阵;bf、bi、bo分别表示遗忘门、输入门和输出门对应的偏置向量;σ表示sigmoid激活函数;xt表示tn时刻经过编码的输入字符向量;ht-1表示tn-1时刻的隐藏层状态;Ct-1表示tn-1时刻的细胞状态;;
细胞状态的更新公式如下:
Ct=ft⊙Ct-1+it⊙tanh(Wc[ht-1,xt]+bc)
上式中,⊙表示哈达玛积;tanh为双曲正切激活函数;Wc和bc分别表示细胞状态更新时的权重矩阵和偏置向量;
隐藏层状态的更新公式如下:
ht=ot⊙tanh(Ct)
上式中,ot表示输出门,tanh为双曲正切激活函数,Ct表示tn时刻的细胞状态;
S3.3、将步骤S3.2得到的BiLSTM层的输出特征向量输入到自注意力机制层;自注意力机制层的计算方法如下:
MultiHead(Q,K,V)=Concat(head1,...,headh)WO
上式中:Wi Q、WO分别表示Attention( )、Concat( )进行线性变换用到的权重矩阵;headi表示多头自注意力模块中的第i个头,Concat( )表示拼接向量操作;自注意力机制层对提取到的特征进行权重分配,强化字向量之间相互关联大于设定值的特征,弱化字向量之间的无关特征,让字向量更注重起关键作用的特征;
S3.4、将S3.3得到的自注意力机制层输出的特征向量输入到CRF层,挖掘危化品数据集中标签之间的相互依赖关系,得到危化品数据集中标签序列的得分函数;使得标签间出现的顺利合理,并计算损失函数;将最佳预测标签序列作为中文危险化学品命名实体识别的结果;
S3.5、采用SGD随机下降法,用CRF层计算的危化品数据集中标签序列得分函数的训练损失函数来更新整个BERT-BiLSTM-self-Attention-CRF神经网络模型的参数;直至损失函数达到预设要求,或者迭代轮数达到设定的最大迭代次数,终止BERT-BiLSTM-self-Attention-CRF神经网络模型的训练;
S4、利用步骤S3训练得到的BERT-BiLSTM-self-Attention-CRF神经网络模型对识别文本进行命名实体识别,得到识别结果。
作为优选,步骤S1具体为:由于危险化学品领域文本样式多种多样且格式不同,在专家建议下,本发明决定以《危险化学品目录(2015版)》中记录的2828种危险化学品为对象,爬取2828种危险化学品对应的MSDS文件(化学品安全技术说明书,Material SafetyData Sheets)作为危险化学品语料。
作为优选,步骤S2具体包括以下步骤:
S2.1、对于获取的危险化学品语料(MSDS文件),首先滤掉无用的信息,以句子为单位分隔语料,生成危化品数据集;
S2.2、根据实际需求确定识别的实体类别;
S2.3、为了解决命名实体间长度不一、难以区分实体边界的情况,采用BIOES格式来进行实体标注:B表示实体的第一个字符、I表示实体的中间字符、E表示实体的最后一个字符、S表示单独一个字符作为一个实体、0表示非实体;
S2.4、针对危化品数据集中标签分布不均匀的问题,采用数据增强方式,人为增加危化品数据集中数据量小于设定值的标签的出现次数。
作为优选,步骤S2.1中无用的信息包括图片和重复信息。
作为优选,步骤S2.4中标签为数据集中危险化学品语料的属性。
作为优选,步骤S3.4具体包括以下步骤:
S3.4.1、在线性链条件随机场中,危化品数据集中标签序列的得分函数为:
上式中,X为输入序列,x表示输入序列的随机取值,y表示对应于x的输出值,i表示x对应的位置,score(X,y)表示给定X的条件下Y=y的概率;tk为局部特征函数,sl为节点特征函数,λk、μl分别是tk、sl的权重系数,k、l分别表示局部特征函数和节点特征函数的个数;
危化品数据集中标签序列得分函数的训练损失函数为:
上式中,λ表示惩罚项系数,θ表示惩罚项;
S3.4.2、对于给定的输入序列X,得到所有预测的输出标签序列的分数,进行归一化操作后的公式为:
S3.4.3、利用维特比(Viterbi)算法得到最佳预测标签序列:
y*=argmax(score(X,y))。
作为优选,步骤S3.5中BERT-BiLSTM-self-Attention-CRF神经网络模型的参数包括BiLSTM层、自注意力机制层、CRF层的模型参数。
作为优选,步骤S2.2确定识别的实体类别包括主体、条件、风险、产物(或结果)。
作为优选,步骤S2.4中采用的数据增强方式包括同义词替换和实体替换。
本发明的有益效果是:
本发明提出了一种基于BERT的中文危险化学品命名实体识别模型(BERT-BiLSTM-self-Attention-CRF),该模型在BiLSTM-CRF模型的基础上,利用预训练语言模型BERT获取危险化学品领域的文本字符级别编码,得到基于上下文信息的字向量,然后引入注意力机制,增强模型挖掘文本的全局和局部特征的能力。在自行构建的危险化学品语料库上的实验结果表面,该模型在各项指标上显著优于其他命名实体识别方法。
BERT-BiLSTM-self-Attention-CRF模型,能够更好的获取到句子间的语义关系,能够更好的利用上下文信息,从而提高序列标注任务的准确度,对构建危险化学品领域知识图谱有着很强的促进作用。
附图说明
图1为本发明提出的BERT-BiLSTM-self-Attention-CRF神经网络模型的命名实体识别方法的流程示意图;
图2为本发明提出的BERT-BiLSTM-self-Attention-CRF神经网络模型的结构图;
图3为BERT模型输入词向量图;
图4为LSTM单元结构图。
具体实施方式
下面结合实施例对本发明做进一步描述。下述实施例的说明只是用于帮助理解本发明。应当指出,对于本技术领域的普通人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
实施例一
本申请实施例一提供了一种如图1所示中文危险化学品命名实体识别方法:
S1、获取危险化学品语料;
S2、对步骤S1获取的危险化学品语料进行数据清洗和预处理,构建危化品数据集;
S3、构建BERT-BiLSTM-self-Attention-CRF神经网络模型;使用步骤S2得到的危化品数据集,对构建好的BERT-BiLSTM-self-Attention-CRF神经网络模型进行训练;
S3.1、输入危化品数据集中的字符,对字符进行向量表示,生成BERT输入编码向量;BERT输入编码向量由字嵌入、分段嵌入和位置嵌入的编码字向量融合而成;将BiLSTM层的输入替换为BERT预训练语言模型输出的字嵌入向量;
BERT的网络架构是多层Transformer结构,BERT进行自注意力计算的方法为:
上式中:Q、K、V分别为查询项矩阵、查询项对应的键项矩阵、待加权平均的值项矩阵;dk为查询项矩阵的维度;
S3.2、将BERT预训练语言模型输出的字嵌入向量输入到BiLSTM层中,BiLSTM层采用双向的LSTM神经单元,BiLSTM层的LSTM神经单元结构的遗忘门、输入门、输出门的具体公式如下:
ft=σ(Wf[ht-1,xt]+bf)
it=σ(Wi[ht-1,xt]+bi)
ot=σ(Wo[ht-1,xt]+bo)
上式中:ft、ft、ot分别表示遗忘门、输入门和输出门;Wf、Wi、Wo分别表示遗忘门、输入门和输出门对应的权重矩阵;bf、bi、bo分别表示遗忘门、输入门和输出门对应的偏置向量;σ表示sigmoid激活函数;xt表示tn时刻经过编码的输入字符向量;ht-1表示tn-1时刻的隐藏层状态;Ct-1表示tn-1时刻的细胞状态;
细胞状态的更新公式如下:
Ct=ft⊙Ct-1+it⊙tanh(Wc[ht-1,xt]+bc)
上式中,⊙表示哈达玛积;tanh为双曲正切激活函数;Wc和bc分别表示细胞状态更新时的权重矩阵和偏置向量;
隐藏层状态的更新公式如下:
ht=ot⊙tanh(Ct)
上式中,ot表示输出门,tanh为双曲正切激活函数,Ct表示tn时刻的细胞状态;
S3.3、将步骤S3.2得到的BiLSTM层的输出特征向量输入到自注意力机制层;自注意力机制层的计算方法如下:
MultiHead(Q,K,V)=Concat(head1,...,headh)WO
上式中:Wi Q、WO分别表示Attention( )、Concat( )进行线性变换用到的权重矩阵;headi表示多头自注意力模块中的第i个头,Concat( )表示拼接向量操作;自注意力机制层对提取到的特征进行权重分配,强化字向量之间相互关联大于设定值的特征,弱化字向量之间的无关特征;
S3.4、将S3.3得到的自注意力机制层输出的特征向量输入到CRF层,挖掘危化品数据集中标签之间的相互依赖关系,得到危化品数据集中标签序列的得分函数;并计算损失函数;将最佳预测标签序列作为中文危险化学品命名实体识别的结果;
S3.5、采用SGD随机下降法,用CRF层计算的危化品数据集中标签序列得分函数的训练损失函数来更新整个BERT-BiLSTM-self-Attention-CRF神经网络模型的参数;直至损失函数达到预设要求,或者迭代轮数达到设定的最大迭代次数,终止BERT-BiLSTM-self-Attention-CRF神经网络模型的训练;
S4、利用步骤S3训练得到的BERT-BiLSTM-self-Attention-CRF神经网络模型对识别文本进行命名实体识别,得到识别结果。
实施例二
在实施例一的基础上,本申请实施例二提供了实施例一中中文危险化学品命名实体识别方法在具体实例中的应用:
S1、获取中文危险化学品语料;
进一步的,获取危险化学品语料,具体包括以下步骤:
S1-1、由于危险化学品领域文本样式多种多样且格式不同,在专家建议下,本实施例决定以《危险化学品目录(2015版)》中记录的2828种危险化学品为对象进行信息爬取;
S1-2、针对步骤S1-1中选定的2828中危险化学品,爬取这些危险化学品对应的化学品安全技术说明书(Material Safety Data Sheets,MSDS);
S2、对步骤S1获取的危险化学品语料进行数据清洗和预处理,构建数据集,类别描述见下表1;
表1本实施例建立的危险化学品领域数据集实体类别表
进一步的,步骤S2对获取的危险化学品语料进行数据清洗和预处理,构建数据集,具体包括步骤:
S2-1、对于获取的MSDS文件,首先滤掉图片、重复信息等无用的信息,以句子为单位分隔语料,生成数据集;
由于MSDS文件是结构性的文件,所以很多危险化学品的属性有的相同的描述,比如丝裂霉素C和三甲基氯化铵的燃爆危险都有“遇明火、高热可燃”和“受高热分解放出有毒的气体”;同时MSDS文件会使用分子式图来描述危险化学品结构,也会收录很多在本任务中不会使用的到属性,所以需要进行过滤筛选。
S2-2、根据实际需求确定需要识别的实体类别,本实施例确定的实体分四大类,分别是主体、条件、风险、产物或结果;
S2-3、为了解决命名实体间长度不一、难以区分实体边界的情况,采用BIOES格式来实现实体标注:B表示实体的第一个字符、I表示实体的中间字符、E表示实体的最后一个字符、S表示单独一个字符是一个实体、O表示非实体。比如“是一种易燃易爆气体”,人工标注的实体标注为“O O O B-RISK E-RISK B-RISK E-RISK O O”;
S2-4、针对数据集中标签分布不均匀,采用数据增强方式,比如同义词替换,实体替换等,人为的增加数据量少的标签的出现次数;
比如形成的数据集中,主体和产物或结果标签数量少于条件和风险标签数量,所以可以对相似的主体间进行实体替换,这样既可以充实数据集,也可以增加主体的标签数量;对于产物或结果标签采用同义词替换,比如将“有毒气体”替换成“有害气体”。
S3、使用步骤S2得到的危化品数据集,对于构建好的BERT-BiLSTM-self-Attention-CRF模型进行训练,模型结构图如图2所示;
进一步的,步骤S3构建BERT-BiLSTM-self-Attention-CRF神经网络模型,具体包括步骤:
S3-1、将BiLSTM的输入由Word2Vec预训练词向量替换成BERT预训练词向量,由BERT输出字嵌入向量;
进一步的,步骤S3-1中,如图3所示,BERT的输入编码向量是三个嵌入特征向量的单位和,分别是1)WordPiece嵌入,WordPiece是将单词拆分成一组公共的子词单元,是单词灵活性和准确性的一个折中方案,中文无法拆分,所以中文BERT预训练模型此处是字嵌入;
2)位置嵌入,指将单词的位置信息编码成特征向量,表示该单词在句子中的位置,在中文BERT预训练模型中此处是字向量的位置嵌入;3)分段嵌入,用于区分两个句子,判断B是否是A的下文。除此之外,输入中还包含两个特殊符号“[CLS]”和“[SEP]”,其中“[CLS]”表示该特征用于分类模型,“[SEP]”表示分句符号,用于断开输入语料的两个句子;
本实施例选择是BERT预训练模型是由HuggingFace提供的bert-chinese-base版本,BERT部分代码参考Google官方给出的代码范例;
BERT的网络架构使用的是多层Transformer结构,进行自注意力计算方法如下:
S3-2、将BERT预训练语言模型输出的字向量输入到BiLSTM神经网络模型中;
进一步的,步骤S3-2中,将BERT预训练语言模型输出字向量输入到BiLSTM层中(BiLSTM层采用双向的LSTM神经单元,同时学习文本的上文和下文信息,并对输出向量进行拼接,从而使字输出向量能够同时兼备上下文信息,克服了单LSTM语义信息不完整的缺点,使得实验结果更加准确;例如:对于一个序列{1,2,3,4},一个LSTM从前往后1->2->3->4的寻找特征,一个LSTM从后往前4->3->2->1的寻找特征,然后再把寻找到的特征信息进行融合),BiLSTM层的神经单元的计算方法如下:
LSTM单元结构如图4所示,遗忘门、输入门、输出门的具体公式如下:
ft=σ(Wf[ht-1,xt]+bf)
it=σ(Wi[ht-1,xt]+bi)
ot=σ(Wo[ht-1,xt]+bo)
式中:ft、it、ot分别表示遗忘门、输入门和输出门;Wf、Wi、Wo分别表示对应的权重矩阵;bf、bi、bo分别表示对应的偏置向量;σ表示sigmoid激活函数;xt表示tn时刻的经过编码的输入字符向量;ht-1表示tn-1时刻的隐藏层状态;ht-1表示tn-1时刻的细胞状态。
细胞状态的更新公式如下:
式中:⊙表示哈达玛积;tanh为双曲正切激活函数;Wc和bc分别表示更新状态的权重矩阵和偏置向量。
Ct=ft⊙Ct-1+it⊙tanh(Wc[ht-1,xt]+bc)
隐藏层状态的更新公式如下:
ht=ot⊙tanh(Ct)
本实施例采用BiLSTM模型,利用双向的LSTM,同时学习文本的上文和下文信息,并对输出向量进行拼接,从而使字输出向量能够同时兼备上下文信息,克服了单LSTM语义信息不完整的缺点,使得实验结果更加准确。
S3-3、将步骤S3-2得到的特征向量输入到自注意力机制层,对提取到的特征进行权重分配,强化字符之间相互关联大的特征,弱化无关特征,让字向量更注重起关键作用的特征;
进一步的,步骤S3-3中,采用多头自注意力机制,计算方法如下:
MultiHead(Q,K,V)=Concat(head1,...,headh)WO
S3-4、将S3-3得到的特征向量输入到CRF层,挖掘标签之间的相互依赖关系,使得标签间出现的顺利合理,并计算损失函数;
进一步的,步骤S3-4中,将通过自注意力机制层加强语义后的字向量输入到CRF层中,挖掘标签之间的相互依赖关系,使得标签间出现的顺利合理,并计算损失函数,具体包括:
在线性链条件随机场中,标签序列的得分函数可表示为:
式中:X表示输入序列,x表示输入序列的随机取值,y表示对应于x的输出值,i表示x对应的位置,tk表示局部特征函数,用于寻找节点间的转移依赖关系,sl表示节点特征函数,用于寻找节点状态与输出的关系,λk、μl分别是tk、sl的权重系数,k、l分别代表转移特征函数和状态特征函数的个数。例如:y={1,2,3,4},\hat y={1,3,2,4},y表示实际的顺序,\hat y表示预测出的标注序列,希望预测的是这个顺序;
对于给定的输入序列X,得到所有可能的标签序列的分数,归一化公式为:
最后,利用维特比(Viterbi)算法得到最佳预测标签序列:
y*=argmax(score(X,y))
例如:有y={1,2,3,4},\hat y2={4,3,2,1},对比可见\hat y={1,3,2,4}预测的正确个数比\hat y2多,所以在只有两个预测结果的情况下,\hat y为最佳预测标签序列。
训练损失函数为:
式中:λ表示惩罚项系数,θ表示惩罚项。
S3-5、采用SGD随机下降法用CRF层计算的损失函数更新整个模型的参数,包括BiLSTM层、自注意力机制层、CRF层的模型参数,直至模型损失函数达到预设要求或者迭代轮数达到最大迭代次数,终止模型训练。
S4、利用步骤S3得到训练好的BERT-BiLSTM-self-Attention-CRF的神经网络模型对识别文本进行命名实体识别,得到识别结果。如下表2所示,在多种命名实体识别的模型中,BERT-BiLSTM-self-Attention-CRF在精确率、召回率和F1参数都能获得更好的效果。
表2在危险化学品数据集上不同模型的命名实体识别结果对比表
Claims (9)
1.一种中文危险化学品命名实体识别方法,其特征在于,包括以下步骤:
S1、获取危险化学品语料;
S2、对步骤S1获取的危险化学品语料进行数据清洗和预处理,构建危化品数据集;
S3、构建BERT-BiLSTM-self-Attention-CRF神经网络模型;使用步骤S2得到的危化品数据集,对构建好的BERT-BiLSTM-self-Attention-CRF神经网络模型进行训练;
S3.1、输入危化品数据集中的字符,对字符进行向量表示,生成BERT输入编码向量;BERT输入编码向量由字嵌入、分段嵌入和位置嵌入的编码字向量融合而成;将BiLSTM层的输入替换为BERT预训练语言模型输出的字嵌入向量;
BERT的网络架构是多层Transformer结构,BERT进行自注意力计算的方法为:
上式中:Q、K、V分别为查询项矩阵、查询项对应的键项矩阵、待加权平均的值项矩阵;dk为查询项矩阵的维度;
S3.2、将BERT预训练语言模型输出的字嵌入向量输入到BiLSTM层中,BiLSTM层采用双向的LSTM神经单元,BiLSTM层的LSTM神经单元结构的遗忘门、输入门、输出门的具体公式如下:
ft=σ(Wf[ht-1,xt]+bf)
it=σ(Wi[ht-1,xt]+bi)
ot=σ(Wo[ht-1,xt]+bo)
上式中:ft、it、ot分别表示遗忘门、输入门和输出门;Wf、Wi、Wo分别表示遗忘门、输入门和输出门对应的权重矩阵;bf、bi、bo分别表示遗忘门、输入门和输出门对应的偏置向量;σ表示sigmoid激活函数;xt表示tn时刻经过编码的输入字符向量;ht-1表示tn-1时刻的隐藏层状态;Ct-1表示tn-1时刻的细胞状态;;
细胞状态的更新公式如下:
Ct=ft⊙Ct-1+it⊙tanh(Wc[ht-1,xt]+bc)
上式中,⊙表示哈达玛积;tanh为双曲正切激活函数;Wc和bc分别表示细胞状态更新时的权重矩阵和偏置向量;
隐藏层状态的更新公式如下:
ht=ot⊙tanh(Ct)
上式中,ot表示输出门,tanh为双曲正切激活函数,Ct表示tn时刻的细胞状态;
S3.3、将步骤S3.2得到的BiLSTM层的输出特征向量输入到自注意力机制层;自注意力机制层的计算方法如下:
headi=Attention(QWi Q,KWi K,VWi V)
MultiHead(Q,K,V)=Concat(head1,...,headh)WO
上式中:Wi Q、Wi K、Wi V、WO分别表示Attention( )、Concat( )进行线性变换用到的权重矩阵;headi表示多头自注意力模块中的第i个头,Concat( )表示拼接向量操作;自注意力机制层对提取到的特征进行权重分配,强化字向量之间相互关联大于设定值的特征,弱化字向量之间的无关特征;
S3.4、将S3.3得到的自注意力机制层输出的特征向量输入到CRF层,挖掘危化品数据集中标签之间的相互依赖关系,得到危化品数据集中标签序列的得分函数;并计算损失函数;将最佳预测标签序列作为中文危险化学品命名实体识别的结果;
S3.5、采用SGD随机下降法,用CRF层计算的危化品数据集中标签序列得分函数的训练损失函数来更新整个BERT-BiLSTM-self-Attention-CRF神经网络模型的参数;直至损失函数达到预设要求,或者迭代轮数达到设定的最大迭代次数,终止BERT-BiLSTM-self-Attention-CRF神经网络模型的训练;
S4、利用步骤S3训练得到的BERT-BiLSTM-self-Attention-CRF神经网络模型对识别文本进行命名实体识别,得到识别结果。
2.根据权利要求1所述中文危险化学品命名实体识别方法,其特征在于,步骤S1具体为:以《危险化学品目录(2015版)》中记录的2828种危险化学品为对象,爬取2828种危险化学品对应的MSDS文件作为危险化学品语料。
3.根据权利要求1所述中文危险化学品命名实体识别方法,其特征在于,步骤S2具体包括以下步骤:
S2.1、对于获取的危险化学品语料,首先滤掉无用的信息,以句子为单位分隔语料,生成危化品数据集;
S2.2、确定识别的实体类别;
S2.3、采用BIOES格式来进行实体标注:B表示实体的第一个字符、I表示实体的中间字符、E表示实体的最后一个字符、S表示单独一个字符作为一个实体、O表示非实体;
S2.4、采用数据增强方式,人为增加危化品数据集中数据量小于设定值的标签的出现次数。
4.根据权利要求3所述中文危险化学品命名实体识别方法,其特征在于:步骤S2.1中无用的信息包括图片和重复信息。
5.根据权利要求3所述中文危险化学品命名实体识别方法,其特征在于:步骤S2.4中标签为数据集中危险化学品语料的属性。
6.根据权利要求3所述中文危险化学品命名实体识别方法,其特征在于,步骤S3.4具体包括以下步骤:
S3.4.1、在线性链条件随机场中,危化品数据集中标签序列的得分函数为:
上式中,X为输入序列,x表示输入序列的随机取值,y表示对应于x的输出值,i表示x对应的位置,score(X,y)表示给定X的条件下Y=y的概率;tk为局部特征函数,sl为节点特征函数,λk、μl分别是tk、sl的权重系数,k、l分别表示局部特征函数和节点特征函数的个数;
危化品数据集中标签序列得分函数的训练损失函数为:
上式中,λ表示惩罚项系数,θ表示惩罚项;
S3.4.2、对于给定的输入序列X,得到所有预测的输出标签序列的分数,进行归一化操作后的公式为:
S3.4.3、利用维特比算法得到最佳预测标签序列:
y*=argmax(score(X,y))。
7.根据权利要求1所述中文危险化学品命名实体识别方法,其特征在于:步骤S3.5中BERT-BiLSTM-self-Attention-CRF神经网络模型的参数包括BiLSTM层、自注意力机制层、CRF层的模型参数。
8.根据权利要求1所述中文危险化学品命名实体识别方法,其特征在于:步骤S2.2确定识别的实体类别包括主体、条件、风险、产物。
9.根据权利要求1所述中文危险化学品命名实体识别方法,其特征在于:步骤S2.4中采用的数据增强方式包括同义词替换和实体替换。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111143088.9A CN113836930A (zh) | 2021-09-28 | 2021-09-28 | 一种中文危险化学品命名实体识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111143088.9A CN113836930A (zh) | 2021-09-28 | 2021-09-28 | 一种中文危险化学品命名实体识别方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113836930A true CN113836930A (zh) | 2021-12-24 |
Family
ID=78966962
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111143088.9A Pending CN113836930A (zh) | 2021-09-28 | 2021-09-28 | 一种中文危险化学品命名实体识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113836930A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114861600A (zh) * | 2022-07-07 | 2022-08-05 | 之江实验室 | 一种面向ner的中文临床文本数据增强方法及装置 |
CN114880472A (zh) * | 2022-04-28 | 2022-08-09 | 支付宝(杭州)信息技术有限公司 | 数据处理方法、装置及设备 |
CN115186667A (zh) * | 2022-07-19 | 2022-10-14 | 平安科技(深圳)有限公司 | 基于人工智能的命名实体识别方法及装置 |
CN115640810A (zh) * | 2022-12-26 | 2023-01-24 | 国网湖北省电力有限公司信息通信公司 | 一种电力***通信敏感信息识别方法、***及存储介质 |
CN116451690A (zh) * | 2023-03-21 | 2023-07-18 | 麦博(上海)健康科技有限公司 | 一种医疗领域命名实体识别的方法 |
CN116484848A (zh) * | 2023-03-17 | 2023-07-25 | 北京深维智讯科技有限公司 | 一种基于nlp的文本实体识别方法 |
CN116611439A (zh) * | 2023-07-19 | 2023-08-18 | 北京惠每云科技有限公司 | 医疗信息抽取方法、装置、电子设备及存储介质 |
CN116776884A (zh) * | 2023-06-26 | 2023-09-19 | 中山大学 | 一种用于医学命名实体识别的数据增强方法及*** |
CN117933259A (zh) * | 2024-03-25 | 2024-04-26 | 成都中医药大学 | 基于局部文本信息的命名实体识别方法 |
-
2021
- 2021-09-28 CN CN202111143088.9A patent/CN113836930A/zh active Pending
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114880472A (zh) * | 2022-04-28 | 2022-08-09 | 支付宝(杭州)信息技术有限公司 | 数据处理方法、装置及设备 |
CN114861600B (zh) * | 2022-07-07 | 2022-12-13 | 之江实验室 | 一种面向ner的中文临床文本数据增强方法及装置 |
CN114861600A (zh) * | 2022-07-07 | 2022-08-05 | 之江实验室 | 一种面向ner的中文临床文本数据增强方法及装置 |
US11972214B2 (en) | 2022-07-07 | 2024-04-30 | Zhejiang Lab | Method and apparatus of NER-oriented chinese clinical text data augmentation |
CN115186667A (zh) * | 2022-07-19 | 2022-10-14 | 平安科技(深圳)有限公司 | 基于人工智能的命名实体识别方法及装置 |
CN115186667B (zh) * | 2022-07-19 | 2023-05-26 | 平安科技(深圳)有限公司 | 基于人工智能的命名实体识别方法及装置 |
CN115640810A (zh) * | 2022-12-26 | 2023-01-24 | 国网湖北省电力有限公司信息通信公司 | 一种电力***通信敏感信息识别方法、***及存储介质 |
CN116484848B (zh) * | 2023-03-17 | 2024-03-29 | 北京深维智讯科技有限公司 | 一种基于nlp的文本实体识别方法 |
CN116484848A (zh) * | 2023-03-17 | 2023-07-25 | 北京深维智讯科技有限公司 | 一种基于nlp的文本实体识别方法 |
CN116451690A (zh) * | 2023-03-21 | 2023-07-18 | 麦博(上海)健康科技有限公司 | 一种医疗领域命名实体识别的方法 |
CN116776884A (zh) * | 2023-06-26 | 2023-09-19 | 中山大学 | 一种用于医学命名实体识别的数据增强方法及*** |
CN116611439B (zh) * | 2023-07-19 | 2023-09-19 | 北京惠每云科技有限公司 | 医疗信息抽取方法、装置、电子设备及存储介质 |
CN116611439A (zh) * | 2023-07-19 | 2023-08-18 | 北京惠每云科技有限公司 | 医疗信息抽取方法、装置、电子设备及存储介质 |
CN117933259A (zh) * | 2024-03-25 | 2024-04-26 | 成都中医药大学 | 基于局部文本信息的命名实体识别方法 |
CN117933259B (zh) * | 2024-03-25 | 2024-06-14 | 成都中医药大学 | 基于局部文本信息的命名实体识别方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113836930A (zh) | 一种中文危险化学品命名实体识别方法 | |
CN110210037B (zh) | 面向循证医学领域的类别检测方法 | |
CN110377903B (zh) | 一种句子级实体和关系联合抽取方法 | |
CN107967257B (zh) | 一种级联式作文生成方法 | |
CN112614538A (zh) | 一种基于蛋白质预训练表征学习的抗菌肽预测方法和装置 | |
CN107315738B (zh) | 一种文本信息的创新度评估方法 | |
CN109670177A (zh) | 一种基于lstm实现医学语义归一化的控制方法及控制装置 | |
CN111858940B (zh) | 一种基于多头注意力的法律案例相似度计算方法及*** | |
CN110532328A (zh) | 一种文本概念图构造方法 | |
CN113705238B (zh) | 基于bert和方面特征定位模型的方面级情感分析方法及*** | |
CN112905736B (zh) | 一种基于量子理论的无监督文本情感分析方法 | |
CN115019906B (zh) | 多任务序列标注的药物实体和相互作用联合抽取方法 | |
CN115982403A (zh) | 一种多模态哈希检索方法及装置 | |
CN111651569B (zh) | 一种电力领域的知识库问答方法及*** | |
CN116756266A (zh) | 基于外部知识和主题信息的服装文本摘要生成方法 | |
CN113535897A (zh) | 一种基于句法关系和意见词分布的细粒度情感分析方法 | |
Singh et al. | SciDr at SDU-2020: IDEAS--Identifying and Disambiguating Everyday Acronyms for Scientific Domain | |
CN115935995A (zh) | 面向知识图谱生成的非遗丝织领域实体关系抽取方法 | |
CN111666374A (zh) | 一种在深度语言模型中融入额外知识信息的方法 | |
CN113076718B (zh) | 一种商品属性抽取方法及其*** | |
CN114265936A (zh) | 一种科技项目文本挖掘的实现方法 | |
CN117151222A (zh) | 领域知识引导的突发事件案例实体属性及其关系抽取方法、电子设备和存储介质 | |
CN112445887B (zh) | 基于检索的机器阅读理解***的实现方法及装置 | |
CN116127097A (zh) | 一种结构化文本关系抽取方法、装置、设备 | |
CN115688803A (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 |