技术领域
本发明属于知识图谱和可视化的技术领域,尤其涉及一种中医药知识图谱构建与可视化方法。
背景技术
近年来,越来越多的中医药数据库,电子资源等都可以在互联网上方便获取,如何获取更全面、更准确、更权威的中医药知识也成为中医药领域的研究需求。知识图谱是以语义网络为骨架构建起来的巨型、网络化的知识系统,能够捕捉并呈现领域概念之间的语义关系,使互联网上琐碎零散的知识互相连接,支持综合性知识检索以及问答和决策支持等智能应用。中医药知识图谱主要是以中医药学语言系统为骨架构建的知识图谱系统,以现有的数据库资源为知识图谱填充内容。可视化的语义图可以形象的表达领域概念之间的关联,用户可通过交互的方式来浏览领域概念,选择其中的某个概念开始构造查询或搜索。三者串联即可形成中医药知识图谱和数据可视化,应用这种方式可满足中医领域对中医药知识权威,全面、准确的需求。国外科学家在信息可视化领域取得了突出成就,美国德雷克塞尔大学和科学情报研究所是信息可视化研究的主要阵地,众多科学家在此对信息可视化的研究,相关工具的开发应用都取得了巨大进展。国外学者也对目前知识图谱的研究做出以下概括,知识图谱主要应用于展示可视化知识领域的进化情况,可视化分析检索结果,展示领域知识整体结构,整体把握学科知识,把握快速变化的知识领域进展等。传统的中医药历史悠久,源远流长,其价值已为临床实践所证实,已经得到日本、韩国、新加坡等欧亚国家的重视,由此可见,中医的发展前景十分广阔。
现有中医药数据库数据显示不够全面,中医药知识之间联系不够紧密。当今在治疗乙肝、偏瘫、风湿和新冠肺炎等疑难杂症方面,中医药都显示出了无以伦比的巨大作用。然而中医又存在数据混乱,条理不清,医书典籍混杂等缺点。如何使中医数据条理化、清晰化成为了当务之急。如今计算机技术迅猛发展,衍生出众多技术,例如知识图谱,数据可视化,人工智能,大数据等。利用这些计算机技术能够解决上述中医药数据存在的弊端。
发明内容
基于以上现有技术的不足,本发明所解决的技术问题在于提供一种中医药知识图谱构建与可视化方法,基于知识图谱可以捕捉概念之间的语义关系的特点,将中医药领域知识建成图谱进行可视化,提高了中医药数据库检索的准确度,增强中医药知识之间的全面性及连通性。
为了解决上述技术问题,本发明通过以下技术方案来实现:
本发明提供一种中医药知识图谱构建与可视化方法,包括以下步骤:
步骤1:创建知识图谱的模式;
步骤2:将关系数据库中的中医药信息转化为RDF数据;
步骤3:根据两个实体的属性相似度匹配来实现实体对齐,将两个实体合并成一个实体,避免实体重复冗余;
步骤4:将对齐后的三元组表格生成owl文件,导入可视化工具protege中,形成知识图谱系统,向用户直观展示方剂,饮片,中药,药材炮制,药材基源间的联系;
步骤5:利用算法计算出方剂中饮片的权重信息;
步骤6:利用svg矢量图生成穴位功效知识图谱;
步骤7:搭建web项目。
可选的,在步骤S1中,包括以下步骤:
步骤1.1:类层次结构:图谱采用的是两层类层次结构;
步骤1.2:类关系定义:类之间存在相互关系,类之间可以定义单向的关系,也可以定义双向的关系;
步骤1.3:类领域定义:定义多个领域便于将类进行分组管理。
进一步的,在步骤S3中,包括以下步骤:
步骤3.1:对属性进行权重评估;
步骤3.2:对属性值间的相似度进行评估;
步骤3.3:将步骤3.1中算出的权重与步骤3.2算出的属性相似度求加和,定义为两个实体的相似度,设置阈值,根据所处范围进行分类。
由上,本发明的中医药知识图谱构建与可视化方法为用户提供了获取和查看中医知识的又一途径,可以向用户直观的展示庞大的中医药数据,并且条理分明,用户可根据图谱内容追根溯源,查看数据间的关联。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下结合优选实施例,并配合附图,详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例的附图作简单地介绍。
图1为中医药知识图谱可视化系统的功能模式图;
图2为中医药知识图谱构建与可视化方法的流程图;
图3为实体对齐方法流程图;
图4为中医药知识图谱效果图;
图5为svg矢量图展示效果图;
图6为登录注册入口图;
图7为注册界面图;
图8为中医药知识图谱构建和可视化系统首页图;
图9为医学文献知识问答页面图;
图10为医学文献查看成功页面图;
图11为医学文献查询页面图;
图12为人体穴位百科页面图;
图13为医案挖掘百科页面图;
图14为药理作用百科页面图;
图15为药对图谱页面图;
图16为protege图谱。
具体实施方式
下面结合附图详细说明本发明的具体实施方式,其作为本说明书的一部分,通过实施例来说明本发明的原理,本发明的其他方面、特征及其优点通过该详细说明将会变得一目了然。在所参照的附图中,不同的图中相同或相似的部件使用相同的附图标号来表示。
如图1至图3所示,本发明的中医药知识图谱构建与可视化方法包括以下步骤:
步骤1:与中医药学专家联系规定了中医药图谱构架的结构与关系将方剂,方剂包含的饮片,饮片具有的功效,所能治疗的疾病,与饮片相关的名医,以及饮片能构成什么药物关联起来。定义了多个领域便于将类进行分组管理。例如穴位域中会有穴位,功效等类。药对域会有药对类,方剂域会有方剂,饮片,名医类等。构成单向的大型知识图谱。
步骤1.1:类层次结构:图谱采用的是两层类层次结构。
步骤1.2:类关系定义:类之间存在相互关系,类之间可以定义单向的关系,也可以定义双向的关系。如果需要定义主逆关系,需要约定其主关系及逆关系。图谱采用的是单向关系。例如方剂组成饮片。
步骤1.3:类领域定义:为了管理方便,定义了多个领域便于将类进行分组管理。例如穴位域中会有穴位,功效等类。药对域会有药对类,方剂域会有方剂,饮片,名医类等。
步骤2:因为数据集为结构化数据库,所以利用现有的工具D2R工具,将结构化数据转化为RDF数据。即由三元组形式“资源-属性-属性值”或者说“主语-谓语-宾语”组成。
步骤3:数据源有很多包括《本草纲目》,《伤寒论》等著作,这就意味着需要将多个识图谱进行融合,这需要处理两个层面上的问题:通过模式层的融合,将新得到的本体融入已有的本题库中,以及新旧本体的融合;数据层的融合,包括实体的别称、属关系以及所属类别等减少不必要的冗余。
数据层的融合是指实体和关系(包括属性)元组的融合,主要是实体匹配或对齐,优于知识库中有些实体含义相同但具有不同的标识符,所以需要对这些实体进行合并处理,本发明中所用的为基于属性相似度匹配进行实体对齐。
定义两个待匹配知识G
步骤3.1:对属性进行权重评估。根据IDF(Inverse Document Frequency)信息检索中一种常用的关键词评估技术,利用统计方法评估关键词在整个语料库中的重要性。它的主要思想是:关键词的重要性随着它在语料库中出现的频率成反比下降。即一个关键词在一篇文档中出现的次数越多,则它向用户传递的信息越少,重要程度越弱。所以应该给经常出现的关键词分配较小的权重。根据这种IDF思想,属性值等于v时的权重定义为:
IDF
其中n表示知识图谱中所有属性的总数,F
在实际应用中,一个实体可能具有多个属性,因此需要对这个实体的多个属性的权重进行规一化处理.具体方法是所求实体的一个属性的IDF权重除以这个实体所有属性的IDF权重之和,即属性A
步骤3.2:对属性值间的相似度进行评估。实体的属性一般有三种形式:文本型,数值型和列表型。列表型属性即是一个实体的属性对应多个属性值,例如一个方剂的饮片属性,会有多种饮片构成,这种就是列表型属性。分三种情况计算其实体相似度。对于数值型实体我们使用下述公式计算两个实体之间的属性相似度:
其中d
对于文本型实体属性,我们首先使用了基于向量空间模型的TF-IDF方法。TF-IDF作为一种传统的统计方法,它的作用是评估一个字词对于一个文档的重要程度。方法统计单位位词所以首先使用中文分词工具对文本书句进行分词,从而计算得到每个文本数据TF-IDF向量。得到向量后使用余弦相似度来衡量向量之间的相似性。那么对于A,B两个n维的TF-IDF向量,他们之间的预先相似度可以通过下述公式得出:
通过公式(5)可以看出相似度的值域是[0,1],且值越大相似度越高。
列表型的数据可以作为集合进行处理。对于列表型的属性值,我们使用两种指标来衡量它们的相似性。一种是计算交集的个数,交集个数越大表示它们之间越相似;另外一种是Jaccard相似度,计算公式如式(6)所示:
对于两个集合A和B,Jaccard相似度的值域为[0,1],值越大表示它们之间的相似性越高。
步骤3.3:将步骤3.1中算出的权重与步骤3.2算出的属性相似度求加和,设置阈值,根据相似度所处范围进行分类。我们设e
设置2个相似度阈值,判断总的相似度评分设置2个相似度阈值,判断总的相似度评分
当两个实体的匹配时,将两个实体进行合并,实体的属性信息相互补充,补全实体与实体之间的链接。当两个实体可能匹配时,将这部分实体筛除,进行人工标注。如果判断两个实体匹配,则将实体放入匹配集合,与其他实体一起进行合并,做知识图谱补全。
步骤4:将对齐后将三元组表格生成owl文件,用Python语言读取三元组表中实体的信息,在图谱中就是方剂和饮片信息。以[方剂:饮片1,饮片2,饮片3.....]的列表形式存储读取到的数据,将方剂和饮片信息对应起来;读取表中前三列的subject,property,value,利用for循环将数据保存在字典和双重字典中。
步骤5:在neo4j图数据库中建立知识图谱。Python提供了连接neo4j数据的方法:from py2neo import Graph,Node,Relationship,利用包内提供的方法连接neo4j数据库。
步骤5.1:读取步骤4中字典及双重字典中的数据,再利用Node()方法进行节点的建立,在括号中填入label,name等标签,使节点具有唯一性。用graph.create()语句创建节点。将字典中节点数据导入neo4j数据库中形成方剂,饮片等节点。
步骤5.2:利用Relation(节点1,关系名称,节点2)方法创建图谱中的关系,这种关系为节点1指向节点2的关系。再用graph.create()语句导入所有关系数据。读取三元组中的所有关系,将节点与节点之间连接起来建立按层级排列的知识图谱,解决了“知识孤岛”问题,让知识之间的关系一目了然。效果见附图4。
步骤6:Neo4j中提供了改变节点颜色的功能,点击一类节点进行颜色的选择,美化图谱,使得知识图谱更加清晰。为了更加直观的了解穴位的功效,在HTML5中创建了可缩放的svg矢量图生成穴位功效知识图谱,创建svg xml文件,创建箭头及原点标签,最后使用户鼠标悬浮在穴位原点上即可伸出箭头向量指向此穴位的功效原点,指过的穴位原点底纹颜色加深,方便用户记忆。E-charts串联单个概念按层级关系形成小型知识图谱,加深用户对中医概念的理解,效果见附图5。
步骤7:搭建web项目。为方便用户,我们搭建了中医药知识图谱可视化系统。系统内包含用户注册登录,知识问答,知识百科等功能。首先利用JavaScript,H5技术进行web页面设计,然后采用Java的SMM架构搭建基本的中医药页面网站系统。实现从数据库中读取中药信息、方剂信息以及中医人物,医书,病例等信息。同时用户可以通过此系统查看全部的医药内容,查询想要了解的单个医药信息。
用户进入系统,第一步需要选择注册及登录,如附图6。从未注册过的用户点击注册按钮,输入自己设定的用户名及密码,点击提交按钮,完成注册,如附图7。并跳转回系统开始页面。用户选定登录按钮,点击跳转到登录界面,输入自己注册好的用户名及密码。
首页主要用于介绍系统的组成。主要包括包括知识图谱,知识百科,知识问答和联系我们四大部分,在分页栏上有所显示。并插入一张E-charts的树形图的js文件。可将此部分移动、放大缩小或点击按钮展开内容,方便用户进行查看,如附图8所示。
知识问答模块中包含医学文献,症候,治法,中医疾病,方剂,中医人物,中医医案等具体页面。这里拿医学文献页面举例。点击知识问答分页栏中医书文献,进入医书文献页面,如附图9。医书文献页面向我们展示了中国古典四大医书《黄帝内经》、《难经》、《伤寒杂病论》、《神农本草经》及详细介绍。右侧给出按钮可进行医书文献的查看和查询。点击医书查看按钮,系统向用户展示数据库中医书文献的编号,名称,释义等所有相关信息,如附图10。点击医书文献查询按钮,系统进入查询界面,输入想查询医书文献名称,系统显示查询具体信息。并展示出医书文献各个分类所占比例,如附图11。
知识百科中分为人体穴位百科页面,医案挖掘百科页面,药理作用百科页面。点击知识百科分页栏中人体穴位百科,进入人体穴位百科页面,如附图12。此页面通过E-charts关系图,通过分级的方式向用户展示了人体各个穴位。一级是人体;二级是人体的各个部位,包括头部,胸部,脚部,背部,腿部,胳膊手部,六大部位;三级是相关部位的穴位名称。点击左侧穴位按钮可实现二级分类的隐藏。页面右侧是人体穴位的科普,向用户展示人体八大功能丰富穴位及功用,分别是大椎穴,足三里穴,三阴交穴,中脘穴,天枢穴,气海穴,神阙穴,命门穴。点击知识百科分页栏中医案挖掘百科,进入医案挖掘百科页面,如附图13。此页面通过词云技术,根据数据库中与感冒相关的近百条与感冒及其并发症相关的中医医案,提取出治疗感冒方剂中应用最多的药材,分别是杏仁,甘草等。通过查询医书古籍,证实了这一结果,在页面的右侧给出了杏仁,甘草,薄荷的主要功效,都与治疗感冒相关。点击知识百科分页栏药理作用百科,进入药理作用百科页面,如附图14。此页面向用户展示了医学的相关概念--药理作用。右侧页面展示了常见水果的药理作用
在系统的知识图谱模块中,包含了总图谱,药对图谱,穴位及功能图谱,protege图谱等页面。点击知识图谱分页栏总图谱,页面跳转到总图谱页面,如附图4。利用neo4j数据库,以三元组的形式存储数据,通过python程序将数据导入neo4j数据库中,数据库中展示出方剂,组成方剂的饮片,饮片治疗疾病,具有功效,与饮片相关的名医等信息。用户通过鼠标拖拽更加直观的查看方剂或饮片等概念,通过扩展按钮查看相关概念,锁定按钮用于锁定图谱图形,便于用户查看。点击知识图谱分页栏药对图谱,页面跳转到药对图谱页面,如附图15。根据E-charts关系图绘制出六十多种药对的知识图谱,用户可通过滚动鼠标进行放大和缩小,移动鼠标进行页面移动。点击知识图谱分页栏穴位及功效图谱,页面跳转到穴位及功效图谱页面,如附图5。使用svg矢量图绘制出四十八个穴位及对应功效,鼠标移动到穴位名称处,伸出矢量线指向对应功效,鼠标停留过的穴位颜色加深,如附图16,便于用户记忆。
以上所述是本发明的优选实施方式而已,当然不能以此来限定本发明之权利范围,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和变动,这些改进和变动也视为本发明的保护范围。
机译: 一种基于知识图谱的多用户游戏服务提供方法及其装置
机译: 一种稳定转化多细胞植物质体的DNA构建体,一种转化质体构建的方法和一种用DNA转化的植物的构建
机译: 用于烹饪食谱可视化的食谱树构建系统和使用该系统的食谱树构建方法