zoukankan      html  css  js  c++  java
  • 人工神经网络在肺结核诊断中应用的研究进展

    人工神经网络在肺结核诊断中应用的研究进展

    作者:胡青云
    指导老师:杭诚方、李舰

    摘要:结核病是一种全世界致死率极高的传染性疾病,转染性极强,可通过空气传播。该病在亚洲和非洲发病率极高,尤其是在大多数低收入国家。对该病的诊断,有研究采用多层感知器(MLP)和启发式自适应共振原理,提出了基于患者体征和症状的人工神经网络(ANNs)筛查阴性PTB的筛查和风险评估系统。实验表明,在痰涂片PTB高发的情境中,该系统可用于筛选,并协助临床实践,加快对高危患者的辅助检查。无独有偶,另外一个研究中,作者对不同优化算法(动量反向传播算法和Levenberg-Marquardt算法)下的不同隐藏层层数(2或3层)或不同神经网络模型(MLNN和GRNN)下的肺结核诊断准确率进行比较。

    Abstract: Tuberculosis(TB) is a contagious disease with extremely high lethality worldwide and is highly transmissible and can be transmitted by air. The disease is extremely high in Asia and Africa, especially in most low-income countries. As for the diagnosis of TB, a study used multilayer sensor perceptron(MLP) and inspired on adaptive resonance theory (ART) to build a smear-negative PTB screening and risk assessment system with artificial neural network (ANNs), based on the signs and symptoms of patients. Experiments have shown that this system can be used for screening in the context of a high incidence of sputum smear PTB and assist in clinical practice to speed up the auxiliary examination of high-risk patients. Besides, in another study, the authors studied the effects of different optimization algorithms (momentum backpropagation algorithm and Levenberg-Marquardt algorithm) on different number of hidden layers (2 or 3 layers) or different neural network models (MLNN and GRNN) on prediction accuracy rate.
    关键词:结核病诊断;多层神经网络;一般回归神经网络;决策支持系统;数据挖掘;计算智能
    Key words: Decision support; systems Data mining; Computational intelligence

    1. 引言

    1.1 有关肺结核及其诊断

    结核病是一种全世界致死率极高的传染性疾病,转染性极强,可通过空气传播。该病在亚洲和非洲发病率极高,尤其是在大多数低收入国家。
    直接观察治疗策略(DOTS)已经改善了几个国家的结核病(TB)治愈率,虽然其使用率仍然很低。全球范围内,涂阴肺结核(PTB)占活动性肺结核的20-50%。
    世界卫生组织(WHO)建议慢性咳嗽患者(即持续2周或更长时间的咳嗽的患者),应该通过抗酸杆菌(AFB)涂片检查或使用Xpert MTB / RIF(Xpert )测定[1,2]对其痰液进行评估。单纯应用慢性咳嗽的AFB检测和PTB检测显示涂片阴性PTB患者的准确性较低[2-4]。

    1.2 人工神经网络的发展

    人工神经网络(ANN)是能够通过实例学习的模型,其产生受到了生物学中神经元的启发。它由通过突触权重相互连接的层状结构的神经元组成,人工神经网络可以在训练过程中通过调整权重来获取知识。
    通过人工神经网络解决一个特定的问题涉及到两个主要阶段:训练和操作。训练过程中,网络突触权重被用于解决特定任务,从训练数据中提取知识。 一旦训练阶段完成,人工神经网络仅根据存储的知识产生输出,也就是我们说的操作过程。

    2 研究内容

    2.1 利用人工神经网络(ANN)的涂阴肺结核筛选系统

    Joa ̃o B. de O. Souza Filho提出了一种决策支持系统(DSS),它是第一个基于人工神经网络(ANN)的痰涂片阴性肺结核(PTB)的诊断方法。该系统是一种完全基于患者体征和症状的结核病预后和风险评估工具。作为一种预后,它可以用于选择出需要继续做分子检测(如Xpert检测)的患者,而作为一种风险评估工具,它可以作为加速对高风险患者使用辅助检查的基础。

    2.1.1 数据集构建

    使用留一(hold-out)法构建MLP模型,将数据集分成一个训练集和一个测试[4].第一组用于MLP训练,即突触权重优化,而第二组用于估计网络预测泛化能力。为了减小由于数据集规模较小导致的模型敏感度高,泛化能力下降的问题,该系统采用一个实例选择程序运用iART模型来随机组合训练集和测试集。

    2.1.2 神经网络模型

    MLP模块采用了三层神经网络结构,所有神经元的激活函数都是双曲正切函数:

    1. 输入层——由12个输入节点组成,这些节点是是结核病专家根据经验选择的,分别是:年龄,咳嗽,发烧,咯血,厌食,体重减轻,艾滋病,盗汗,无呼吸困难,吸烟,是否肺外结核以及先前病史。所有的人体体征和症状用+1或-1代表是或否,当信息不可用时为0。
    2. 隐藏层——神经元个数为15,这是由基于交叉验证法得出。
    3. 输出层——得到的预测模型的输出由如(1)式得出:
      egin{equation}
      y(x) = tanh(sum_{i=1}{15}c_{i}tanh(sum_{j=1}{12}a_{ij}x{j}+b_i)+d_i)
      end{equation}
      其中(x)表示输入变量组成的向量,(x_j)表示(x)的第j个变量。输入层和输出层的权值分别为(a_{ij})(b_i)(c_i)(d_i)。如上文提到过的,激活函数为双曲正切。

    2.1.3 优化算法

    优化算法用的是:弹性向后传播算法(RPROP)[5]
    为了减轻潜在的由正、负样本分布不匀造车的类别不平衡的影响[5],使(2)式中的调整的均方差来调整权值。
    egin{equation}
    MSE_{ad}=frac{1}{2n_{TB+}}sum_{i=1}{n_{TB+}}[1-y(x_i|x_iin{S_{TB+}{Train}})]^2
    +frac{1}{2n_{TB-}}sum_{j=1}{n_{TB-}}[1+y(x_j|x_jin{S_{TB-}{Train}})]^2
    end{equation}
    变量(n_{TB+})(n_{TB-})分别表示子集(S_{TB+}^{Train})(S_{TB-}^{Train})的基数,也就是训练集中正负样本的数量。
    为了避免局部最小值[6],建立了10个MLP模型,每个模型的权重初始化服从N(0,0.05),选择其中测试集AUC值最高的作为最终模型。

    2.1.4 风险评估用功能中用到的iART聚类算法

    iART网络是一种竞争聚类算法,用来自动产生超球群集包围数据[14]。每个群集包含中心坐标向量(ci)和警戒半径(r)。为了简化,所有簇集的警戒半径都为相同值。
    为了确定给定的输入数据x是否属于具有中心ci的群集,iART模型使用以下相关性函数:
    egin{equation}
    d_i=||x-c_i||^2
    end{equation}
    若di小于警戒半径r,则标注为属于该群集,相反而知。
    在iART训练过程中,需要随机地将数据集喂入网络,对于每个输入x,判断它是否属于某个群集,如果不属于任何群集,则以它为中心新建一个群集。如果属于某个群集,则该群集的中心需要进行微调,调整方式如下式:
    egin{equation}
    c_j(k)=c_j(k-1)+η(k)[x-c_j(k-1)]
    end{equation}
    其中,η为学习率因子,事实上,如果η在训练过程中组件减小,向量cj将组件收敛到其对应的聚类中心。在这片论文中,通过(5)式达到上述效果:
    egin{equation}
    η(k)=gammaη(k-1)
    end{equation}
    其中,常数γ是学习衰减因子,这里设置为0.99。
    为了提供风险评估,调整了iART网络的警戒半径,从而得到三个群集,分别标记为低风险,中风险和高风险[14]。最后使用Fisher检验来验证每个组的显著体征和症状的存在[15]。

    2.1.5 对比方式

    另外,该论文还用其他分类技术(如分类回归树(CART),多元逻辑回归(MLR),和支持向量机(SVM)等)与MLP作比较,用McNemar中期测试来验证MLP模型与上述算法来比较算法的有效性[16]。

    2.1.6 研究结论

    多层感知器MLP与其他技术如线性支持向量机(SVM),多元逻辑回归(MLR)和分类回归树(CART)相比,敏感性更高,特异性也略高。此外,MLP模型比线性SVM和MLR模型的AUC(从受试者工作特征曲线下的面积)值更高。风险群体中识别出的显着体征和症状与临床实践相一致。

    2.2 人工神经网络在结核病诊断中的应用

    多层神经网络(MLNNs)已经成功地在疾病诊断系统中替代传统的模式识别方法[18-20]。反向传播(BP)算法[14]被广泛认为是训练MLNN的有力工具。但是,由于它采用最速下降法来更新权重,所以收敛速度慢,且往往会产生次优解。 已经引入了各种相关的算法来解决这个问题。 许多研究人员对MLNN训练算法进行了比较研究。该实验中使用的Levenberg-Marquardt(LM)算法[4]比其他训练算法收敛速度更快,估计结果更精确[20,24]。

    2.2.1 数据集

    数据集是从土耳其某州立医院的数据库中病人出院报告中提取的。样本数为150,类别分布为:
    类别1:结核(50例)
    类别2:正常(100例)
    每个样本有包含咳嗽,体温,胸闷的38个特征数。

    2.2.2 神经网络模型

    该实验分别使用了包含一个和两个隐藏层的多层神经网络(MLNN)去实现结核病诊断的研究。另外还使用一般回归神经网络(GRNN)作为对照组。
    输入层——包括咳嗽,体温,胸闷的38个结点
    隐藏层——每层50个结点
    输出层——Normal,和Tuberculosis两个结点
    激活函数——非线性sigmoid激活函数
    其中,包含2个隐藏层的模型如图(1)所示:

    图1 包含2个隐藏层的神经网络

    2.2.3 优化算法

    优化算法使用动量反向传播(BPwM)和Levenberg-Marquardt(LM)算法,具体算法计算过程参考[18]

    2.2.4 模型评估指标

    该研究采用如(6)、(7)式评估分类结果的准确性:
    egin{equation}
    classificationquad{accuracy(N)}=frac{sum_{i=1}^{|N|}assess(n_i)}{|N|},
    n_iin{N}
    end{equation}
    其中,N为测试集,n为N中样本,nc为n的类别,classify (n)为该神经网络模型预测出的n的类别。

    2.2.5 研究结论

    不同模型分类准确率如图2所示:

    图2 不同神经网络模型和优化算法下的肺结核诊断准确率对比图
    结论有:
    a. 总体来说,本研究得到的分类精度要好于之前其他作者所报道的研究。
    b. 在结核病诊断问题上,Levenberg-Marquardt训练算法优于BP算法。
    c. 两隐层MLNN结果优于单隐层MLNN结核病诊断结果。
    d. LM算法优化的包含2个隐藏层的MLNN模型获得最佳诊断效果。
    e. 在肺结核诊断中,GRNN也是个不错的模型。

    3. 本论文研究结论

    人工神经网络在肺结核诊断系统中的应用已经十分广泛,若要取得更好的预测效果,可以从以下几个方面入手:
    a. 基于专家经验,选择合适的特征
    b. 增加每层神经元节点数
    c. 加深神经元层数
    d. 选择LM算法,避免使用可能得出次优解的BP算法
    e. 需要提高权值更新速度,可以考虑使用LM优化算法

    4 参 考 文 献
    [1]. Joa ̃o B. de O. Souza Filho a,b,*, A screening system for smear-negative pulmonary tuberculosis using artificial neural network; 2016
    [2]. Orhan Er, Tuberculosis Disease Diagnosis Using Artificial Neural Networks; 2008.
    [3]. https://wenku.baidu.com/view/f93a5921cfc789eb172dc843.html
    [4]. Theodoridis S, Koutroumbas K. Pattern recognition, 4th ed., Academic Press; 2009.
    [5]. Riedmiller M, Braun H. A direct adaptive method for faster backpropagation learning: the RPROP algorithm. Proceedings of the IEEE International Conference on Neural Networks. March 28–April 1 1993. p. 586–91.
    [6]. Haykin S. Neural network and learning machines, 3rd ed., Pearson; 2008.
    [7]. Souza Filho JB, de Seixas JM. Statistical data selection for passive sonar signal
    neural classifiers (in Portuguese). VII Brazilian Conference on Neural Networks; 2005.
    [8]. Sheskin DJ. Handbook of parametric and nonparametric statistical procedures, 5th ed., Chapman and Hall; 2011.
    [9]. Fagerland MW, Lydersen S, Laake P. The McNemar test for binary matched-pairs data: mid-p and asymptotic are better than exact conditional. BMC Med Res Methodol 2013;13. http://dx.doi.org/10.1186/1471-2288-13-91
    [10]. Kayaer, K., Yıldırım, T., Medical Diagnosis on Pima Indian
    Diabetes Using General Regression Neural Networks. In Proc. of International Conference on Artificial Neural Networks and Neural Information Processing (ICANN/ICONIP): Istanbul, (pp. 181–184), 2003.
    [11]. Delen, D., Walker, G., and Kadam, A., Predicting breast cancer survivability: A comparison of three data mining methods. Artif. Intell. Med. 34:2113–127, 2005.
    [12]. Temurtas, F., A comparative study on thyroid disease diagnosis using neural networks. Expert Syst. Appl. 36:944–949, 2009. doi:10.1016/j.eswa.2007.10.010.
    [13]. Er, O., and Temurtas, F., A Study on Chronic Obstructive Pulmonary Disease Diagnosis Using Multilayer Neural Networks. J. Med. Syst. 32:5429–432, 2008. doi:10.1007/s10916-008-9148-6.
    [14]. Rumelhart, D. E., Hinton, G. E., and Williams, R. J., Learning internal representations by error propagation. In: Rumelhart, D. E., and McClelland, J. L. (Eds.), Parallel Distributed Processing: Explorations in the Microstructure of CognitionMIT Press, Vol. 1. Cambridge, MA, pp. 318–362, 1986.
    [15]. Brent, R. P., Fast training algorithms for multi-layer neural nets. IEEE Trans. Neural Netw. 2:346–354, 1991. doi:10.1109/72.97911.
    [16]. Gori, M., and Tesi, A., On the problem of local minima in backpropagation. IEEE Trans. Pattern Anal. Mach. Intell. 14:76– 85, 1992. doi:10.1109/34.107014.
    [17]. Gulbag, A., and Temurtas, F., A study on quantitative classifica- tion of binary gas mixture using neural networks and adaptive neuro fuzzy inference systems. Sens. Actuators B Chem. 115:252– 262, 2006. doi:10.1016/j.snb.2005.09.009.
    [18]. Hagan, M. T., and Menhaj, M., Training feed forward networks
    with the Marquardt algorithm. IEEE Trans. Neural Netw. 5:989–
    993, 1994. doi:10.1109/72.329697.

  • 相关阅读:
    android architecture
    java求解两个字符串之间的编辑距离
    URL和URI的区别
    java源码解析之qdox
    java中Random实现原理
    java中ThreadLocal入门
    java中多线程之Future入门
    java中类加载器入门
    java中正则表达式的group用法
    java反射调用main方法踩坑
  • 原文地址:https://www.cnblogs.com/DianeSoHungry/p/8157968.html
Copyright © 2011-2022 走看看