李雅迪,韩佳芳,马琳琳
(郑州财税金融职业学院 信息技术系,郑州 450048)
肺癌是目前严重危害人类健康的恶性疾病之一,在全世界范围内肺癌的发病率和死亡率都在上升。虽然现有各种靶向治疗方案,但晚期肺癌的预后很差,一旦确诊,绝大多数的患者会在五年内死亡,因此肺癌的早发现、早诊断、早治疗在一定程度上能够提高存活率。现有的肺癌诊断主要是基于肺部计算机断层扫描(Computed Tomography,CT)图像的初期筛查,现有的计算机辅助诊断(Computer Aided Diagnosis,CAD)方法就是对肺部CT 图像进行预处理、分割、特征提取等过程。其中,预处理过程是将肺部可疑组织从复杂的解剖图像中剥离出来,该步骤操作复杂、工作量巨大。
随着人工智能的快速发展,基于深度学习技术的卷积神经网络模型在图像分类领域取得了很大的进展。将该技术应用到医疗图像的分类识别中,可以简化图像的预处理过程,提取到更丰富的特征信息,而且丰富的数据集和高性能的计算机软硬件也使得深度学习的训练过程更加简便、高效。例如,Google 公司研发的乳腺癌智能检测系统,检出率高达92%;Korbar 在2017 年设计了精确度高达93%的卷积神经网络系统,通过对肠道染色体来识别带有致癌隐患的肠道息肉等。由于本文采用的数据集是三维立体的肺部CT 扫描图像,而目前的卷积神经网络模型多用于处理二维平面图像,因此在对肺部CT 图像分类识别时,需要将其切割成二维平面图像,但在提取图像特征信息时会丢失CT图像切片之间的特征信息,对图像的分类识别造成影响。
针对以上问题,本文以深度学习中卷积神经网络模型为基础,对网络结构进行调整,构建了三维卷积神经网络(Three-dimensional Convolutional Neural Network,3D-CNN)模型,结合特定顺序的输入策略,并在公开的Kaggle Data Science Bowl 2017 数据集上进行实验。实验结果表明,本文提出的方法能够对原始图像进行有效分类识别,省略了传统方法中复杂的图像预处理过程,有较好的识别率。
本文中构建的3D-CNN 模型架构如图1 所示。图1 中,首先对所有的肺部CT 图像进行简单的预处理,按照先正常人、后肺癌病人的CT 图像的特定顺序重新组织数据集,预处理后的肺部CT 图像分别经过卷积层层、池化层层、卷积层层、池化层层、卷积层层和池化层层来提取图像的主要特征信息,全连接层将提取到的分布式特征信息进行整合,判断输入图像所属类别。
图1 3D-CNN 架构图Fig.1 The structure of 3D-CNN
本文提出的端到端的三维卷积神经网络模型作为肺部CT 图像的分类模型,其层级结构的具体设置如下:
(1)3D 卷积层。先设定好卷积核的尺寸、步长、填充选项和卷积核的数量,然后与多个相邻的图像帧做加权求和的卷积计算,来提取目标图像特定区域的特征信息,不同的卷积核应用在图像的不同区域,来提取图像的多种特征信息。第层的第个特征图的(,,) 处的输出,研究推导出的数学公式可写为:
(2)激活层。由于在卷积层中做加权求和的线性运算,输出的特征图谱带有明显的线性特征,而线性特征的表现力不足以表达图像的关键信息,需要通过激活函数添加非线性因素,将图像特征保留并映射出来。激活函数主要有非线性、可微性、单调性和在原点处近似线性等特性,能够使训练快速收敛,解决梯度弥散的问题。本文中采用了修正线性单元(Rectified Linear Unit,)激活函数,有单边抑制特性,小于0 的值全部设为0,大于0 的值则直接输出,数学公式具体如下:
(3)3D 池化层。池化层的功能是对上层激活层输出的特征图谱下采样,通过该层将特征图谱关键的特征像素标注出来,在一定程度上简化了参数的运算过程、抑制了过拟合的现象,同时能够提高模型的泛化能力。池化方法主要有均值池化(Mean Pooling)、最大池化(Max Pooling)、重叠池化(Overlapping Pooling)、均方池化(Pooling)、归一化池化(Local Contrast Normalization)、随机池化(Stochastic Pooling)、形变约束池化(Def-pooling)等等。
为了简化各层的计算过程,提取主要特征,本文选取了最大池化方法,取局部接受域中的最大值为该层输出,推得的数学公式见式(3):
其中,为池化层的输入;(,,)分别是高度、宽度和深度三个维度上的池化尺寸;(,,)为3 个维度上的采样步长值。
(4)全连接层。全连接层(Fully Connected layers,FC)通过对上层输出的特征图谱进行卷积计算,将获取到的分布式特征映射到样本标记空间,将这些分布式特征组装成完整的“图”,确定该特征图谱所属分类。该层的优点在于减少特征位置对分类结果的影响,提高整个网络模型的鲁棒性。
(5)算法。由于条件的限制,数据集的种类和质量上存在不足之处,比如类型单一、可用的数据量太少等,导致在模型训练的过程中出现分类结果曲线与训练数据曲线重合的情况,即过拟合现象。本文采用算法,在模型训练的过程中先将输入数据进行正向地传输,并将一部分的神经元以概率丢弃掉,其余神经元以1的概率保留,再将该过程出现的误差反向重传回去。
通过函数,实现以概率生成0 值,以概率1生成1 值,相应的数学公式可表示为:
(6)函数。函数又称归一化指数函数,是将多分类的结果以概率的形式呈现,在逻辑回归模型的基础上解决类别大于1 的分类问题。经过函数的计算可得到图像属于某种分类的概率值,该值可由如下公式计算求出:
其中,x为第个节点的输出值,为输出节点的个数,即分类的类别数。
(7)交叉熵损失函数。采用的交叉熵损失函数(Cross Entropy Loss Function),通过计算真实概率分布与预测概率分布之间的损失值来评价卷积神经网络的性能优劣,值越小,说明模型的分类识别效果越好。此时需用到的数学公式为:
本文采用了一种特定顺序的输入策略来指导模型的训练过程。将正常人的肺部CT 扫描图像放在一起,后面拼接上肺癌高危患者的肺部CT 扫描图像,形成一个整体的数据集,再将其输入到3D-CNN模型中进行训练。使用该策略能提高模型学习的速度和质量,优化卷积神经网络模型的训练过程。
本文的数据来自由Kaggle 主办的数据科学竞赛Data Science Bowl 2017 的数据集。该数据集是由1 397个.docom 格式的肺部CT 扫描图像组成,其中1 036个图像为正常人的肺部图像,361 个图像为肺癌高危患者肺部图像。先按照CT 图像中图像位置属性对切片进行排序,并实现三维渲染;将512×512 大小的图片缩放为100×100,并对其进行灰度化处理;最后,将三维CT 图像合并成数量为20 的切片组合,得到100×100×20 的三维灰度图像。这里以一个肺癌患者的CT 图像预处理为例,单个切片的原始图像和预处理后的图像如图2 所示。
图2 单个切片的原始图像和预处理图像Fig.2 Raw and pre-processed images of a single slice
首先,按照预定的输入顺序重新组织训练样本,即将常规的肺部CT 扫描图像放在一起,拼接上患癌的肺部CT 扫描图像,形成一个整体的训练数据集,将其输入到3D-CNN 模型中进行训练。
该3D-CNN 模型在对重组后的数据集进行训练后,就要对未知肺部CT 扫描图像来做分类识别。其中,第一层卷积层层32 个大小为5×5×5 不同的卷积核过滤,生成32 个大小为100×100×20 的特征图谱,该层产生的变量总数为32×100×100×20;再将这32 个特征图谱输入进第一层池化层层进行最大池化操作,该层选用的池化步长为2×2×2,输出32 个大小为50×50×10 的特征图像,产生的变量总数为32×50×50×10;第二层卷积层层采用64个大小为3×3×3 的不同的卷积核进行填充,得到的64 个大小为50×50×10 特征图谱,产生的变量总数为64×50×50×10;再进行第二层池化层,层的参数设置参照层,由此得到64 个大小为25×25×5 的特征图谱,而变量总数为64×25×25×5;最后将输出的特征图谱进行第三层的卷积操作,第三层选择128 个大小为3×3×3 的不同的卷积核,经过该层后生成128 个大小为25×25×5 的特征图谱,变量总数为128×25×25×5;再将此层生成的图像输入最后一层池化层中,其参数设置与、保持一致,输出128 个大小为13×13×3 的特征图谱,得到的变量总数为128×13×13×3=64 896。3D-CNN 数据处理过程如图3 所示。
图3 3D-CNN 数据处理过程Fig.3 3D-CNN data processing
将932 个正常人的肺部CT 图像数据和325 个肺癌高危患者的肺部CT 图像数据混合,形成一个随机顺序的数据集,将其输入进该3D-CNN 模型中进行训练,比较2 种方法的性能。根据分类正确的样本个数占所有样本个数的比例来计算准确率,并根据公式(9)计算损失值,实验结果分别见表1 和表2。由表1、表2 可知,采用特定顺序输入策略的3D-CNN 模型的分类准确率最高为76%,高于采用随机顺序输入策略的3D-CNN 模型的最高准确率(70%),说明特定顺序的输入策略提升了模型的训练精度,从而有效提高肺癌图像的分类准确率。
表1 3D-CNN 模型在特定顺序输入策略的结果Tab.1 Results of 3D-CNN model in specific order input strategy
表2 3D-CNN 模型在随机顺序输入策略的结果Tab.2 Results of 3D-CNN model in random order input strategy
为解决传统方法在肺癌CT 图像分类中的预处理过程复杂、工作量大的问题,本文提出了基于3DCNN 的肺部CT 图像分类模型。该模型以卷积神经网络为基础,设计了3D 卷积层、激活层、3D 池化层以及全连接层等层级来获取图像的分类特征,结合特定顺序的输入策略来优化模型的训练过程,并与采用随机顺序输入策略进行了对比分析。结果表明,该模型对肺癌CT 图像有良好的分类特性,最高识别准确率达到了76%,对于肺癌的早期诊断有一定的实用价值。但本文提出的3D-CNN模型在架构设计和参数设置上仍有提升的空间,在未来的肺癌图像识别工作中,将完善肺部CT 数据集、改善网络结构和优化实验参数。