贝叶斯网络在疾病预测诊断中的应用与优化

摘要

现今,国内外疫情形势依然严峻,新冠疫情已经严重影响人们正常的生活,甚至造成了全球经济的衰退化,疫情对经济产生的直接影响,是我们很直观可以看到、可以感受到的。比如说旅游景点关闭、餐厅不能正常营业、电影院关门等等。在全民接种疫苗的时代,新冠肺炎病毒也在不断的变异,对人民的生命和财产安全造成了很大的威胁。贝叶斯网络作为问题不确定推理的一个有效手段,它结合图论相关知识和概率论不仅可以完成问题的后验概率推理,还能很清楚地描绘出变量之间存在的依赖关系,具有很强的应用价值。因此,可以高效的帮助医护人员筛选较大概率患有新冠肺炎的患者。
    本文先以类似新冠肺炎症状患者为研究对象,提出基于贝叶斯网络的新冠肺炎检测方法 。基于目标人群的国家、年龄、性别、症状、等数据样本以及贝叶斯网络的参数学习,由此建立基于贝叶斯网络的疾病预测与优化预测模型 ,通过构建贝叶斯网络对人群患新冠肺炎的概率大小进行预测,以提高管理效率,帮助医护人员判断那些患者需要重点关注,降低新冠肺炎传播带来的危害。

关键词:医疗诊断、贝叶斯网络、新冠肺炎疫情

 

ABSTRACT

Today, the epidemic situation is still grim at home and abroad. COVID-19 has seriously affected people's normal life, and even caused the deterioration of the global economy. The direct impact of the epidemic on the economy is very intuitive to see and feel. For example, tourist attractions are closed, restaurants are not open normally, cinemas are closed, etc. The novel coronavirus pneumonia is also changing constantly in the era of universal vaccination, which poses a great threat to the safety of people's lives and property. As an effective means of problem uncertainty reasoning, Bayesian network combines the relevant knowledge of probability theory and graph theory. It can not only complete the posterior probability reasoning of the problem, but also clearly describe the dependency between variables, which has strong application value. Therefore, novel coronavirus pneumonia patients can be screened efficiently by health care workers.
Novel coronavirus pneumonia patients with novel coronavirus pneumonia were selected as the subjects. Novel coronavirus pneumonia novel coronavirus pneumonia prediction model based on Bayesian network is established based on gender, age, gender, symptom, data and Bayesian network parameters learning. The Bayesian network is used to predict the probability of new crowns pneumonia, so as to improve the management efficiency and help the medical staff to judge the patients' need to focus on the disease and reduce the harm caused by the spread of the new crown pneumonia.

Key words:medical diagnosis; Bayesian netw orks; COVID-19

一、绪论

(一)研究背景

新冠病毒是一种传染性极强的病毒,主要的传播途径是呼吸道飞沫传播和接触传播,因其传染性极强,当下全球各地都受到了来自新冠病毒不同程度上的影响。新冠病毒病发有着较强的潜伏期,感染新冠后,普通人很难第一时间察觉,从而会引发更多的传染。当前,如何有效诊断新冠肺炎成了亟待解决的问题。

(二)目的和意义

传统的诊断方法是核酸检测,但是由于新冠病毒具有14天潜伏期,有可能出现核酸检测为阴性但实际上已经被感染的情况。CT图像也是最常见的诊断手段,但这种诊断方式相对而言比较耗时耗力,且存在一定的误诊率。本课题的研究目的是通过贝叶斯网络,搜集患者近期的一系列状态(例如是否到过高风险区、是否经常吸烟、最近有无发烧症状等等),通过这些状态,可以计算出患者患新冠肺炎的概率大小,从而帮助医护人员判断哪些患者是需要重点关注的。

当前新冠疫情仍然在全球流行,并仍将持续比较长的时间,甚至今后还要与我们共存,本课题通过贝叶斯网络提前收集患者的一系列状况,预测该患者患新冠肺炎的概率,从而帮助医护人员划分出低中高风险的患者,有针对性地进行防患,做到有备无患,同时可以及时的发现有可能感染新冠的患者,能够对其进行隔离或一定措施处理。这种诊断相比传统的CT影像和核酸检测,具有更快的判断速度,将患者近期的一系列状态输入网络中就可以实现自动检测,大大减轻了医生的工作量。

(三)国内外发展情况

春柳等人在[1]中提出了一种基于关联规则的贝叶斯网络,对654份河南省新冠肺炎临床资料进行分析,从所有患者表现出的临床症候中选出关联较强的症候群,并分析症候对诊断结果的贡献度,以此为基础建立条件概率表。该研究方向为临床诊断新冠肺炎供给了一种新的思路。张君辉等人在其文献[2]中阐述了一种基于贝叶斯网络的大型油轮上感染新冠高风险人群识别,以风险程度作为节点概率表,利用各节点之间的逻辑关系确立概率,使用该模型判断患病高风险人群的预测准确率达到了81%左右。曹杰等人在其文献[3]中提出一种新的构建贝叶斯网络结构的思路,从搜索评分的结构分析方法、节点数量庞大导致复杂度高、贝叶斯网络的多标签分类方法、去改良贝叶斯网络的构建以及创新。刘继等人在其文献[4]对新冠疫情的事情特点、关注度、传播扩散度及网民观念偏向等方面构建网络舆情态势评价指标,从而可以有针对性的对“新冠肺炎疫情”相关网络舆情管理提出了建议。王庆等人在其文献[5]针对我国抗击新冠疫情的有效措施构建了基于贝叶斯优化的模型,分析得出管控后疫情得到有效控制,以此来帮助国外疫情,给出一定的指导意义。葛洪磊等人在其文献[6]针对我国以及全球应急物资保障体系存在突出短板,应用贝叶斯决策分析进行应急物资配置决策建模,能够帮助国家有效的应对此情况做出较为正确的处理。春柳,谢洋等人在其文献[7]提取证候要素 25个,其中病位证素 12个,以肺、心神(脑)、脾为主;病性证素 13个,以湿、热(火)、毒、气虚为主,研究疾病初中后期的病位,从而帮助辨别新否为新冠肺炎,以证候要素为节点构建贝叶斯网络,通过患新冠的患者的不同时期时出现的症状,预测患新冠患者处于患病的时期。高山等人在其文献[8]阐述了针对突发公共卫生事件的不确定性通过贝叶斯网络建立模型,以有效的预防此类突发卫生事件的发送,以情景状态为节点构建模型,有效的得出出现该情景时需要做出的预防和措施,是一种很好的处理方式。

一、贝叶斯相关理论(一)贝叶斯网络基本原理1.1贝叶斯网络概述贝叶斯网络(Bayesian network),又称信念网络(Belief Network),或称有向无环图模型,是一种概率图模型,它是一种模拟人类推理过程中因果关系的不确定性处理模型,其网络拓朴结构是一个有向无环图(DAG),作为一种数据分析和不确定性推理的有效工具,贝叶斯网络可助力人们实现概率统计在复杂领域  的实际应用,有效解决各种复杂问题[9]贝叶斯网络。贝叶斯网络一是将多元知识图解可视化的一种概率知识表达与推理模型,它能够在众多数据中,做出精准的预测,从而不被干扰,所以更能够接收和理解,二是贝叶斯网络可以处理有较大不确定性问题的能力,贝叶斯网络的条件概率表能够清晰的表达个要素之间的关系,能够在不完整,不确定的条件下进行训练和学习,三是贝叶斯网络可以有效避免对数据的过度拟合,贝叶斯网络具有坚实的理论基础和强大的知识表达及推理能力,加之模型直观易懂,被广泛应用于诸多不确定问题的处理,如医学病例的诊断、灾害的风险分析、事故的预测等[10]。这些成功的应用,充分体现了贝叶斯网络是有效处理不完整的数据集的充分印证。学习能力越来越强,使用范围不断扩大。随着机器学习的进步,关于贝叶斯网络的研讨会数量不断增加,可见贝叶斯网络是一个值得认真研究和讨论的话题。 这里我们来举例说明一下表示创业的贝叶斯网络的例子,在这个贝叶斯模型中包含了3个关于创业品质的节点,节点A表示的事件为有方法,节点B表示的事件为做事有毅力,节点C表示创业是否成功,每个事件的取值都只有0和1两个取值,也就是代表有或者没有。 如图,每一个节点都有自己对应的条件概率表,当创业有方法时,成功的概率为0.6,即P(A|C)=0.8,事件A,B都相互独立,进而可以逐步推导出该网 方法                 毅力
0.70.3
0.70.3
0.70.3   
A=1B=00.6A=0B=10.6A=1B=10.9A=0B=00     创业 图1.1 一个贝叶斯网络的例子络的联合概率为:P(A, B, C,) = P(A)P(B)P(C | A),可以用过这个式子表示出节点与节点之间的依赖关系,贝叶斯网络可以通过图形模型展示节点间的因果关系,因此可以通过样本和先验概率模型相结合,找到节点之间的依赖,为需要推理预测的问题加以指导。  1.2贝叶斯网络的定理要明白贝叶斯网络的定理,我们首先需要明白什么是条件概率,以及什么是联合概率、全概率、边缘概率[11],这些相关概念它们有什么含义,首先,条件概率(后验概率)是事件A给定另一个事件B的概率。 条件概率表示为P(A | B),读作“条件B下A的概率”:  联合概率指的是含有多个条件且这些条件同时成立的概率,记P=(X=a,X=b),必须要留意的是所有条件在同一时刻成立,边缘概率则与联合概率与之对应,指的是某个事件产生的概率,即事件A的边缘概率可以记作P(A),事件B则可记作P(B),如果确定事件A的概率为P(A),则事件B的概率为P(B),当事件A出现事件B发生的概率(A的后验概率)和事件B发生的情况下事件A的概率(B的后验概率)可以分别表示为P(A|B)和P(B|A),根据条件概率的定义直接得到贝叶斯方程。即因为P(A,B) = P(A)P(B|A) = P(B)P(A|B),所以P根据条件概率的公式定义可得贝叶斯网络公式:  贝叶斯网络是一个由节点和有向线段组成,线段则表示两个节点之间的关联,线段是有方向的,节点可以表示变量或事件,所以贝叶斯网络是一个有向无环图,它可以通过图形的方式来表达变量之间的因果关系,所以我们可以通过将先验模型事件与我们要训练数据相互结合,来确定事件之间的依赖关系,得出有效的预测。 (二)贝叶斯网络学习2.1  贝叶斯网络参数学习贝叶斯网络的学习分为两类,一是结构学习,二是参数学习,参数学习主要是学习节点的条件概率表,通过网络结构来确定每个节点的参数,我们通常在获得数据的时候不一定完善,所以对于数据来书参数学习也分为完备的数据参数学习和不完备的数据参数学习。完备的数据指的是获得数据比较全面,没有出现数据丢失的情况,不完备的数据则是与之相反,当一个数据比较完善的情况下,通常采用的贝叶斯方法和最大似然估计法,他们2个都要满足在给定互相独立的参数时且节点的条件概率分布相同。采用贝叶斯估计法对节点参数进行估计的流程可以分为一下几个步骤:  图2.1 贝叶斯参数估计流程2.2 D-分离,简单地说,这是传统的判断独立性的方法。如果有向图中的两个变量a和b对于另一组变量c被D分离,则可以在这样的图中表示的所有概率分布都与c无关。你什么意思?这意味着两个变量a和b独立c。因此一旦你知道c,即使知道a并不会给你任何关于b的更多信息。2.3贝叶斯网络管道模型在贝叶斯网络信息管道模型中[12][13],节点被以为是阀门,节点之间的边被以为是信息流管道。节点被认为是阀门,节点之间的边缘被认为是数据流通道。碰撞节点(带收敛箭头的节点)代表的阀门关闭,通信关闭。显现后的开放空间。都是由无碰撞节点所代表的阀门在实施时打开和关闭。弧线方向的两个节点之间的路径称为有向路径,称为路径,不符合该方向的路径称为无方向路径,称为链接。贝叶斯网络有两条路径。第一个是节点不冲突的路径,称为数据流可以流动的开路。当节点被实例化时,数据流被阻塞。另一个是包含碰撞的路径。称为闭环的节点只要在一切碰撞节点都被实例化同时非碰撞节点没有被实例化的情况下才能遍历。

 

一、基于贝叶斯网络的新冠肺炎预测模型的构建(一)贝叶斯网络建模1.1建模方法贝叶斯网络的构建过程中,第一个贝叶斯网络的结构图需要确定的,一个直接表示贝叶斯网络节点之间关系的拓扑图。一般来说,获取贝叶斯网络图通常有两种方法。一种是通过训练数据集获得,但该方法不仅需要大量数据作为支持,否则贝叶斯网络结构不可靠。然而,如果在贝叶斯结构的研究中使用大量的数据集,事故网络的图随着事故数量的增加呈指数增长,所以根据情况选择所需的方法更可靠,也会更高。第二种方法是利用专家的经验和知识手动王城贝叶斯网络图的创建。该方法具有构造加单、精度高、易于理解、相关性强等优点。其次,专家经验和机器学习模型结合以上两种方法,在机器学习建模过程之中增加经验,配合完成贝叶斯模型网络的构建。这种办法不只提高了贝叶斯网络在机器学习中的效率,并且减少了建模过程中产出的错误数目,从而提高了模型的准确性。这种方法使您可以对机器学习过程进行一定程度的控制,并为您的系统提供更可预测的贝叶斯网络。今天,大多数贝叶斯网络模型都使用这种集成方法,并且正在进行更多相关研究。至于是贝叶斯网络特定拓扑,应该指定每个节点状态中的信息,而对于节点无法确定的状态,贝叶斯条件概率表务必传达显示节点的状态。同时,每个节点信息的下一个参数应该使用现有的统计数据,通过训练得到一些条件概率。此外,根据专家经验,统计无法实现条件概率。通常的方法是引入直观的模糊函数或专家判断来进行确定概率。条件概率表[49]。目前,使用合适的工具学习贝叶斯条件概率表需要大量的相关数据,但新冠肺炎数据每天不断扩大。例如,得到的条件概率表有不合逻辑的概率。随机学习是一个不可避免的错误。因此,需要利用专家的经验优化通过随机学习获得的条件概率表。 1.2建模步骤一旦确定了建模方法,就可以按照一定的步骤建立模型。创建贝叶斯网络模型通常包括以下几个阶段进行,第一阶段:选择节点变量并确定模型的预值。我们需要从模型中选择一个可变因素。需要选择模型的因子变量,即每一个几点对应一个贝叶斯网络。选择变量的相应节点后,必须确定指定变量的值。通常情况下,节点值应该都是离散的,如果节点变量是连续变量或特征变量,则应该是离散化变量。第二步:建立贝叶斯网络确定模型的模型变量后,就可以开始链接到贝叶斯网络的模型了。一般来说,贝叶斯网络是通过先验知识模型来研究的,并且测试数据处于良好状态。结构学习是将链接网络节点依照相关关系连接起来构成的有向无环图,学习结构是通过连接网络节点的无环图,根据因果关系确定学习参数,并给出贝叶斯网络节点之间的值。通过研究贝叶斯网络的结构和参数,得到一个完整的贝叶斯网络,并用贝叶斯方法计算预测节点的概率分布。第三步:建立贝叶斯网络的逻辑布局,研究整个贝叶斯网络,选择合适的方法进行逻辑推理分析。贝叶斯理论是基于网络节点间条件传移的概率理论,通过模型分析,可以推导出网络节点中任意变量的概率分布,并对模型进行逻辑论证。通过三个主要步骤,就可以构建一个较为完整贝叶斯网络模型。通过上述3个步骤,我们就可以构建基本的贝叶斯网络模型,贝叶斯网络模型构建流程图如下:  图3.1 贝叶斯建模流程 (二)构建新冠肺炎检测的贝叶斯网络模型2.1变量的选择与处理在目前已有的数据基础上,结合实际情况分析,筛选了一部分数据作为研究变量: 症状变量:发热、疲惫、干咳、呼吸困难、喉咙痛、无症状、疼痛、鼻塞、流鼻涕、腹泻 年龄变量:小孩(0-9岁)、青少年(10-19岁)、青年(20-24)、中年(24-59岁)、老年(60+) 严重程度:轻度、中度、中度本文的新冠肺炎数据来自于世界卫生组织(WHO)who.int和印度卫生与家庭福利部给出的指南得出的数据,根据WHO的定义,COVID-19的主要5种症状分别是发烧、疲倦、呼吸困难、干咳和喉咙痛,而疼痛、鼻塞、流鼻涕、腹泻则是数据经历其他任何症状,严重程度这方面主要是基于新冠的严重程度,这里把它们统一合并成了感染新冠,使用这些分类变量,将变量中的每一个标签生成一个组合,因此,数据创建了8000个组合。由于贝叶斯网络的学习会将0认为是缺失值,所以我们设置值的时候取1开始,由于变量数据过多,本着降低模型复杂度的原则下,合并了一些数据的分支,例如症状的严重程度,依据WHO定制的主要症状以及专家学者的经验,将各变量的取值表展示,见表3.2.1.     图3.2.1感染新冠影响变量 2.2贝叶斯网络节点的选取与值的确定通过我们对已有变量的选取和确定,在建模的过程中我们是可以对已有变量进行使用的。我们将新冠肺炎相关数据进行了一个整合处理,构成了一个新的样本数据集,我们这里将数据整合成一个矩阵,行代表新冠肺炎数据的个数,列代表为具体变量的个数,下面会展示一部分数据如图3.2.2所示,是一个nxm矩阵。  图3.2.2贝叶斯建模的部分数据 2.3变量相关性分析利用spss Statistics对变量进行相关性分析,相关代码展示,以及其中个变量与决策变量的相关性分析结果如图3.2.3所示。通过此表可以得出,除年龄在数据处理以及学习范畴,其他变量对感染新冠肺炎都有一定的影响,其中与新冠肺炎相关性较强的变量有发热、疲惫、喉咙痛、干咳、流鼻涕5个变量,与决策变量与事故严重程度相关性较弱的是疼痛、呼吸困难、腹泻、鼻塞、年龄,此处我们需要注意的是虽然年龄、性别两方面,也有较强相关性,但是症状是第一重要性,在排列完症状后,在考虑年龄问题。根据变量和感染新冠的相关性分析,我们可以将各个变量从大到小进行排列,排序的结果如下:新冠感染程度:发热、流鼻涕、疲惫、喉咙痛、干咳、疼痛、呼吸困难、腹泻、鼻塞、年龄、性别。 根据各变量与感染新冠可能性的相关性分析,再介个专家建模经验以及先验概率确定节点的变量顺序为;1-发热、2-呼吸困难、3-疲惫、4-喉咙痛、5-干咳、6-疼痛、7-腹泻、8-流鼻涕、9-鼻塞、10-age0~9、11-age60+、12-age10~19、13-age20~24、14-age25~59、15-男性、16-女性。确定了网络节点排序后,就可以依据机器学习,进行贝叶斯网络结构模型的建立,本次研究借助了MATLAB软件,使用了基于MATLAB的工具箱full-BNT,学习数据集贝叶斯网络结构,主要的操作流程是,将需要的数据集导入MATLAB中,输入节点的名称,将它们进行编号、排序,以及节点的取值,最后调用full-BNT工具箱的算法,对贝叶斯网络模型进行学习,建立出初步的贝叶斯网络模型。代码见附录A  图3.2.3各变量与事故严重程度的相关性分析 2.3数据预处理采用SPSS和SPSS Modeler 对数据进行挖掘,建立贝叶斯网络模型,分析影响感染习惯肺炎可能性的因素;通过实证判别对其的相关风险,并预测将来潜在感染新冠肺炎病毒的人群。    2.4模型建立通过Spss Modeler进行操作,具体分为以下几个步骤:1.选择源节点,导入新冠相关数据的Excel表格,表格的内容都是已经完善的数据2.选择字段选项,找到类型,这一步操作主的目的是区别输入和输出字段,同时点击读取值可以读取数据的值.3.建模,建立训练模型,完成贝叶斯网络的构建4.运行基础的贝叶斯网络模型   (2.5.1) 2.5预测结果分析从性别可以看出女性感染的概率比男性大,从症状来看,发热占到了第一的概率       二、总结与展望(一)总结构建贝叶斯网络模型主要由建立各个节点条件概率的计算和贝叶斯网络结构的建立这两个部分构成,第一,贝叶斯的网络结构建立必须大量的数据模型进行支撑,首先需要获得新冠肺炎的相关的一系列数据,从而得到较优的网络结构。第二,如何确定贝叶斯的各个节点以及确定节点与节点的弧和弧的方向,可以选取一些关键因素,例如年龄、肺部CT 图、是否往返过高风险地区等等作为贝叶斯网络的节点。第三,需要确定节点概率表,才能构建出完整的贝叶斯网络模型。本文通过新冠数据及专家意见调查,构建疾病优化与预测的贝叶斯网络模型,并且以此模型对新冠肺炎患病的风险进行了预测计算,通过相关节点进行预测,可以在一定程度上进行患病风险评估。并借助该模型,对人们在外出过程中可能遇到的新冠肺炎患者后自己有疑似新冠肺炎症状以及自身因数的15个重要的风险因子进行了患新冠肺炎的等级划分。在构建模型的同时,也遇到了对需要处理的数据不健全等问题,通过大量找寻数据得到了解决,在构建贝叶斯模型的时候,使用了Spss-Modeler,构建流模型,对数据类型进行了分析,同时预测了变量的重要性,当有重要风险因子出现时,应该立即采取针对措施来规避或降低风险,从而帮助减轻新冠病毒的大量传播。(二)创新通过贝叶斯网络构建疾病预测模型在目前在国内是很少有人研究的方向,是一个新型的研究,贝叶斯网络作为一个可以对不确定数据集以及推理范畴最有效的理论模型之一,应对在我们在目前状况下新冠病毒不断变异的情况下,有着强有力的预测水准。可以高效的帮助医护人员辨别高危人群,早日实现“动态清零”的目标(三)展望本文通过构建贝叶斯网络在疾病预测和优化的模型,成功的构建了模型,而且在疾病预测方面取得了一定的进展,但基于贝叶斯网络的模型优化,还需要一定的加强。在今后的研究过程中,需要加强对大量数据进行一定的筛选判断,在实际的应用中,我们很难去获得那么多完整的数据,如何从不完整的大量数据中建立较为真实的网络结构模型,这是一个需要加强研究探索的方向。通过实际数据与专家经验的结合,完善每一个节点的概率,加强每一个节点的准确性,同时发觉每一个节点的更大用途,总而言之,对于概率模型以及节点概率表的改进,是对贝叶斯疾病预测与优化的模型是最直接,最有效的方法

你可能感兴趣的:(概率论)