1. 引言
在信息技术的推动下,人工神经网络的应用越来越广泛。由于人工神经网络具有自适应性、并行处理能力和非线性等优点,逐渐被应用于医学和生物学领域的研究。纵观人类的发展历史,传染病的发生和流行不仅影响到个人的健康,而且对社会稳定造成严重的影响。传染病流行病学数学模型主要针对传染病的自然史和流行规律,流行病学数学模型研究较之大规模的流行病学调查具有投入少,收效快,结果准确等特点。
2. 人工神经网络介绍
人工神经网络是根据生物学中人体的神经网络的结构和运行原理而建立起来的一种计算模型,是一种具有大量连接的并行分布式处理系统。通过模拟人脑的学习、记忆、处理问题等方式,神经网络可以通过学习获取相关知识,把知识存储在连接权中,通过不断的学习对知识进行调整,并且根据已经获得的知识处理相应的问题 [1]。
生物学中,神经元细胞体周围有很多树突和一个轴突。树突和细胞体与其它神经元的轴突相接触,轴突连接到其它神经元的树突或细胞体上面。神经元传递信息靠的是脉冲传递,当一个脉冲传递到一个神经元的轴突末梢后,向突触间隙释放化学物质,形成电位。当下一个神经元细胞体的周围电位差累积到一个特定的电位,也就是闽值电位时,又会产生新的脉冲传递到轴突中去,如图1所示。
3. 人工神经网络的发展历程
在20世纪40年代,生物学家McCulloch与数学家Pitts共同发表文章,第一次提出了关于神经元的模型M-P模型,这一理论的提出为神经网络模型的研究和开发奠定了基础,在此基础上人工神经网络研究逐渐展开。
在人工神经网络形成的初期,人们只是热衷于对它的研究,却对其自身的局限进行了忽视。Minskyh和Papert通过多年对神经网络的研究,在1969年对之前所取得的研究成果提出了质疑,认为当前研究出的神经网络只合适处理比较简单的线性问题,对于非线性问题以及多层网络问题却无法解决 [2]。
美国的物理学家Hopfield在1982年提出了新的神经网络模型,并通过实验证明在满足一定的条件时,神经网络是能够达到稳定的状态的。
到20世纪90年代时,国内对于神经网络领域的研究得到了进一步的完善和发展,而且能够利用神经网络对非线性的系统控制问题进行解决,研究成果显著。随着各类人工神经网络的相关刊物的创建和相关学术会议的召开,我国人工神经网络的研究和应用条件逐步改善,得到了国际的关注。
4. 人工神经网络在传染病中应用分析
El-Solh应用广义递归神经网络构建活动性肺结核诊断模型。共收集了700多例患者的人口统计学资料、临床症状、结核病暴露史、HIV状态、结核菌素试验结果和临床诊断记录等资料。模型纳入了21个输入变量,分为3个隐含层,1个输出层,模型输出提供一个活动性肺结核的似然估计结果。将模型的诊断结果与临床医生的诊断结果相比较,广义回归神经网络的灵敏度高,但特异度稍低,ROC曲线显示广义回归神经网络的诊断结果好于临床医生的诊断,模型验证的诊断结果的c-Index为92.3% (85.8%~99.1%),而医生的诊断结果的为71.6% (64.5%~78.9%)。该模型用于活动性肺结核能提供较精确的诊断结果。将人工神经网络应用于此类疾病的筛查和诊断,可减少成本,提高效率 [3]。但不同人群不同目的需建立不同的模型进行诊断,如宋烨等faze建立了涂阴肺结核的诊断模型;Sham等37将人工神经网络应用于MRSA的诊断,并与Logistic回归的结果相比较 [4]。
在经典ANN模型中,简单单元,即M-P神经元模型。我们知道感知机和Logistic回归都是线性分类模型,它们的不同点在于分类函数的选取是不一样的。
我们令:
。
感知机的分类决策函数:
其中
为阶跃函数:
if
else 1
Logistic回归的分类决策函数则是Sigmoid函数:
它表示的是将样本分类成正例和负例的几率比。也是一个阶跃函数的替代函数。传染病资料来源于某市疾病预防控制中心,共收集2015~2020年的传染病发病率。人口资料、气象资料由该市公安、气象部门提供,内容包括各年相应的人口数、出生率、平均气温、平均降水量等。采用2015~2020年的传染病发病率数据,按照BPNN原理将数据进行归一化处理后进行分析。其标准化后的变量分别为x1,x2,x3,x4和Y。
给定n个输入变量:
以及相对应的权值变量
,一个传递函数
,激发阈值变量θ,输出变量为y,有如下神经元模型(图2):
其中x1~xm这m个变量是与此神经元连接的上一层神经元的输出,或者为网络的原始输入变量。在实际操作中,可以将−1看作此神经元的第m + 1个输入,把激发阈值变量θ作为相应的权值变量。神经元模型的传递函数
一般采用sigmoid函数,给出表达式如下:
此表达式为sigmoid函数的单极形式,另也有双极形式的sigmoid函数。当神经元的加权输入和
大于激发阈值θ时,神经元处于激发态,网络的输出
为正,否则为抑制态,输出为负。
当多个神经元组合起来时,人工神经网络的总体结构如下(图3):
Figure 3. The overall structure of the artificial neural network
图3. 人工神经网络的总体结构
为简洁起见,各层神经元之间的连接权值wij与激发阈值变量θj未在图中标出。以上是在全连接下的人工神经网络结构图。人工神经网络在本质上是由许多小的非线性函数组成的大的非线性函数,反映的是输入变量到输出变量间的复杂映射关系。映射的准确程度是由各层权值与各神经元结点的激发阈值变量共同决定的,同时也与人工神经网络的结构有关,结构变量包括隐藏层的层数与每层结点数,以及网络的连接状态是否为全连接的。
首先将人工神经网络中需要优化的变量——各层权值变量w与各神经元结点的激发阈值变量θ进行编码,表示成相应的目标函数。对于人工神经网络而言,运用进化算法优化的目标是,使网络的实际输出与理论输出之间的差值越小越好。
设网络共输入K个样本,每个样本的输出属性为N个,则网络总体误差δANN可表示为
其中δkn表示第k个样本在第n个属性上的误差。网络优化的目标是确定一组权值W与阈值Θ,使全局误差δ最小。通过以上分析,可以将网络的输出误差看作W与Θ的函数。如果将Θ对应的权值看作神经网络的额外输入连接,则可将Θ与W合并,记为Wexp,表示扩展的权值向量组。由此可以得到以下的目标函数表达式:
接下来分析粒子的编码方式。对于一个具有m个输入与n个输出的人工神经网络,设共有L个隐藏层,层数编号依次为
,相应的每层结点总数为
,则第l层第p个结点的编号为lp,其中
,
。权值与阈值的排列顺序按照输入层向输出层的方向排列,可以得到以下编码:
Wexp=[w(11,21)w(12,21)∙∙∙w(1P1,21)θ11][w(11,22)w(12,22)∙∙∙w(1P1,22)θ12]∙∙∙[w(11,2P2)w(12,2P2)∙∙∙w(1P1,2P2)θ1P2][w(21,31)w(22,31)∙∙∙w(2P2,31)θ21]∙∙∙[w(21,3P3)w(22,3P3)∙∙∙w(2P2,3P3)θ2P3]∙∙∙[w((l-1)1,l1)w((l-1)2,l1)∙∙∙w((l-1)P(l-1),l1)θ(l-1)1]∙∙∙[w((L-1)1,LPL)w((L-1)2,LPL)∙∙∙w((L-1)P(L-1),LPL)θ(L-1)PL]
以上编码为直观起见,将Wexp用方括号进行了分段,其中每个方括号中的数组表示上一层所有结点对应下一层某一个结点的权值变量与该结点的阈值变量。将网络结构记为数组
表示输入层、隐藏层与输出层各自的结点数。若将S中的各个元素记为
,则将神经网络权值确定问题转换为粒子群算法的优化问题后,问题解空间的维度即Wexp的长度为:
式中等式右边的第一项为权值变量数,第二项为神经元结点的阈值变量数。
关于神经网络的隐藏层数与每层结点数的确定问题,本文统一采用单隐藏层,其中的结点数目参考经验公式
来确定,其中a是一个取值介于1~10之间的整数常量。
关于测试数据集中训练集的与验证集的选取比例,可选用3:2的比例,即随机选取测试集中60%的数据作为训练集,剩余的40%为验证集。输入变量各个属性维度的数据分别采取最大-最小归一化方式,归一化区间为[0, 1]。
人工神经网络的评价指标主要采用均方误差MSE进行。定义均方误差的数学表达式如下:
MSE表示网络理论输出与实际输出之间的差距,除总体误差MSEann外,还有针对训练集的均方误差MSEtrain与针对验证集的均方误差MSEtest,分别衡量网络的拟合能力与泛化能力。此外也可用分类正确率进行衡量。
将现有传染病的疫情资料和同期传染病流行影响因素资料按照原理将数据进行归一化处理后输入计算机,建立数据库。模型的建立及其应用通常需要一定数量的样本建模和对模型进行训练,并用一定数量的测试样本对模型进行检验。一般将现有疫情资料以地区或年度为单位,训练样本和测试样本比例按2:1,单纯随机方法进行分组。应用SPSS或SAS统计软件进行流行因素与传染病发病率相关分析:计算与传染病发病关系的相关系数。选取相关分析中与传染病发病率关系较为密切的因子作为自变量。
在网络的结构设计中,网络的层数确定为三层。网络输入层节点数就是系统的特征因子(自变量)个数,在本研究中为疫情影响因素变量(如人口数、出生率、平均气温、平均降水量等);输出层节点为传染病(一个传染病流行年的患病率);隐含层节点数设置为4。网络的初始权值设置由神经网络软件随机产生,允许误差取0.001~0.00001,迭代次数取1000次。
利用前一年标准化后的影响因素指标和前一年发病率为自变量,以当年的发病率为因变量训练网络和进行预测。经训练调整影响因素的权重,筛选影响传染病的主要流行因素,比较预测疫情和历史资料以达较高的拟合率,使网络的计算输出应变量与己知训练样本的应变量之差为最小。如果输出层没有得到期望的输出,则转入反向传播,通过修改各神经元的权值,减少误差,继续循环,直至网络误差收敛到规定的值内为止。
某市2015~2020年传染病发病率拟合值和实际值比较见表1。用平均误差绝对值、MER以及决定系数(R2)指标检验模型的拟合程度,预测传染病发病率。结果显示,神经网络模型利用2000~2005年数据拟合的MER均较小,拟合误差率为2.53%~13.46%,且决定系数扩接近于1,表明模型预测效果较好。
Table 1. Incidence profile of three epidemic infectious diseases
表1. 三种流行性传染病的发病概况
世界大约有三分之一的人口有乙肝病毒感染史,中国是拥有乙型肝炎病毒携带者最多的国家,约占世界总人口的10%。我国也是丙肝的中高度流行区,而丙肝感染者约一半以上会发展为慢性肝炎。梅毒是由梅毒螺旋体引起的慢性的系统性性传播疾病,近年来发病率逐渐升高,对人们的生活质量造成巨大的影响。近年来,人工神经网络不断地应用于医学研究领域,取得良好效果。人工神经网络模型(ANN)及灰色理论在乙型肝炎(乙肝),丙型肝炎(丙肝)及梅毒三种流行性疾病诊断中的应用,方法对2011~2013年XX第一附属医院三种流行性疾病进行统计。
搜集资料对2011~2013年在XX大学第一附院就诊的门诊病人的传染病检测结果(乙肝、丙肝、梅毒)进行统计,乙肝的检测人数共95,254例,男32,667例,女62,587例,丙肝的检测人数共97,838例,男33,837例,女64,001例,梅毒的检测人数共57,050例,男15,035例,女42,015例。
构建BP神经网络对三种流行病进行预测:基于2011-01~2013-12的每个月份时间为输入层,各个月份的发病率为输出层构建基于观察的HP神经网络预测模型,选2011-01~2012-12每个月份为训练样本的输入层参数,再选择2013-0l~2013-12每个月份为预测样本的输入层参数,各个月份的发病率为输出层,将输入和输出层归一化。
构建灰色理论模型对三种流行病进行预测:通过上述方式可以计算2013-01-12乙肝、丙肝及梅毒三种流行病的G(l, l)模型(表1)。
三种流行性传染病的发病概况和趋势概况2011~2013年男性乙型肝炎病毒表面抗原检测阳性率分别为5.16%,5.49%,4.72%,女性阳性率为4.29%,4.09%,3.84%,男性丙型肝炎病毒抗体检测阳性率分别为0.91%,1.11%,0.78%,女性阳性率为0.98%,0.97%,0.62%,男性梅毒螺旋体抗体检测阳性率分别为0%,0.15%,0.99%,女性阳性率为0%,0.02%,0.85%。
值得警惕的是梅毒螺旋体抗体阳性率的上升,这种性病在我国20世纪末曾几乎消失,然而2013年的男性梅毒螺旋体抗体阳性率达0.99%,女性达0.85%,己经超过此年度丙肝抗体的阳性率,其阳性患者主要集中在青壮年人群,这与外来文化的冲击以及人们的理念密不可分。梅毒主要通过性接触途径传播,我们应该重视并采取相应的手段措施,并密切监控疾病的发展流行状况,而此时通过模型对疾病的发病率做出预测就显的极为重要。
在疾病的预防控制工作中,如果能简单并准确预测出流行病的发病趋势,不仅能够提供直观的参考数据,也为流行病的防控提供了巨大帮助,国家可以及时地采取相关措施,最大限度地控制病情发展。
5. 结语
人工神经网络虽然是一种处理非线性问题的好方法,但在传染病研究的应用还处于探索阶段,一些问题有待解决,如变量的筛选和假设检验方法;权重系数的假设检验,计算权重系数的可信区间,含隐含层时权重系数的流行病学意义;输入变量的选择;人工神经网络的类型和结构的选取等问题都还需要进一步研究。人工神经网络最有用的特性之一是应用时对分析问题的概率模型不要求通过演绎作出假设,并具有逼近任意连续函数和非线性映射的能力,进行高维非线性的精确映射。因此。人工神经网络在传染病研究中的应用不但可以进行疫情分析和识别,预测传染病的暴发和流行情况、评价防治效果,也可对某种疾病的流行情况进行模拟,对患者进行筛查和诊断,对预期的经济损失进行评估等,有较高的应用和推广价值。