掌桥专利:专业的专利平台
掌桥专利
首页

基于三层超关系知识图谱模型的药物推荐方法及装置

文献发布时间:2023-06-19 19:33:46


基于三层超关系知识图谱模型的药物推荐方法及装置

技术领域

本发明涉及知识图谱领域。

背景技术

知识图谱(Knowledge Graph)是一种大规模的语义网络,由节点和有向边组成,节点用于表示实体或概念,边表示实体间的各种语义关系。通常情况下,知识图谱由SPO(Subject-Predication-Object,主语-谓语-宾语)三元组作为基本单位,SPO可以分为<实体-关系-实体>或<实体-属性-属性值>三元组,主要通过RDF模型或属性图模型进行表示。

由于医学知识的专业性强且复杂度高,SPO模型结构较为简单难以精确表达医学知识。高血压作为世界范围内最常见的复杂慢性病之一,其知识的复杂性及专业性在医学领域中具有代表性,下面以高血压知识为例具体说明构建以三元组为基本单位的知识图谱仍存在的难点:

难点1:简单的二元关系难以表示复杂的医学知识。一般的基于SPO的三元组的表示方法往往过分简化了存储在知识图谱中数据的复杂性,有研究表明,现实世界中许多知识无法用简单三元组完全表示其全部含义。特别是,简单三元组对高阶信息的丢失降低了知识图谱的表达能力。有相关研究证实,Freebase中不能用二元关系简单表示的实体超过33.3%,关系超过61%。医学是一门复杂的学科,在知识建模方面将面对更加严峻的挑战。例如,一条高血压知识k为:“慢性肾病合并高血压患者的初始降压治疗应包括一种ACEI或ARB”,知识涉及慢性肾病、高血压、患者、ACEI、ARB共5个实体、1条显性二元关系初始降压治疗和1条隐含关系患有疾病。显而易见的,该知识无法只用2条二元关系简单进行表达,解决方案是联合多条二元关系表示(如图2(a)),但这导致了单一二元关系的不独立,极易造成知识表达的歧义。而通过多元关系(如图2(b))能够恰当的表示知识k。

难点2:普通知识图谱架构无法表示逻辑规则。由于高血压治疗需遵循循证医学原理,其核心思想是医疗决策应尽量以客观的临床研究结果为依据。因此对高血压知识图谱的建模必须考虑临床依据等中对诊断、治疗规则的逻辑表达,否则知识缺乏可解释性。目前大多数知识图谱是以本体为基础进行知识组织的,核心描述的是静态的事实,对于逻辑判断的表达能力有限。继续引用知识k举例,文本中蕴含逻辑关系“ACEI或ARB”(临床中选择其中一种使用),图谱中必须对或关系进行显式表示才能避免歧义产生,进而减少实际应用决策时带来的错误。

难点3:精细化的医学文本知识无法完全通过自动化方法抽取。一方面,医学领域与其他专业领域不同,对知识抽取的准确性、颗粒度有极高的要求。另一方面,目前对关系抽取的研究主要还停留在简单二元关系抽取,不足以建模医学场景下非结构化文本的复杂语义,而多元关系抽取的相关研究目前还不够成熟,达不到从知识k中抽取出准确的多元关系(如图2)的要求。

发明内容

本发明旨在至少在一定程度上解决相关技术中的技术问题之一。

为此,本发明的目的在于提出一种基于三层超关系知识图谱模型的药物推荐方法,用于实现基于医学规则的药物推荐辅助决策应用。

为达上述目的,本发明第一方面实施例提出了一种基于三层超关系知识图谱模型的药物推荐方法,包括:

获取目标用户的用户属性信息,所述用户属性信息包括患病情况、临床症状、体格检查、生理状态信息;

基于超关系知识图谱构建三层超关系知识模型,将所述用户属性信息输入所述三层超关系知识模型中转化为图查询语句的搜索条件;

利用所述搜索条件翻译出正确的图数据库查询语句,通过调用图数据库搜索引擎根据预设的推理条件得出推理结果;

将所述推理结果添加到用药方案,根据所述用药方案获取目标药物,并将所述目标药物推送给所述目标用户。

另外,根据本发明上述实施例的一种基于三层超关系知识图谱模型的药物推荐方法还可以具有以下附加的技术特征:

进一步地,在本发明的一个实施例中,所述三层超关系知识模型,包括计算层、概念层、实例层;

其中,所述实例层用于描述事实性的知识,存储实例数据;

所述概念层用于描述抽象和概念性的静态知识,存储疾病类型、临床表现、生理状态、检查数据、药品类型、疾病与药品的适用、禁忌关系,药物之间的相互作用;

所述计算层用于将概念层中描述的静态知识通过逻辑组合后描述完整的医学规则。

进一步地,在本发明的一个实施例中,所述将所述用户属性信息输入所述三层超关系知识模型中,包括:

获取用户属性信息,通过所述三层超关系知识模型将患者数据存储在5张子图空间,所述5张子图包括实例层子图、概念层子图、计算层子图、实例-概念关系子图和概念-计算关系子图。

进一步地,在本发明的一个实施例中,所述通过所述三层超关系知识模型将患者数据存储在5张子图空间,包括:

所述实例层、概念层、计算层子图负责存储每层内的实体和关系及其属性,所述实例-概念关系、概念-计算关系子图负责分别存储instance_of、abstract_of和这两种关系相连的实体。

进一步地,在本发明的一个实施例中,所述利用所述搜索条件翻译出正确的图数据库查询语句,通过调用图数据库搜索引擎根据预设的推理条件得出推理结,包括:

将患者数据转化为概念层图模式;

根据所述用户属性信息依据预定规则编写Cypher语句;

将所述Cypher语句输入Neo4j查询进行预筛选,得到符合预筛选条件的所有数据,并将数据以所述计算层的超关系事实为单位进行分组,一组视为一条完整的医学规则;

遍历符合条件的规则;

取一条规则,判断每个推理条件与所述用户属性信息是否相符,相符则取真值,否则取假值;

根据推理条件取值、逻辑运算符进行计算,得出推理结果。

进一步地,在本发明的一个实施例中,将所述推理结果添加到用药方案,根据所述用药方案获取目标用药,并将所述目标用药推送给所述目标用户,包括:

若推理结果为真,则将结果添加至用药方案列表,否则跳过;

对用药方案列表根据推荐级别进行合并,所述推荐级别分为:适用、可能适用、证据不足或不适用、禁忌;

输出药物推荐结果。

为达上述目的,本发明第二方面实施例提出了一种基于三层超关系知识图谱模型的药物推荐装置,包括:

获取模块,用于获取目标用户的用户属性信息,所述用户属性信息包括患病情况、临床症状、体格检查、生理状态信息;

构建模块,用于基于超关系知识图谱构建三层超关系知识模型,将所述用户属性信息输入所述三层超关系知识模型中转化为图查询语句的搜索条件;

搜索模块,用于利用所述搜索条件翻译出正确的图数据库查询语句,通过调用图数据库搜索引擎根据预设的推理条件得出推理结果;

输出模块,用于将所述推理结果添加到用药方案,根据所述用药方案获取目标药物,并将所述目标药物推送给所述目标用户。

进一步地,在本发明的一个实施例中,,所述输出模块,还用于:

将患者数据转化为概念层图模式;

根据所述用户属性信息依据预定规则编写Cypher语句;

将所述Cypher语句输入Neo4j查询进行预筛选,得到符合预筛选条件的所有数据,并将数据以所述计算层的超关系事实为单位进行分组,一组视为一条完整的医学规则;

遍历符合条件的规则;

取一条规则,判断每个推理条件与所述用户属性信息是否相符,相符则取真值,否则取假值;

根据推理条件取值、逻辑运算符进行计算,得出推理结果,若推理结果为真,则将结果添加至用药方案列表,否则跳过;

对用药方案列表根据推荐级别进行合并,推荐级别分为:适用、可能适用、证据不足或不适用、禁忌;

输出药物推荐结果。

为达上述目的,本发明第三方面实施例提出了一种计算机设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上所述的基于三层超关系知识图谱模型的药物推荐方法。

为达上述目的,本发明第四方面实施例提出了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上所述的基于三层超关系知识图谱模型的药物推荐方法。

本发明实施例的基于三层超关系知识图谱模型的药物推荐方法,首先,引入超关系知识图谱的概念表示多元关系知识。其次,将高血压知识图谱分解为三层架构:实例层、概念层、计算层,相较于一般的知识图谱在概念层之上增加了计算层,并在计算层中引入逻辑表示结构。最后,根据高血压权威指南、临床研究等非结构化文本,遵循了循证医学的原理,通过半自动化的方法构建出精细准确的高血压知识图谱。

附图说明

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本发明实施例提供的基于三层超关系知识图谱模型的药物推荐方法的流程示意图。

图2为本发明实施例提供的二元关系与多元关系比较示意图。

图3为本发明实施例提供的超关系事实结构示意图。

图4为本发明实施例提供的高血压超关系图本体结构示意图。

图5为本发明实施例提供的实例层示意图。

图6为本发明实施例提供的概念层“患者画像”事实示意图。

图7为本发明实施例提供的概念层“用药方案”事实示意图。

图8为本发明实施例提供的计算层“医学规则”超关系事实示意图。

图9为本发明实施例提供的超关系事实转化示意图。

图10为本发明实施例提供的基于三层超关系知识图谱模型的药物推荐装置的流程示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

下面参考附图描述本发明实施例的基于三层超关系知识图谱模型的药物推荐方法。

图1为本发明实施例所提供的一种基于三层超关系知识图谱模型的药物推荐方法的流程示意图。

如图1所示,该基于三层超关系知识图谱模型的药物推荐方法包括以下步骤:

S101:获取目标用户的用户属性信息,用户属性信息包括患病情况、临床症状、体格检查、生理状态信息;

S102:基于超关系知识图谱构建三层超关系知识模型,将用户属性信息输入三层超关系知识模型中转化为图查询语句的搜索条件;

S103:利用搜索条件翻译出正确的图数据库查询语句,通过调用图数据库搜索引擎根据预设的推理条件得出推理结果;

S104:将推理结果添加到用药方案,根据用药方案获取目标药物,并将目标药物推送给目标用户。

进一步地,在本发明的一个实施例中,三层超关系知识模型,包括计算层、概念层、实例层;

其中,实例层用于描述事实性的知识,存储实例数据;

概念层用于描述抽象和概念性的静态知识,存储疾病类型、临床表现、生理状态、检查数据、药品类型、疾病与药品的适用、禁忌关系,药物之间的相互作用;

计算层用于将概念层中描述的静态知识通过逻辑组合后描述完整的医学规则。

具体地,超关系知识图谱指多个超关系事实构成的知识图谱,每个超关系事实可以由一个主三元组+n个附加信息进行表示,具体结构如图3所示。本发明建模了一种三层高血压超关系知识图谱(Triple-view Hypertension Hyper-relational Knowledge Graph,THH-KG),包括计算层、概念层、实例层和相邻两层之间的映射关系,且每一层都通过超关系图模型表达多元关系事实,具体结构如图4所示。每一层的超关系图都由主三元组(<头实体,主关系,尾实体>)加n个附加键值对(<附加关系,附加实体>)组成。

在三层架构中,实例层描述了事实性的知识,存储了实例数据包括患者基本信息、患有疾病、检查项数据、服用药品信息等;又可以理解为患者层,主要存储高血压患者的病例信息。实例层结构如下图5所示,主三元组为病例中患者确诊的疾病,附加信息包含:患者患有的其他疾病、临床表现、生理状态、检查项数据、曾服用药物等。

概念层描述了抽象和概念性的静态知识,存储了例如疾病类型、药品类型、疾病与药品的适用、禁忌关系,药物之间的相互作用等等;概念层描述了各类高血压的静态知识。按照超关系事实表示的知识主要可以分类为3类:1)“是……的子类”,表示概念间的从属关系。主要存储的是疾病、症状、药品等具体实体的抽象为更高层次概念的关系,例如<原发性高血压,是……的子类,高血压>。2)“患者画像”,描述不同类型的患者特征,是患者实例数据的概念表达。主三元组为<患者,诊断,疾病>,附加键值对包含:同时患有疾病、临床表现、生理状态、检查项数据等,结构与实例层“诊断”超关系事实类似,具体示意图及与实例层的区别如下图6所示。3)“用药方案”,表示结合临床指南、权威文献等医学文本提取出的针对某一类患者推荐的用药方案。用药方案中可包括:药品分类、药品类型、药品化学名、药品商品名、联合用药等实体类型,具体示意图如下图7所示。

计算层将概念层中描述的静态知识通过逻辑组合后描述了完整的医学规则。设计计算层的主要目的,是将医学规则中涉及的逻辑判断部分显式的表达出来,一方面减少歧义的产生,另一方面增加知识图谱的直观性和可解释性。每一条高血压规则知识都由一个计算层超关系事实表示。首先,医学逻辑规则可以抽象为n个推理条件(con)经过逻辑运算(设为*)推出(->)推理结果(res),即con1*con2*…*conn->res,其中con由主三元组的头实体和附加实体进行表示、res由主三元组的尾实体表示,“->”由主关系进行表示,逻辑运算由附加键表示,如图8所示。当所有推理条件经过逻辑运算后结果为真时,主三元组的推理关系成立,得出推理结果为真。

实例层与概念层间的连接由三元组(hI,instance_of,tC)表示,其中hI是实例层实体,tC是概念层实体。Instance_of三元组整体表达的是概念与其实例化后具体数据间的映射关系,例如(张三,instance_of,患者)。需要说明的是,有一些实体既是实例实体也是概念实体,例如高血压既是概念层中的一种疾病概念,也是实例层中患者具体患有的疾病类型。

概念层与计算层间的连接由三元组(hC,abstract_of,tR)表示,其中hC是概念层超关系事实,tR是计算层实体。Abstract_of三元组整体表达的是将概念层中的超关系事实表达的高血压知识抽象为计算层中的一个实体,进而参与计算层中的逻辑运算和医学规则表达。

进一步地,在本发明的一个实施例中,将用户属性信息输入三层超关系知识模型中,包括:

获取用户属性信息,通过三层超关系知识模型将患者数据存储在5张子图空间,5张子图包括实例层子图、概念层子图、计算层子图、实例-概念关系子图和概念-计算关系子图。

针对目前市面上尚未出现超关系图数据库产品的问题,本发明提出一种通用的存储方法,适用于目前的所有图数据库产品,具体针对每种图数据库的存储要求需要根据情况做出适当的调整,但从建模逻辑上是完全一致的。

本发明提出,高血压超关系图在逻辑上分为5张子图空间进行存储,分别为:实例层子图、概念层子图、计算层子图、实例-概念关系子图和概念-计算关系子图。其中,实例层、概念层、计算层子图负责存储每层内的实体和关系及其属性,实例-概念关系、概念-计算关系子图负责分别存储instance_of、abstract_of和这两种关系相连的实体。

针对超关系事实,转化为二元关系方法如图9所示:将超关系事实抽象添加为一个新实体作为中心,通过“subject”关系连着主三元组头实体,“object”关系连接主三元组尾实体,附加键值对以关系+尾实体的方式与超关系事实头实体相连,主三元组的关系保持不变。

进一步地,在本发明的一个实施例中,通过三层超关系知识模型将患者数据存储在5张子图空间,包括:

实例层、概念层、计算层子图负责存储每层内的实体和关系及其属性,实例-概念关系、概念-计算关系子图负责分别存储instance_of、abstract_of和这两种关系相连的实体。

本发明设计了一种基于图数据库的翻译引擎(Hypertension Knowledge GraphReasoning Engine,HKG-RE),将超关系知识图谱中的患者数据转化为图查询语句的搜索条件,翻译出正确的图数据查询语句,调用图数据库搜索引擎,最终输出基于高血压决策流程的诊疗方案,如此便实现了图搜索功能替代模型训练进行知识推理的过程。

进一步地,在本发明的一个实施例中,利用搜索条件翻译出正确的图数据库查询语句,通过调用图数据库搜索引擎根据预设的推理条件得出推理结,包括:

将患者数据转化为概念层图模式;

根据用户属性信息依据预定规则编写Cypher语句;

将Cypher语句输入Neo4j查询进行预筛选,得到符合预筛选条件的所有数据,并将数据以计算层的超关系事实为单位进行分组,一组视为一条完整的医学规则;

遍历符合条件的规则;

取一条规则,判断每个推理条件与所述用户属性信息是否相符,相符则取真值,否则取假值;

根据推理条件取值、逻辑运算符进行计算,得出推理结果。

进一步地,在本发明的一个实施例中,将推理结果添加到用药方案,根据用药方案获取目标用药,并将目标用药推送给目标用户,包括:

若推理结果为真,则将结果添加至用药方案列表,否则跳过;

对用药方案列表根据推荐级别进行合并,所述推荐级别分为:适用、可能适用、证据不足或不适用、禁忌;

输出药物推荐结果。

以这句高血压用药规则为例“患者患有妊娠高血压,且收缩压≥180mmHg或舒张压≥120mmHg时,推荐的药品是硝普钠、酚妥拉明、尼卡地平、硫酸镁、艾司洛尔、美托洛尔、乌拉地尔、地尔硫卓、肼苯哒嗪和诺多泮”,实例层患者名为张三,她患有高血压同时妊娠,测量出的SBP为190mmHg,DBP为115mmHg。对应至概念层后,张三抽象为患者实体,高血压与妊娠保持不变,SBP映射至范围≥180mmHg,DBP映射至<120mmHg。在概念层中,概念实体SBP≥180和DBP≥120分别与患者、高血压、妊娠组成了2个超关系事实,而DBP<120与患者、高血压、妊娠不能组成超关系事实。因此,(患者,高血压,妊娠,SBP(mmHg)≥180)组成的超关系事实映射至计算层中主三元组的头实体且取值为真,(患者,高血压,妊娠,DBP(mmHg)≥120)组成的超关系事实映射至计算层中的附加实体,由于DBP值与患者情况不符取值为假。根据计算层中附加关系为“或”,逻辑运算结果为真,因此主三元组关系成立,得出此时推荐的用药方案有:硝普钠、酚妥拉明、尼卡地平等。医生仅需在这些药品中选择一种,作为张三患者最终的用药方案。

基于上述的方案,能够解决目前国内外知识图谱无法表示逻辑推理关系的问题,在高血压临床路径的结构化表示上取得突破性的进展。

本发明实施例的基于三层超关系知识图谱模型的药物推荐方法,首先,引入超关系知识图谱的概念表示多元关系知识,解决了普通二元知识图谱无法准确表达复杂医学知识(包括多元关系及逻辑关系)的问题,相比于其他医学知识图谱针对高血压领域的知识颗粒度更细,并且THH-KG以医学临床指南等权威文献为知识依据,符合循证医学原理,因此知识图谱的可解释性更高。其次,将高血压知识图谱分解为三层架构:实例层、概念层、计算层,相较于一般的知识图谱在概念层之上增加了计算层,并在计算层中引入逻辑表示结构,克服了超关系知识图谱数据无法在图数据库中进行持久化存储的缺点,使得THH-KG能够兼容市面上的图数据库产品。最后,根据高血压权威指南、临床研究等非结构化文本,遵循了循证医学的原理,通过半自动化的方法构建出精细准确的高血压知识图谱,解决了在缺少大规模数据集的情况下如何利用THH-KG作为数据集进行用药推荐的问题,其用药推荐结果准确率能够接近专家医生水平,能为医生在实际诊疗场景下提供有价值的辅助建议。

除此之外,为证明上述模型的可行性提出了基于二元关系图数据库的超关系图存储方法和高血压图推理解释引擎。超关系图存储方法解决了目前市面上尚未出现超关系图数据库产品的问题,实现了对高血压多元分层知识图谱的持久化存储。而高血压图推理解释引擎将图谱数转化为图查询语句,用图搜索功能替代深度学习模型进行用药推荐的推理过程,能够实现对各类高血压患者的用药方案辅助决策。

图10为本发明实施例提供的一种基于三层超关系知识图谱模型的药物推荐装置的结构示意图。

如图10所示,该基于三层超关系知识图谱模型的药物推荐装置包括:获取模块100,构建模块200,搜索模块300,输出模块400,其中,

获取模块,用于获取目标用户的用户属性信息,用户属性信息包括患病情况、临床症状、体格检查、生理状态信息;

构建模块,用于基于超关系知识图谱构建三层超关系知识模型,将用户属性信息输入三层超关系知识模型中转化为图查询语句的搜索条件;

搜索模块,用于利用搜索条件翻译出正确的图数据库查询语句,通过调用图数据库搜索引擎根据预设的推理条件得出推理结果;

输出模块,用于将推理结果添加到用药方案,根据用药方案获取目标药物,并将目标药物推送给目标用户。

进一步地,在本发明的一个实施例中,输出模块,还用于:

将患者数据转化为概念层图模式;

根据用户属性信息依据预定规则编写Cypher语句;

将Cypher语句输入Neo4j查询进行预筛选,得到符合预筛选条件的所有数据,并将数据以计算层的超关系事实为单位进行分组,一组视为一条完整的医学规则;

遍历符合条件的规则;

取一条规则,判断每个推理条件与用户属性信息是否相符,相符则取真值,否则取假值;

根据推理条件取值、逻辑运算符进行计算,得出推理结果,若推理结果为真,则将结果添加至用药方案列表,否则跳过;

对用药方案列表根据推荐级别进行合并,推荐级别分为:适用、可能适用、证据不足或不适用、禁忌;

输出药物推荐结果。

为达上述目的,本发明第三方面实施例提出了一种计算机设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上基于三层超关系知识图谱模型的药物推荐方法。

为达上述目的,本发明第四方面实施例提出了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上所述的基于三层超关系知识图谱模型的药物推荐方法。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

相关技术
  • 一种基于知识图谱的推荐方法及装置
  • 基于双视图超关系嵌入框架的知识图谱补全方法
  • 基于知识图谱小样本关系学习模型的实体查询方法及系统
技术分类

06120115958883