CN115171842A - 基于证候信息的图神经网络中药推荐方法 - Google Patents

基于证候信息的图神经网络中药推荐方法 Download PDF

Info

Publication number
CN115171842A
CN115171842A CN202210870609.9A CN202210870609A CN115171842A CN 115171842 A CN115171842 A CN 115171842A CN 202210870609 A CN202210870609 A CN 202210870609A CN 115171842 A CN115171842 A CN 115171842A
Authority
CN
China
Prior art keywords
traditional chinese
chinese medicine
disease
syndrome
vector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210870609.9A
Other languages
English (en)
Inventor
王晓玲
黄佳胤
岳文静
纪文迪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
East China Normal University
Original Assignee
East China Normal University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by East China Normal University filed Critical East China Normal University
Priority to CN202210870609.9A priority Critical patent/CN115171842A/zh
Publication of CN115171842A publication Critical patent/CN115171842A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H20/00ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
    • G16H20/10ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to drugs or medications, e.g. for ensuring correct administration to patients
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H20/00ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
    • G16H20/90ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to alternative medicines, e.g. homeopathy or oriental medicines

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Public Health (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Primary Health Care (AREA)
  • Epidemiology (AREA)
  • Pharmacology & Pharmacy (AREA)
  • Alternative & Traditional Medicine (AREA)
  • Chemical & Material Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Medicinal Chemistry (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

本发明公开了一种基于证候信息的图神经网络中药推荐方法,获取若干病症‑中药数据并按照证候进行分类,划分得到各个症候分类的病症‑中药数据集合,根据每个病症‑中药数据集合构建病症‑中药矩阵,构建包含所有病症和中药的图神经网络,基于所有证候分类的病症‑中药矩阵进行传播,得到病症、中药的嵌入表示向量,构建并训练得到中药推荐模型;当需要针对某个疾病进行中药推荐时,首先确定该疾病所包含的病症集合,然后基于图神经网络获取病症集合中各个病症的嵌入表示向量,将嵌入表示向量输入训练好的中药推荐模型,根据模型输出的得分函数选择得分较高的中药作为推荐中药。本发明将证候信息融入到图神经网络中,提升中药推荐的准确度。

Description

基于证候信息的图神经网络中药推荐方法
技术领域
本发明属于智能医疗技术领域,更为具体地讲,涉及一种基于证候信息的图神经网络中药推荐方法。
背景技术
近年来,随着机器学习与人工智能等技术的飞速发展,开发智能中医辅助诊疗系统已成为中医药服务与创新的重要一环。然而,当前大多数中医辅助诊疗系统仅从病情和病症出发,忽略了中医药学的辩证性和复杂性。实际上,中医诊断学中指出中医诊断的基本原则是:整体观察,四诊合参,病症结合,动静合一,这是中医的核心辩证理论,即从辩证角度来分析病人证型分类,通过分型来综合确定用药。对于相同的病症,其背后的证候不同,用药解法也不同,医生基于对证候的判别做出明确诊断并制定治疗方案。
现有的技术存在三类方法:1.利用关联规则、聚类分析、贝叶斯网络、决策树等机器学习算法来进行中医药文本数据挖掘的工作,但是大数据量的数据集往往会限制机器学习模型的准确性和泛化性。2.利用LDA主题模型将隐性知识显性化,具体来说将医案看作文档,医案中包含的病症和中药看作单词,利用单词的共现信息来学习隐式的主题,但是对中医领域实体间的多元异构关系刻画不够全面,不能很好地解决中医短文本中单词共现信息不足造成的数据稀疏问题。3.利用图神经网络构建的图模型来反映实体及其之间的联系,将图中的节点表示为低维稠密向量,并且很好地体现图的拓扑结构信息。
在以上三类方法中,图神经网络在特征提取和表示上更为高效,并且可以更有效的挖掘相关信息。但是目前基于图神经网络的中药推荐方法的准确度还不够理想,还需要进一步改进。
发明内容
本发明的目的在于克服现有技术的不足,提供一种基于证候信息的图神经网络中药推荐方法,将证候信息融入到图神经网络中,提升中药推荐的准确度。
为了实现上述发明目的,本发明基于证候信息的图神经网络中药推荐方法包括以下步骤:
S1:根据实际需要获取若干病症-中药数据,每条数据中包含病症、治疗病症所需的中药集合以及病症所属证候,根据实际需要将证候分类,得到K个证候分类,将所有病症-中药数据按照所属证候分类划分为K个病症-中药数据集合;对于每个证候分类的病症-中药数据集合,分别构建大小为M×N的病症-中药矩阵,M表示病症的总数,N表示中药的总数,如果某个病症在治疗时需要使用到某个中药,病症-中药矩阵中对应元素为1,否则为0;
S2:构建图神经网络,其节点包括M个病症和N个中药,节点之间的关系为一种证候分类,然后基于K个证候分类的病症-中药矩阵进行L层传播,得到病症、中药的嵌入表示向量,具体方法如下:
S2.1:根据实际需要初始化传播层数为0时的各个病症、中药的嵌入表示向量,记第m个病症的初始嵌入表示向量为
Figure BDA0003761014110000021
第n个中药的初始嵌入表示向量为
Figure BDA0003761014110000022
同时初始化各个证候的嵌入表示向量,记第k个证候的初始嵌入表示向量为
Figure BDA0003761014110000023
S2.2:令传播层数i=1;
S2.3:分别基于每个证候分类的病症-中药矩阵进行第i层传播,其中病症节点的传播公式如下:
Figure BDA0003761014110000024
其中,
Figure BDA0003761014110000025
表示第m个病症根据第k个证候的病症-中药矩阵在第i层传播后的嵌入表示向量,
Figure BDA0003761014110000026
表示第m个病症根据第k个证候的病症-中药矩阵得到的邻居节点集合,n′表示属于第m个病症邻居节点集合
Figure BDA0003761014110000027
的中药节点,
Figure BDA0003761014110000028
表示中药节点n′根据第k个证候的病症-中药矩阵得到的邻居节点集合,| |表示求取节点集合中的节点数量,W(i)是预设的第i层模型参数,⊙表示对应元素相乘,
Figure BDA0003761014110000029
表示中药节点n′在第i-1层的嵌入表示向量,
Figure BDA00037610141100000210
表示第m个病症所对应证候分类km在第i-1层的嵌入表示向量,σ()表示激活函数;
中药节点的传播公式如下:
Figure BDA0003761014110000031
其中,
Figure BDA0003761014110000032
表示第n个中药根据第k个证候的病症-中药矩阵在第i层传播后的嵌入表示向量,
Figure BDA0003761014110000033
表示第n个中药根据第k个证候的病症-中药矩阵得到的邻居节点集合,m′表示属于第n个中药邻居节点集合
Figure BDA0003761014110000034
的病症节点,
Figure BDA0003761014110000035
表示病症节点m′根据第k个证候的病症-中药矩阵得到的邻居节点集合,
Figure BDA0003761014110000036
表示病症节点m′在第i-1层的嵌入表示向量,
Figure BDA0003761014110000037
表示病症节点m′所对应证候分类km′在第i-1层的嵌入表示向量;
对于每个病症或中药,将其根据K个病症-中药矩阵所得到的K个在第i层传播后的嵌入表示向量进行加权融合,得到最终第i层传播后的嵌入表示向量,计算公式如下:
Figure BDA0003761014110000038
Figure BDA0003761014110000039
其中,λk表示预设的第k个证候的权重,且
Figure BDA00037610141100000310
S2.4:证候的嵌入表示向量的传播公式如下:
Figure BDA00037610141100000311
其中,
Figure BDA00037610141100000312
表示第k个证候在第i层传播后的嵌入表示向量,
Figure BDA00037610141100000313
表示预设的第i层模型的证候传播参数;
S2.5:判断是否i<L,如果是,进入步骤S2.6,否则进入步骤S2.7;
S2.6:令i=i+1,返回步骤S2.3;
S2.7:对于病症、中药和证候,将各层传播得到嵌入表示向量进行平均,得到最终的嵌入表示向量,计算公式分别如下:
Figure BDA0003761014110000041
Figure BDA0003761014110000042
Figure BDA0003761014110000043
S3:构建中药推荐模型,包括平均池化模块、多层感知机和得分计算模块,其中平均池化模块用于对输入的多个病症的嵌入表示向量进行平均池化,将得到的特征向量输入多层感知机,多层感知机提取得到病症的归纳嵌入表示向量并发送至得分计算模块,得分计算模块根据采用如下公式计算得到中药的得分向量:
Figure BDA0003761014110000044
其中,
Figure BDA0003761014110000045
表示N维得分向量,得分向量
Figure BDA0003761014110000046
中第n个元素即为第n个中药的得分,E表示病症的归纳嵌入表示向量,上标T表示转置,G表示病症的归纳嵌入表示向量E所对应证候所属的证候分类的嵌入表示向量,归纳嵌入表示向量E的证候即为输入的多个病症所对应的证候,diag(G)表示以证候嵌入表示向量G的元素为对角线元素的对角矩阵,F表示由N个中药的嵌入表示向量作为行向量的中药嵌入表示矩阵;
S4:采用步骤S1中的症状-中药数据对中药推荐模型进行训练,具体方法为:在同一证候分类下随机抽取若干个病症构成训练病症集合,获取训练病症集合中各个病症的嵌入表示向量,然后采用如下方法得到该训练病症集合的实际得分向量:对于每个中药,如果属于本次抽取病症中某个病症治疗所需的中药集合,则得分为1,否则得分为0,根据N个中药的得分构建实际得分向量Y;
将D个病症的嵌入表示向量输入中药推荐模型,将实际得分向量Y作为期望输出,对中药推荐模型进行训练;
S5:当需要针对某个疾病进行中药推荐时,首先确定该疾病中属于同一个症候分类的病症集合,获取病症集合中各个病症的嵌入表示向量,将嵌入表示向量输入训练好的中药推荐模型,根据输出的得分函数选取得分最高的前Q个中药作为推荐的中药,Q的值根据具体需要设置。
本发明基于证候信息的图神经网络中药推荐方法,根据实际需要获取若干病症-中药数据,按照证候进行分类,划分得到各个症候分类的病症-中药数据集合,根据每个病症-中药数据集合构建病症-中药矩阵,构建包含所有病症和中药的图神经网络,基于所有证候分类的病症-中药矩阵进行传播,得到病症、中药的嵌入表示向量,构建并训练得到中药推荐模型;当需要针对某个疾病进行中药推荐时,首先确定该疾病所包含的病症集合,然后基于图神经网络获取病症集合中各个病症的嵌入表示向量,将嵌入表示向量输入训练好的中药推荐模型,根据模型输出的得分函数选择得分较高的中药作为推荐中药。
本发明在对病症-中药进行图神经网络建模的基础上,融入证候分类信息与病症-中药图进行嵌入传播,在得到证候分类信息的嵌入表示的同时,丰富了原有的病症嵌入表示和中药嵌入表示,进而在接下来的预测步骤中实现更为精准的预测,提升中药推荐的准确度。
附图说明
图1是本发明基于证候信息的图神经网络中药推荐方法的具体实施方式流程图;
图2是本发明中基于图神经网络获取病症、中药的嵌入表示向量的流程图。
具体实施方式
下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。
实施例
图1是本发明基于证候信息的图神经网络中药推荐方法的具体实施方式流程图。如图1所示,本发明基于证候信息的图神经网络中药推荐方法包括以下步骤:
S101:获取样本数据:
根据实际需要获取若干病症-中药数据,每条数据中包含病症、治疗病症所需的中药集合以及病症所属证候,根据实际需要将证候分类,得到K个证候分类,将所有病症-中药数据按照所属证候分类划分为K个病症-中药数据集合。对于每个证候分类的病症-中药数据集合,分别构建大小为M×N的病症-中药矩阵,M表示病症的总数,N表示中药的总数,如果某个病症在治疗时需要使用到某个中药,病症-中药矩阵中对应元素为1,否则为0。
同时收集若干实际用药案例数据,每条案例数据包括疾病所具有的病症集合和治疗所需中药集合。
S102:基于图神经网络获取嵌入表示向量:
构建图神经网络,其节点包括M个病症和N个中药,节点之间的关系为一种证候分类,然后基于K个证候分类的病症-中药矩阵进行L层传播,得到病症、中药的嵌入表示向量。图2是本发明中基于图神经网络获取病症、中药的嵌入表示向量的流程图。如图2所法,本发明中基于图神经网络获取病症、中药的嵌入表示向量的具体步骤包括:
S201:初始化嵌入表示向量:
根据实际需要初始化传播层数为0时的各个病症、中药的嵌入表示向量,记第m个病症的初始嵌入表示向量为
Figure BDA0003761014110000061
第n个中药的初始嵌入表示向量为
Figure BDA0003761014110000062
同时初始化各个证候的嵌入表示向量,记第k个证候的初始嵌入表示向量为
Figure BDA0003761014110000063
S202:令传播层数i=1。
S203:病症、中药的第i层传播:
分别基于每个证候分类的病症-中药矩阵进行第i层传播,其中病症节点的传播公式如下:
Figure BDA0003761014110000064
其中,
Figure BDA0003761014110000065
表示第m个病症根据第k个证候的病症-中药矩阵在第i层传播后的嵌入表示向量,
Figure BDA0003761014110000066
表示第m个病症根据第k个证候的病症-中药矩阵得到的邻居节点集合,n′表示属于第m个病症邻居节点集合
Figure BDA0003761014110000067
的中药节点,
Figure BDA0003761014110000068
表示中药节点n′根据第k个证候的病症-中药矩阵得到的邻居节点集合,| |表示求取节点集合中的节点数量,
Figure BDA0003761014110000069
用于避免嵌入的规模随着图卷积运算的增加而增加的对称归一化项。W(i)是预设的第i层模型参数,⊙表示对应元素相乘,
Figure BDA0003761014110000071
表示中药节点n′在第i-1层的嵌入表示向量,
Figure BDA0003761014110000072
表示第m个病症所对应证候分类km在第i-1层的嵌入表示向量,采用
Figure BDA0003761014110000073
将证候分类嵌入表示融入到图神经网络的消息传递中,从而建模在此证候分类上的病症-中药交互。σ()表示激活函数,本实施例中采用LeakyRelu激活函数。
中药节点的传播公式如下:
Figure BDA0003761014110000074
其中,
Figure BDA0003761014110000075
表示第n个中药根据第k个证候的病症-中药矩阵在第i层传播后的嵌入表示向量,
Figure BDA0003761014110000076
表示第n个中药根据第k个证候的病症-中药矩阵得到的邻居节点集合,m′表示属于第n个中药邻居节点集合
Figure BDA0003761014110000077
的病症节点,
Figure BDA0003761014110000078
表示病症节点m′根据第k个证候的病症-中药矩阵得到的邻居节点集合,
Figure BDA0003761014110000079
表示病症节点m′在第i-1层的嵌入表示向量,
Figure BDA00037610141100000710
表示病症节点m′所对应证候分类km′在第i-1层的嵌入表示向量。
对于每个病症或中药,将其根据K个病症-中药矩阵所得到的K个在第i层传播后的嵌入表示向量进行加权融合,得到最终第i层传播后的嵌入表示向量,计算公式如下:
Figure BDA00037610141100000711
Figure BDA00037610141100000712
其中,λk表示预设的第k个证候的权重,且
Figure BDA00037610141100000713
本实施例中,权重λk采用如下方法确定:
对于步骤S101中的K个病症-中药数据集合,记第k个病症-中药数据集合中的数据数量为bk,则权重λk采用如下公式计算:
Figure BDA0003761014110000081
S204:证候的第i层传播:
本发明中,证候的嵌入表示向量的传播公式如下:
Figure BDA0003761014110000082
其中,
Figure BDA0003761014110000083
表示第k个证候在第i层传播后的嵌入表示向量,
Figure BDA0003761014110000084
表示预设的第i层模型的证候传播参数。
通过以上公式,可使当前证候分类的嵌入表示投影到下一层中,并在下一层中继续将证候信息与下一层的病症、中药嵌入表示进行融合。
S205:判断是否i<L,如果是,进入步骤S206,否则进入步骤S207。
S206:令i=i+1,返回步骤S203。
S207:获取最终嵌入表示向量:
对于病症、中药和证候,将各层传播得到嵌入表示向量进行平均,得到最终的嵌入表示向量,计算公式分别如下:
Figure BDA0003761014110000085
Figure BDA0003761014110000086
Figure BDA0003761014110000087
S103:构建中药推荐模型:
为了实现中药推荐,本发明需要构建中药推荐模型,包括平均池化模块、多层感知机和得分计算模块,其中平均池化模块用于对输入的多个病症的嵌入表示向量进行平均池化,将得到的特征向量输入多层感知机,多层感知机提取得到病症的归纳嵌入表示向量并发送至得分计算模块,得分计算模块根据采用如下公式计算得到中药的得分向量:
Figure BDA0003761014110000088
其中,
Figure BDA0003761014110000089
表示N维得分向量,得分向量
Figure BDA00037610141100000810
中第n个元素即为第n个中药的得分(即适合治疗当前病症对应疾病的概率值),上标T表示转置,E表示病症的归纳嵌入表示向量,G表示病症的归纳嵌入表示向量E所对应证候所属的证候分类的嵌入表示向量,归纳嵌入表示向量E的证候即为输入的多个病症所对应的证候,diag(G)表示以证候嵌入表示向量G的元素为对角线元素的对角矩阵,F表示由N个中药的嵌入表示向量作为行向量的中药嵌入表示矩阵。
S104:训练中药推荐模型:
采用步骤S101中的症状-中药数据对中药推荐模型进行训练,具体方法为:在同一证候分类下随机抽取若干个病症构成训练病症集合,获取训练病症集合中各个病症的嵌入表示向量,然后采用如下方法得到该训练病症集合的实际得分向量:对于每个中药,如果属于本次抽取病症中某个病症治疗所需的中药集合,则得分为1,否则得分为0,根据N个中药的得分构建实际得分向量Y。
将D个病症的嵌入表示向量输入中药推荐模型,将实际得分向量Y作为期望输出,对中药推荐模型进行训练。
损失函数的设置对于中药推荐模型的训练效果来说影响较大,本实施例中损失函数的计算方法如下:
记一个批次中训练病症集合的数量为P,对于每个训练病症集合,按照所属的证候分类将训练病症集合划分为K个类别
Figure BDA0003761014110000091
然后分别对每个类别采用如下公式计算得到对应证候的损失:
Figure BDA0003761014110000092
其中,Yp
Figure BDA0003761014110000093
表示类别
Figure BDA0003761014110000094
中训练病症集合p的实际得分向量和中药推荐模型的估计得分向量。
然后将K个证候的损失平均,得到本批次的综合损失:
Figure BDA0003761014110000095
通过最小化综合损失,即对中药推荐模型的参数进行优化训练,使得各个证候下的真实中药与推荐中药之间的差距尽可能小。在实际应用中,还可以对综合损失添加L2正则化,以进一步优化损失函数。
S105:中药推荐:
当需要针对某个疾病进行中药推荐时,首先确定该疾病中属于同一个症候分类的病症集合,获取病症集合中各个病症的嵌入表示向量,将嵌入表示向量输入训练好的中药推荐模型,根据输出的得分函数选取得分最高的前Q个中药作为推荐的中药,Q的值根据具体需要设置。
为了更好地说明本发明的技术方案,采用一个具体实例对本发明进行实验验证。本次实验验证中根据经验将证候分为风热类、湿热类、风寒类、气血类、阴阳类、其它类这六类,未标注证候的数据以及不属于前五类的数据都归为其它类中。除此之外,也可使用预先训练好的分类模型(例如基于图神经网络的证候分类模型)对证候数据集进行分类。根据病症-中药数据得到6个病症-中药矩阵。本次实验验证中嵌入表示向量的维度为256,图神经网络进行2次传播,得到病症、中药、症候的嵌入表示向量。
对于中药推荐模型,多层感知机为单层256维,多个病症的嵌入表示向量通过平均池化模块进行平均池化后,由多层感知机处理得到256维的归纳病症表示向量,然后输入得分计算模块计算得到各个中药的得分,选择得分最大的前15个中药作为推荐中药。本次实验验证中,采用推荐中药和实际所用中药中相同中药数量除以实际所用中药数量的比值作为推荐准确率。表1是本实施例中部分中药推荐结果和实际用药的对比表。
Figure BDA0003761014110000101
Figure BDA0003761014110000111
表1
如表1所示,本实施例中各个疾病的推荐中药的准确率均在90%以上,可见本发明可以实现准确度较高的中药推荐。
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

Claims (3)

1.一种基于证候信息的图神经网络中药推荐方法,其特征在于,包括以下步骤:
S1:根据实际需要获取若干病症-中药数据,每条数据中包含病症、治疗病症所需的中药集合以及病症所属证候,根据实际需要将证候分类,得到K个证候分类,将所有病症-中药数据按照所属证候分类划分为K个病症-中药数据集合;对于每个证候分类的病症-中药数据集合,分别构建大小为M×N的病症-中药矩阵,M表示病症的总数,N表示中药的总数,如果某个病症在治疗时需要使用到某个中药,病症-中药矩阵中对应元素为1,否则为0;
S2:构建图神经网络,其节点包括M个病症和N个中药,节点之间的关系为一种证候分类,然后基于K个证候分类的病症-中药矩阵进行L层传播,得到病症、中药的嵌入表示向量,具体方法如下:
S2.1:根据实际需要初始化传播层数为0时的各个病症、中药的嵌入表示向量,记第m个病症的初始嵌入表示向量为
Figure FDA0003761014100000011
第n个中药的初始嵌入表示向量为
Figure FDA0003761014100000012
同时初始化各个证候的嵌入表示向量,记第k个证候的初始嵌入表示向量为
Figure FDA0003761014100000013
S2.2:令传播层数i=1;
S2.3:分别基于每个证候分类的病症-中药矩阵进行第i层传播,其中病症节点的传播公式如下:
Figure FDA0003761014100000014
其中,
Figure FDA0003761014100000015
表示第m个病症根据第k个证候的病症-中药矩阵在第i层传播后的嵌入表示向量,
Figure FDA0003761014100000016
表示第m个病症根据第k个证候的病症-中药矩阵得到的邻居节点集合,n′表示属于第m个病症邻居节点集合
Figure FDA0003761014100000017
的中药节点,
Figure FDA0003761014100000018
表示中药节点n′根据第k个证候的病症-中药矩阵得到的邻居节点集合,||表示求取节点集合中的节点数量,W(i)是预设的第i层模型参数,⊙表示对应元素相乘,
Figure FDA0003761014100000019
表示中药节点n′在第i-1层的嵌入表示向量,
Figure FDA00037610141000000110
表示第m个病症所对应证候分类km在第i-1层的嵌入表示向量,σ()表示激活函数;
中药节点的传播公式如下:
Figure FDA0003761014100000021
其中,
Figure FDA0003761014100000022
表示第n个中药根据第k个证候的病症-中药矩阵在第i层传播后的嵌入表示向量,
Figure FDA0003761014100000023
表示第n个中药根据第k个证候的病症-中药矩阵得到的邻居节点集合,m′表示属于第n个中药邻居节点集合
Figure FDA0003761014100000024
的病症节点,
Figure FDA0003761014100000025
表示病症节点m′根据第k个证候的病症-中药矩阵得到的邻居节点集合,
Figure FDA0003761014100000026
表示病症节点m′在第i-1层的嵌入表示向量,
Figure FDA0003761014100000027
表示病症节点m′所对应证候分类km′在第i-1层的嵌入表示向量;
对于每个病症或中药,将其根据K个病症-中药矩阵所得到的K个在第i层传播后的嵌入表示向量进行加权融合,得到最终第i层传播后的嵌入表示向量,计算公式如下:
Figure FDA0003761014100000028
Figure FDA0003761014100000029
其中,λk表示预设的第k个证候的权重,且
Figure FDA00037610141000000210
S2.4:证候的嵌入表示向量的传播公式如下:
Figure FDA00037610141000000211
其中,
Figure FDA00037610141000000212
表示第k个证候在第i层传播后的嵌入表示向量,
Figure FDA00037610141000000213
表示预设的第i层模型的证候传播参数;
S2.5:判断是否i<L,如果是,进入步骤S2.6,否则进入步骤S2.7;
S2.6:令i=i+1,返回步骤S2.3;
S2.7:对于病症、中药和证候,将各层传播得到嵌入表示向量进行平均,得到最终的嵌入表示向量,计算公式分别如下:
Figure FDA0003761014100000031
Figure FDA0003761014100000032
Figure FDA0003761014100000033
S3:构建中药推荐模型,包括平均池化模块、多层感知机和得分计算模块,其中平均池化模块用于对输入的多个病症的嵌入表示向量进行平均池化,将得到的特征向量输入多层感知机,多层感知机提取得到病症的归纳嵌入表示向量并发送至得分计算模块,得分计算模块根据采用如下公式计算得到中药的得分向量:
Figure FDA0003761014100000034
其中,
Figure FDA0003761014100000035
表示N维得分向量,得分向量
Figure FDA0003761014100000036
中第n个元素即为第n个中药的得分,E表示病症的归纳嵌入表示向量,上标T表示转置,G表示病症的归纳嵌入表示向量E所对应证候所属的证候分类的嵌入表示向量,归纳嵌入表示向量E的证候即为输入的多个病症所对应的证候,diag(G)表示以证候嵌入表示向量G的元素为对角线元素的对角矩阵,F表示由N个中药的嵌入表示向量作为行向量的中药嵌入表示矩阵;
S4:采用步骤S1中的症状-中药数据对中药推荐模型进行训练,具体方法为:在同一证候分类下随机抽取若干个病症构成训练病症集合,获取训练病症集合中各个病症的嵌入表示向量,然后采用如下方法得到该训练病症集合的实际得分向量:对于每个中药,如果属于本次抽取病症中某个病症治疗所需的中药集合,则得分为1,否则得分为0,根据N个中药的得分构建实际得分向量Y;
将D个病症的嵌入表示向量输入中药推荐模型,将实际得分向量Y作为期望输出,对中药推荐模型进行训练;
S5:当需要针对某个疾病进行中药推荐时,首先确定该疾病中属于同一个症候分类的病症集合,获取病症集合中各个病症的嵌入表示向量,将嵌入表示向量输入训练好的中药推荐模型,根据输出的得分函数选取得分最高的前Q个中药作为推荐的中药,Q的值根据具体需要设置。
2.根据权利要求1所述的中药推荐方法,其特征在于,所述步骤S2.3中权重λk采用如下方法确定:
对于步骤S1中的K个病症-中药数据集合,记第k个病症-中药数据集合中的数据数量为bk,则权重λk采用如下公式计算:
Figure FDA0003761014100000041
3.根据权利要求1所述的中药推荐方法,其特征在于,所述步骤S4中中药推荐模型训练时的损失函数的计算方法如下:
记一个批次中训练病症集合的数量为P,对于每个训练病症集合,按照所属的证候分类将训练病症集合划分为K个类别
Figure FDA0003761014100000042
然后分别对每个类别采用如下公式计算得到对应证候的损失:
Figure FDA0003761014100000043
其中,Yp
Figure FDA0003761014100000044
表示类别
Figure FDA0003761014100000045
中训练病症集合p的实际得分向量和中药推荐模型的估计得分向量;
然后将K个证候的损失平均,得到本批次的综合损失:
Figure FDA0003761014100000046
CN202210870609.9A 2022-07-22 2022-07-22 基于证候信息的图神经网络中药推荐方法 Pending CN115171842A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210870609.9A CN115171842A (zh) 2022-07-22 2022-07-22 基于证候信息的图神经网络中药推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210870609.9A CN115171842A (zh) 2022-07-22 2022-07-22 基于证候信息的图神经网络中药推荐方法

Publications (1)

Publication Number Publication Date
CN115171842A true CN115171842A (zh) 2022-10-11

Family

ID=83497841

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210870609.9A Pending CN115171842A (zh) 2022-07-22 2022-07-22 基于证候信息的图神经网络中药推荐方法

Country Status (1)

Country Link
CN (1) CN115171842A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116631612A (zh) * 2023-06-09 2023-08-22 广东工业大学 一种基于多图融合的图卷积草药推荐方法及计算机

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116631612A (zh) * 2023-06-09 2023-08-22 广东工业大学 一种基于多图融合的图卷积草药推荐方法及计算机
CN116631612B (zh) * 2023-06-09 2024-03-19 广东工业大学 一种基于多图融合的图卷积草药推荐方法及计算机

Similar Documents

Publication Publication Date Title
CN107516110B (zh) 一种基于集成卷积编码的医疗问答语义聚类方法
CN108319686B (zh) 基于受限文本空间的对抗性跨媒体检索方法
CN109460473B (zh) 基于症状提取和特征表示的电子病历多标签分类方法
US20240203599A1 (en) Method and system of for predicting disease risk based on multimodal fusion
CN112508085B (zh) 基于感知神经网络的社交网络链路预测方法
CN109376242B (zh) 基于循环神经网络变体和卷积神经网络的文本分类方法
CN111427995B (zh) 基于内部对抗机制的语义匹配方法、装置及存储介质
CN109670039B (zh) 基于三部图和聚类分析的半监督电商评论情感分析方法
CN107025284A (zh) 网络评论文本情感倾向的识别方法及卷积神经网络模型
CN109063719B (zh) 一种联合结构相似性和类信息的图像分类方法
CN113657561B (zh) 一种基于多任务解耦学习的半监督夜间图像分类方法
CN114564565A (zh) 面向公共安全事件分析的深度语义识别模型及其构建方法
CN110321805B (zh) 一种基于时序关系推理的动态表情识别方法
CN110704510A (zh) 一种结合用户画像的题目推荐方法及系统
CN116416478B (zh) 一种基于图结构数据特征的生物信息学分类模型
CN111477328B (zh) 一种非接触式的心理状态预测方法
CN111477329B (zh) 一种基于图文结合评估心理状态的方法
CN115171842A (zh) 基于证候信息的图神经网络中药推荐方法
Qian Exploration of machine algorithms based on deep learning model and feature extraction
CN115858919A (zh) 基于项目领域知识和用户评论的学习资源推荐方法及系统
CN110889505A (zh) 一种图文序列匹配的跨媒体综合推理方法和系统
CN114896392A (zh) 工单数据的聚类方法、装置、电子设备及存储介质
CN113627195A (zh) 基于层次Transformer和图神经网络的评论情感分析方法及系统
CN116386815A (zh) 基于最大团算法的中医药方推荐方法
CN111309923A (zh) 对象向量确定、模型训练方法、装置、设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination