1.一种基于改进图注意力网络的中文医疗命名实体识别方法,其特征在于,包括如下步骤:步骤1:输入原始的医疗领域中文文本数据S,对数据S进行清洗后,得到医疗文本数据s,构建医疗词典D,利用医疗词典D与医疗文本数据s中的字符进行匹配,得到对应的匹配词序列W,通过查找预训练字嵌入矩阵与预训练词嵌入矩阵,将医疗文本数据s与匹配词序列W分别映射为对应的字嵌入序列C与词嵌入序列E;
步骤1.1:定义S为待清洗的原始医疗领域中文文本数据,对S进行去标点符号和去空操作,得到清洗后的医疗文本数据s=(c1,c2,....,cn),其中ci表示第i个字符;
步骤1.2:构建医疗词典D,包括疾病、药物、身体器官、诊疗手段在内的临床医疗实体类别,利用医疗词典D与医疗文本数据s中的字符进行匹配,得到对应的匹配词序列W=(w1,w2,....,wm),其中,wj表示第j个匹配词,匹配词表示包含该字符的词汇;
步骤1.3:通过查找预训练字嵌入矩阵,将医疗文本数据s=(c1,c2,....,cn)中的每个c字符映射为字嵌入向量,得到对应的字嵌入序列C=(x1,x2,....,xn),其计算方法为xi=ec(ci),其中,xi表示第i个字符的向量表示,e字嵌入查找表;
步骤1.4:通过查找预训练词嵌入矩阵,将匹配词序列W=(w1,w2,....,wm)中的每个匹w配词映射为词嵌入向量,得到对应的词嵌入序列E=(z1,z2,....,zm),其计算方法为zj=ew(wj),其中,zj表示第j个匹配词的向量表示,e词嵌入查找表;
步骤2:构建修正位置编码的Transformer编码器模型,将字嵌入序列C作为模型的输入,输出上下文语义嵌入序列N,随后将其与词嵌入序列E进行向量拼接,得到特征拼接序列Nodef;
在位置编码中添加了相对位置和方向信息,其编码方法为:
其中,t为目标索引,j为上下文标记索引,Rt‑j为相对位置编码, dk为k的向量维度;
获取特征拼接序列Nodef的具体方法为:
步骤2.1:通过三个可训练的权重矩阵将字嵌入序列C投射到三个不同的空间中,分别得到查询向量矩阵Q、键向量矩阵K和值向量矩阵V,注意力计算分数公式表示为:Q,K,V=HWq,Hdk,HWv
rel
Attention(Q,K,V)=Softmax(A )V其中, 由输入向量分割得到, 为可训练的参数,Rt‑j
为相对位置嵌入表示;
步骤2.2:修正位置编码的Transformer编码器通过引入多头注意力机制,在不共享参数的前提下使用多个注意力头对文本序列进行注意力分数计算,最后将结果进行拼接输出,其计算公式表示为:h h h h
head=Attention(Q ,K ,V)
1 2 n
MultiHead(H)=[head ,head ,....,head]Wod×d
其中,h∈[1,n]为注意力头数,Wo∈R 为一个可训练参数;接着多头注意力的输出由前馈神经网络进行空间变换,增加模型的非线性表达能力,并且在多头自注意力层和前馈神经网络层后都会进行残差计算和归一化处理,最终输出上下文语义嵌入序列N=(l1,l2,....,ln);
步骤2.3:将词嵌入序列E与上下文语义嵌入序列N进行向量拼接,得到特征拼接序列Nodef=(l1,l2,....,ln,z1,z2,....,zm)=(f1,f2,....,fN),其中,li为语义嵌入向量,zi为词嵌入向量,N=n+m,fi为特征拼接序列中第i特征嵌入向量;
步骤3:构建改进协同图网络模型,将以特征拼接序列Nodef为节点所构成的医疗文本关系图作为模型的输入,经过改进协同图网络模型的图注意力网络计算,输出最终的特征融合序列Q,所述改进协同图网络模型,在原协同图网络模型的基础上通过改进其关系图设计方式,融合其设计的多种字词交互网络结构,依据医疗文本中所存在的“字‑词”邻接与包含关系、“字‑字”邻接关系以及“词‑词”邻接关系来连接对应的节点,实现一种文本整体关系图的构建;
步骤3.1:构建整体文本关系图,文本关系图中共包含N个节点且节点分为两类,分别为字符节点和匹配词节点,使用邻接关系矩阵A来表示整体文本关系图中边与节点之间的关系,其规则为:如果字符或匹配词i与另一个字符或匹配词j之间存在边,则将对应的Ai,j赋值为1,否则赋值为0;
步骤3.2:将邻接关系矩阵A和特征拼接序列Nodef=(f1,f2,....,fN)作为改进协同图网N×N络模型中图注意力网络的输入,其中,A∈R ,N为图中节点数,模型输出表示为F'=(f1',Ff'2,....,f'N),其中,fi'∈R ,F'为输出节点特征维数,形式上,图注意力网络的计算公式表示为:i
其中,αij为节点i和节点j之间结果归一化后的注意力互相关系数,N 表示与节点i相邻F′×F T 2F′节点的集合,W∈R ,a∈R 均为可训练的权重参数;
步骤3.3:每个节点的输出特征与和它相邻的所有节点有关,通过对相邻节点集合线性和非线性激活后得到,同时,图注意力网络采用多头注意力机制来增加训练过程的稳定性,并在模型的最后一层使用K平均操作,形式上,最终输出的计算公式表示为:其中,σ为非线性激活函数,共有K个注意力头数,k表示第k个注意力机制;
步骤3.4:对于改进协同图网络模型的输入Nodef=(f1,f2,....,fN),在经过图注意力网F′×(m+n)络处理后得到的输出序列表示为G=GAT(Nodef,A),其中,G∈R ,保留矩阵G的前n列作为字符特征的输出表示,得到最终的特征融合序列Q,其计算方法为Q=G[:,0:n]=(q1,q2,....,qn);
步骤4:构建条件随机场模型,基于特征融合序列Q对医疗文本中的字符进行标签解码,输出最优的标签序列,获得最终的医疗文本的医疗命名实体识别结果。
2.根据权利要求1所述的基于改进图注意力网络的中文医疗命名实体识别方法,其特征在于,所述步骤4的具体方法为:步骤4.1:搭建条件随机场模型,条件随机场是一种基于条件概率的判别式模型,将特征融合序列Q作为模型的输入,若其对应的一个可能的标签预测序列为Y=(y1,y2,....,yn),则计算标签y的概率为:其中,B为标签的转移概率, 为模型参数,y'表示任意一个可能的标签序列,使用一节维特比算法进行解码,输出得分最高的标签序列;
步骤4.2:在训练过程中,采用L2正则化来优化损失函数,损失函数表示为:其中,θ为参数集,λ是L2的正则化参数。