本发明涉及医疗信息,特别涉及一种疾病预测模型的训练方法、疾病预测系统。
背景技术:
1、医学诊断指的是根据病人的症状和数据来判断病人所患的疾病,这需要具有医学专业知识的医生根据大量的医疗数据来进行诊断,但很多地区都面临着医疗资源短缺的问题,医生的数量远远无法满足人们的需求。随着深度学习技术的发展,人们开始用人工智能来辅助医生进行医学诊断,从而缓解医疗资源不足的问题,让更多的人可以及时得到医疗救助。因此研究基于深度学习的医疗诊断技术具有非常重要的现实意义和广阔的应用前景。
2、医疗数据中存在着大量结构上的关联,比如同一病人所进行的各项检查之间存在着结构关联,但现有的疾病预测模型训练方法研究中没有考虑这些结构上的关系,忽略了其中丰富的信息,导致最终训练得到的疾病预测模型的疾病预测结果效果不好,从而不能很好地辅助医生进行疾病诊断。
技术实现思路
1、本发明的目的在于基于病人的原始病例数据,以多模态医疗数据为训练集训练出能够对医疗数据或诊断结果进行预测的神经网络模型,最后构建疾病预测模型用于输入待预测数据后得到诊断结果辅助医生诊断,提供一种疾病预测模型的训练方法、疾病预测系统。
2、为了实现上述发明目的,本发明实施例提供了以下技术方案:
3、疾病预测模型的训练方法,包括以下步骤:
4、步骤1,收集大量的原始病例数据,对原始病例数据进行预处理,整理出医疗数据和诊断结果;
5、所述步骤1具体中,原始病例数据的字段数据包括病人序号、病人年龄、检验项目、检验结果、症状部位、症状程度、症状持续时间、治疗时间、治疗手段、诊断结果;
6、所述步骤1中,对原始病例数据进行预处理,整理出医疗数据和诊断结果的步骤,包括:
7、将病人年龄、检验项目、检验结果、症状部位、症状程度、症状持续时间、治疗时间、治疗手段这8个字段数据作为医疗数据,则所有病人的医疗数据样本集为x={x1,x2,...,xn},其中xi表示序号为i的病人的医疗数据,n为病人总数,i∈[1,n];诊断结果标签集为y={y1,y2,...,yn},yi为xi对应的诊断结果,且将诊断结果yi作为医疗数据xi的标签;
8、病人i的医疗数据为,其中表示病人i的医疗数据中的第v个字段数据,v=1,2,...,8;
9、步骤2,将医疗数据和诊断结果作为训练集对神经网络模型进行训练,使得神经网络模型输出医疗数据或诊断结果的预测概率;
10、步骤3,基于神经网络模型输出的预测概率,通过xgboost算法构建疾病预测模型。
11、所述步骤2具体包括以下步骤:
12、将医疗数据xi中的字段数据转换为词向量,首先计算字段数据的词频:
13、
14、其中,表示字段数据的词频;表示字段数据在医疗数据xi中出现的次数;t表示医疗数据xi中字段数据的总数;
15、计算字段数据的义原频率:
16、
17、其中,表示字段数据的义原频率;n表示病人总数;表示包含了字段数据的医疗数据数量;
18、将字段数据转换为词向量:
19、
20、建立词向量与索引之间的系数矩阵:
21、
22、其中,表示系数矩阵,维度为m;表示系数矩阵中第v行第j列的系数,v=1,2,...,8,j=1,2,...,m;
23、计算词向量的评分矩阵:
24、
25、其中,表示评分矩阵,维度为m;表示评分矩阵中第v行第j列的系数,有:
26、
27、其中,表示的评分;表示第m个维度的补偿系数;表示第m-1个维度的补偿系数;表示第1个维度的补偿系数;表示第m个维度的权重,表示第m-1个维度的权重,表示第1个维度的权重,t为矩阵转置;表示第1个维度的偏置;表示第m-1个维度的偏置;表示第m个维度的偏置;
28、将词向量投影到指定的维度m:
29、
30、其中,词向量的维度为m;
31、医疗数据xi的词向量表示为:
32、
33、将诊断结果yi投影到指定的维度m:
34、
35、其中,诊断结果向量的维度为m;
36、中具有8个词向量,中具有1个词向量,将这9个词向量中的任一词向量作为中心词wcore,将用表示,其中,计算中心词wcore的预测概率:
37、
38、其中,core=1,2,...,9,k=1,2,...,9;
39、将预测概率最大化,等同于最小化损失函数l:
40、
41、基于梯度下降算法,进行多次迭代,使得损失函数l最小化,以此得到最优的预测概率。
42、所述步骤3具体包括以下步骤:
43、将预测概率用表示,基于xgboost算法构建目标函数:
44、
45、其中,j(t)为第t次迭代的目标函数;n为病人总数;为第t次迭代的预测值,为第t次迭代的真实值;为损失函数;为需要被预测的数据;为第t次迭代下需要被预测的数据,为决策树函数集合;为函数复杂度项,有:
46、
47、其中,为决策树的叶子节点的惩罚系数;i为叶子节点的个数;为正则项的惩罚系数;为叶子权重;d为叶子节点的样本集合,d=1,2,...,d;
48、将损失函数的泰勒级数推广到2阶,并移除常数项,则第t次迭代的目标函数为:
49、
50、
51、其中,符号表示渐进等于;gi为损失函数的一阶导数;hi为损失函数的二阶导数;为第t-1次迭代的预测值。
52、疾病预测系统,包括:
53、数据获取模块,用于获取病人的待预测数据,病人的待预测数据包括病人年龄、检验项目、检验结果、症状部位、症状程度、症状持续时间;
54、如前述任一实施方式所述疾病预测模型的训练方法训练得到的疾病预测模型,用于基于待预测数据进行疾病预测。
55、与现有技术相比,本发明的有益效果:本发明基于病人的原始病例数据,以多模态医疗数据为训练集训练出能够对医疗数据或诊断结果进行预测的神经网络模型,最后构建疾病预测模型用于输入待预测数据后得到诊断结果辅助医生诊断。
1.疾病预测模型的训练方法,其特征在于:包括以下步骤:
2.根据权利要求1所述的疾病预测模型的训练方法,其特征在于:所述步骤2具体包括以下步骤:
3.根据权利要求2所述的疾病预测模型的训练方法,其特征在于:所述步骤3具体包括以下步骤:
4.疾病预测系统,其特征在于:包括: