0 背景知识
自动肺结节检测系统由以下两步组成(代码部分,参考 luna16_3DCNN):
- 候选screen
- 假阳性剔除
在候选screen中,大量粗粒度的候选经由多种标准,如放射密度阈值、数学形态操作、外形,筛选之后被喂入系统。为获得对候选screen敏感度高的分类器,这一步阈值标准都较宽泛、直接,这就导致大量的候选被送入第二步。这样一来,第二步的剔除假阳性成了整个系统的关键。
肺部恶性肿瘤结节的挑战主要来源于以下两方面。一:肺结节尺寸、形状和位置千变万化。而且,不同的周遭环境使得不同种类的肺结节更加多元化。其二:一些假阳性候选携带了与真的恶性肿瘤结节相似的形态。
目前已有方法
论文标题 | 方法 | 准确率 |
---|---|---|
A new computationally efficient cad system for pulmonary nodule detection in ct imagery | 形状、位置、密度和梯度特征集合 | 82.66%灵敏性,平均每个scan 3个假阳性 |
Automatic detection of subsolid pulmonary nodules in thoracic computed tomography images | 密度、形状、纹理特征和并入的周遭信息 | 80% 灵敏性,平均每个scan 1个假阳性 |
Pulmonary nodule detection in ct images:false positive reduction using multi-view convolutional networks | 多角度2D CNN方法 | 85.4%l灵敏度,平均每个scan 1个假阳性 |
一 本文方法
为应对肿瘤结节千变万化,以及提高分辨器的鲁棒性,我们提出了一个多层次肿瘤语境信息预测模型
1.1 方法详细
架构图
模型中每个网络的详细结构如下表
1.2 3D 卷积层
为构建3D卷积层,首先需要定义一系列小的3D特征抽取器(kernel),抽取堆叠的高层次表征。为了生成新的特征空间,使用了不同的3D kernel抽取输入空间上不同的特征。然后添加偏置项,使用非线性激活函数。公式如下
$$
h^l_i (x,y,z )= \sigma (b^l_i+\sum _k \sum _{u,v,w}h^{l-1} k(x-u,y-v,z-w)W^l{ki}(u,v,w) )
$$
其中
$h^l_i$ 代表第
l
层的第i
个3D特征空间$h^l _{k-1}$ 代表前一层的第
k
个3D特征空间$W^l_{ki}$ 连接 $h^l_i$ 和 $h^{l-1}_{k}$ 的卷积核
$h^l_i(x,y,z)$,$h^{l-1} _k(x-u,y-v,z-w)$,$,W^l {ki}(u,v,w)$分别代表值(x,y,z)在坐标轴空间 $h^l_i$中的值,$(u,v,w)$代表3D kernel空间 $W^l{ki}$ 中的坐标。
$\sigma$ 为非线性激活函数
注意到,不同的3D kernel的激活函数值应该在偏置之前累加。
1.3 3D 最大池化层
假设 $l$ 层为卷积层,$l+1$ 为紧随其后的3D池化层。最大池化层接受一个4D输入tensor $T=[h^l_1,h^l_2,h^l_3,…h^l_k]\epsilon R^{X\times Y\times Z\times K}$ 。
对于最大池化操作,它选取立方体内最大值,并生成抽象输出 $T’\epsilon R^{X’\times Y’\times Z’\times K}$ ,其中$(X,Y,Z)$ 和$(X’,Y’,Z’)$ 分别是最大池化特征抽取前后的尺寸。$K$为特征空间数目。
给定池化 kernel 尺寸M 和步长S,池化之后,特征空间减小到 $X’=(X-M/S+1)$
1.4 全连接层
全连接层中,每个神经元与邻接层所有神经元相连。全连接层之前,首先需要将特征空间压平(flatten)到一个神经元向量,接下来再执行向量-矩阵乘法,再加上偏置项以及应用非线性激励函数。
$$
h^f = \sigma (b^f+W^fh^{f-1})
$$
$h^{f-1}$ 是输入特征向量,从第 $f-1$ 层的3D特征空间压平(flatten)而来。
$h^f$ 是第 $f$ 层的输出特征向量(是一个全连接层)。
$W^f$ 是权重矩阵
$b^f$代表偏置项
$\sigma$ 是激活函数 ReLU
1.5 softmax层
3D CNN的输出层就是softmax层。 $h^l$ 代表最后一层的神经元向量,C是目标分类数。通过softmax回归 $p_c(h^L)=exp(h^L_c)/\sum^{C-1}_{c=0}exp(h^L_c)$计算每个分类 $c$ 的概率,其中 $h_c^L$ 是神经元向量的第 $c$ 个元素。softmax层的激励函数输出都是(0,1)之间的正值,并且和为1。
1.6 损失函数
对于给定N对3D训练样本集合 ${(I^{(1)},y^{(1)}),….(I^{(N)},y^{(N)})}$ ,其中$I^{(j)}$ 是输入立方块,$y^j$ 是对应的真实标签,$\hat y^{(j)}$ 为预测标签,$\theta$ 代表所有参数。损失函数如下:
$$
loss = -\frac{1}{N}\sum^N_{j=1}\sum^{C-1}_{c=0}indicator{y^{(j)}=c}P(\hat y^{(j)}=c| I^{(j)};\theta)
$$
其中 $indicator$ 代表指示函数,$P(\hat y^{(i)}=c|I^{(j)};\theta)$ 为样本 $I^{(j)}$ 属于类别$c$的预估概率(即softmax回归层的输出值 $p_c(h^L)$)。通过调整参数使得 $loss(\theta)$ 最小。
二 接收域
肺部结节的多样性十分广泛,半径从3mm到30mm,形状和其他特性比如毛玻璃、固体、内部结构、刺孔等。除此之外,肺结节还与周遭环境十分相关。人工设计的判别规则辨别能力十分有限,无法从这一类别迁移到另外一类。
3D CNN肺结节检测,立方体样本以候选位置坐标为中心切割,并被输入到网络。立方体的样本的尺寸,即目标位置的环绕范围成为网络的接受域。接收域的大小对网络辨识准确率至关重要,接收域太小,只有有限的环境信息被包含入网络,会导致预测能力下降以及难以处理大量变化的目标;接收域太大,会包含太多噪音数据。
论文设计了一种多层次3D CNN来应对这一问题,并综合不同层次的判别结果。
三 多层次语境网络和模型混合
上图为肺结节尺寸大小分布统计,小结节的半径大小分布,X和Y维度集中在9体素,Z维集中在4mm体素。
鉴于此,设计得第一个网络即Archi-1
接收域为 $20\times 20\times 6$ ,主要是处理小结节,覆盖了数据集中58%的结节。
第二个网络即Archi-2
的接收域为$30\times 30\times 10$ ,处理中等尺寸的结节,覆盖了数据集中85%的结节。
第三个网络即Archi-3
的接收域为$40\times 40\times 26$ ,处理中等尺寸的结节,覆盖了数据集中99%的结节。
使用softmax回归来综合三个模型的最后预测结果。模型 Archi-1
预测 $I_j$属于分类 $c$ 的概率为 $P_1(\hat h_j=c|I_j;\theta _1)$ (不同的 $\theta$ ),Archi-2
和Archi-3
类似。
混合概率由权重的线性组合评估
$$
P_{fusion}(\hat y_j)=c|I_j=\sum _{\phi \epsilon{1,2,3}}\gamma {\phi} P{\phi}(\hat y_j=c|I_j;\theta _\phi)
$$
其中 $P_{fusion}(\hat y_j=c|I_j)$ 是接收域 $I_j$ 属于分类 $c$ 的整个框架的混合预测概率。常量权重$\gamma _phi$ 是在实验数据集中经过网格搜索得到的 $\gamma _1=0.3,\gamma _2=0.4,\gamma _3=0.3$
四 训练过程
权重 $\theta$ 基于随机梯度下降来学习,即每次迭代中参数更新都是基于mini-batch的训练样本。比赛提供了正负样本,我们根据结节候选位置抽取了 $20\times 20\times 6,30\times 30\times 10,40\times 40\times 26$ 尺寸的立方块。
数据增强:由于数据集中正负样本比例为
490:1
,我们对正样本(真的肺结节)进行转换、扭曲增强。转换过程中,对质心坐标每个体素,每个轴在横向平面做90,180,270度扭曲。最后获得了650个训练样本。**归一化处理:**我们将放射密度强度剪切(类似截断的正态分布之类)到(-1000,400)HU单位之间,并将它们归一化到(0,1),然后减去平均灰度值,来适应网络。
参数设置: 权重使用高斯分布 $N(0,0.001^2)$ 的随机初始化,并使用标准后向传播更新。学习率初始为0.3,每5000次迭代衰减5%(较大的学习率,因为网络是从头开始训练)。mini-batch为200,冲量系数设置为0.9,dropout应用到卷积层和全连接层,比例为0.2。
网络: 三个网络独立的训练和验证,每个网络训练消耗6小时(GPU Nvidia TITAN Z)
五 实验(LUNA2016)
5.1 数据集和候选生成
本文是用于处理假阳性剔除任务,即给定一个候选位置集合,预测每个候选是肺结节的概率。
比赛数据从 publicly available Lung Image Database Consortium (LIDC)过滤掉888张CT。体积在水平面以 $515\times 512$ 分辨率,元素空间为 $0.74 \times 0.74 mm^2$ ,同时slices厚度小于2.5mm。 肺结节数据由经验丰富的外科医生标注位置,只保留了 1186个半径大于3mm的候选(4个外科医生中至少有3个标注了的)
5.2 评估指标
比赛评估检测结果,通过灵敏度和每个scan中出现假阳性的数目。