一种基于神经网络的中医处方疗效推演方法与流程

文档序号:17933841发布日期:2019-06-15 01:09阅读:392来源:国知局
一种基于神经网络的中医处方疗效推演方法与流程

本发明属于中医配药领域,尤其涉及到一种基于神经网络的中医处方疗效推演方法。



背景技术:

中医学有着数千年的发展历史,是广大劳动人民在治疗疾病中的经验总结,中医学的诊断治疗过程,实质上是一个辨证施治过程,也是个对一大堆数据信息作出处理,提取规律的过程。辨证论治是中医学的精华,是中医对于疾病诊断和治疗的理论和手段。辨证论治的过程是对信息的收集、转换、加工、处理以及运用信息的反馈,调整治疗措施,达到治愈疾病的目的。中医学中的辨证有模糊性、不确定性的特点,主观性较强,因此中医的诊断和治疗与医师的经验、水平有着较大关系。中医辨证的研究思路和方法主要集中在实验研究、临床观察、文献整理、经验总结上。当今时代的发展显示,这些方法是不够的。神经网络有较好获得数据规律的能力,应用于中医学具有可行性。

解决上述问题的关键就是应用神经网络,进行中医处方疗效推演。



技术实现要素:

本发明克服了现有技术的不足之处,提出了一种基于神经网络的中医处方疗效推演方法,意在指导中医用药。

本发明为达上述发明目的,采用如下技术方案:

一种基于神经网络的中医处方疗效推演方法,按照如下步骤进行:

步骤(1):准备中医处方疗效推演的数据;

步骤(2):将准备好的数据输入到中医处方疗效推演的模型中,经过神经网络,输出患者服药n天(第一周期)后的化验指标;将n天后的化验指标以及中药处方、患者的检查指标作为第二周期的数据,并把上一周期网络中的输出一起输入到下一周期的网络中,经过神经网络,输出患者服药2n天(第二周期)后的化验指标;将2n天后的化验指标以及中药处方、患者的检查指标作为第三周期的数据,并把上一周期网络的输出一起输入到下一周期的网络中,经过神经网络,输出患者服药3n天(第三周期)后的化验指标,中医看病一般经历三个周期;

步骤(3):训练:对网络参数赋初始化数值,设置网络的最大迭代次数q,学习率λ,将准备好的数据集输入网络,进行训练,如果loss值一直下降,则继续训练,直到迭代q次后,得到最终的模型,如果loss值在中途趋于稳定,则停止迭代,得到最终的模型;

步骤(4):推演:输入患者的各项数据j表示第j种病,i表示第i周期(i=1,2,3),输入到中医处方疗效推演的模型中,得出各个周期的化验指标。

进一步的,步骤(1)中的数据准备如下:

收集a种病的中药处方、患者的检查与化验数据,其中,中药处方包括n种药物的重量(以克为单位)以及服药次数(m次/天),检查数据包括患者的身高、体重、体温、血压、舌苔、脉象,其中,舌苔分为薄白苔、白滑苔、白腻苔、积粉苔、白燥苔、薄黄苔、黄腻苔、黄糙苔、黄滑苔、焦黄苔、深黄苔、灰黑苔、灰苔、黑苔共14种基本苔象,脉象分为浮脉、洪脉、濡脉、散脉、芤脉、革脉、沉脉、伏脉、牢脉、弱脉、迟脉、缓脉、涩脉、结脉、数脉、促脉、疾脉、动脉、虚脉、微脉、细脉、代脉、短脉、实脉、滑脉、紧脉、长脉、弦脉共28种基本脉象,将舌苔情况和脉象分别用one-hot编码作为输入数据;化验数据包括血液指标、尿液指标、肝功能指标、肾功能指标、血脂、电解质、淀粉酶,化验数据是当前周期的输出也是下一周期的输入。

步骤(2)中神经网络的构成如下:

神经网络由多个卷积层构成,将数据输入到卷积神经网络中,经过n个卷积层和一个全连接层得到输出o(1);将第一周期输出的指标、全连接层的输出以及其他数据作为第二周期的输入数据经过n个卷积层和一个全连接层得到输出o(2);将第二周期输出的指标、全连接层的输出以及其他数据作为第三周期的输入数据经过n个卷积层和一个全连接层得到输出o(3),其中j表示疾病的种类。

步骤(3)中训练的损失函数如下:

其中y(t)是每一周期实际测量得到的化验指标(t=1,2,3),o(t)是每一周期网络训练得到的化验指标(t=1,2,3)。

附图说明

图1是基于神经网络的中医处方疗效推演方法的流程图。

图2是基于神经网络的中医处方疗效推演方法的网络模型。

具体实施方式

下面结合附图对本发明作进一步说明。

本实施例中,如图1所示,本发明的基于神经网络的中医处方疗效推演方法,具体实现主要包括如下步骤:

步骤(1):准备中医处方疗效推演的数据;

步骤(2):将准备好的数据输入到中医处方疗效推演的模型中,经过神经网络,输出患者服药10天(第一周期)后的化验指标;将n天后的化验指标以及中药处方、患者的检查指标作为第二周期的数据,并把上一周期网络中的输出一起输入到下一周期的网络中,经过神经网络,输出患者服药20天(第二周期)后的化验指标;将20天后的化验指标以及中药处方、患者的检查指标作为第三周期的数据,并把上一周期网络的输出一起输入到下一周期的网络中,经过神经网络,输出患者服药30天(第三周期)后的化验指标,中医看病一般经历三个周期;

步骤(3):训练:对网络参数赋初始化数值,设置网络的最大迭代次数q=50000,学习率λ=0.01,将准备好的数据集输入网络,进行训练,如果loss值一直下降,则继续训练,直到迭代50000次后,得到最终的模型,如果loss值在中途趋于稳定,则停止迭代,得到最终的模型;

步骤(4):推演:输入患者的各项数据j表示第j种病,i表示第i周期(i=1,2,3),输入到中医处方疗效推演的模型中,得出各个周期的化验指标。

进一步的,步骤(1)中的数据准备如下:

收集a种病的中药处方、患者的检查与化验数据,其中,中药处方包括n种药物的重量(以克为单位)以及服药次数(m次/天),检查数据包括患者的身高、体重、体温、血压、舌苔、脉象,其中,舌苔分为薄白苔、白滑苔、白腻苔、积粉苔、白燥苔、薄黄苔、黄腻苔、黄糙苔、黄滑苔、焦黄苔、深黄苔、灰黑苔、灰苔、黑苔共14种基本苔象,脉象分为浮脉、洪脉、濡脉、散脉、芤脉、革脉、沉脉、伏脉、牢脉、弱脉、迟脉、缓脉、涩脉、结脉、数脉、促脉、疾脉、动脉、虚脉、微脉、细脉、代脉、短脉、实脉、滑脉、紧脉、长脉、弦脉共28种基本脉象,将舌苔情况和脉象分别用one-hot编码作为输入数据;化验数据包括血液指标、尿液指标、肝功能指标、肾功能指标、血脂、电解质、淀粉酶,化验数据是当前周期的输出也是下一周期的输入。

步骤(2)中神经网络的构成如下:

神经网络由多个卷积层构成,将数据输入到卷积神经网络中,经过10个卷积层和一个全连接层得到输出o(1);将第一周期输出的指标、全连接层的输出以及其他数据作为第二周期的输入数据经过10个卷积层和一个全连接层得到输出o(2);将第二周期输出的指标、全连接层的输出以及其他数据作为第三周期的输入数据经过10个卷积层和一个全连接层得到输出o(3),其中j表示疾病的种类。

步骤(3)中训练的损失函数如下:

其中y(t)是每一周期实际测量得到的化验指标(t=1,2,3),o(t)是每一周期网络训练得到的化验指标(t=1,2,3)。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1