借用UMLS的语义网络构建顶层本体,建立疾病知识和UMLS中语义类型的映射关系,并对UMLS的语义关系进行细化,通过细化的语义关系将疾病与其相关的知识关联,构建疾病与症状、检查、药物、医疗器械与医疗法规之间的关联关系,实现疾病知识的整合。通过实例展示疾病知识整合的过程。
The paper constructs and extends semantic network of UMLS as a top-level Ontology, proposes a UMLS-based framework which maps heterogeneous disease knowledge to the semantic type, and refines the semantic relationship in UMLS. Through the refunded relationship links the variety of disease knowledge,it implements the framework to integrate relevant disease knowledge by constructing the relation oriented of disease between disease, symptom, test, medicine, medical device, and medical regulation. Finally,it gives an example demonstrating the process of integrate disease knowledge.
Internet中4.5%的信息与健康/疾病相关[ 1],这些信息分散在各种系统内部,各系统异构、资源描述格式不一;资源种类繁多,其种类包括:文本、网页、数据库、报告、学术论文、音视频文件等。资源的种类和分布的特点导致了数据描述标准不统一,难以整合,不利于公众健康知识的传播、共享和利用。2009年科技部“十一五科技支撑计划”支持中国医学科学院医学信息研究所开展“公众健康知识整合技术研究与应用”课题(项目编号:2009BAI76B04),研究公众健康知识组织系统构建的相关理论,解决与疾病相关的症状、检查、医疗器械以及医疗法规之间的集成与揭示,建立不同类型知识之间的关联。课题组分析了不同类型知识整合的途径方法,将其总结为基于传统知识组织体系关联扩展的语义网络模式、基于传统知识组织体系整合抽取的本体仓库模式、基于语义网的参考网络模式以及网络本体和本体网络的模式等4种,分析了其优缺点,并选择基于传统知识组织体系关联扩展的语义网络模式整合与疾病相关的症状、检查等知识。 本文首先分析知识组织体系整合的4种模式,提出了基于UMLS框架的疾病知识整合框架,并按照该框架实现了疾病与症状、检查、药物、医疗器械与医疗法规之间的关联。通过借鉴UMLS的语义关系,细化了传统用代属分参的关系,通过不同类型知识之间的关联,实现以疾病为中心的知识导航。
构建以疾病为核心的公众健康知识组织体系,整合症状、检查、药物、医疗器械与医疗法规相关知识,通过调研现有知识组织体系构建的途径,例如UMLS、DO、GO、NeOn、STERNA (Semantic Web-based Thematic European Reference Network Application)以及FOS等知识组织体系,把构建与整合知识组织体系的方法归纳为以下4种途径。
(1)基于传统知识组织体系关联扩展的语义网络模式
UMLS[ 2]是由美国国立医学图书馆(National Library of Medicine,NLM)设计与维护的一体化医学语言词表[ 3],是基于传统知识组织体系关联扩展建设语义网络模式的典型代表。UMLS共有三个知识源数据库:叙词表(Metathesaurus)[ 4, 5]、语义网络(Semantic Network)[ 6, 7]和专家词典(Specialist Lexicon)[ 6, 8]。Metathesaurus通过概念来组织,其目的是将同一概念的不同名称和形式连接在一起,标识不同概念之间的关系。语义网络是提供Metathesaurus中所有概念的统一分类和一系列概念之间的关系(在UMLS中语义网络由语义类型和语义关系共同构成,语义关系将语义类型连接起来,语义类型之间形成网状关系。UMLS中的语义网络与当前语义网概念稍有差别,前者1986年提出,专指UMLS语义类型之间的关系;而后者通过RDF/RDFS或者本体语言实现,计算机可理解,甚至具有推理功能。本文仅指前者)。专家词典的作用是为自然语言处理系统提供词汇信息。
(2)基于传统知识组织体系整合抽取的本体仓库模式
该模式的典型代表是联合国联农组织发起的FOS项目[ 9, 10],旨在通过创建、整合和利用本体,来加强渔业信息系统的信息整合和语义互操作能力。FOS项目整合的资源包括:
①OneFish:一个渔业项目的门户,采用等级主题树方式对信息进行组织,大约有超过1 800个主题,主题含有简短的摘要、标识符、相关联的材料,如文件、网站、元数据。
②AGROVOC叙词表:包含大约2 000个渔业的叙词和16 000相关的扩展词。
③ASFA叙词表:超过6 000个叙词。
④FIGIS:一个整合渔业信息的全球化网络,其采用参考表来组织资源,主要包括水生物种、地理对象、水生资源、海洋渔业、渔业技术,大约有300个顶级概念,向下分成4级,共含有30 000个资源对象,并能支持多语种互操作。
(3)基于语义网的参考网络模式
该模式的核心是通过元数据的RDF模型和用SKOS格式描述的网络参考模型实现对分散异构资源进行分布式语义检索,其典型代表是STERNA[ 11, 12]。该项目在2008年6月到2010年11月获得eContentplus项目的1 500万欧元支持下,与12个欧洲自然史和生物多样性机构合作,以鸟类和各种鸟类相关的信息为核心,将各种关于鸟、鸟类物种和它们习惯的多媒体资源,包括科学数据、文章、图片、视频和声频文件,汇集和显示在同一个信息空间,以支持欧洲数字图书馆,整合在自然科学、生物多样性及保护领域带有语义的丰富数字资源。STERNA基础架构是通过元数据的RDF模型和用SKOS格式描述的网络参考模型对成员网站的内容进行分布式语义检索。
(4)网络本体和本体网络的模式
该模式的核心思想是网络化本体,通过发展一套整合的方法来进化网络化的本体和相关元数据,通过场景与模式构建实现现有本体的重构、映射、模块化、本体化,并将非本体资源进行整合。NeOn[ 13, 14]项目是该模式的典型代表,其由欧盟第六框架计划资助,14个欧盟研究机构参与,旨在通过本体网络进行大规模语义应用,通过开发工具和相应方法,以经济有效的方式解决整个过程的应用问题,并促进新一代语义应用。
笔者对以上4种知识组织体系集成模式进行综合对比,在可扩展性方面“基于传统知识组织体系关联扩展的语义网络模式”较强,具有如下优点:
①充分借助已有知识组织体系进行关联扩展。通过多个词表的关联有效实现了概念关联与扩展,显著提升了概念覆盖范围与文献处理能力。同时,通过完整继承来源词表的词义、概念和关系,保留了不同知识组织体系设计的视角、观点与结构,通过知识组织体系的多元化,实现了用户需求与检索呈现等多元化需求的满足能力。如UMLS的Metathesaurus包含100多个术语表、分类表、叙词表和它们的不同版本的概念、概念名称和属性,并保留了来源词表的词义、概念和关系。如果两个来源词表使用同一名词术语表达不同的概念,则将两种含义都表达出来,并说明哪个含义来自于哪个来源词表。如果同一个概念在不同的来源词表中被划分在不同的等级层次中,则将等级层次也包含进去。如果不同来源词表中的两个概念相互冲突,则两种观点都包含在Metathesaurus中。一些来源词表中的概念可能是异质的,或表面看来是不正确的,也被包含在Metathesaurus中,这些对不同的任务也许是有用的。
②通过语义扩展实现对传统知识组织体系局限于“用、代、属、分、参”的概念关系的有效扩展,为实现突破简单概念关系的语义处理提供了支撑。如UMLS通过定义语义类型和语义关系,并在词表的基础上为每一个概念都分配一个语义类型,有效实现了语义扩展。
③该模式的明显优势是充分借用并尊重已有知识组织体系的观点、结构、涵义与关系,具备了多元化的广泛信息处理能力与机器自动标引能力,其劣势是当在更广泛和复杂的学科范围背景下,针对学科交叉与更复杂的语义关系时,语义类型及语义关系的定义存在较大难度。
因为UMLS的可扩展性和对语义处理的支持,同时保留了原有知识组织体系的内容和关系,适应于不同来源、不同类型公众健康知识点之间(例如疾病、检查、症状、药物以及器械等)的关联,所以在设计技术路线时选择了基于UMLS的疾病知识整合框架。本文借用UMLS语义关系将疾病、检查、症状、药物以及器械等进行关联,较用、代、属、分、参及簇等关系做了进一步细化,为公众了解疾病相关信息起到知识导航作用,以提高公众健康信息素养。
UMLS通过语义关系建立不同语义类型之间的关联关系,形成语义网络。UMLS包括135种语义类型和54种语义关系,将待整合的本体概念映射到UMLS的语义类型下,每个概念对应至少一种语义类型;细化UMLS的语义关系,通过语义关系建立起语义类型之间的关联,从而构建语义网络,建立概念术语、本体实例之间相互错综复杂的关系。
本文提出基于UMLS的疾病知识整合框架,充分借助已有知识组织体系进行关联扩展。 通过多个词表的关联有效实现了概念关联与扩展,显著提升了概念覆盖范围。同时,通过完整继承来源词表的词义、概念和关系,保留了不同知识组织体系设计的视角、观点与结构,通过知识组织体系的多元化,便于实现用户需求与检索呈现等多元化需求的满足能力。图 1为实现本体概念/实例整合的技术路线。
图1展示了通过构建本体、本体实例以及语义关系,实现本体实例之间的关联,步骤如下:
(1)根据UMLS语义网络,构建顶层本体。
①构建语义类型(使用Protégé构建类);
②构建语义关系(使用Protégé构建对象关系);
③用语义关系将语义类型关联起来,形成语义网络。
(2)构建本体,包括疾病、症状、检查、药物、器械和医疗法规本体。
(3)使用is-a关系,将步骤(2)构建的本体和步骤(1)构建的语义类型进行关联,本体继承了相关联的语义类型的对象属性和关系属性(例如本体1和本体2之间的关系继承了语义类型1和语义类型2之间的语义关系)。
(4)构建本体(步骤(2)创建)的实例,实例继承了本体的对象属性和关系属性,由于关系属性的传递,从而实现本体实例之间的关联(实例继承了本体的属性,本体继承了顶层本体中语义类型的属性。例如实例1和实例2之间的关系继承于顶层本体的关系)。
(5)实例之间关系细化。针对实例之间的特殊情况,由人工进行干预,细化继承的对象关系,从而实现实例之间关系的准确关联。
(6)整合疾病相关知识。
公众健康知识组织体系可以是主题表(分类表),已有的本体或语义网络,或者是根据实际情况自行构建的知识组织体系,对于自行构建/发现本体,本体和顶层本体中的语义类型进行映射,在顶层本体中语义类型之间存在映射关系,本体继承了顶层本体的关系,从而实现概念层本体之间关系的构建,自行构建/发现的本体实例由于继承了本体的属性,实现了不同类型本体实例之间关系的构建。本体实例继承的本体属性(尤其是关系属性)可能需要细化,也存在继承阻断的情形(即原本属于本体的属性,但是在实例层次该属性却不成立)。基于UMLS的疾病知识整合的实现过程如下:
顶层本体类似于网络是目录,节点是语义类型,而连接各节点的边是语义关系。赋予被整合的概念、实体或实例等至少一种语义类型,语义关系存在于多种语义类型之间。项目组构建了基于UMLS包含的顶层本体,选择UMLS2008系统中的语义类型和语义关系。本文创建语义网络与本体的工具是Protégé 3.4,基于Windows XP平台。
利用Protégé分别构建疾病、症状、药物、医疗器械、检验正常值以及医疗法规本体。
(1)疾病本体
疾病是机体在一定原因的损害性作用下,因自稳调节紊乱而发生的异常生命活动过程。多数疾病,机体对病因所引起的损害发生一系列抗损害反应;自稳调节的紊乱,损害和抗损害反应,表现为疾病过程中各种复杂的机能、代谢和形态结构的异常变化,而这些变化又可使机体各器官系统之间以及机体与外界环境之间的协调关系发生障碍,从而引起各种症状、体征和行为异常,特别是对环境适应能力和体力减弱甚至丧失[ 15]。
疾病的数据属性包括:疾病名、疾病别名、概述、病因、临床表现、诊断与鉴别诊断、并发症、治疗、预后。
(2)症状本体
疾病过程中机体内的一系列机能、代谢和形态结构异常变化所引起的病人主观上的异常感觉称为症状(Symptom),如疼痛、不适、畏寒等[ 16]。
症状的数据属性包括:症状名称、症状别名、概述、病因、诊断、伴随症状及预防。
(3)检查本体
检查是一种关键的测试、观察、评估或审查,根据提交的声明,判断某些条件或操作将作为证明还是反证,决定某种判断是被接受还是被拒绝[ 17]。
检查的数据属性包括:检查名称、检查概述、临床意义、参考值以及注意事项等。
(4)药物本体
药物指能影响机体生理、生化和病理过程,用以预防、治疗和诊断疾病,有目的地调节躯体生理功能,并规定用法用量和功能主治的一切物质[ 18]。
药物的数据属性包括:药物类型、药品名称、商品名、英文名、规格、剂型、新药证书编号、批准文号、适应症、禁忌症、用法用量、药物相互作用、不良反应、注意事项、图片、是否为处方药、是否为医保药(价格)等。
(5)医疗法规本体
医疗法规是规范医疗行为的强制性条款[ 19]。法规的数据属性包括:法规名称、发文单位、法规内容、发文时间等。
(6)医疗器械本体
医疗器械是指单独或者组合使用于人体的仪器、设备、器具、材料或者其他物品,包括所需要的软件;其用于人体体表及体内的作用不是用药理学、免疫学或者代谢的手段获得,但是可能有这些手段参与并起一定的辅助作用;其使用旨在达到下列预期目的[ 20]:
①对疾病的预防、诊断、治疗、监护、缓解;
②对损伤或者残疾的诊断、治疗、监护、缓解、补偿;
③对解剖或者生理过程的研究、替代、调节;
医疗器械的数据属性包括:器械名称、器械别名、概述、使用方法、仪器名/商品名、仪器号、管理分类、产品标准、产地/生产商、仪器特点、仪器介绍/ 产品概述/性能结构及组成、规格型号、使用方法、购买注意事项、相关产品、备注以及图片等。
将6种本体(疾病、症状、检查、药物、器械、法规)分别与UMLS中的语义类型进行映射。NLM官方认为UMLS是一个语义网络,并不是本体,利用UMLS的前提是将其本体化,用OWL语言对其进行再描述,并将其引入到课题构建的本体中。引入UMLS的代码片段如下:
<owl:Ontology rdf:about="">
<rdfs:comment>An example OWL ontology</rdfs:comment>
<owl:imports rdf:resource="http://127.0.0.1:8080/ehealth/file/owl/UMLS.owl"/>
<rdfs:label>UMLS Ontology</rdfs:label>
</owl:Ontology>
其中, “http://127.0.0.1:8080/ehealth/file/owl/UMLS.owl”是引入的外部本体UMLS.owl。UMLS.owl是笔者利用Protégé将UMLS语义网络本体化,以UMLS的语义类型为本体中的类,UMLS的语义关系为本体中的对象属性,UMLS中的语义网络通过本体的对象属性和类之间的关系表示。
本体和语义类型之间的关系为is-a关系,建立6种本体(疾病、症状、检查、药物、器械、法规)与UMLS语义类型的映射过程如下:
(1)疾病本体和顶层本体中语义类型的映射
疾病本体对应于顶层本体中的疾病与症状(事件→现象与过程→自然现象或过程→生物学功能→病理功能→疾病或症状),如表 1所示:
![]() | 表1 疾病本体和顶层本体中语义类型的映射 |
利用Protégé建立本体“疾病”和UMLS语义类型中“疾病或症状”映射关系的页面,如图 2所示:
可以通过本体的一致性检验和本体的相似度来自动对应,这也是项目的缺陷,暂时还没有实现自动对应。
(2)症状本体和顶层本体中语义类型的映射
症状本体对应于顶层本体中的症状(实体→概念实体→发现→症状或体征)。
(3)药物本体和顶层本体中语义类型的映射
药物本体对应于顶层本体中的临床药物(实体→物理对象→人工对象→临床药物)。
同时药物本体也对应于顶层本体中的药理性物质(实体→物理对象→物质→化学物质→功能性化学物质→药理性物质)。
(4)检查本体和顶层本体的映射
检查本体对应于顶层本体中的实验室检查结果(实体→概念实体→发现→实验室检查结果)。
(5)医疗法规本体和顶层本体中语义类型的映射
医疗法规对应于顶层本体中的法律与法规(实体→概念实体→智力产品→法律与法规)。
(6)医疗器械本体和顶层本体中语义类型的映射
医疗器械对应于顶层本体中的医学设备(实体→物理对象→人工对象→医学设备)。
为实现疾病、症状、检查、药物、器械和法规本体之间的相互关联,以及各实例之间的相互关联,对UMLS中存在的语义关系进行细分,使其能合适地关联不同类型本体的实例。
(1)关系细化原则
在概念集层面的关系(继承于顶层本体)和顶层本体的关系在运用到实例关系构建时存在等价、扩展和阻断三种情况。
① 等价
等价即概念集层面两个实例之间的关系完全等同于顶层本体中两个语义类型之间的关系。
② 扩展
顶层本体语义类型之间的关系可能比较粗(笼统),在实际整合实例的过程中不仅继承了原有的关系,同时对原有的语义关系进行细化,从而扩展语义关系。例如疾病和药物之间存在药效关系,而药效关系包括治疗、预防和导致等多种关系,在整合疾病和药物的实例时需要进一步细化顶层本体包含的语义关系。
③ 阻断
一般来说,实例继承了本体的属性和关系,但是某些本体的个别实例可能发生异常情况,适合于原有本体的属性可能不再适合于它的子类或者具体实例,如果按照语义类型的等级结构链的继承规则,会使语义类型与语义关系的连接产生歧义。发生子语义类型无法继承父语义类型所具有的语义关系,例如语义关系“…的进程”,如图 3所示:
图3中,语义关系“…的进程”存在于语义类型“生物体功能”和“生物体”之间,“生物体功能”有一个子类是“心理功能”,而植物也是一种“生物体”,按照继承规则,心理过程也是一种“植物的活动、功能或状态”,显然,植物不可能有“心理过程”,不能继承的链称为阻断。植物具有心理功能的关系不存在,图中以“X”表示。
(2)UMLS语义关系细化的结果
通过等价、扩展和阻断三种继承关系,构建疾病、检查、症状、药物、医疗法规、器械本体之间的关联关系,形成以疾病为核心,其他类型本体和疾病之间的关系为主的网状关系。
表2为公众健康知识本体之间语义关系:
![]() | 表2 公众健康知识本体语义关系表 |
构建疾病、检查、症状、药物、医疗法规、器械本体,形成以疾病为核心,其他类型本体和疾病之间的关系为主的一种网状关系。从表2中可以得出:
①疾病和疾病之间:存在13种关系,例如伴随(疾病同时出现),之后(一种疾病发生在另外一种疾病之后的时间关系)等关系;
②疾病和症状之间:存在4种语义关系,例如被诊断(diagnosed_by);
③疾病和检查之间:存在4种语义关系,例如被提示(indicated_by),即检查结果可以提示是否有某种疾病;
④疾病和药物之间:存在6种语义关系,例如治疗(treated_by)、预防(prevented_by)等;
⑤疾病和器械之间:存在3种语义关系,例如治疗(treated_by)、导致(caused_by)和预防(prevented_by);
⑥疾病和法规之间:存在明示(indicated_by)、预防(prevented_by)等关系。
在语义类型等级结构的高层节点之间的语义关系都是固定的,例如语义关系“影响”链接的高层语义类型节点。而且高层语义类型之间的语义关系,一般可通过等级结构(is-a链)继承给这些节点的所有子类。
以心绞痛和硝苯地平为例,阐述疾病和药物之间关系的构建,心绞痛继承疾病本体的属性,疾病和顶层本体的疾病映射此处加黑表示是顶层本体中的语义类型和语义关系,以便与概念层次的名称或概念混淆。 ;硝苯地平继承药物本体的属性,药物本体和顶层本体药理性物质映射。在顶层本体中,疾病和药物之间存在药效作用关系,心绞痛和硝苯地平之间存在药效关系,而药效关系存在治疗、预防以及导致等多种关系,在人工进行校正时赋予 “治疗关系”(硝苯地平能够治疗心绞痛,逆反关系同样成立:心绞痛可被硝苯地平治疗)。图4为实例之间整合的路线图:
图4中,心绞痛来自于ICD-10,集成过程中保留了心绞痛在ICD中概念的层级关系(类目体系结构可以保持不变),同理硝苯地平来自于《药典》,并保留其在《药典》中的位置信息。
本文通过调研和分析UMLS、DO以及GO等知名的知识组织体系,总结了整合知识组织体系4种途径的优缺点,提出并建立了基于UMLS的疾病知识整合框架,对自行建立的本体与UMLS的语义类型进行映射,实现本体间的关联,概念和实例对本体关系的继承,整合了概念及其实例,建立彼此之间的相互联系,从而实现公众健康知识库的构建。该框架在知识组织体系整合的过程中减少了人工的干预,降低了劳动量,通过对语义关系的细化,提高实例之间关联的准确度。但是本方法是在已知本体的前提下进行映射,在本体的自动发现方面尚存在不足。
[1] |
|
[2] |
|
[3] |
|
[4] |
|
[5] |
|
[6] |
|
[7] |
|
[8] |
|
[9] |
|
[10] |
|
[11] |
|
[12] |
|
[13] |
|
[14] |
|
[15] |
|
[16] |
|
[17] |
|
[18] |
|
[19] |
|
[20] |
|