人工神经网络在肺癌风险预测中的研究与应用

2018-01-04 11:35陈国旺蒋进李帆王大龙
计算机时代 2018年11期
关键词:机器学习人工神经网络

陈国旺 蒋进 李帆 王大龙

摘 要: 在现代医疗卫生系统中,主要从预防、诊断、治疗三个方面对疾病进行处理。尤其对于癌症这类疾病,早期预防的效果远大于治疗。随着算法研究的深入与技术领域的拓展,机器学习在预测领域卓有成效。文章旨在以一种科学的方法,实现对肺癌患病风险的预测。以肺癌为例,利用已有的医疗数据,设计合适的预测算法并用实验加以验证。最终的结果显示了基于神经网络算法预测患癌风险的可行性。

关键词: 癌症预测; 机器学习; 人工神经网络; 标准化处理

中图分类号:TP391 文献标志码:A 文章编号:1006-8228(2018)11-56-04

Abstract: In the modern medical and health system, the disease is treated mainly from three aspects of prevention, diagnosis and treatment. Early prevention is more effective than treatment especially for diseases such as cancer. With the deepening of algorithm research and the expansion of technology, machine learning has been effective in the field of prediction. This article is aimed at succeeding in predicting the risk of lung cancer by means of a scientific method. It takes lung cancer as an example, uses existing medical data, designs appropriate prediction algorithms and demonstrate it with experiments. The final result reflects the feasibility of predicting cancer risk based on neural network algorithms.

Key words: cancer prediction; machine learning; artificial neural networks; standardized processing

0 引言

肺癌是發病率最高,死亡率增速最快的恶性肿瘤之一,对人类身体健康构成了极大的威胁。医学类研究表明:肺癌的发病与种族、家属史、吸烟情况等因素有很大关联。再者,肺癌患者痊愈的几率很低,这表明人们对于肺癌这一恶性疾病,应该持有预防大于救治的态度。提及预防,人们亟需一种简单方便、科学精准的工具来预测患癌风险,进一步自身调整,达到预防的效果。近年来APP的普及,加上机器学习在辅助预测中的显著效果,使笔者联想到将机器学习应用于肺癌的风险预测中,通过建模并制作成相应的软件,投入民用。

经过研究,笔者采用人工神经网络。人工神经网络本质就是模拟人类的思维[1],具有自学习、自操作、自应用的表现形式[2]。信息的分布式存储和并行处理是它最主要的特点[3]。其中,按照科学正确的原则进行学习是核心关键点,也是人工神经网络的工作前提。

1 人工神经网络算法数据模型简介

人工神经网络是一种模仿动物神经网络行为特征,分布式信息处理的一种数学模型。这种算法凭借复杂的系统结构对内部节点之间的权重进行修正,从而达到处理信息的目的[4]。人工神经网络可以通过预先提供的一批正确的数据,分析其潜在规律。此过程称为“训练”[5]。反向传播(Back Propagation,简称BP)算法提出后,其非线性映射和泛化能力解决了许多非线性问题,比如在临床辅助决策和波形分析等方向都取得了较好的成效[6]。

BP神经网络共分为三层:输入层、隐藏层、输出层。下图1展示具有两层隐藏层的神经网络。感知器是神经网络的基本组成单位。它是由权值w,偏置b以及传递函数g(x)组成。其中b为偏置,bi为上一个感知器“释放”的输入信号,x为经过线性处理获得值,f(x)为经过传递函数处理后的最终值。即:

其中传递函数是对所求出来的值进行一个非线性变换。例如、等。通俗来讲,传递函数就是将上一层传入的信号进行选择性的通过。若不添加传递函数,对于多隐藏层的学习跟只有一层的隐藏函数效果是一样的。例如:

因此每次处理都必须要经过传递函数。

一个感知器的值是由前一层所有感知器加权求和后,经过传递函数的处理而得出的[7]。通过层层处理后,从而获得输出值。紧接着进行反向传播,修正权值。多次迭代后,当训练集训练完毕后,算法会更新学习次数,当学习次数在阈值内,训练过程便全部完成[8]。此时从输入层输入信号,经过层层计算,便可得出最终的预测结果。

2 神经网络在肺癌风险预测中的应用与研究

2.1 标准化处理

搜集到的数据由于量纲不同,所以需要将数据做标准化处理。

属性类型可分为效益型、成本型、区间型等。其中,效益型为属性值越大越好的属性,区间型属性为在某一区间内越好的属性[13]。每种属性标准化处理的方式不同。

将数据代入到公式中,即可完成。

2.2 算法推导

设输入层为a1,隐藏层为b2、b3…bn-1,输出层为cn。设输入层每个感知器的值为a1n(n=1,2,3…),其余各层类似。设权重为第k层第a个感知单元与第k+1层第b个感知单元间的权重。偏置为b',由感知器原理可知,偏置可作为上一层的一个权重为1,信号为b'的感知器,故以下推导不额外考虑偏置b'。

BP神經网络有前置输出、反向传播、更新权值以及其他参数[9],简要步骤如下。

步骤1 设输入层的各个单元接收的输入信号为x1、x2、x3…xn,并对w进行随机赋值。按上述过程计算,最后在输出层可得出一组计算结果。

步骤2 求出预测值以及真实值之间的误差并反向进行计算,求出最终误差与初始权值之间的关系。

步骤3 使用随机梯度下降算法(Stochastic gradient descent,SGD)求误差E最小值。

步骤4 通过迭代并更新w,训练完成[10],获得预测结果。

针对步骤1,输入值经过权值计算到达隐藏层b2的第一个神经单元b21的值为,经过传递函数g(x)可得b21的输入信号值为。

针对步骤2,设标签为,可以求单个输出层误差Ei为,总误差为。将隐藏层的单元代入:,可得总误差E为:

2.3 实验过程以及结果

肺癌高危人群为长期吸烟的中老年人群、慢性肺部疾病患者以及家族遗传者等[11]。笔者进一步研究得出导致肺癌的因素主要包括出生年月、BMI、呼吸系统状况、是否患有其他癌症、近亲患癌、慢性肺部疾病、是否吸烟、日均吸烟量、吸烟年数、二手烟状况、油烟状况等[12]。由于篇幅所限,我们仅列出部分数据。

设出生年份为Y1,BMI为Y2,慢性肺部疾病为Y3,日均吸烟数量为Y4,吸烟年数为Y5,患癌真实值为P1,预测值为P2。其中BMI是用于衡量人体胖瘦程度以及健康状况的国际标准。设身高为h,体重为w,则BMI指数a为:

由于量纲不同,需对所有搜索数据进行标准化处理。根据查询相关资料可得,BMI在[18.5,23.9]处于正常状态。年龄越小,即出生年份数值越大,患有癌症的可能性越小,因此出生年份属于效益型,其余属性同理分析。将各属性做如上标准化处理,现展示部分数据。

将数据代入算法中,得出最终预测结果。将数据源部分用于训练,部分用于预测。通过部分数据集的训练之后,可得预测结果。

由表中数据可得,大多数预测值与真实值相差较小,说明该算法具有较大潜力。但少数预测数据与真实值相差较大,说明在该算法中,如何选择传递函数,选择有效的训练数据及次数等还有待研究。

2.4 实验在APP中的应用

将神经网络算法与APP进行结合,便成为可以为用户服务的一个工具。用户安装后,回复有大量科学研究作为基础的问题,通过输入个人数据,便可得出预测结果。APP接受用户提交的数据后,通过计算,可得最终的预测结果。

图4、图5为制作完成的APP界面。

3 结束语

本文将机器学习领域中的经典算法应用于肺癌发病风险的预测。在提取各种特征的基础上,搜集了大量数据并将数据进行标准化处理,选取部分数据作为训练集,其余数据用于预测。通过对预测结果的分析,可以得出两个重要结论:一推导出高几率患病人群,比如长期吸烟的中老年人群、慢性肺部疾病患者等,确定的影响因素包括吸烟情况、身高体重指数、慢性疾病与肺病史、油烟暴露状况等。二是该算法的预测准确率大致符合真实情况,可以作为神经网络在肺癌预测中的成功应用。但是该算法预测中,也存在部分记录预测值与真实值有一定误差的问题,可见该算法在数据集、传递函数选取等细节方面还有待进一步研究,准确性仍有提升的空间。

现实使用中,用户只需下载APP应用,输入个人数据,即可得知自身患肺癌风险,发病诱因等,非常方便,实用性强,免去实体医院的检查流程,省时省力,还节省可观的财产支出。正因为其简便易用,平民大众,迎合“互联网+”浪潮,可以预见其会在市场、社会中的广泛应用,可以说前景十分广阔。

虽然当前的算法仍存在一些问题,应用系统还不够完善,但是笔者相信经过算法的再研究、再改进,以及日后神经网络算法的必然优化与发展,利用神经网络精准预测肺癌风险将会有很大的概率实现和普及,并且在其他领域,神经网络也将“大放光彩”。

参考文献(References):

[1] Mitchell T. Machine learning[M]. Beijing: China MachinePress,2003.

[2] Ganesan K, Acharya U R,Chua C K,et al.Computer-aided breast cancer detection using mammograms:A review[J].IEEE Reviews in Biomdical Engineering,2013.6(77):98

[3] Orozco H M,Villegas O V,Maynez L O,et al. Lung noduleclassification in frequency domain using support vector machines[C]//Proc of 2012 llth International Conference on Information Science,Signal Processing and their Applications (ISSPA),2012:870-875

[4] Pinheiro F M R,kuo M H.Poster:Applying data miningalgorithms to early detection of liver cancer[C]//Proc of 2012 IEEE 2nd International Conference on Computational Advances in Bio and Medical Sciences (ICCABS),2012:1

[5] Cruz JA, Wishart DS. Applications of Machine Learning in Cancer Prediction and Prognosis[J]. Cancer Informatics,2007.2(1):59-77

[6] Fakoor R, Ladhak F, Nazi A, et al. Using Deep Learning to Enhance Cancer Diagnosis and Classification[C].Atlanta:The International Conference on Machine Learning,2013.

[7] Mitchell T M. Machine learning [M]. Burr Ridge, IL:MC Graw Hill,1977.

[8] Graves A, Mohamed A, Hinton CE. Speech recognition with deep recurrent neural networks [C]. IEEE International Conference on Acoustics, Speech and Signal Processing,2013:6645-6649

[9] Krizhevsky A, Sutskever I, Hinton GE. ImageNet classification with deep convolutional neural networks[C]. Advances in Neural Information Processing Systems,2012:1097-1105

[10] 倪然.人工神经网络联合肿瘤标志对肺癌和大肠癌的预警 [D].郑州大学,2009.

[11]马莉,高晓虹,王猛,李晓枫.肺癌影响因素病例对照研究[J].中国公共卫生,2012.28(1):90-91

[12] Crippa A, Salvatore C, Perego P, et al.Use of machine learning to identity children with autism and their motor abnormalities [J]. J Autism Dev Disord,2015.45:2146-2156

猜你喜欢
机器学习人工神经网络
利用人工神经网络快速计算木星系磁坐标
人工神经网络实现简单字母的识别
滑动电接触摩擦力的BP与RBF人工神经网络建模
基于词典与机器学习的中文微博情感分析
基于网络搜索数据的平遥旅游客流量预测分析
前缀字母为特征在维吾尔语文本情感分类中的研究
基于支持向量机的金融数据分析研究
机器学习理论在高中自主学习中的应用
人工神经网络和安时法电池SOC估计
基于声发射和人工神经网络的混凝土损伤程度识别