心脏病中文知识图谱的构建

付洋 ,  刘茂福 ,  乔瑞

武汉大学学报(理学版) ›› 2020, Vol. 66 ›› Issue (3) : 261 -267.

PDF (1960KB)
武汉大学学报(理学版) ›› 2020, Vol. 66 ›› Issue (3) : 261 -267. DOI: 10.14188/j.1671-8836.2018.0217
计算机科学

心脏病中文知识图谱的构建

作者信息 +

Construction of Chinese Knowledge Graph of Heart Disease

Author information +
文章历史 +
PDF (2007K)

摘要

心血管疾病长期以来一直占据着中国疾病死亡率榜首,并且其死亡率仍在逐年上升。在国内开源的中文医学数据集稀缺的背景下,结合自顶向下和自底向上的方法半自动化构建心脏病中文知识图谱。首先,基于高质量百科数据和医学文献构建心脏病本体,为了保证数据的领域封闭性,根据预先定义的疾病词典从百科类网站和医学网站等异构数据源中获取心血管疾病数据;接着,定义实体相似度计算方法进行更好的知识融合,并在图谱数据上通过模式发现寻找最优的数据模式,实现知识图谱模式层和数据层的共同迭代;最后,在图数据库中对图谱数据进行可视化展示,并根据当前研究动态探讨心脏病知识图谱一些具有前景的应用。

Abstract

Cardiovascular disease has been the leading cause of mortality in China for a long time, and its mortality rate is still rising year by year. Under the background of the scarcity of Chinese open source medical datasets, we combine top-down and bottom-up approaches to construct Chinese knowledge graph of heart disease in a semi-automatic way to provide strong data support and guidance for medical artificial intelligence. First, we construct the heart disease ontology by referring high-quality encyclopedia data and medical literatures, and the cardiovascular disease data have been gathered from heterogeneous data sources, such as encyclopedia websites and medical websites, using a predefined disease dictionary to get the data closed to the specific domain. And then, we adapt the entity similarity calculation for better knowledge fusion, add the data schema by discovering new schema upon the data of the graph, and iterate the schema layer together with the data layer in the graph. Finally, the graph data are visualized in the graph database and several promising applications of the heart disease knowledge graph are explored based on current research trends.

Graphical abstract

关键词

医学人工智能 / 心脏病知识图谱 / 实体链接 / 模式发现

Key words

medical artificial intelligence / knowledge graph of heart disease / entity linking / schema discovery

引用本文

引用格式 ▾
付洋,刘茂福,乔瑞. 心脏病中文知识图谱的构建[J]. 武汉大学学报(理学版), 2020, 66(3): 261-267 DOI:10.14188/j.1671-8836.2018.0217

登录浏览全文

4963

注册一个新账户 忘记密码

0  引 言

医学领域一直是人工智能热门的应用领域,而作为医学人工智能的重要基石,医学大数据一直受到广泛的关注。由于国内外医学标准众多且不尽相同,许多医学数据无法直接引用。目前,国内已经展开了很多医学术语翻译工作,然而能够用于科研的中文开源医学数据集仍旧处于稀缺状态。

2012年Google公司提出“知识图谱”,旨在为自身下一代智能搜索引擎服务,从此拉开了知识图谱研究的序幕。搜狗、百度等国内科技公司率先构建了自己的通用知识图谱,使得搜索引擎成为知识图谱在国内最先实现落地的科研领域。随后,金融、微博、农业等其他领域也开始寻求在知识图谱上找到新的数据结构化存储和数据指导的解决方案[1,2,3]。在医学领域,尽管国内已经有比较成熟的中医药知识图谱[4],但是各项工作仍无法摆脱对大量人工干预的依赖,我国医学各领域学科中知识图谱理论与方法的研究整体仍处于起步阶段[5]

2017年中国心血管病报告称,心血管病死亡人数占居民疾病死亡人数的40%以上,长期位居首位并仍在逐年上升。本文以心脏病及其相关知识为契入点,对心脏病知识图谱进行了研究,构建了中文心脏病知识图谱。

知识图谱按照逻辑结构可划分为数据层和模式层[6],数据层包含了图谱所有的事实,通常用三元组(实体1,关系,实体2)作为知识的表示形式;模式层是对数据层的提炼,主要通过本体库对数据层中的实体、关系以及属性进行规范和约束,最终使得知识图谱数据冗余度降低。

知识图谱的构建方法分为自顶向下和自底向上两种。前者主要用于构建垂直的领域知识图谱,领域知识图谱源于专家系统,其数据主要集中在一个特定的领域,因而领域知识图谱包含的知识粒度细,知识层次深。构建过程先由领域专家构建本体库,然后从行业关系数据库等异构数据源中将数据填充到知识图谱中。这种方法从前期构建到后期维护都需要大量领域专家的参与,虽然保证了数据的质量和深度,但是随着业务和领域的扩展,该方法在构建通用领域知识图谱的过程中会消耗大量的人力和财力。考虑到通用知识图谱模式层庞大,人工定义困难,近年来不断有人尝试在Wikipedia等百科网站上分别进行实体、关系和属性抽取,然后从数据中提炼出模式信息,自底向上构建开放领域的知识图谱。这种构建方法与自顶向下相比,不仅成本低,而且实现了知识图谱中知识的迭代更新。可是,由于其完全自动化的特性,获取得到的知识难以构成完整的体系,知识的质量难以达到实用的水平。

本文根据心血管疾病健康医疗的应用需求,将自顶向下和自底向上方法相结合,人工定义本体,然后在获取的数据上发现新的数据模式。为了保证领域知识图谱中的知识具有领域相关性,根据实际需求对图谱数据划分一个明确的界限,实现心脏病知识图谱的领域封闭。

1  图谱构建

1.1 构建架构

首先通过人工参与构建心血管疾病词典,然后在该词典的指导下从中文百科网站和医学网站获取疾病相关的症状、检查、药品等属性和关系数据,经过知识融合和知识加工后实现心脏病中文知识图谱的半自动化构建。

在确定构建方法后,本文制定了如图1所示的知识图谱构建架构,整个半自动化构建采用循环式迭代的设计模式,其中每一轮迭代都包含了模式设计、数据获取、数据融合、数据加工等四个步骤。每完成一轮迭代都会生成一个新的版本,从而实现知识图谱的可持续更新。

1.2 模式设计

从实际应用需求出发,心脏病中文知识图谱主要为病患提供心血管疾病自助查询,另外也为医生提供医学知识库参考。图谱数据要求包含心血管疾病数据,以及相关药品、检查、症状数据。

通过查询百科词条和医学文献中的心血管内科疾病整理得到心血管疾病词典后,根据需求制定本体库。

在知识图谱中,模式层采用本体库中的规则和公理对数据进行约束。心脏病本体描述了心脏病领域所有的概念以及概念之间的关联关系,即称谓(同义关系)、上下位关系、属性关系以及这些内容上的公理、约束。

本体构建的方法有三种[7],第一种是人工构建,即邀请领域专家参与本体的编辑工作;第二种是采用数据驱动的方式自动构建;第三种是半自动构建的方法。鉴于心脏病领域知识图谱的本体数据规模不是很庞大,为了得到具有较高质量和准确度的本体,本文采用第三种方法。首先用人工编辑的形式构建一个初始的心脏病本体库,然后,在知识加工过程中提取出置信度较高的模式数据,经过人工审核后,再加入到知识图谱的本体中去。

根据此方法,参考百度百科、维基百科以及心血管内科有关的医学文献,依据其中与心血管疾病有关的系统性的描述构建心脏病知识图谱本体,并细化整个本体覆盖的实体类、关系类型以及实体属性,最终明确了各属性的值域。图2展示疾病和药品两个实体类的信息。

1.3 数据获取

1.3.1 数据源

由于缺乏现成的开源数据库,心脏病中文知识图谱的数据来源主要包括比较系统的医学网站和质量较高的百科类网站。

1) 医学网站

39疾病网是中国优质医疗保健信息与在线健康服务平台,包含了药品通、疾病百科等多个数据服务平台。寻医问药网是一个依靠医生和医院资源积累的医患交流平台,网站包含了系统的健康资讯、医药问答以及医学数据信息。本文将二者的开源数据作为知识图谱的主要实体数据来源。

2) 百科类网站

百度百科和互动百科是国内比较权威的中文百科网站,且均由各个领域专家众包编辑,几乎涵盖了所有领域的知识。两者所包含的结构化数据是所有知识图谱中属性数据最理想的来源之一,并且百科词条中的解释文本中也包含了大量有价值的疾病别称和上下文关系信息,本文将其作为医学网站数据的补充。

1.3.2 数据爬取和清洗

从异构数据源中采用分布式爬虫自动爬取医学数据,将同一来源数据整合并以轻量级的JSON文件保存。对于整合的数据,首先进行初步地清洗,主要包括对缺省值、乱码值以及非法字符进行清理。

1.4 知识融合

文献[6]和[8]分别从实体对齐和实体链接两个角度去阐述知识融合。实体对齐旨在发现具有不同标识但却在真实世界中代表同一对象的多个实体,然后将这些实体归并为一个具有全局唯一标识的实体对象并链接到心脏病知识图谱中。考虑到心脏病知识图谱是根据疾病词典获取相关医学数据的,实体对齐步骤将被直接省略,取而代之,将知识融合直接简化为属性对齐和实体链接两个步骤。

1.4.1 属性对齐与属性值规范化

为了提高实体链接的准确率,本文先进行属性对齐。由于心脏病领域的属性种类不是很多,可以根据心脏病本体中定义的模式信息来构建属性映射表,将同一类实体的同一属性的不同表达方式对齐。表1是不同数据来源的部分属性对齐映射表。

完成属性对齐后,根据模式层中各个属性的类型对属性值进行规范化处理。具体地,将属性初步划分为6种:二值型、数值型、数值区间型、字符串型、实体对象列表型、时间区间型。然后依次对这6种属性值进行结构化和规范化。

在进行结构化和规范化时主要遵循以下规则:

1) 统一所有数值型属性值的度量单位;

2) 去除所有字符串型的属性值中的空白符、换行符、制表符等;

3) 对于数值区间型和时间区间型属性值都以列表的形式分别保留闭区间的上限和下限;

4) 实体对象型属性值都默认保存为列表,且不纳入属性对齐的范围之内。

1.4.2 实体链接

当属性完成对齐、属性值完成规范工作后,借助属性对齐的结果扩展名称相似度的计算方法,将三元组中的实体链接到知识图谱中对应的实体项上去。由于医学实体(尤其是疾病)包含了大量的别名信息,在进行实体链接时可将实体的名称和别名合并为名称集,结合不同类型的属性分别计算相似度进行对齐。假设有ab两个实体,对应名称集分别为SaSb

1) 实体名称集相似度

Simname=max(iSajSb2×len_lcs(i,j)len(i)+len(j))

其中:len(name)表示name的长度,name{i,j}len_lcs(i,j)表示名称ij最大公共子序列的长度。

2) 二值型属性相似度

Simattrbool=1,aattr=battr0,aattrbattr

3) 区间型属性相似度

Simattrnumeric=len_overlap(aattr,battr)min(len(aattr),len(battr))

其中:len_overlap表示两个区间属性重合部分的长度,数值区间和时间区间属性都采用这种方法计算相似度。

4) 字符串型属性相似度

Simattrstring=2×len_lcs(aattr,battr)len(i)+len(j)

最后将实体的名称集相似度和属性相似度相加得到实体对的综合相似度,并根据综合相似度判断实体对是否指向同一实体。由于心血管疾病实体中存在很多名称相同但语义不同的实体对,如疾病实体和症状实体中存在同名的“猝死”实体,所以在计算实体对相似度时,如果两个实体名称集出现相同名称项,给名称集相似度添加权重k,如(5)式,规避名称集高相似度给实体对综合相似度造成的影响。

Sim(a,b)=1N+1(k Simname+i=1NSimattri)

其中,attri{attrbool,attrnumeric,attrstring}k的取值与数据源息息相关,为了找到与本文数据源最匹配的权重,从图谱中随机抽取出141对实体,任一实体对中的两个实体的名称集都具有相同名称项。对所有实体进行人工标注,如果该实体对表示为同一实体,标记为1,否则标记为0。同时设置k的取值范围为0.6,0.7,0.8,0.9,1.0,通过多组实验得到在不同权重下同名实体对分类准确率的影响,如表2所示。

表2可知,当k为0.8时,可以实现同名实体对间的最佳链接效果。

综合1.4.1和1.4.2,考虑到领域知识图谱的属性种类不多,采用人工构建属性映射表的方法实现所有属性的对齐。在属性对齐之后,将实体相似度和属性相似度进行加权求和,这样便完成了异构数据源中的实体与知识图谱中已有的实体之间的链接操作。

1.5 知识加工

1.5.1 模式检验

模式检验是在允许新模式和本体已有模式同时存在的情况下,对已经融合的数据进行类型和取值约束,使得数据层满足模式层中定义的规范。本文将根据1.2节中定义的模式信息生成规则库,然后在数据层上进行检查。规则覆盖的内容包括但不限于特定关系两端实体的类型是否合法、特定属性所属的实体类型是否合法、属性取值是否存在于既定的值域内等。

1.5.2 一致性检验

模式检验得到的数据在概念形式上已经与模式层保持一致,一致性检验将在此基础上从语义角度对数据层进行约束,表3是对疾病实体的并发症属性的一致性检验示例。和模式检验类似,本文根据模式层定义了一致性规则库,诸如图和图中的子图结构都将在一致性检验中得到修改。

1.5.3 模式发现

在1.2节中,根据实际需求定义了心脏病模式层,但在实际应用中很难保证该模式已经囊括了所需要的所有数据模式,考虑到从异构数据源中获取的数据中必然会存在大量未定义且具有研究价值的数据模式,因此本文将从这些数据中提取出新的模式,从而对人工构建的本体进行完善和补充。

面向自底向上构建得到的三元组数据,为了保证知识图谱的边界封闭性,对其中两种主要的关系类型进行处理。第一种关系类型所连接的头尾实体的类别都是已知的,并且都存在于当前的模式层中,通过文本匹配和语义相似计算将其链接到知识图谱已有的实体关系上,若无对应实体关系,则作为新的实体关系直接添加到模式层中;第二种关系类型所连接的头尾实体二者只有一个能够对应到当前模式层中的已知类型,本文将所有未知类型的实体抽取出来,先计算它们出现的次数,然后对其熵值做均一化处理,最后统计得到最优的四种关系如图3所示,将熵值较大的关系类型连同两端实体类型作为将要添加到模式层的候选新模式。

至此得到知识图谱的一个稳定版本。知识图谱的构建是一个循环迭代并逐渐趋于完整和成熟的过程。在整个构架过程中,应用需求决定了知识图谱中数据的更新动向。

2  图谱可视化与应用

2.1 图谱可视化展示

目前心脏病中文知识图谱第二版收录了565个心血管疾病数据,内容包括疾病对应的症状、检查、常用的药品以及并发症等重要数据信息,表4为主要类别的三元组统计数据。

本文将数据导入到Neo4j图数据库进行可视化展示。根据1.2节中定义的应用需求,心脏病中文知识图谱可以为患者提供自助查询,Neo4j返回如图4所示的子图结构,高血压患者可以通过知识图谱查询自己需要服用何种药品,其中包含了以利血平片等为代表性的降压药品。

另外,心脏病知识图谱还可以为医生提供决策帮助。当医生在为一位“持续性发热”“盗汗”“心脏杂音”的患者诊断病情时,根据图5所示图谱反馈的查询信息,可以建议该病人做“心电图”“CT”“尿常规”“多普勒超声心动图”等检查,以确定患者是否患有“心内膜炎”。

2.2 应用

心脏病中文知识图谱不仅丰富了中文健康医疗数据,在实际应用中还可以为很多医学人工智能任务做数据指导,为传统的自然语言处理任务提供新的思路。本节将列举出基于心脏病知识图谱的医学人工智能应用。

第一个应用是基于知识图谱的实体消歧。心脏病知识图谱中有很多一词多义的内容,知识图谱可以根据实体所在上下文进行实体消歧。如图6所示“猝死”在心血管领域既是症状也是疾病,有了知识图谱作为指导,在实体识别或关系抽取时将不再需要根据上下文进行复杂推理,而是直接根据所联系的实体,通过子图匹配的形式推出“猝死”在当前文本中的真实语义。心脏病知识图谱为文本中的实体消歧带来一个更可靠的候选答案,从而大幅提高实体消歧的准确率。

第二个应用是基于知识图谱的知识补充和链接预测。TransE[9]将关系理解成实体在低维向量空间中的平移操作,模型学习得到的分布式表示有效缓解了知识图谱的高稀疏度问题。TransH[10]在TransE的基础上引入了超平面,解决非一对一的复杂关系的表示问题,在链接预测任务上Hit@10达到了64.4%,TransD[11]和PTransE[12]和分别从关系路径和多语义的角度做出改进,在链接预测任务上Hit@10取得了77.3%和84.6%的好成绩。随着领域知识图谱规模不断扩大、数据不断完善,未来在心脏病等领域知识图谱上实现表示学习模型的训练,将进一步提高嵌入结构的精度。

问答系统是心脏病知识图谱的第三个主要应用。目前主流的问答系统有信息检索[13]、语义解析[14]和向量建模[15]三种技术路线。在知识问答系统中,知识图谱一方面可以帮助将问题解析成结构化的逻辑形式,另一方面也可促进答案子图嵌入的生成。Bordes等[15]将知识图谱和问答对同时映射到低维向量空间,然后采用基于间距的合页损失函数来微调,实验结果验证了该方法的有效性。Yih等[16]结合知识图谱提出阶段查询图生成的方法,在WebQuestions数据集上取得了当时最好的成绩。

未来人工智能领域越来越多的应用都将结合知识图谱,既提高了可解释性,又摆脱了对大数据的依赖。

3  结 语

本文结合自顶向下和自底向上的方法构建心脏病中文知识图谱,图谱的构建过程实现了半自动化,是一个以应用需求为驱动的架构。在知识融合部分提出一种改进的实体相似度计算方法,将实体链接到知识图谱中对应的实体项上。在知识加工部分,模式层的迭代更新不仅仅依赖于人工定义,还会根据图谱数据发现新的数据模式并经过人工审核后加入到本体中去。心脏病中文知识图谱为心血管疾病患者带来了健康医疗服务,也为医学人工智能的落地提供了大数据支撑。

未来的工作将在完善心脏病知识图谱的同时,继续研发基于心脏病知识图谱的问答系统、临床决策系统等医疗领域的应用,通过人工智能为医学领域带来更多福祉。

参考文献

[1]

杨晨. 基于模板诱导的金融领域知识图谱自动构建[D]. 武汉: 武汉科技大学,2018.

[2]

YANG C. Automatic Construction of Financial Domain Knowledge Graph with Template Induced Method[D]. Wuhan: Wuhan University of Science and Technology, 2018(Ch).

[3]

孙驰. 基于微博的知识图谱的构建与研究[D].成都:西华大学, 2015.

[4]

SUN C. The Construction Method of Knowledge Graph in Micro⁃Blog [D]. Chengdu: Xihua University, 2015(Ch).

[5]

陈亚东, 鲜国建, 寇远涛,. 我国苹果产业知识图谱构建研究[J]. 中国农业资源与区划,2017,38(11):40-45.DOI:10.7621/cjarrp.1055-9121.20171106 .

[6]

CHEN Y D, XIAN G J, KOU Y T, et al. Study on construction of knowledge graph of apple industry in China[J]. Chinese Journal of Agricultural Resources and Regional Planning,2017,38(11):40-45. DOI:10.7621/cjarrp.1055-9121.20171106(Ch).

[7]

贾李蓉,刘静,于彤,.中医药知识图谱构建[J].医学信息学杂志,2015,36(8):51-53. DOI:10.3969/j.issn.1673-6036.2015.08.012 .

[8]

JIA L R, LIU J, YU T, et al. Construction of traditional Chinese medicine knowledge graph [J]. Journal of Medical Informatics,201536(8):51-53. DOI:10.3969/j.issn.1673-6036.2015.08.012(Ch).

[9]

李新龙, 刘岩, 何丽云,. 知识图谱研究概况及其在中医药领域的应用[J].中国中医药信息杂志, 2017, 24(7):129-132. DOI:10.3969/j.issn.1005-5304.2017.07.033 .

[10]

LI X L, LIU Y, HE L Y, et al. Research review of knowledge graph and its application in TCM field [J]. Chinese Journal of Information on Traditional Chinese Medicine, 2017, 24(7):129-132. DOI:10.3969/j.issn.1005-5304.2017.07.033(Ch).

[11]

刘峤, 李杨, 段宏,. 知识图谱构建技术综述[J]. 计算机研究与发展, 2016, 53(3):582-600. DOI:10.7544/issn1000-1239.2016.20148228 .

[12]

LIU Q, LI Y, DUAN H, et al. Knowledge graph construction techniques[J]. Journal of Computer Research and Development, 2016,53(3):582-600. DOI:10.7544/issn1000-1239.2016.20148228(Ch).

[13]

胡芳槐. 基于多种数据源的中文知识图谱构建方法研究[D]. 上海: 华东理工大学, 2015.

[14]

HU F H. Chinese Knowledge Graph Construction Method Based on Multiple Data Sources [D]. Shanghai: East China University of Science and Technology, 2015(Ch).

[15]

徐增林, 盛泳潘, 贺丽荣,. 知识图谱技术综述[J]. 电子科技大学学报, 2016, 45(4):589-606. DOI:10.3969/j.issn.1001-0548.2016.04.012 .

[16]

XU Z L, SHENG Y P, HE L R, et al. Review on knowledge graph techniques [J]. Journal of University of Electronics Science and Technology of China,2016,45(4):589-606. DOI:10.3969/j.issn.1001-0548.2016.04.012(Ch).

[17]

BORDES A, USUNIER N, GARCIA-DURAN A, et al. Translating Embeddings for Modeling Multi-Relational Data[DB/OL]. [2019-01-10]. ta.pdf.

[18]

WANG Z, ZHANG J W, FENG J L, et al. Knowledge graph embedding by translating on hyperplanes [C]// 28th AAAI Conference on Artificial Intelligence. Palo Alto: AAAI Press, 2014:1112-1119.

[19]

JI G L, HE S Z, XU L H, et al. Knowledge Graph Embedding via Dynamic Mapping Matrix[DB/OL].[2019-02-20].

[20]

LIN Y K, LIU Z Y, LUAN H B, et al. Modeling Relation Paths for Representation Learning of Knowledge Bases [DB/OL]. [2019-03-02].

[21]

YAO X CDurme B VAN. Information Extraction over Structured Data: Question Answering with Freebase [DB/OL]. [2019-03-02]. 965907073.html.

[22]

BERANT J, CHOU A, FROSTIG R, et al. Semantic Parsing on Freebase from Question-Answer Pair[DB/OL]. [2019-03-02].

[23]

BORDES A, WESTON J, USUNIER N. Open question answering with weakly supervised embedding models[C]//Joint European Conference on Machine Learning and Knowledge Discovery in Databases(LNCS 8724).Berlin: Springer, 2014: 165-180. DOI:10.1007/978-3-662-44848-9_11 .

[24]

YIH W T, CHANG M W, HE X D, et al. Semantic Parsing via Staged Query Graph Generation: Question Answering with Knowledge Base[DB/OL].[2019-01-02].

基金资助

国家社科基金重大研究计划(11&ZD189)

湖北省教育厅人文社会科学研究项目(17Y018)

AI Summary AI Mindmap
PDF (1960KB)

0

访问

0

被引

详细

导航
相关文章

AI思维导图

/