基于深度学习的电子病历命名实体识别的研究与实现

2019-10-08 11:55赵鸿阳
软件 2019年8期
关键词:电子病历深度学习

摘  要: 电子病歷是医疗单位对门诊部、住院患者临床诊疗与指导干预的、数字化的医疗服务工作的相关记录[1]。为了完成电子病历的高效的信息提取工作,本文使用深度学习的相关算法对电子病历中的文本进行命名实体的识别工作。其算法选择LSTM(Long-Short Term Memory,长短期记忆人工神经网络)和MLP(Multi-Layer Perception,多层神经网络),其用于构建算法模型。该本使用BP网络(Back—PropagationNetwork,后向传播)训练数据模型,应用已经标注的病历数据进行相应的训练与测试。该本通过实验证明,深度学习的算法在电子病历命名实体识别中是高效的[2]。

关键词: 自然语言;电子病历;命名实体识别;长短期记忆网络;深度学习

中图分类号: TP31    文献标识码: A    DOI:10.3969/j.issn.1003-6970.2019.08.047

本文著录格式:赵鸿阳. 基于深度学习的电子病历命名实体识别的研究与实现[J]. 软件,2019,40(8):208211

【Abstract】: Electronic medical record is a digital medical service record of outpatient department and inpatient clinic diagnosis and intervention in medical units[1]. To complete efficient information extraction of electronic medical records, the paper carries on text named entities recognition in electronic medical records with deep learning algorithm, including LSTM (Long-Short Term Memory) and MLP (Multi-Layer Perception) to construct algorithm model. Train data model with Back-Propagation Network (BP Network), and carry on corresponding train and test with labeled medical records. Experiment proves deep learning algorithm is efficient in electronic medical record named entity recognition[2].

【Key words】: Natural language; Electronic medical record; Named entity recognition; Long and short-term memory network; Deep learning

0  引言

随着社会的不断发展,我国的医疗系统发生了重大的变化,其和计算机技术融合,产生了许多医疗智能产品。电子病历系统就是其中之一。随着电子病历系统的快速发展与广泛使用,众多医院积累了大量的医疗的文本信息,其包含了潜在的患者信息和医学专业的知识。通过分析疾病类型、疾病的症状与治疗方案的潜在的联系,对我国医疗的服务水平的提升有着重要的作用[3]。

NLP(Natural Language Processing,自然语言处理)是计算机科学以及人工智能领域的重要技术。该技术能够将非结构化的文本信息转化为结构清晰的数据信息。NER(Named Entity Recognition,命名实体识别)是自然语言信息处理的基本任务,应用范围广泛。命名实体一般是一段文本信息中具有特定含义、特定意义或具体指代性强的实体,例如人名、组织名、地名、日期等等。NER技术就是从非结构化的文本信息中抽出具体的实体,并且按照实际的需求信息识别出更多的实体。为了从文本中识别出医学实体自然语言处理,将能够处理医学类别的自然语言称为。电子病历中的命名实体是一些具有具体特征的医学类名词或相关修饰词语。运用NLP技术抽取与总结电子病历的信息成为了当今十分重要的研究放心[4]。

随着国内外的医学信息化不断发展,国内外很多研究人员对其进行了深入的研究。国外的信息化发展起源比较早,技术比较发达。实体识别(英文类的电子病历)已经研究与发展了多年,其技术与产品也比较成熟。早起的MetaMap与cTAKES,其对新出的实体识别差,召回率低。伴随技术的发展的深入,基于有监督学习的医疗实体识别系统出现,其取得了良好的效果。但是,该系统需要大量的人工标记的特征。其消耗时间,并且还需要引入医学的专业知识。为了让电子病历识别应用到中文文本,国内需要研究人员进行大量的研究。郁小玲等人提出了CRF(Conditional Random Field,基于条件随机场医疗识别模型)[5]。随着深度学习技术的发展,RNN(循环神经网络)和CNN(卷积神经网络)等等深度学习模型已经应用于自然语言处理中。Wu Y等人提出了基于深度学习的中文医学实体识别系统,其利用了字分布式。其与基于CRF的技术相比,其具有更好的表现。本文分别使用深度学习的LSTM与MLP进行电子病历识别,验证基于深度学习的电子病历识别的高效[6]。

1  MLP神经网络与LSTM神经网络算法

1.1  MLP神经网络算法

多层神经网络(Multi-Layer Perceptron,MLP)也叫做人工神经网络(Artificial Neural Network,ANN)。ANN的结构主要包括每个节点和每个节点之间的链接。链接与其他的节点的关系分别通过权重与偏置进行关联。对于一些特定的问题,算法通过偏置与权重进行特定训练。该算法主要有一个输入层、一个输出层与一个或多个隐藏层组成。

1.2  LSTM神经网络

LSTM(Long Short-Term Memory,长短期记忆网络),是特殊的时间循环神经网络(RNN),其适合处理或者预测时间序列的中间间隔和延时相对比较长的事件。R你能也是由输入层、输出层和隐藏层组成。隐藏层主要接受该本个的序列通过RNN隐藏层处理后输出的计算结构或者上一个序列的计算结果。其结果与新一期序列值一起作用到隐藏层,最终形成输出结果。图1展示了RNN的基本机构。LSTM是对RNN进行了改进。通过建设特殊控制单元,其实现了解决RNN长期依赖的问题。历史信息被作为细胞状态,让它在专门的传送途径中传输。其是LSTM计算和存储模块的核心重要思想,并且不易受到外界的干扰。

2  电子病历实体识别模型

最初的序列的标注是需要手动定义,其费事又费力。该文用深度学习的神經网络进行特征选取,基本框架如图3。

输入层的作用是将输入语句的每个字转化为字典对应的引的序号。

查找表层的作用是将字的ID转化映射为多维向量。在该层,通过一定的查找操作,将每个索引映射成为多维向量,也称作字向量。为了取得局部更多的上下文的信息,应该将当前字和该字的前后的字向量拼接,将其作为下一层(网络层)的输入。

网络层的作用是应用MLP或者LSTM计算相应的特征值 。网络层,其的输入是字向量,经过一系列变换,输出是每个字对相应的标签的分数。针对电子病历命名实体识别,该层次常见采用的算法是门控制循环单元网格、RNN(循环神经网路)、MLP(多层神经网路)、LSTM(长短期记忆网路)。该文采用了MLP与LSTM。

推断层的作用是将根据维特比算法推算出最优的合适路径,获取最终的标注序列。简单点说,推断层就是利用上一层(网络层)获得的分数矩阵取得得分最高的序列过程[7]。

3  实验

3.1  训练集

最大间隔准则是该算法进行训练的方法。为了最小化损失函数,该文采用了文献[9]提到的改进的AdaGrad算法。利用minibatch后向传播算法进行训练,batch的值为30。

3.2  实验数据、环境与评价指标

本文数据来自某三级甲等医院的500多份的病人记录。对这些电子病历进行了命名实验体的标注,将450份记录作为实验的训练集,50份作为实验的测试集。该实验的框架选择了Google提供的TensorFlow,开发语言是Python.操作系统是Windows7,CPU是第三代酷睿i5-3317U@1.70 GHz,内存的大小是8 GB(三星DDR3L 1600 MHz/记忆科技DDR3 1600 MHz)。

3.3  实验结果与分析

CRF的电子病历识别的实验是利用条件随机场模型进行手动定义特征进行识别的实验。MLP+ embed和LSTM+embed的电子病历识别实验是在查找表层使用skip-gram模型形成字向量[8]。

针对电子病历的命名实体识的实验数据,通过对表1到表5的数据分析,其结论如下:

(1)深度学习的算法模型在各个指标上与CRF相比都有提升。

(2)在深度学习的算法上,针对准确率,LSTM算法优于MLP算法,针对召回率,MLP算法优于LSTM算法。总体上,LSTM算法的识别效果优于MLP算法的识别效果。

(3)在查找层添加skip-gram模型,其进行无监督的预训练。LSTM+embed算法与MLP+embed算法在各个指标都有提上。MLP+embed算法相比MLP算法的提升效果不明显,但是LSTM+embed算法相比LSTM算法的提升效果明显。所以提前预先训练字向量是可以增加电子病历实体的识别效果。

综述,针对电子病历命名识别任务,MLP+embed的效果是最优,其也是最有效、最优秀的模型[9]。

4  结语

本文就基于深度学习的电子病历识别的研究现状进行了分析,然后介绍了MLP算法与LSTM算法,最后进行五种不同的实验对比研究。实验证明了传统的CRF算法明显比基于深度学习的MLP、LSTM、MLP+embed和LSTM+embed的实验效果差。其中,LSTM+embed的实验效果最优。其证明了提前预先训练字向量提高了识别效果。总之,深度学习的算法运用到电子病历识别中,其可以高效地提高势必效果[10]。

参考文献

[1] Aronson A R, Lang F M. An overview of MetaMap: historical perspective and recent advances[J]. Journal of the Amer?ican Medical Informatics Association, 2010, 17(3): 229-236.

[2] Savova G K, Masanz J J, Ogren P V, et al. Mayo Clinical Text Analysis and Knowledge Extraction System (cTAKES): Architecture, component evaluation and applications[J]. Journal of the American Medical Informatics Association, 2010, 17(5): 507-513.

[3] 蒋日华. 网络时代高校计算机实验室的建设与维护[J]. 软件, 2019, 40(03): 130-133.

[4] 高磊, 洪奔奔, 姚青岐. 基于卷积神经网络的随机手写数字识别[J]. 软件, 2018, 39(09): 82-86.

[5] 郁小玲, 张铁山, 吴彤, 等. 基于两位一体的中文电子病历命名实体识别[J]. 中国卫生信息管理杂志, 2017, 14(4): 552-556.

[6] 夏宇彬, 郑建立, 赵逸凡. 基于深度学习的电子病历命名实体识别[J]. 电子科技, 2018, 31(11): 35-38+41.

[7] Wu Y, Jiang M, Lei J, et al. Named Entity Recognition in Chinese Clinical Text Using Deep Neural Network[J]. Studies in health technology and informatics, 2015, 216: 624- 628.

[8] Duchi J, Hazan E, Singer Y. Adaptive Subgradient Methods for Online Learning and Stochastic Optimization[J]. Journal of Machine Learning Research, 2011, 12(7): 257-269.

[9] 甄川力, 廖永. 探析医院计算机维护和网络安全管理[J]. 软件, 2019, 40(03): 174-177.

[10] 彭华军. 计算机技术在医院管理信息化建设中的应用[J]. 软件, 2019, 40(03): 192-195.

猜你喜欢
电子病历深度学习
有体验的学习才是有意义的学习
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望