基于LSTM-CRF的中医医案症状命名实体抽取研究
高佳奕1,杨涛1,董海艳1,史话跃2,胡孔法1
1.南京中医药大学人工智能与信息技术学院,江苏南京 210023;
2.南京中医药大学中医学院,江苏南京 210023
摘要:目的 研究中医医案中症状命名实体的抽取方法,为中医临床信息的自动化抽取提供方法学参考。方法 基于已标注过的名老中医诊治肺癌医案构建长短时记忆网络(LSTM)与条件随机场(CRF)混合模型,应用LSTM层结合预训练字向量抽取医案的抽象特征,通过CRF进行序列标注,使用多分类评价指标对抽取结果进行评价。同时设计不同变体的算法,在肺癌数据集上进行测试,分析比较不同模型的优劣。结果 带有Peephole机制的双向LSTM识别效果最好,其症状词的3个评价指标准确率(P)、召回率(R)和F1-测度值(F1)分别为0.844 6±0.022 7、0.840 2±0.019 2、0.842 3±0.019 4,程度词分别为0.813 5±0.028 0、0.833 4±0.045 6、0.822 9±0.032 6,部位词分别为0.766 3±0.082 7、0.720 6±0.078 7、0.740 5±0.068 2。结论 利用带有Peephole 机制的双向LSTM能够有效实现中医医案症状命名实体识别,提高传统CRF模型的召回能力。
关键词:长短时记忆网络;条件随机场;中医医案;命名实体识别;信息抽取
中图分类号:R249;R2-05 文献标识码:A 文章编号:1005-5304(2021)05-0020-05
DOI:10.19879/jki.1005-5304.202002142 开放科学(资源服务)标识码(OSID):Study on Named Entity Extraction of TCM Clinical Medical Records
Symptoms Bad on LSTM-CRF
GAO Jiayi1, YANG Tao1, DONG Haiyan1, SHI Huayue2, HU Kongfa1
1. Artificial Intelligence and Information Technology Institution of Nanjing University of Chine Medicine, Nanjing 210023, China;
2. Chine Medicine Institution of Nanjing University of Chine Medicine, Nanjing 210023, China Abstract:Objective To study the extraction method of named entity of symptoms from medical records of TCM; To provide references for extraction of TCM clinical information. Methods The long short term memory network (LSTM) and conditional random fields (CRF) were integrated to construct the LSTM-CRF model. Medical records of lung cancer diagnod and treated by a famous TCM master were collected and procesd for the training. Abstract features of medical records were extracted by the combination of LSTM layer and pre training word vector, and the quence wa
欢快的小鸟s annotated by CRF. Multi-classification evaluation indexes were ud to evaluate the final extracting results. By comparing to different variant models, the advantages and shortages of different models were analyzed. Results The BiLSTM with Peephole mechanism had the best performance on this task. The three evaluation indexes precision (P), recall (R) and F1-measure (F1) of symptom extraction were 0.844 6±0.022 7, 0.840 2±0.019 2, and 0.842 3±0.019 4, respectively. The P, R and F1 of symptom verity extraction were 0.813 5±0.028 0, 0.833 4± 0.045 6, and 0.822 9±0.032 6, respectively. The P, R and F1 of the symptom location extraction were 0.766 3±0.082 7, 0.720 6±0.078 7, and 0.740 5±0.068 2, respectively. Conclusion The BiLSTM with Peephole mechanism can effectively recognize the named entity of TCM medical records, and improve the recall ability of traditional CRF model.
Keywords: long short term memory network; conditional random fields; TCM medical records; named entity recognition; information extraction
基金项目:国家自然科学基金(81674099);国家重点研发计划(2017YFC1703506);江苏省护理学优势学科建设项目(2019YSHL068)
通讯作者:杨涛,E-mail:*******************
中医医案是中医临床诊疗的记录,是中医师辨证论治、察明证素的基础,是中医文化的重要传承纽带。个体化的专家表达与非结构化的中医症状,使得从复杂医案中抽取有效信息具有挑战性。中医临床信息抽取是从海量临床数据中抽取关键信息的过程[1],涉及
症状、诊断、治法、方药等信息,其中又以症状抽取最为复杂。有效的信息抽取是挖掘中医辨证规律、探寻疾病机理的重要基础。近年来,随着对词嵌入模式的改进,神经网络在信息抽取领域取得较大进展,在部分任务中的表现超过传统的统计学习方法。Huang 等[2]提出双向长短时记忆网络与条件随机场(long short term memory network-conditional random fields,LSTM-CRF)混合模型,减少模型对词嵌入的依赖,极大提高了模型的稳健性。李明浩等[3]针对中医医案临床症状术语构建LSTM-CRF模型,根据常见症状的组成要素制定额外的字符级别特征,识别的F1值最高达78%。上述研究为中医临床文本医案自动化分析和处理,尤其是症状识别和抽取带来了新的契机。鉴于此,本研究尝试将LSTM-CRF模型应用于中医医案的命名实体抽取,设计多种症状命名实体抽取模型,并在中医肺癌数据集上进行实验,分析比较各方法的优劣,为实现中医临床信息的自动化抽取提供方法学参考。
1 资料与方法
1.1 数据来源
数据来自国医大师周仲瑛工作室,为1986年7月10日-2014年12月3日周仲瑛教授治疗肺癌的医案。
1.2 筛选标准
纳入标准:①医案明确记载诊断为肺癌;②患者就诊时主诉以肺癌为主;③数据完整,至少包含临床表现、病机分析和治法、用药内容。
排除标准:①非原发性肺癌,如复发癌或转移性肿瘤;②医案记录存在明确错误或缺失。
1.3 数据预处理
根据筛选标准筛选到1000份高质量医案,围绕病史进行症状命名实体识别。考虑到中医医案中的描述包括“咳嗽”等症状特征、“胸、背”等部位特征、“稍有”等程度特征,医者据此进行辨证论治,本研究根据如上的实体特征,将单条医案划分为症状(名)、(症状)程度、(症状发生)部位3类不同标签,与疾病无关的信息划分为非命名实体组成部分。标签具体特征见表1。
表1 医案标签对应部分特征
标签部分对应特征
症状咳嗽、闷、肿、酸、咯痰、气喘
程度不多、微、稍有、偶、有时
部位胸、左肋、腰、胁、面、头、口
症状词、程度词、部位词依次记为ZZ、CD、BW,非命名实体组成部分记为O。利用BIO三元集的标注方法进行标注,具体方法见表2。如某份原始病案可标注为“近\O来\O左\B-BW胸\I-BW胁\I-BW肋\I-BW 隐\B-ZZ痛\I-ZZ,咳\B-ZZ嗽\I-ZZ深\O呼\O吸\O有\O 影\O响\O,行\O走\O讲\O话\O气\B-ZZ短\I-ZZ,疲\B-ZZ劳\I-ZZ乏\I-ZZ力\I-ZZ,咳\B-ZZ嗽\I-ZZ 不\B-CD多\I-CD,烦\B-ZZ躁\I-ZZ,咽\B-BW后\I-BW 壁\I-BW有\O痰\B-ZZ黏\I-ZZ不\I-ZZ爽\I-ZZ。”
表2 命名实体标注方法
标记相应位置
B-ZZ 症状词(开头)
I-ZZ 症状词(非开头)
B-CD 程度词(开头)
I-CD 程度词(非开头)
B-BW 部位词(开头)
I-BW 部位词(非开头)
O 非命名实体组成部分
本研究利用爬虫获取中国知识资源总库(CNKI)与中医主题相关的100条文本摘要,结合已标注的1000份中医临床肺癌医案,利用Python中Gensim库,通过基于Skip-Gram方法的Word2Vec模型生成维度为100的字向量集,以此作为预训练的字嵌入。为验证生成字嵌入的可靠性,本文以“咳”字为例,选取与之相关度较高的字向量,结果见图1。可以看出词嵌入结果符合先验知识。
图1 “咳”字的字嵌入相关性分析
1.4 中医症状命名实体识别模型构建
读书笔记摘抄大全30篇长短时记忆网络(long short term memory network,LSTM)模型通过门限机制(即输入门、输出门和遗忘门)对输入序列进行有效的过滤和保存[4-5],实现对特定实体的长期记忆,解决了传统识别任务中的梯度消失和梯度爆炸现象。因此,本研究采用LSTM层作为特征提取层,抽取出中医医案实体的抽象特征。条件随机场(
conditional random fields,CRF)是用来标注和划分序列结构数据的概率化结构模型[6],可以在句子级别上实现个体标签的预测,有效避免标注的句子存在非法语义。考虑到各个标签表
现出较强的语法约束,如病位的起始词后不应接程度的中间词,本研究选择CRF 层作为输出标注层,根据LSTM 层输出学习医案的语法规则,在可行的标注路径中找到最优路径,进而实现相应实体的合理标注。LSTM-CRF 模型结构图见图2。
图2 LSTM-CRF 模型结构图
模型具体实现步骤:①根据中医医案的术语特点,结合中医医案与CNKI 中医词条相关的文本摘要,获得维度为100的字向量表示。②构建LSTM 层,结合预训练的字向量,抽取出中医医案的上下文抽象特征,计算序列与标签的概率分布矩阵。③应用CRF 层学习序列与标签、标签与标签之间的潜在关系,在句子级别上排除不符合语法规则的标注序列。④通过多分类评价指标对模型结果进行评价。LSTM 层的实现步骤如下。
输入:预训练的字嵌入。浣花
似乎的近义词是什么输出:输入序列与对应标签的概率分布矩阵P 。
步骤1:根据输入序列x 中的字符,将预训练生成的对应字向量送入LSTM (前向)的输入层中。
LSTMlayer
to y nt vocab
embedding y i x f do
x length i for ∈→)(:)(∈
步骤2:更新当前LSTM 网络中所在单元的状态。 更新输入门:)],,[*(1i t t t t b c x h Wi σi +=- 更新遗忘门:)],,[*(1f t t t f b c x h W σft +=- 更新输出门:)],[*(,1o t t t t b c x h Wo σo +=- 更新隐藏层:)tanh(*t t t c o h =
步骤3:将序列输入LSTM (后向)中,重复上述过程。将2次遍历的隐藏层序列拼接得到与上下文相关的字向量表示。
有学者通过改变LSTM 的内部结构,设计出带有peephole connection 机制[7]与门控循环单元(gated recurrent unit ,GRU )[8]的LSTM 变体,极大简化其复杂的门限机制。本研究参照上述建模步骤,选取传统的循环神经网络(recurrent neural network ,RNN )
模型作为基线实验,LSTM 、GRU 、双向LSTM (BiLSTM )与带有Peephole 机制的BiLSTM (BiLSTM with Peephole )作为对比实验,比较分析不同模型的实体识别效果。 1.5 超参数设置
家常酱茄子基于Tensorflow 框架构建中医医案的LSTM-CRF 模型,部分参数设置:全局学习率(learning_rate )为0.001,最大训练轮数(max_epoch )为100,训练语料的句子最大长度(max_length )不超过100个字符,选择优化器为Adam 。为防止梯度爆炸和过度拟合现象,设置梯度截断参数(gradient clip )为5,随机失活参数(dropout )为0.5。以上参数设置均为实验过程中调参的最优结果。此外,为提高LSTM-CRF 模型的泛化能力,避免序列的输入顺序对参数学习造成影响,每轮训练前预先对输
入数据进行Shuffle 。 1.6 模型评价参数
本研究使用准确率(precision ,P )、召回率(recall ,R )和F1-测度值(F1-measure ,F1)3个指标,评估LSTM-CRF 模型在中医医案信息抽取任务中的性能。将真实类别与计算机预测类别相互组合,分别记为真正例(true positive ,TP )、假正例(fal positive ,FP )、真反例(true negative ,TN )与假反例(fal negative ,FN ),则P =TP/(TP +FP )×100%,R =TP/(TP +FN )×100%,F1=2×P ×R/(P +R )。 2 结果
将1000份肺癌医案划分为训练集800份和测试集200份,采用经典的留出法进行模型评估。设置随机种子为1~10,取10次测试结果的平均值作为最终评估值。实验结果排除非命名实体组成部分,分别观察LSTM 及其变体对症状、程度、部位实体的识别情况(各变体均默认后接CRF 层进行序列标注)。结果显示,各变体均对症状词的识别精度最高,对部位词的识别精度最低。与RNN 相比,带有Peephole 机制的BiLSTM 识别效果最好,F1值最高达84.23%,3类标签F1值分别高于基线模型RNN 6.76%、10.89%、14.94%,见表3。
同时,与传统的CRF 相比,BiLSTM-CRF 模型对程度和部位的识别能力均有提升,分别为5.71%和2.45%,但对症状的识别能力低于CRF (见表4)。 进一步探究嵌入粒度对实验结果的影响,将预训练的词嵌入(WE )作为基线,结果未经过预训练、直接根据输入语料随机初始化字嵌入(RE )
识别效果略优,采用预训练的字嵌入(CE )识别效果最好,3类标签分别高于基线0.42%、1.35%、1.98%,见表5。
表3 中医医案症状命名实体在不同模型中的识别结果比较(—
x ±s )
标签
指标
RNN
LSTM GRU BiLSTM BiLSTM with Peephole ZZ P 0.786 5±0.106 2 0.798 0±0.029 8 0.805 7±0.025 3 0.838 5±0.029 3 0.844 6±0.022 7 R 0.791 7±0.021 6 0.792 0±0.018 9 0.796 6±0.024 6 0.840 1±0.030 9 0.840 2±0.019 2 F1 0.789 0±0.023 4 0.794 9±0.022 4 0.801 1±0.024 1 0.839 1±0.027 5 0.842 3±0.019 4* CD P 0.774 8±0.043 8 0.784 1±0.021 2 0.789 1±0.048 1 0.816 2±0.062 7 0.813 5±0.028 0 R 0.713 8±0.050 9 0.738 7±0.059 3 0.749 0±0.045 7 0.822 8±0.028 1 0.833 4±0.045 6 F1 0.742 0±0.042 4 0.759 8±0.037 9 0.768 0±0.038 9 0.818 7±0.042 2 0.822 8±0.032 7* BW P 0.719 9±0.028 7 0.723 3±0.101 6 0.715 6±0.078 1 0.739 5±0.091 9 0.766 3±0.082 7 R 0.588 6±0.0
21 6 0.623 4±0.109 5 0.605 9±0.088 3 0.714 4±0.092 4 0.720 6±0.078 7 F1 0.644 2±0.023 4 0.661 3±0.080 6
0.651 9±0.067 2
0.720 9±0.070 7
0.740 5±0.068 2*
男人霸气的句子
注:*该行最大值
表4 CRF 与BiLSTM-CRF 识别效果(R )比较(—
x ±s ) 模型 ZZ CD
BW CRF 0.871 2±0.014 5 0.788 4±0.032 5 0.703 4±0.049 1 BiLSTM-CRF 0.840 2±0.019 2
0.833 4±0.045 6
0.720 6±0.078 7
表5 中医医案症状命名实体在不同嵌入粒度下的识别结果比较(—
x ±s ) 标签
指标 WE
RE CE
ZZ P 0.835 6±0.028 5 0.837 6±0.023 7 0.844 6±0.022 7 R 0.842 1±0.023 3 0.841 9±0.021 8 0.840 2±0.019 2 F1 0.838 7±0.024 9 0.839 6±0.019 6 0.842 3±0.019 4*CD P 0.836 5±0.047 1 0.829 0±0.047 8 0.813 5±0.028 0 R 0.792 9±0.053 6 0.810 5±0.043 3 0.833 4±0.045 6 F1 0.811 8±0.046 3 0.818 3±0.032 1 0.822 8±0.032 7*BW P 0.786 8±0.080 4 0.774 0±0.080 2 0.766 3±0.082 7 R 0.696 2±0.084 1 0.709 7±0.071 6 0.720 6±0.078 7 F1 0.726 1±0.067 9 0.737 8±0.063 9
0.740 5±0.068 2*
注:*该行最大值
3 讨论
本研究应用LSTM-CRF 模型进行中医临床症状命名实体识别,对肺癌中医临床数据进行实验。从整体结果分析,模型对症状词的识别效果最好,其评价指标P 、R 、F1值分别为0.844 6±0.022 7、0.840
2±0.019 2、0.842 3±0.019 4;对部位词的识别效果最差,P 、R 、F1值分别为0.766 3±0.082 7、0.720 6±0.078 7、0.740 5±0.068 2。考虑为部位词的样本数较少(共2501处)而症状词的样本数较多(共计184 649处),训练过程中网络学习到部位词的类别特征不明显,影响了识别精度。
从LSTM 及其各变体的识别结果分析,LSTM 利用门限机制和内部的细胞状态较好地实现了对信息的更新与长时积累,使3个标签的F1值均优于传统的RNN ;GRU 得益于其较为简单的门控机制与较少
的训练参数,整体识别效果略高于LSTM ;BiLSTM
在
LSTM 的基础上对输入序列进行了额外的反向学习,使其对输入序列的部分语法规则(如“I-CD ”标签前不可能出现“B-ZZ ”标签等)学习更加准确,加强了对上下文所携带信息的记忆,症状、程度、部位3类标签的F1值分别高于LSTM 5.78%、7.53%、8.61%;带有Peephole 机制的BiLSTM 识别效果最好,3类标签的F1值分别高于LSTM 5.96%、8.29%、11.98%。
对BiLSTM-CRF 与CRF 的识别效果进行比较分析,发现BiLSTM 有效提高了CRF 在程度词与部位词识别上的召回能力。由于部位词与程度词的标签数目较少,且在实际标注过程中二者常分散存在于症状词中,常与症状词相混淆,人工编写的特征模板难以识别,同时,部位词和程度词的表述相对灵活,
重现性差,如形容程度较轻有“偶”“稍”“稍有”“少”“微微有”“不多”“有时”等多种表达方式,部位常与多个方位词连用,如“右胁”“胸胁”“胁部”等,CRF 的特征模板具有一定局限性,只能在有限窗口内进行提取,无法根据具体语义进行灵活识别,而BiLSTM 摒弃传统特征模板,对学习内容具有长时记忆,加强了各窗口之间联系。针对症状词,CRF 的识别效果略优于BiLSTM ,这是由于中医病案中症状名多为双字或四字成词,如“咳嗽”“咯痰”“疲劳乏力”,且样本数较多,特征明显,独立性强,不太依赖长远信息,用人工标注的模板即可学习到这些特征,BiLSTM 额外的复杂性给症状词识别带来干扰。
对不同的嵌入粒度进行深入探究,发现随机初始化字嵌入方法的识别效果略优于预训练后的词嵌入方法。考虑为中医医案多为白话夹杂部分文言的叙述方式,现有的词嵌入生成工具对未能识别的词按字切优哈优哈
分,如“纳可”被切分为“纳\可”,中医术语常存在一字多义情况,如“二便”往往被切分为“二\便”,导致生成的词向量语义与医案中词语的实际语义差别较大,使按字嵌入的效果优于按词嵌入,与文献[3]研究结果一致。预训练的字嵌入方法识别效果最好,这是因为随机初始化方式仅局限于字在当前训练集中的上下文信息,而预训练方式包含字在全局范围内的上下文信息,有效提高了模型的语义信息量。
中医医案是古今医家通过不断实践总结的宝贵经验,在传承及指导临床等方面具有举足轻重作用。本研究构建了基于LSTM-CRF的中医医案症状命名实体抽取模型,并就不同变体算法与嵌入粒度等进行
了测评,结果显示基于字嵌入并带有Peephole机制的双向LSTM识别效果较好。但本研究采用的数据集样本量较小,数据集标签类别分布不均衡,症状术语未进行统一规范,存在实体间相互包含与混淆等问题。今后研究将进一步增加样本量,设计更为精细的标签模式,从而提高模型的识别效果。
参考文献:
[1] 李保利,陈玉忠,俞士汶.信息抽取研究综述[J].计算机工程与应用,
2003,39(10):1-5,66.
[2] HUANG Z, XU W, YU K. Bidirectional LSTM-CRF models for quence
tagging[J]. arXiv:1508.01991v1.
[3] 李明浩,刘忠,姚远哲.基于LSTM-CRF的中医医案症状术语识别[J].计
算机应用,2018,38(S2):42-46.
[4] GERS F A, SCHMIDHUBER J, CUMMINS F. Learning to forget:continual
prediction with LSTM[J]. Neural Computation,2000,12(10):2451- 2471.
醉又何妨[5] SUNDERMEYER M, NEY H, SCHLÜTER R. From feedforward to recurrent
LSTM neural networks for language modeling[J]. IEEE/ACM Transactions on Audio, Speech, and Language Processing,2015, 23(3):517-529.
[6] 逯万辉,马建霞.基于条件随机场模型的复杂时间信息抽取研究[J].
现代图书情报技术,2011(10):29-33.
[7] GERS F A, SCHMIDHUBER E. LSTM recurrent networks learn simple
context-free and context-nsitive languages[J]. IEEE Transactions on Neural Networks,2001,12(6):1333-1340.
[8] ZHANG Q Q. An effective gated recurrent unit network model for
Chine relation extraction[C]//Science and Engineering Rearch Center. Proceedings of 2017 2nd International Conference on Wireless Communication and Network Engineering (WCNE 2017).
Science and Engineering Rearch Center,2017:275-280.
(收稿日期:2020-02-11)
(修回日期:2020-04-21;编辑:陈静)