深度学习算法在乳腺肿瘤诊断中的应用研究
2020-10-12邓卓苏秉华张凯
邓卓,苏秉华,张凯
1. 北京理工大学珠海学院 光电成像技术与系统教育部重点实验室,广东 珠海 519088;2. 北京理工大学,北京 100081
引言
在医疗科技发展迅猛的现如今,人类已经掌握了大量疾病的诊断与治疗手段,然而对癌症的诊断与治疗却依然不够理想,人们往往谈癌色变[1-15]。而在癌症的发病率中,乳腺癌一直是位居前列,所以对乳腺肿瘤的诊断技术的研究很有必要[9-11]。目前,对乳腺癌检测的研究方法多种多样,主要有基因检测,肿瘤标志物检测,电磁逆散射等技术。广东省医学科学院的张国淳等[12]人就提出,基于对基因检测技术,乳腺癌诊断的临床决策已经比较接近个体化的精准治疗,但一些基因检测在国内尚未获得批准且检测费用较高。对肿瘤标志物检测的方法一直以来都是肿瘤检测的主要研究方法,针对乳腺癌的早期诊断,上饶市第四人民医院的詹晓虹医师[14]根据临床数据提出CEA,CA19-9,CA15-3等肿瘤标志物的联合检测准确度达到91.3%,有助于提高乳腺诊断率。最近,杭州电子科技大学的徐魁文[13]提出了一种基于电磁逆散射的早期乳腺癌检测医学成像方法,在三维空间下基于子空间的优化方法实现对早期乳腺癌检测成像,研究目前尚缺乏临床实践。
在如今的大数据时代,利用现有的医疗数据,并且结合人工智能的学习方法,可以充分发挥科技对医疗进步的推动作用。人工智能领域中的深度学习方法在如今生活中的很多领域中已经得到广泛应用,且效果令人满意,目前,人工智能领域与医疗服务领域的结合探究还处于研究发展阶段。深圳大学的肖焕辉等[16]人基于深度学习的癌症计算机辅助分类诊断技术,提出基于深度学习的图像分类技术已经在癌症的计算机辅助检测研究中具有良好表现并呈现出巨大潜力,有望在将来应用临床实践,提高临床诊断水平。中南大学的安莹博士等[17]人提出了基于深度学习的心血管疾病风险预测模型,应用电子病例与循环神经网络(Recurrent Neural Network,RNN)等深度学习方法预测心血管疾病风险,并取得了较好的实验结果。
本项目利用人工智能方法与医疗服务技术相结合,探索应用深度学习的三种网络结构对乳腺癌肿瘤诊断的实验研究,希望推动技术与医疗相结合的研究发展,提高医疗诊断水平。
1 验数据与训练模型
1.1 实验数据
本次实验采用的数据是美国威斯康星大学提供的人体乳腺肿瘤数据样本[3-4],每个样本都有11 个属性,其样本数据如表1 所示,九项医学数据为样本的实际特征值,肿瘤性质为实验标签,2 代表良性,4 代表恶性。样本总共有699 个数据,排除有缺失数据剩余683 个合格实验数据,其中正样本(良性肿瘤)有444 个,负样本(恶性肿瘤)有239 个。本项目即以此数据集为实验样本,对神经网络模型进行训练,其中数据的70%为训练样本集,30%为测试样本集。
1.2 训练模型
在人工智能领域中,应用最广且效果最好的就是深度学习模型的应用[5,7-8]。目前深度神经网络(Deep Neural Network,DNN)模型主要应用于非线性分类问题,卷积神经网络(Convolutional Neural Network,CNN)主要用于图像分类及人脸识别等领域,循环神经网络(Recurrent Neural Network,RNN)主要应用与语音识别以及自然语言处理等领域[6]。本项目应用此三种模型对数据进行训练并分析。
1.2.1 深度神经网络
深度学习的研究最早是由神经网络的感知机发展而来,而DNN 可以理解为有多个隐藏层,因此也叫多层感知机。其结构如图1 所示。
图1 DNN结构
如图2 所示,网络包括输入层、隐藏层与输出层,层与层之间是全连接的,也就是说,第i 层的任意一个神经元与第i+1 层的任意一个神经元都相连接。虽然DNN 看起来很复杂,但从小的局部模型来看,还是和感知机一样,即由一个线性关系和一个激活函数所组成。
现实生活中的许多分类问题都是属于非线性分类,所以在实际生活中对于DNN 的分类应用比较广泛,但目前还没有研究人员利用活体乳腺组织的细胞特性作为特征并利用两层DNN 做分类研究。
图2 本项目的DNN模型
本项目采用了两个隐藏层,其中输入有9 个特征值,第一个隐藏层包含了54 个神经元,第二个隐藏层包含了27 个神经元,输出是二分类。此项目的DNN 通过Tensorboard 库功能可视化如图2 所示。数据通过input 层流入,经过layer1 的线性回归与sigmoid 激活和layer2 的线性回归与sigmoid 激活得到输出,通过对输出与input 的交叉熵运算得到loss 损失值,再经过最小梯度训练train 层优化layer 层的内部参数w1、w2、b1和b2。其中隐藏层的运算函数包括两部分,一个是线性回归方程见公式(1)。
一个是sigmoid 激活函数,见公式(2)。
表1 乳腺肿瘤数据集
sigmoid 函数如图3 所示,横坐标是输入自变量x,纵坐标是激活输出因变量s,函数可以将实数集映射到(0,1)区间,因其处处连续,便于求导,所以经常用在神经网络中,以0.5 为分界值,处理二分类问题。
图3 sigmoid函数
1.2.2 卷积神经网络
CNN 是一类包含卷积计算且具有深度结构的前馈神经网络,是深度学习的代表算法之一,CNN 目前广泛应用于图像识别领域,模型结构如图4 所示。
图4 DNN结构
卷积网络最显著的特点就是通过其隐藏层中的卷积层和池化层对输入的数据进行特征提取,卷积层对输入数据与卷积核进行卷积操作,提取多种特征,再通过池化层对数据进行降维,再通过激活函数提高非线性程度,通过多层卷积池化与激活操作,最终通过全连接层输出。
CNN 具有较强的特征提取功能,所以目前在图像识别方面应用效果较好,甚至已经超出人类对图像的识别能力。所以目前对CNN 应用的研究大部分是对图像的识别与处理,只有少部分研究是对数据的分类,而对医疗数据应用CNN 的研究更鲜有人研究尝试。
本项目采用了两个隐藏层,实验输入数据为3×3,通道数为1,第一个隐藏层中卷积核大小为1×1,总共64 个卷积核,卷积步长为1,池化层中核大小为2×2,步长为1;第二个隐藏层中,卷积核大小为1×1,总共128 个通道,步长为1,池化层中核大小为2×2,步长为1,激活函数全为Relu 函数,以防止出现梯度消失问题,最终通过两层全连接层输出。此网络通过Tensorboard 库功能,可视化后如图5 所示。其中Relu 函数见公式(3)。
Relu 激活函数(修正线性单元)如图6 所示,横坐标是自变量x,纵坐标是y,当输入的x值小于0 时,输出为0,当输入的x大于0 时,输出为x。该激活函数可以使神经网络更快地收敛,并且可以对抗梯度消失问题,因此神经元至少在一半区域中不会把所有零进行反向传播。由于使用了简单的阈值化,Relu 函数计算效率很高。
图5 本项目的CNN网络模型
图6 Relu函数
数据通过输入层依次流入两个隐藏层,通过卷积层和池化层化以及Relu 激活操作和全连接层输出,并通过对输出与输入的交叉熵运算得到loss 损失,再经过最小梯度训练train 层优化参数。本项目为了防止过拟合对网络采用了dropout 为0.7 的随机失活操作。
1.2.3 循环神经网络
RNN 的输入是一类有序列的数据,在序列数据的前进方向上进行信息传递且所有节点即循环单元按照链式连接,目前此网络被广泛应用于语音识别与自然语言处理领域,网络模型结构如图7 所示。
图7 RNN结构
目前在RNN 的应用中,最主要的特点就是其长短期记 忆 网 络(Long Short-Term Memory Network,LSTM)。LSTM 是最早被提出的RNN 门控算法,LSTM 网络包括了三个门控单元:输入门、遗忘门和输出门。三个门控在LSTM 网络中形成了状态自循环。具体地说,输入门决定了当前时间的输入,以及前一段时间的系统对内部状态的更新;遗忘门决定了前面所有时间段的状态对当前时间段内部状态的更新;输出门决定了内部状态对系统状态的更新,见公式(4~8)。
RNN 因为其独特的长短记忆功能,对语言的处理效果好。偶尔也有人会将其应用于图像分类,但与医疗领域结合的实验研究很少有人尝试。
在本项目中采用了输入数据为1 个,对于每9 个输入数据,采用LSTM 网络进行训练,此网络通过Tensorboard库功能可视化如图8 所示。
图8 本项目的RNN网络模型
2 模型结果分析
本项目应用人体乳腺肿瘤组织切片的9 个形态特征作为数据标签,对乳腺肿瘤的良性与恶性进行分类,并利用所开发的三种深度学习网络模型进行模型训练与测试。通过比较三种网络的测试稳定性与准确度,希望筛选出最佳的乳腺肿瘤诊断网络模型。
本项目的模型训练过程使用数据库的70%数据作为训练集训练模型参数,通过多次的超参数调优,优化网络模型结构。余下的30%的数据作为测试集验证模型准确度。为了提高模型运算效率,本项目采用批量训练方式,每一批(mini-batch)数据为25 个样本输入网络,进行网络训练。训练结果如图9 所示,曲线的横坐标代表了模型的训练次数,每小格代表模型训练一次,纵坐标是模型预测结果的交叉熵损失值,损失值loss 是训练过程中,预测值与真实值的交叉熵函数,曲线图的横坐标代表了模型的训练次数,纵轴坐标代表了模型的交叉熵损失值,体现了学习过程中的误差大小,用于反向传播更新模型参数值,使模型更加准确。
图9 损失值Loss
从图9曲线中可看出,RNN损失值下降最快且接近于0,并且网络稳定;CNN 下降也很快但网络波动太大,即网络不稳定;DNN 下降最慢,学习效率低。
然后,再用测试集数据导入前述三个数学模型,观察比较各模型对于测试数据的预测准确度,分别得到三个网络的准确度曲线,如图10 所示。曲线图的横坐标代表模型的训练次数,纵轴坐标代表了测试集数据在模型中的预测准确度,体现了模型预测的精度。
从图10 曲线中可看出,三个网络的准确度都趋近于1,其中RNN 的测试结果更优于DNN 与CNN,DNN 训练效率最低。
网络模型结构与结果对照表如表2 所示,DNN 与CNN 都是有两个中间层,三个网络的epoch 都是5,网络的反向传播都是利用交叉熵损失函数和最小梯度下降法,网络前向传播结构与部分参数如表所示。利用测试集数据对网络测试的损失值与准确度如表所示,由表2 的对照结果可以看出,RNN 模型更加符合实际情况。
图10 准确度accuracy
表2 网络模型结构与结果对照表
因此,本项目开发的RNN 模型更适合于乳腺肿瘤良性与恶性之间的分辨,且准确率趋于百分之百,可进一步推广到实际应用中,辅助临床医师对乳腺肿瘤的诊断。
3 结论
深度学习是目前应用前景较好的研究方向,因其实验效果准确率较高,所以已经在实际生活中有很多应用,但与医疗领域结合的实验研究较少。本项目将深度学习应用于人体乳腺肿瘤分类,希望利用深度学习技术与医疗领域的结合,加快深度学习技术在医疗领域的实际应用研究,利用人工智能方法提高医疗诊断水平,推动医疗技术发展。
本文采用真实的人体乳腺肿瘤组织临床数据,将数据用于深度学习的三个基本网络模型进行训练,均得到了良好的实验效果,并且RNN 的测试准确度接近于1,可以以较高的准确度判别出乳腺肿瘤的良性与恶性病理状态。依据本项目研究成果,深度学习网络技术可推广到临床乳腺癌诊断中,用于提高医师的诊断效率与准确率,帮助更多的人早期检查出疾病并及早得到有效治疗。