1. 引言
结直肠息肉指的是结直肠腔粘膜外表部分突出到肠腔粘膜内各种肉眼可见的小隆起,但还未变化为结直肠癌的早期息肉样病变 [1]。结直肠癌作为最常见的恶性肿瘤之一,据2020年(GLOBOCAN2020)世界癌症研究机构(IARC)所公布的全球癌症病状统计分析,全世界结直肠癌的死亡病例和新发病例分别达到了93.52万和193.16万,占据了恶性肿瘤发病率的第2位和第3位 [2]。而结直肠息肉的早期检测是预防结直肠癌、降低死亡率和发病率的一种有效途径。其中有相关的研究表明,早期探测到和除掉部分息肉能够及时地预防结直肠癌的产生及其后续演化 [3]。研究表明,结直肠癌一般情况下是由腺瘤性息肉发展而来,而从腺瘤恶化成早期浸润癌一般需要10~15年。随着人工智能的不断发展,深度学习在视觉领域上不断突破,甚至在某些情况下远优于人工检测。因此,人们便利用计算机深度学习算法和客观诊断结合起来,不仅可以精准、高效的对结直肠镜图像的息肉进行自动化检测,更可以缩小人为因素的影响 [4] [5]。
本算法采用深度学习方法,比较FCOS算法、YOLO算法 [6] 和Faster RCNN算法 [7] 差异,并且使用大量结直肠息肉患者的真实CT影像作为数据集,构建和比较基于RCNN的息肉检测算法,最终挑选出在特定CT影像数据集下最优的模型参数,完成在计算机辅助息肉检测的方法学探索。
本文共分为五章,每一个章节内容如下:
第1章绪论。介绍了基于RCNN神经网络的结直肠息肉检测的背景以及研究意义,并提出了本文的研究内容。
第2章基于卷积神经网络的结直肠息肉检测算法研究。简单阐述了神经网络的起源与发展、理论基础以及目标检测理论基础:卷积、池化、激活函数以及分类。在此之后又分别介绍了几种目前计算机视觉中主流的目标检测算法。
第3章基于RCNN的结直肠息肉实验设计。介绍了本次实验设计的工具与工程环境以及算法的评判指标,通过替换特征提取网络与分类器进行模型的优化改进,增加模型的准确性。
第4章结果分析。阐述相关实验结果。
第5章总结与展望。基于RCNN神经网络的结直肠息肉检测算法成果进行总结,并分析当前算法模型存在的些许问题,并针对本次设计的成果和缺陷指出改进方向以及未来的研究方向。
2. 基于卷积神经网络的息肉检测算法研究
2.1. 神经网络基础概述
2.1.1. 神经网络概述
相较于生物神经元,人工神经元的输入Xi代替了生物神经元的树突,权值Wi代替生物神经元树突向细胞核的信号输入,求和函数代替了细胞核,加上神经元的偏置,最后激活函数代替生物神经元细胞体向神经末梢的脉冲信号,将最终结果y传播给另一神经元,而多个神经元结构就组成了人工神经网络 [8]。其简化模型如图1所示。
Figure 1. Artificial neural network simulation diagram
图1. 人工神经网络模拟图
2.1.2. 卷积神经网络理论基础
卷积神经网络(Convolutional Neural Networks,即CNN)属于深度神经网络的其中一个分支,是根据全连接网络发展而来的。CNN是一种包括一系列卷积计算操作,一个典型的CNN网络由若干卷积层、激活函数、池化层以及全连接函数构成,并且具有深度前馈结构(BP结构)的人工神经网络,其也是当今比较流行的一种深度学习方法,其被广泛应用于图像特征提取以及抽象特征提取方面,在计算机视觉领域的应用尤为广泛。
2.1.3. 目标检测算法理论
目标检测(Object Detection),也叫目标提取,不仅要求检测输入图像中感兴趣的物体,并要求进行准确分类,还要对感兴趣的物体进行精确定位,最后使用锚框可视化显示。作为一种图像分割技术,目标检测是基于图像几何特征的,而单价段(One stage)目标检测算法和两阶段(Two stage)目标检测算法是两种基于CNN的目标检测算法,其中边框回归和非极大抑制也运用尤为广泛。
2.2. YOLOv3与FCOS目标检测算法研究
YOLOv3 [9] 它是一种单阶段检测网络,其基础网络为Darknet-53全卷积层进行图形的基础特征提取,YOLO算法在多尺度检测算法中,使用了残差网络的方法进行直连接,同时融合上采样的高层特征图和当前特征图,使得网络具有同时学习深层信息和浅层信息的能力,在此之后模型进行特征的分类和边框回归,最后使用非极大抑制方法(NMS)筛选出符合条件的信息。
FCOS作为一种单阶段检测网络,也称为一阶全卷积目标检测网络。同时它是一种基于特征金字塔(FCN)的逐像素目标检测算法,FCN通过提取特征和上下采样融合,利用不同大小的像素级层来处理不同大小的目标,极大增强了算法目标检测能力。另外,FCOS与其他检测网络不同的是,该算法还提出了中心度(Center-ness)的思想,实现了无提议(proposal free)、无锚点(anchor-free)的整体解决方案 [10]。
2.3. Faster-RCNN目标检测算法研究
Faster RCNN是一种典型的二阶段检测网络算法 [11],它首先会经过一个特征提取网络生成特征图,常见的特征提取网络有VGG、ResNet等;在区域提议网络中,模型首先会根据生成的特征图以及使用锚框生成器在特征图的每个像素点生成9个大小形状不相同的先验框,通过区域提议网络简单的分类和边框回归后,保留2千个得分较高的正负样本,称为建议框,同时保证正负样本数平衡;在ROI Pooling部分,获得的建议框调整大小并从Feature Map中抠出相应的图片;最终利用全连接网络对提取到的建议框特征图进行分类与锚框预测,获得更精准的预测信息。
3. 基于RCNN的结直肠息肉实验设计
3.1. 实验设计前期准备
3.1.1. 结直肠息肉网络迁移学习
针对有无数据集划分神经网络算法分为三种:监督学习、无监督学习和半监督学习。目标检测算法作为一种监督学习,其获取到一个高质量的数据集对模型精确度至关重要。同时为了使模型更快拟合,本研究采用了迁移学习的方法,在公开的与训练集的基础上继续训练结直肠模型来训练自己的算法模型,这也在一定程度上增加了模型算法的准确度。
3.1.2. 结直肠影像数据集获取与构建
本研究从开源网站获取到了上百张病患者CT图以及其结直肠息肉的位置信息文件作为本次研究的数据影像集,图像大小为512像素 * 512像素,标签信息和锚框坐标分别存在其对应名字的txt文本文件中。其中CT影像是一种以非侵入方式拍取到人体组织影像的一种技术。如图2所示,左图为患者病患结直肠CT图,可以观察发现病患者的结直肠壁存在小突起即为息肉,不同息肉大小不同以及形状各异,一定程度上增加了检测的困难性;而右图为一个健康成年人的结直肠CT图,可发现其结肠壁光滑整洁。
Figure 2. Artificial neural network simulation diagram
图2. 人工神经网络模拟图
同时在神经网络学习中,每次模型训练结束,需要对每个训练好的检测模型进行最终的评估,保证模型的收敛能力。通常情况下获得的数据集可分为训练集、验证集和测试集,且三种数据集不交叉。训练集应用于模型算法的训练,与此同时为了增强模型算法的鲁棒性,在训练集还可以增加旋转、缩放和裁剪等数据增广操作;验证集通过对模型的结果验证来调整模型的参数,可以使模型效果越来越好,使模型具有良好的鲁棒性;测试集是对模型最终的表现进行一个评估,展示最终模型的效果评价。本研究为了方便模型的数据输入,数据集最后分别转换成各自的COCO [12] 数据集进行存储。
3.2. 模型评价指标设计
在目标检测中是通过计算真实框与预测框的交并比(IOU)来评价边界框正确性的一种度量指标,一般IOU值大于0.5即说明检测正确,而IOU的值越接近于1,代表预测的边框越接近于真实值。
而精度(Precision)和召回率(Recall)的计算,首先需要用混淆矩阵来辅助介绍,TP (True Positive),指成功将正类样本预测为正类的样本数量;FP (False Positive)指将负类样本预测为正类的样本数目;FN (False Negative)指将原本属于正类的样本错分为负类。精度(Precision)和召回率(Recall)的计算如公式(1)和公式(2)所示。Precision和Recall存在一种博弈关系,通过改变IOU置信度threshold可以相应改变精度和召回率。
(1)
(2)
而平均精度AP (Average-Precision)是指Precision-Recall曲线围起来的面积,通常来说对于某个特定阈值的P-R曲线,其AP值越大,代表模型的分类性能越优越。最后平均精度均值mAP (Mean Average Precision)代表着对目标检测平均精度的一个综合度量,具体操作是指把每一个类别的平均精度AP值取平均得到的最终值,mAP的计算如公式(3)所示。
(3)
本研究的主要评测指标采用与COCO数据集上相同的评估方式,采用在目标检测领域中最常用的评测指标mAp。
3.3. 实验设计
3.3.1. 特征提取网络的选择
对于目标检测算法来说,特征提取网络的优良性直接影响到最终模型检测准确性,而ResNet (Residual Neural Network)作为经典主流的特征提取网络,往往应用于各大经典目标提取算法中 [13]。卷积神经网络ResNet核心思想是在网络结构中引入了残差块的思想,并加入了直连通道,它允许原始数据信息可以和经过非线性变换的数据信息进行融合。
为了提高骨干网络的特征提取能力,以及特征提取的速度,本研究在对比基础特征提取网络的同时,对比研究了ResNet网络模型,并在此基础上引入了ResNeSt网络。ResNeSt网络作为一种具有注意力机制的神经网络,最主要的核心思想是分组的通道注意力机制:Split-Attention。这极大增强了在结直肠息肉的特征提取。
3.3.2. 实验模型设计与训练
为了加快本研究的模型收敛速度已经提高精确度,在模型选择上率先采用了迁移学习,在预训练好的模型基础上进行结直肠息肉模型的训练,同时设置好模型的学习率。在优化器方面使用了SGD小批量随机梯度下降,还引入了动量法并设置值为0.9,防止梯度下降进入鞍点或者局部极小值点。所有实验的训练时间不固定,以验证集mAP达到稳定值为终点。
为得到最佳的实验模型,本研究对不同模型训练出的结果进行了消融实验。首先为了比较单阶段目标检测网络和两阶段目标检测网络的差异性,本研究分别对比了以ResNet50为特征提取网络训练了FCOS、Faster RCNN以及以Darknet53为特征提取网络的YOLOv3算法模型。
在特征提取方面,由于特征提取算法对后续的目标检测算法有着至关重要的作用,故本研究平行对比构建了以ResNet50、ResNet101和ResNeSt50为基础特征提取网络的Faster RCNN网络,对比不同特征提取网络的模型准确性。
4. 实验结果与分析
本研究率先对两种单阶段目标检测网络和两种两阶段目标检测网络进行训练对比,输入数据集为同一已划分的训练集以及验证集。如表1是三种基础模型的对比所示,分别比较了YOLOv3、FCOS和Faster RCNN模型,三个评价指标分别为平均精度均值,小目标的平均精度均值以及中等目标的平均精度均值,最后是模型收敛时间。从实验数据可以观察出两阶段目标检测模型算法准确度要明显优于单阶段目标检测,因结直肠息肉算法要求准确性,所以本研究在两阶段目标检测模型的基础上基础进行改进优化。
Table 1. Comparison of three basic models
表1. 三种基础模型的对比
由于二阶段目标检测算法的准确度优于单阶段,本研究还对比了不同特征提取网络对模型的影响,研究对比的特征提取网络有ResNet50、ResNet101和ResNeSt50和ResNeSt101,其分别简写为r50、r101和s50。在一定程度上目标检测算法模型的mAP会随着特征提取网络深度的加深而增加,因为网络深度的增加,模型能够提取出更多抽象信息,从而可以获得更多细粒度范围,并且更优越的特征提取网络往往能给模型带来一定程度上准确性的提升,例如使用ResNeSt。在本次实验中使用ResNeSt101骨干网络明显优于其他网络,且其在训练速度上也仅稍慢于其他特征提取网络。从图3可以明显看出,更深的特征提取网络,其特征提取能力更强,对模型的收敛速度更快,精度更高。
Figure 3. Comparison of different feature extraction network
图3. 不同特征提取网络对比
5. 结束语
临床医学检查中,结直肠息肉的检出率一定程度上依赖医师的水平,而计算机辅助医师检测可以很好的降低其漏检率。同时因为深度卷积神经网络在计算机视觉的成功,本文基于深度卷积网络重点研究了几种主流的目标检测算法,针对结直肠检测准确度,本次实验设计对比了单阶段检测模型和二阶段检测模型的差异,并在较优二阶段检测模型的基础上改进其特征提取网络,对比分析不同深度、不同模型的特征提取网络,在多次实验后,最终选择ResNeSt50作为二阶段目标检测模型faster rcnn的特征提取网络,增加了算法的检测精度。
参考文献