融入领域信息的医疗领域命名实体识别研究

2022-12-06 04:06陈继刚
科学与信息化 2022年22期
关键词:向量实体维度

陈继刚

西安交通大学第二附属医院信息网络部 陕西 西安 710004

引言

电子病历广泛应用于各大医疗机构的临床工作,其中包含大量的医疗领域非结构化文本,是现代医学研究的重要数据来源。如何分析、挖掘、理解和有效利用这些文本,在指导医疗行业科研,提供临床决策支持和提供个性化医疗服务等方面具有重要意义。

1 相关工作

文本的分析挖掘工作一般通过自然语言处理(Natural Language Processing,NLP)完成,命名实体识别(Named Entity Recognition,NER)作为NLP领域的重要基础任务,为上层任务(如信息抽取、信息检索等)提供丰富的语义知识。

命名实体的概念于MUC-6会议上首次提出,早期NER研究主要有基于规则和词典和基于统计机器学习两种方法。近年来,基于深度学习的方法被广泛应用于NER任务。来自百度的Huang等[1]提出了BiLSTM(Bidirectional Long Short-Term Memory)-CRF(Conditional Random Field)模型并应用于序列标注任务,成为NER任务的泛用基础方法之一。研究者们同时发现,使用预训练语言模型生成词向量作为下层网络的输入,可以大幅提高NER任务的效果。Google的Devlin J等[2]提出了预训练模型BERT(Bidirectional Encoder Representation from Transformers),使用多层双向Transformer网络同时捕捉上下文信息,在多达11项自然语言处理任务中取得了最优表现,现已广泛应用于NER任务中。两者结合的BERT-BiLSTM-CRF模型,是NER目前最常用的模型。

实际应用中发现,通用文本训练的BERT字向量(以下简称BERT字向量),无法很好适应医疗领域的下游任务。如何让BERT字向量适配医疗领域任务,是本次研究的关注点。

2 方法

2.1 领域信息融入字向量

针对传统模型在医疗领域适配性不佳的现状,本文提出利用领域信息调整BERT字向量的方法,最终输入模型中的字向量同时包含BERT字向量中的语义信息和医疗领域文本的上下文关系。受Huang等的启发,本文主要考虑了以下三种方法结合BERT字向量与医疗领域预训练模型字向量(以下简称领域字向量),得到结合后的字向量

领域字向量表示为如式(2)的形式:

2.1.1 加权求和。将BERT字向量与领域字向量按位进行加权求和得到,见式(3):

2.1.2 扩展维度。将领域字向量补在BERT字向量后面得到,如式(4)所示:

2.1.3 注意力机制。通过注意力机制融合BERT字向量与领域字向量可分为三步:

首先输入信息,即BERT字向量 与领域字向量 。

其次计算注意力分布,见式(5):

注:表示sigmoid函数;tanh表示双曲正切函数;W为训练得到的矩阵。

最后计算融合后的字向量,利用前一步求得的注意力分布,得到融合后的字向量 ,见式(6):

得到 后继续使用标注数据对其进行微调,具体表现为在结合后的网络上加一层全连接层,用标注数据调整全连接层的参数,实现对字向量进行微调的效果。经过全连接层的微调之后,得到最终字向量 ,见式(7)。

注:tanh为全连接层的激活函数;W,b为训练得到的参数。

将微调之后的最终字向量 输入到下层BiLSTM-CRF网络,得到融入领域信息的医疗领域NER模型。

2.1.4 训练方法。使用融入领域信息的医疗领域NER模型训练相关数据集的具体过程如下:①使用从网络渠道及“中国医学影像资源共享平台”获取的病例数据,作为医疗领域的未标注文本进行无监督训练,可得到医疗领域的字向量 ;②采用多种方式将BERT字向量 与领域字向量 结合在一起构成新的字向量 ;③利用经过标注的公开数据集和“中国医学影像资源共享平台”上部分经过人工标注的病例数据集对新的字向量进行微调,在第2步生成字向量的网络之后增加一层全连接层,通过对标注数据的训练调整全连接层的参数;④遍历数据集每一个句子,针对句子中的每一个字生成对应的字向量,将生成的字向量输入BiLSTM层中,通过BiLSTM层学习数据的文本特征,并最终生成输出向量;⑤将BiLSTM生成的输出向量输入CRF层,通过CRF的打分矩阵以及概率转移矩阵得到每一种标签对应的分数,并定义损失函数,通过将损失函数最小化更新需要学习的网络参数;⑥在经过多轮学习参数收敛之后,固定网络参数,输出模型文件,供后续医疗领域NER系统使用。

3 实验

3.1 实验配置

实验环境的软硬件配置如下:CPU为i7-8700,内存16GB,显卡为NVIDIA RTX 2080Ti/11GB,操作系统为Ubuntu18.04LTS,编程语言为Python3.6,深度学习框架为TensorFlow1.12,CUDA版本10.0。

3.2 评价指标

模型训练结束之后,在测试集上验证常用相关指标:准确率(Precision)、召回率(Recall)以及F1值,对比训练后的不同模型的效果。

3.2.1 准确率P标注正确的实体占标注出的实体总数的百分比,见式(8)。

注:P代表准确率;EM代表标注正确的实体数量;AE代表标注出的实体总数。

3.2.2 召回率R标注正确的实体占测试集中实体总数的百分比,见式(9)。

注:R代表召回率;EM代表标注正确的实体数量;AM代表测试集中的实体总数。

3.2.3 F1值为准确率与精确率的调和平均,见式(10)。

比较不同模型在测试集上三种指标的高低,可以评判各自的优劣程度。

3.3 前置实验

在进行医疗领域NER实验之前,首先需要用医疗领域的未标注文本作为语料库,训练领域字向量。

3.3.1 获取语料库。本次研究的医疗领域语料库来源,见表1。

表1 语料库统计表

3.3.2 预训练。训练使用Python的Gensim模块下的Word2Vec函数,其模型结构相对简单,训练消耗的资源较少,适合本次训练医疗领域字向量。相关参数设置见表2。

表2 领域字向量训练参数

3.3.3 保存预训练模型。预训练完成之后,将预训练模型保存至文件系统,供后续NER实验使用。

3.4 实验参数

实验过程中的参数设置见表3,为缓解过拟合带来的影响,在生成最终字向量的全连接层中加入了正则化方法Dropout[6]。在模型训练过程中,使用Adam优化算法加速收敛速度,提高学习效果。

表3 融入领域信息的医疗领域命名实体识别模型实验参数

3.5 实验数据集

训练结果在公开数据集Yidu-s4k数据集、CCKS2020-Task3数据集以及“医学影像资源共享平台”已标注的病例数据上进行了相关实验。

3.6 实验结果

为验证将领域信息融入字向量方法的合理性,将本文提出的模型称为Domain-BERT-BiLSTM-CRF模型,与CRF及BiLSTM-CRF等NER经典模型进行对比,实验结果见表4。其中加权求和选择效果最好的展示,CRF与BiLSTM-CRF均使用BERT作为生成字向量的预训练模型。

表4 不同模型在三种数据集上的实验结果

根据表4中的结果,可以得出以下结论:

对比BiLSTM-CRF模型与原始CRF模型,可以看出利用BiLSTM提取训练数据中的上下文特征,有利于提高模型的特征提取能力,模型的效果更优。

对比Domain-BERT-BiLSTM-CRF模型与BiLSTM-CRF模型,可以看出通过扩展维度的方式结合BERT字向量与领域字向量,取得了比原始BERT字向量更好的效果。在CCKS2020-Task3数据集中,该方式的F1值比使用通用BERT的BiLSTMCRF模型的F1值提高了2%。

实验过程中记录了各模型F1值随epoch的变化,以CCKS2020-Task3数据集为例,见图2。将以扩展维度的方式结合BERT字向量与领域字向量的模型命名为Domain-BERTBiLSTM-CRF-1,将以加权求和的方式结合BERT字向量与领域字向量的模型命名为Domain-BERT-BiLSTM-CRF-2,将以注意力机制的方式结合BERT字向量与领域字向量的模型命名为Domain-BERT-BiLSTM-CRF-3。

从图1可以看出,融入领域信息的医疗领域命名实体模型的F1值趋于稳定的时间比其他两种传统模型稍慢,但稳定后的模型F1值更高。

图1 CCKS2020-Task3数据集F1值的变化情况

4 结束语

医疗领域的文本标注工作需要由受过专业培训的人员处理,鉴于医疗信息自身具有敏感性,各医疗机构之间的原始数据又难以共享,最终导致标注医疗数据的获取成本高昂且难以实现。如何在有限条件下调整原始字向量,适应医疗领域的NER任务是本次研究关注的改进点。

针对通用BERT字向量无法很好适应医疗领域任务的问题,本文提出一种将领域信息融入字向量的新方法:①利用医疗领域内大量未标注数据预训练一个领域字向量;②通过扩展维度等方式将BERT字向量与领域字向量相结合;③增设一个全连接层,利用标注数据对结合后的字向量进行微调,得到最终的字向量。为了验证新方法的有效性,本文使用Yidu-s4k、CCKS2020-Task3以及“医学影像资源共享平台”的已标注病例数据作为语料库进行实验,对比原始CRF模型,BiLSTM-CRF模型与三种Domain-BERT-BiLSTM-CRF模型的效果。

实验结果表明,相比CRF和BiLSTM-CRF,采用扩展维度的方式结合BERT字向量与领域字向量效果最佳,有效提升了模型性能。这也验证了Zhang等[7]的实验结果,即维度扩展方式要优于加算、乘算和注意力机制等方式的效果,猜测原因为维度扩展得到的向量在反向传播计算误差时,能更好地差异化处理不相关的特征,独立地反映语言模型对上下文结构和上下文语义的表达与预期的差别。

扩展维度方式的Domain-BERT-BiLSTM-CRF模型在一定程度上改善了原始BERT字向量对医疗领域NER任务适应性不佳的情况,但该模型也存在一定局限性,其F1值趋于稳定的时间稍慢,稳定后的F1值更高。猜测原因是新模型在生成最终字向量时,需要比其他两种传统模型额外训练一个全连接网络。

猜你喜欢
向量实体维度
向量的分解
理解“第三次理论飞跃”的三个维度
聚焦“向量与三角”创新题
认识党性的五个重要维度
浅论诗中“史”识的四个维度
前海自贸区:金融服务实体
实体书店步入复兴期?
两会进行时:紧扣实体经济“钉钉子”
振兴实体经济地方如何“钉钉子”
向量垂直在解析几何中的应用