APP下载

体现辨证论治差异的不孕症知识图谱构建方法研究

2023-03-16马月坤张可心

计算机工程 2023年3期
关键词:三元组医案医家

马月坤,张可心,高 唱

(1.华北理工大学 人工智能学院,河北 唐山 063210;2.华北理工大学 河北省工业智能感知重点实验室,河北 唐山 063210;3.北京科技大学 计算机与通信工程学院,北京 100083;4.材料领域知识工程北京市重点实验室,北京 100083)

0 概述

辨证论治是中医学的主要学术特色和价值体现,是医家认识和治疗疾病的基本原则。方药中先生在《辨证论治研究七讲》[1]中对辨证论治理论体系进行了总结:辨证即通过四诊并根据患者一系列症状表现进行病因、性质、部位等方面的综合分析,概括判断出“证”;论治即在辨证的基础上制定相应的治疗法则与措施。由于不同的医家学术观点常有不同,在“辨证”与“论治”中,存在如下两种差异:第一种体现在辨证结果上,依据患者的症状表现,不同的医家对病位、病性、病势以及轻重的认识各有侧重[2],根据自身习惯与经验可能从不同角度辨别证候[3-4];另一种体现在用药治疗上,医家依据多年的实践经验,在治疗时可能因为治疗角度不同,使得所用的药物也会存在差异[5-6]。因此,认识和把握名老中医辨证论治差异是中医个性化知识继承与发展的重要基础,构建能够直观体现差异的知识图谱,在名老中医诊疗经验的整合及诊疗规律的发现上具有重要意义。

近年来,中医药知识图谱构建被广泛研究。刘凡[7]以姚乃礼医师中医脾胃病临床经验为研究对象,构建脾胃病知识图谱,分析和展示姚乃礼医师在脾胃病上的诊疗思路。也有部分学者利用多位医家的临床诊疗数据构建不同中医流派的知识图谱。李新龙[8]分别对3 位医家有关失眠症的临床医案构建知识图谱,分别展示3 位医家个性化辨证论治知识体系。张雨琪等[9]针对赵炳南、朱仁康的用方经验,构建关于不同流派治疗皮肤病的知识图谱。尽管上述构建的知识图谱在一定程度上整合了多位医家的诊疗经验,系统地建立了辨证论治知识之间的关联,但是没有直观地体现不同医家在某种疾病上的辨证规律和个性化用药习惯。

本文以不同医家在辨证论治中存在的两种差异性为出发点,区别于目前的知识图谱,构建整合多位医家辨证论治知识并且能够直观反映不同医家辨证论治差异的知识图谱,以体现名老中医的辨证及用药规律。

1 体现辨证论治差异的知识图谱构建思路

知识图谱[10-11]是一种从数据中获取知识,描述真实世界中存在的概念或实体以及概念、实体之间关系的技术方法。领域知识图谱通常采用自顶向下的方式来构建[12-13],首先根据知识的层次与体系,确定实体类型与实体属性以及实体间的关系,建立知识图谱框架;然后从数据中提取实体与关系,以RDF三元组的形式关联存储知识,构成知识图谱。

本课题组前期收集妇科名老中医临床医案,通过自顶向下的方式,分别为不同医家建立妇科疾病诊疗的个性化知识图谱。每个个性化知识图谱中均包含由10 类实体、9 种关系组成的知识图谱框架,以及对应医家医案中涉及的实体与关系实例。根据本文需要,选取6 位在不孕症诊治上经验丰富的医家个性化知识图谱,利用其中的4 种实体类型、5 种关系以及相关的三元组,作为本文构建体现不孕症辨证论治差异知识图谱的基础,涉及的实体类型、关系、三元组示例如表1 所示。

表1 实体类型、关系、三元组示例Table 1 Examples of entity types,relationships,triples

已有的不孕症知识图谱以三元组为单位,独立地存储表达各医家关于不孕症的诊疗知识,无法直观体现不同医家的不孕症辨证论治个性化差异。本文在此知识框架的基础上,在与辨证论治有关的“症证”和“证药”关系中添加“doctor”和“value”属性,分别体现不同医家在辨证结果与用药治疗上的差异。“症证”关系与“doctor”和“value”关系属性共同表示在某位医家的医案数据中症状在此证候中出现的典型程度。同样,“证药”关系与“doctor”和“value”关系属性共同表示在某位医家的医案数据中用某中药治疗此证候的可能性。本文统一将“value”属性值称为实体间的关联强度,具体关系属性定义如表2 所示。

表2 关系属性定义Table 2 Definition of relationship attributes

关联强度的计算是本文构建体现辨证论治差异知识图谱的主要任务之一。由于概率软逻辑[14-15]具有对关系型数据建模的能力,以及通过构建逻辑规则描述数据之间关联并进行可解释性推理的优点,因此本文根据辨证论治思想,构建逻辑规则描述不孕症知识之间的关联,利用概率推理机制推理关联强度。

将不同医家不孕症个性化知识图谱融合为一个具有多位医家诊疗经验的综合知识图谱是本文的另一个主要任务。近年来,利用图神经网络进行知识融合成为研究热点[16-18],图神经网络能够很好地适用于知识图谱结构并在知识融合任务中表现出良好的性能。本文提出基于关系图注意力网络的知识融合(Relational Graph Attention network for Knowledge Fusion,RGAKF)模型,通过考虑不孕症知识图谱中关系对邻域实体信息传播的影响,更全面地融合多位医家的不孕症知识。

2 基于概率软逻辑的关联强度推理

2.1 不孕症医案数据预处理

本节通过PageRank[19]算法对每位医家不孕症医案中症状、证候、中药进行统计,作为后续概率软逻辑推理关联强度任务的基础。具体步骤如下:

1)根据课题组已有数据,定义症状、证候、中药3个集 合。症状集Symd={(Docdi,{sym1,sym2,…,symn1})},其中,Symd为医家d医案中涉及的症状集合,Docdi代表医家d所有医案中的第i个医案,{sym1,sym2,…,symn1}表示的是对应于第i个医案的症状集合;证候集Synd={(Docdi,{syn1,syn2,…,synn2})},其中,Synd为医家d医案中涉及的证候集合,{syn1,syn2,…,synn2}表示该医家医案i中包含的证候集合;中药集Medd={(Docdi,{med1,med2,…,medn3})},其中,Medd为医家d的医案中涉及的中药集合,{med1,med2,…,medn3}表示该医家医案i中包含的中药集合。

2)分别以医案节点为出链节点,以已有医家医案的症状集、证候集、中药集中包含的节点作为入链节点,分别构建症状PageRank 图(Sym-prG)、证候PageRank 图(Syn-prG)和中药PageRank 图(MedprG)。由于症状表现与医家无关,因此只需构建对应所有症状的一个Sym-prG;而由于辨证论治过程中不同医家辨证结果和用药有所差异,因此在构建证候和中药两类PageRank 图时,需要分别针对不同医家构建相应的Syn-prG 和Med-prG。

3)基于不同策略分别计算上述3 种PageRank 图中对应症状、证候、中药节点的PageRank 值(以下简称为PR 值)。PR 值计算公式如式(1)所示:

其中:u表示某个具体的症状、证候或中药;N表示构建的PageRank 图中包含的节点个数;v表示包含u的某一医案;Bu表示包含u的医案集合;L(v)表示v医案包含的其他症状、证候或中药的个数;a表示阻尼因子,通常取0.85。

以构建Sym-prG、朱南孙Med-prG 为例,分别计算症状节点PR 值、朱南孙医案对应的中药节点PR值。构建的PageRank 图与PR 值计算结果示例分别如图1、图2 所示。

图1 症状PageRank 图与结果示例Fig.1 Symptom PageRank graph and results example

图2 中药PageRank 图与结果示例Fig.2 Medicine PageRank graph and results example

2.2 关联强度推理

本节基于概率软逻辑对关联强度进行推理。概率软逻辑具有逻辑谓词与规则两个要素,其中,每个逻辑谓词具有[0,1]之间的软真值,规则由逻辑谓词组成。本节根据实体及实体间的关系定义逻辑谓词,PR 值作为逻辑谓词软真值,通过自定义规则推理关联强度。

基于谓词表示方法,采用Rel(E1,E2)表示实体E1和实体E2以及它们之间的关系Rel[20-21],从而构建逻辑谓词。通过表1 构建相应的逻辑谓词如表3 所示。

表3 逻辑谓词Table 3 Logical predicates

依据方药中对辨证论治体系的总结,制定r1、r2两条规则:

在r1中,BZ(B,Z)表示B 病具有Z 症状,BH(B,H)表示此医家辨别为H 证候,那么在B 病中,Z 症状与H 证候有关联。在r2中,BH(B,H)表示此医家辨别为H 证候,BY(B,Y)表示此医家使用Y 中药,那么在B 病中,H 证候和Y 中药有关联。其中,“BZ”“BH”“BY”3 种逻辑谓词的软真值分别为症状、证候、中药PR 值,“ZZ”“ZY”两种逻辑谓词的软真值通过概率软逻辑计算的每条规则的距离满意度来推理。距离满意度计算方法为:

其中:I(rbody)为规则中箭头前规则体的软真值;I(rhead)为规则中箭头后规则头的软真值。规则体软真值的运算方法为:

其中:l1、l2为逻辑谓词,如BZ(B,Z);I(l1)、I(l2)表示l1、l2的软真值。

本文采用概率软逻辑最常用的推理方法——最大概率推理进行推理。由于软真值取值采用连续数值,因此最大概率推理求最优解过程可以转换为凸优化求解。

本文定义的用于“症证”关联强度和“证药”关联强度推理的概率软逻辑的概率分布如式(8)所示:

其中:R为规则集合;Z为归一化因子;d(r)表示规则r的距离满意度;p表示逻辑谓词的阶,本文取p=1;λr为规则r的权重,由于本文涉及的两个规则同等重要,因此λr取值均为1。

概率软逻辑以本文定义的两条规则以及逻辑谓词的软真值作为输入,通过计算概率分布中的规则距离满意度,应用最大概率推理机制推理“ZZ”和“ZY”两种逻辑谓词的软真值,即“症证”关联强度与“证药”关联强度。

2.3 关联强度结果分析

以“月经量少”症状为例,概率软逻辑推理的“症证”关联强度结果示例如表4 所示。

表4 “症证”关联强度结果示例Table 4 Results sample of correlation strength of "symptom and syndrome"

表4 中“症证”关联强度这一列数值代表的是不同医家认为“月经量少”症状在不同证候中的典型程度,能够证明不同医家针对“月经量少”的辨证结果存在差异。

以“气滞血瘀”证候为例,概率软逻辑推理的“证药”关联强度结果示例如表5 所示。

表5 “证药”关联强度结果示例Table 5 Results sample of correlation strength of "syndrome and medicine"

表5 中反映了不同医家在治疗“气滞血瘀”时的用药规律,其中,“证药”关联强度这一列数值具体表征了不同医家在治疗同种证候时的用药差异。

3 基于关系图注意力网络的知识融合模型

3.1 问题定义

定义KGd=(Ed,Rd,Td)为医家d的不孕症个性化知识图谱,其中,Ed为医家d的医案中包含的实体集合,Rd为医家d的医案中包含的关系集合,Td=(h,t,r)为三元组集合。为了描述不同知识图谱中的相同实体节点,定义如下集合:

其中:m、n表示个性化知识图谱编号;k为KGm与KGn中相同实体对的个数。

知识图谱融合任务可以定义为分别在多个医家的个性化知识图谱中挖掘相同实体,并以此为基础,将多个个性化图谱融合为一个综合性知识图谱,其关键在于如何利用知识图谱KGi和知识图谱KGj中包含的知识元组及预先定义好的相同实体节点集合Sij,并通过本文提出的基于关系图注意力网络的知识融合模型,对两个知识图谱中包含的未知相同实体进行预测。

3.2 RGAKF 模型介绍

3.2.1 RGAKF 模型框架

本文提出的RGAKF 模型框架如图3 所示。在该模型中,针对图注意力网络[22-23]中存在的对邻域实体进行传播聚合时未考虑关系对实体影响的问题,提出一种关系图注意力网络,实现实体和关系信息的同步邻域信息传播聚合,达到对实体向量语义增强的目的。

图3 RGAKF 模型框架Fig.3 RGAKF model framework

如图3 所示,通过RGAKF 模型实现了朱南孙不孕症知识图谱KG1中“党参”节点与蔡小荪不孕症知识图谱KG2中“党参”节点是否为同一实体的判定。具体过程为:首先,将KG1和KG2中的实体和关系进行初始化嵌入;然后,利用RGAKF 中的关系图注意力网络,实现“党参”节点周围的二跳关系与二跳邻域节点实体的信息聚合,得到丰富的实体向量表征;最后,通过曼哈顿距离函数对是否为相同实体进行预测。

3.2.2 关系图注意力网络

在中医知识图谱中,同一实体在不同关系下扮演着不同的角色,例如“乏力”这一实体,在“病症”关系下,“不孕症”与“乏力”之间为“包含”之意,而在“症证”关系下,“乏力”与“肝肾阴虚”之间则为“被导致”之意,因此,知识图谱中的关系属性对实体含义的表达至关重要。关系图注意力网络考虑关系对实体信息表达的影响,将实体节点邻域中表示关系的边的信息和表示实体的节点的信息进行加权聚合,获得实体节点的富语义表征。

1)模型的注意力机制

上文中提到的加权聚合的权重矩阵通过知识图谱中的知识转化而成,具体做法是将知识图谱中知识三元组转化为注意力系数,该系数构成的矩阵就是对应的权重矩阵。注意力系数计算方法如图4所示。

图4 注意力系数的计算过程Fig.4 Calculation process of attention coefficient

通过对实体向量和关系向量拼接并进行线性变换得到三元组的向量表示:

其中:ei、ej、rk分别为实体i、j以及关系k的向量表示;W1为线性变换矩阵;“||”表示拼接操作。

通过矩阵W2对三元组向量表示进行线性变换,利用LeakyReLU 函数得到每个三元组的注意力系数:

使用Softmax 函数将注意力系数归一化,得到每个三元组的注意力权重:

其中:N(i)表示i实体的邻居节点;R(in)表示i节点与邻居节点之间的关系集合。

2)邻域节点信息聚合

通过聚合与实体相关的一阶三元组向量及注意力权重,得到新的实体向量:

叠加多层RGAKF,通过逐阶迭代的方式聚合实体更远的邻居节点信息,第h层聚合之后得到的实体向量表示为:

其中:tijk(h-1)为经过h-1 层的信息传播聚合生成的三元组向量。

3.3 模型训练

本文利用式(15)所示的曼哈顿距离计算公式来计算实体之间的相似度:

本文通过一组相同实体对集合训练RGAKF 模型,使用式(16)所示的Hinge Loss 作为损失函数:

其中:Sij'为针对实体对(ei,ej)构造的负例集合;负例实体对(ei',ej')中的实体分别是在KGi和KGj中随机选取的实体;β为分割正负例的边界超参数。

4 实验结果与分析

4.1 RGAKF 实验结果

本文使用Hit@N和MeanRank 来评估RGAKF模型在知识融合任务中的性能。Hit@N计算正确的实体在预测列表中前N个候选实体中排名的比例,本文设置N为1、10、30。MeanRank 计算正确的实体在预测列表中的平均排序位置。本文将朱南孙不孕症知识与其余5 位医家的不孕症知识分别进行组合,利用5 组数据从两个方向上分别测试RGAKF 的性能,实验结果如表6 所示。

表6 RGAKF 实验结果Table 6 RGAKF experimental results

由表6 可以得出:本文提出的RGAKF 模型在朱南孙-钱伯煊数据集上4 个指标均表现出了最优的性能,在另一个方向上的钱伯煊-朱南孙数据集上,Hit@1、Hit@10 及Hit@30 均表现出了最优的性能;在朱南孙-蔡小荪数据集上Hit@1、Hit@10及MeanRank效果较差,在李祥云-朱南孙数据集上Hit@1、Hit@10效果较差。经过分析,原因在于朱南孙-钱伯煊数据集中数据完备,模型训练充分,而朱南孙-蔡小荪、李祥云-朱南孙两组数据集数据的完备性较低,导致模型训练效果较差。因此,表6 结果证明了RGAKF 模型在知识融合任务中的有效性。

4.2 基于Neo4j 的知识图谱可视化

通过RGAKF 得到6 位医家的不孕症知识图谱中的相同实体,对相同实体统一编码,实现知识的融合。本文将实体、关系存储为CSV 文件,使用Cypher 语言的LOAD CSV 语句将存储为CSV 文件的数据导入到Neo4j 数据库[24-25]中,利用Neo4j 图数据库可视化得到图5 所示的不孕症知识图谱,两个子图显示“症证”关系和“证药”关系分别在“doctor”和“value”属性下的可视化结果。

图5 知识图谱可视化结果Fig.5 Visualization results of knowledge graph

在知识图谱中查询6 位医家关于“经血挟块”的辨证结果,部分示例如图6 所示,其中,关联强度最大的用粗箭头表示,第二位的用标准箭头表示,其他结果用虚线箭头表示。由图6 结果可知,在“经血挟块”的辨证上,朱南孙、张淑亭、钱伯煊、蔡小荪可能辨别为气滞血瘀,杨宗孟从肝旺瘀阻与脾肾亏虚入手,钱伯煊、朱南孙辨别为肾气不足的可能性也比较大,李祥云则更多得辨别为肝经郁结型。由此可见,通过构建的知识图谱可以体现不同医家的辨证结果差异。

图6 6 位医家关于“经血挟块”的辨证结果Fig.6 Syndrome differentiation results of "menstrual blood impingement" among six doctors

在知识图谱中分别查询6 位医家关于“气滞血瘀”的用药结果,如图7 所示,其中,关联强度前两位的用粗箭头表示,关联强度较强的用标准箭头表示,其他结果用虚线箭头表示。

图7 6 位医家关于“气滞血瘀”的用药结果Fig.7 The medication results of "Qi stagnation and blood stasis" by six doctors

由查询结果可知,杨宗孟常用阿胶、仙茅、川续断来治疗,李祥云更擅长用大血藤、巴戟天、益母草等,朱南孙常用生蒲黄、茜草、丝瓜络、川楝子,而张淑亭更擅长用蒲公英和芡实。本文参考《中医大辞典》[26]可知:阿胶、生蒲黄、茜草都归经于肝,具有止血的功效;仙茅、川续断、巴戟天、芡实都有补肾功效;大血藤、蒲公英都有清热解毒的功效等。由此可知,杨宗孟更擅长通过补肾治疗不孕症,朱南孙更习惯用具有活血化瘀功效的中药等。通过构建的知识图谱可以直观体现不同医家的用药差异。

5 结束语

不同医家的辨证论治存在辨证结果和用药习惯两个方面的差异,本文以6 位医家不孕症知识为基础,构建一个既整合6 位医家不孕症诊疗知识又能够体现辨证结果与用药治疗差异的知识图谱。通过概率软逻辑对关联强度进行可解释性推理,利用融合关系信息的RGAKF 模型实现不孕症辨证论治知识融合。实验结果证明了RGAKF 模型在知识融合任务中的有效性。通过本文构建的知识图谱直观地体现辨证论治差异,有利于中医个性化诊疗知识的传承与发展。本文通过研究发现,患者从患病到痊愈是一个动态的过程,若在知识图谱中增加医案中诊次信息的相关细节内容,则知识图谱中的知识会更全面。因此,下一步考虑在知识图谱中添加患者病程信息,以体现患者不同诊次间的辨证论治差异。

猜你喜欢

三元组医案医家
特征标三元组的本原诱导子
关于余挠三元组的periodic-模
医案聊斋续篇 吐泻案
医案聊斋续篇 晨泄案
基于三元组的扩频码构造及其性能分析
“正统四象说” 与“医家四象说” 相关问题辨析
清代著名医家莫枚士之《经方例释》临证用药思路探析
新加香薷饮医案6则
古医籍中刺络放血医案浅析
浅谈清代河南医家李守先《针灸易学》的学术特色