1. 引言
深度学习模型在医疗领域取得了显著进步,尤其是自动癌症病变分割与识别技术的广泛应用,这不仅减轻了放射科医生的工作压力,还提升了诊断的准确性[1]-[3]。然而,最新型的数据驱动模型需要大量数据才能达到理想效果,这在医学研究中可能导致高昂的成本[4]。在计算机视觉领域,主流的研发范式均会采用多种数据预处理手段对样本进行增强,帮助神经网络更高效地学习[5]。
在胃癌CT影像分析领域,常用的预处理手段包括:自由形变[6]与仿射[7]、擦除、曝光调整、多窗口控制[8] [9]、前后景替换[10]。这些方法主要对CT重建序列中每个横断切面(Slice)的Hounsfield (HU)值[11]进行调整,以此生成新的增强样本,并配合相同的标签进行训练[12]。这种做法能够改善神经元对于同一个样本的特征提取深度,但往往需要将同一个源样本变换后分多次输入给神经网络用于训练,因此这些方法可被认为是对数据集的扩充[13] [14]。在相同的数据集遍历次数下,神经网络的训练用时和数据集的样本数成正比,因此这些方法总体上是使用时间来换取模型精度。
本文着眼于利用CT模态中横断面影像的独特空间定义域,对影像进行基于拉伸的增广,使处理后的图像及其特征能更均匀地覆盖神经网络的特征提取计算范围,提高训练效率。
2. CT数据与增广理论
2.1. 数据收集
胃癌CT影像序列数据集从上海市第一人民医院胃肠外科的临床诊疗实践中收集。一名胃肠外科的医生为每位患者的影像序列标记了包含最大胃癌病灶面积的切面,另一名影像科医师在该切片上进行癌症区域注释,形成像素级分割基准。胃肠外科医生对标注结果进行审查,并进行修改。这意味着不论CT扫描序列有多少个Slice,总是只有一个Slice被标注。在标注过程中,影像科医师和胃肠外科医生对所有的扫描序列和分割结果都最终达成了一致,最终在895个病例中选出了689例用于进一步的研究,序列清洗标准[15]如下:
伪影严重,或是其他成像效果不满意的情形
对应的病理结果不可用,无法确定病灶性质的
未完整覆盖所有病灶组织的
病灶区域小,无法判定最大截面积的
患者或家属在本研究的任一阶段提出异议的
Dicom元数据不可用的
在这样的构建流程下,所得到的图像层数和标注层数严重不平衡,数据集是少样本的,绝大多数研究在该种情况下均会采用多样化的增广手段加入预处理过程。存储方面,影像序列以DICOM文件形式存储,每个序列均带有规范化的元数据。医师的标注结果则以nrrd格式独立存储,附加记录了切面原点坐标,使用该坐标来和dicom序列进行对应,确定该标注所属的截面。所收集的895例影像序列包含0.625 mm、1 mm、1.25 mm、5 mm三种重建层厚,切片spacing则没有统一的标准,所有序列都以
的体素尺寸被重采样,并进行后续实验处理。
被纳入数据集的病人在2014~2021年间曾在或仍在上海市第一人民医院胃肠外科就诊。就诊过程中,在院内使用了相同的一台GE Revolution CT机对患者进行扫描,成像区域包括:胸部、下腹部、全腹部,形成了120层~750层不等的序列扫描结果。在pTNM分期上,有1a期占8%、1b期占7%、2a期占9%、2b期占15%、3a期占24%、3b期占20%、3c期占17%、4期患者仅有2例。首次诊断时,腺癌占绝对多数(74%)。这一比例来自于其在接受CT扫描之后的第一次诊断分期,不代表其在接受CT扫描时的分期。所有病例中,男性占72%,年龄平均数为67岁,中位数为68岁。
本项研究中所使用的所有样本都进行了匿名化处理并遵从了患者意愿。该研究已获得上海市第一人民医院人体试验伦理审查委员会的批准(批准编号[2024] 032)。
2.2. 特征提取计算和CT横断面的定义域不对齐问题
设CT横断面图像为一个二维矩阵
,其中
分别为横断面的宽度与高度,其定义域为
,其中
为内切圆半径。DICOM文件使用方形矩阵来存储该数据,其定义域为
。在特征提取过程中,整个定义域B会被计算,这一过程可用公式1表达:
(1)
其中K表示特征提取泛函。当
时,
是无效值,对应的特征提取结果
也是无效的,这部分无意义的计算限制了模型的计算效率,在图1中,HU域中的圆外黑色部分表示无效值域,也代表着无效特征提取发生的范围。
Figure 1. The definition domain of the HU domain (circle) and the annotation domain (square) do not match
图1. HU域(圆形)和标注域(方形)的定义域不匹配
需要注意的是,虽然下文提出的方法主要针对于卷积网络进行设计[16],但以ViT为设计范式的所有Transformer视觉神经网络也有类似的问题[12]。在这一类网络中,图像会被切分为多个patch,若patch中仅包含无意义值时,任何对该patch进行的计算都被认为是无效的,不过注意力机制使其能降低模型对于这些patch的关注度。因此在精度上,它们受到的影响不会像卷积网络受到的那么多,但其计算性能依旧会被降低。
2.3. 基于仿射拉伸的CT横断切面增广
为了解决上述问题,本文引入了一种针对CT Slice特点设计的仿射映射方式(如图2),其将存储着Slice信息的正方形数据矩阵进行变换,使正方形矩阵的最大内切圆外的区域也能够存储有效的HU值。这样,底层的卷积网络遍历到曾经无效的数值区域时,也能进行有意义的计算,进而提升了在整个神经网络处理过程中,模型进行神经运算的有效率,并最终体现在提升模型的精度指标上。
Figure 2. An overview of the proposed stretching augmentation
图2. 本文提出的拉伸增广的概览
在这一过程中,原始重建Slice在形态学上被不可避免地破坏了,模型也将输出基于变换后的体素位置的预测。对于临床场景而言,这一情形是不可接受的,因为医生通常只能基于标准的人体CT扫描结果进行分析,最多也只会进行窗宽窗位限制,形态学上的变化将使专业医师无法根据既有经验和直觉作出准确诊断,并且也会大大限制该方法在医疗情形下的可信度。因此一种仿射反变换重采样方式被引入,它将对模型的预测输出进行处理,使其恢复到原始CT Slice被重建的形态学结构上,并将处理后的预测结果和原始Slice进行叠加,形成最后的可视化结果。在进行反变换后,医师对神经网络推理中涉及的仿射变换和反变换是不可感知的,所有模块被封装在一个完整的服务中,无需外部干预。这样,所提出的方法只会在后端进行特征提取时生效,临床使用者无需进行任何额外的训练,或是实践上的额外学习,即可轻便部署所提出的方法。
从数学角度讲,首先定义CT Slice中心点为
,其对应的极坐标系表达为
。针对任意一个Slice像素,在极坐标系中使用公式(1),(2)确定径向拉伸系数,对其进行坐标映射。
(1)
(2)
其中
为边角拉伸强度系数,
为全局缩放系数。当
时,
,退化为均匀缩放。当
增大时,边缘区域
的
值减小,导致
增大,对应方向上的所有像素被重映射至远离极点的位置,填充到背景像素区域,并以此降低在后续神经网络计算中神经元的无效计算。当需要执行反变换时,使用
作为径向拉伸因子再次执行拉伸映射即可。此时
,故在直观上反变换过程呈现为四角内缩的趋势。当
或
被设为一个过大的值时,重映射后的像素位置可能位于矩阵以外,而无法被记录。因此,在确定参数时,应当确保
。
在信息论上,这样做具有一定的理论基础。在CT图像中,边缘区域的信息熵较低,因为边缘有效像素的分布相对稀疏。在使用所提出的方法后,可以增加边缘区域的信息熵,使图像的整体信息分布更加均匀。这有助于提高神经网络对图像特征的提取能力,因为在同一层图像或特征图上的多次卷积操作能接收到更均匀的信息密度,在反向计算时避免梯度被稀释。
2.4. 癌组织定位与关键小样本生成
在临床中,胃癌的病灶多数聚集在胃壁上,CT横断面视图可见胃壁异常增生[9] [17] [18],病灶所占横断面的比例通常较低,这是因为人体内部与胃相连的还有肺、脾、胰、肝等器官,会占据横断面上更大的面积[11]。因此,胃癌的相对特征较弱,直接拟合时,损失值易被背景区域稀释,导致拟合效率差。为了解决上述问题,在使用2.3节的方法对CT横断面进行增广后,本文进一步引入了关键特征定位算法。
具体来说,首先基于标注信息定位每个胃癌病灶的最小内接正方形,将此正方形的边长扩大10%,以避免在卷积计算时边缘关键信息无法被充分提取。此时,所得正方形范围内的特征主体为癌症病灶,以此区域作为基本单位进行训练时,损失函数会分配更多强度在前景上。综合2.3与2.4节的方法,可以生成多样化的增强小样本,图3展示了在不同的增广强度下,使用关键小样本生成的病灶伪样本示例。在典型的深度学习分割任务的训练范式中,使用预测特征图和目标图计算所得的二维损失值矩阵会被直接求平均,这意味着所有的像素都以相同的权重参与到神经网络的梯度计算中去,优化器在此基础上进行对神经网络进行参数更新。在使用2.3节提出的方法后,越靠近
,
方向的有效图像特征会被越显著地稀疏化,这意味着图像中该方向上的语义信息熵较低。这说明典型的实现方法并不很好地匹配使用增广之后的图像语义。从最优化学习效率的角度讲,应当按照图像中的语义密集度来分配参数更新权重。训练时,本文在切面维度上引入了基于拉伸强度的损失权重分配算法,其在样本增广时记录拉伸参数属性,并配套生成一个非均匀权重图,权重图在极坐标系上遵循
。该权重图会与损失值矩阵进行逐元素点乘,而后对损失值矩阵取平均并执行反向传播。此时,由于梯度和神经网络响应具有正比关系,反向传播得到的梯度已综合了逐元素的先验语义,能够差异性地赋予不同极角方向以不同的拟合强度。
这种方法能够生成密集的前景特征,在预测过程中,神经网络同样需要能够有效地识别背景特征,否则模型将更容易产生伪正判断。因此,需要在横断面上进行随机子区域提取,并作为独立的样本加入训练。在选定随机子区域时,正方形形状相同于该横断面上所确定的胃癌最小内接正方形(图4)。
显然,生成的小样本具有和原始CT切面不一致的分辨率,若将其与横断面图像直接混合将导致尺度不统一,破坏分布一致假设,打乱模型对于特征尺度的学习过程。因此,本文将关键小样本作为前置预训练环节的输入,目的是使模型能够先“预习”胃癌的基本形态学特征、HU强度特征等。在“再训练”阶段,模型在已有一定基础知识把握的情况下对CT横断切面的全局语义进行学习。
Figure 3. The augmented gastric cancer lesions
图3. 增广后的胃癌病灶
(a)
(b) (c)
Figure 4. Examples of selected cross-sectional sub-regions (green indicates key features)
图4. 选定的横断面子区域示例(绿色为关键特征)
3. 胃癌识别与分析的建模
为了应用本文所提出的方法,首先需要在临床中收集CT重建序列
,由医师标注得到最大胃癌负载横断面
,在该横断面建立极坐标系,用
可表示该横断面上任意一点。使用公式(3)所描述的过程对坐标系进行映射,得到
。
(3)
公式(3)定义了本文使用的映射方法连续域上的表达形式,由于CT重建序列时在空间上是离散采样的,且以像素点存储,因此需要使用离散重采样方法来生成新的横断面图像。需要保证标注采样过程不会引入原始数据集中不存在的新值,因此对图像域和标注域的离散重采样方法是不一致的,如公式(4)所述:
(4)
其中,img代表HU域,ann代表标注域,
代表采样权重。
拉伸增广数据集可使用
表示。对
中的每个样本,使用公式(4)定位癌症最小内接正方形,并裁剪,得出关键胃癌特征小样本
,
代表样本
的最小内接正方形边长。
(4)
在得到了增广数据集
和关键小样本数据集
后,使用算法1所述的过程进行训练和推理。
算法1. 神经网络的训练与推理过程
训练: 初始模型
While True:
break 推理:
|
算法1得到的
为模型对输入CT序列
的胃癌识别结果,且两者具有相同的形状。
在实验部分中,不仅需要对端到端任务的分割精度进行分析,同时也需要对神经隐空间进行分析,从定性的角度分析所提出的方法是否改善了特征提取效率(图5)。目前在分割领域主要有两种编解码器范式,分别是对称型和非对称型,两者的编码器具有相似的层级结构,但解码器差异较大。具体来说,第
层的编码器隐空间可以使用公式(5)表示:
(5)
编码器的隐空间特征
通过解码器
映射到最终的分割结果
:
(6)
因此,编码器的隐空间特征与输出的二类分割结果之间存在联系。
在反向传播中,反向梯度
是通过对所有神经隐层的梯度乘积计算得来的:
(7)
其中,
是输入横断面数据,
是对应横断面的标注,
是输入数据的二维索引,
则是标注域的二维索引。
从该公式中可以得出,梯度图
中每个索引
与损失图在
位置的值存在联系,关联性由神经网络具体参数决定。也就是说,
体现了输入中的哪些神经计算对模型的预测输出有所贡献,这为本文4.4节奠定了理论基础。图5介绍了所述的两种不同的编解码器架构范式,梯度观察发生在从编码器至解码器的各层残差连接中。
Figure 5. The framework to analyze neural implicit space
图5. 神经隐空间分析架构
4. 实验与结果
4.1. 神经网络部署
本文所提出的增强方法涉及端到端胃癌病灶识别神经网络的前置处理与后置处理,共计部署了3种主流的视觉神经网络,用于验证它们是否受益于本文的方法。SegNeXt [1]是著名的轻量级卷积分割网络,它以较低的计算复杂度达成了较高的分割性能,由于CT扫描序列通常拥有数百个Slice,分割计算量大,因此该网络特别适合于临床快速辅助诊断;DATransUNet [19]则是一种先进的由Transformer启发的卷积分割网络,在多种领域的任务上具有较高的通用性。该两种模型具有较高的代表性,目前多数前沿的算法均基于类似于这两者的神经架构范式——编解码器设计的卷积或Transformer网络;MedNeXt [20]为nnUNet团队开源的新一代医学卷积模型,用于为不同的医学分割任务提供有竞争力的实验基准。
所有实验由OpenMM框架搭配PyTorch 2.6.0实现,以确保数据流一致性。学习率设定为0.0001,batchsize为8,嵌入维度遵从神经网络的默认设定。当连续10个Epoch的验证集精度不下降时停止训练,并取停止时的权重对模型进行测试集推理评估。图6展示了本文的整体数据流。
Figure 6. The data flow for training
图6. 训练数据流
4.2. 端到端分割训练的量化分析
从表1中可以分析得知,所提出的方法能够稳定地提高3个模型的分割性能。平均来看,病灶交并比提升了4.36,Dice系数提升了2.69,病灶识别敏感度(Recall)提升了3.39,病灶识别特异性(Precision)提升了1.94。SegNeXt模型是轻量模型,自身参数量较少,在标注稀缺的训练情形下,难以拟合,在实验中因梯度不稳定而无法训练成功。在使用所提出的增广方法和前置预训练后,其能够成功拟合,并且略微超越DATransUNet模型。
Table 1. Segmentation accuracy of gastric cancer lesions
表1. 胃癌病灶的分割精度
拉伸 |
模型 |
mIoU |
mDice |
mRecall |
mPrecision |
× |
SegNeXt |
相同参数下,训练因梯度爆炸而失败 |
MedNeXt |
77.93 |
87.60 |
85.57 |
89.73 |
DATransUNet |
71.47 |
83.36 |
81.89 |
84.89 |
√ |
SegNeXt |
79.91 |
88.84 |
87.91 |
89.78 |
MedNeXt |
88.73 |
94.03 |
93.76 |
94.30 |
DATransUNet |
77.79 |
87.51 |
87.15 |
87.87 |
由于所提出的方法能够借助CPU实现异步处理,对GPU计算的影响很小,而目前的分割框架的性能瓶颈主要围绕在GPU上。因此,所获得的精度提升并不需要更多训练卡时。在临床中,这意味着医师能够在实时分割的应用场景下,获得更准确的分割预测结果。
4.3. 基于前向激活图的特征分辨能力的定性分析
上一节所述内容能够定量地确认所提出的方法是否满足了实际临床任务的要求,本节进一步从定性的角度解构训练流程中神经网络前向激活值。具体来说,需要观察编码器靠近数据输入端的层激活情况,来确认神经网络进行特征提取时,哪些计算对训练和预测具有显著的贡献。前向激活图能够显示神经元对数据输入的响应程度,如果观察到激活图中具有强烈的特征,说明神经元对图像中不同部分的响应是有差异性的、有着重点的[21] [22]。
图7展示了在编码器靠近嵌入层的一端的前向激活响应分布图,前者的颜色映射显示了完整的响应值域,后者则映射了65%到95%分位数范围内的响应值,以改善直观度。数据为测试集所有样本上的前向响应的平均值,以此来准确体现模型在预测场景下的特性。
(a) 禁用拉伸
(b) 启用拉伸
Figure 7. Encoder forward activation map
图7. 编码器前向激活图
激活图观察显示,在不使用拉伸增广时,编码器的有效信号占比明显比使用拉伸增广时的要低。浅层的编码器倾向于输出一致性的信号,对特征的提取有限,仅在编码器深层有一定大尺度特征体现。即使映射重点激活值域,其提取的特征区分度也依旧不理想。另一边,当使用拉伸增广时,编码器的第一层即能够差异性地分辨前后景(前景为绿色的较高值,后景为较低的深蓝色值)。
4.4. 基于像素梯度分布的神经计算有效性分析
在本文第3节中已经提及,反向梯度图能够展示训练过程中CT切面的不同部分是否对损失函数的计算具有影响力。如果梯度仅聚集在较小的范围内,则提示神经网络关注的特征尺度小,容易引发梯度不稳定,同时也意味着大多数神经元计算并不为最终的参数更新做出显著贡献[23]。
本节通过在PyTorch的forward函数过程中执行反向梯度注入(Backward Hook),可视化编码器梯度,分析来自于目标损失函数的梯度在传导至神经网络数据输入端时的像素尺度梯度分布情况。从图8中可知,在不使用拉伸映射时,仅靠近横断面中央的部分像素拥有梯度,而当使用增广后,梯度分散到了更大的区域中。特别地,在靠近右上角的区域有显著的增强,而这正对应着大多数患者的胃癌CT病灶在最大病灶横断面上的位置。
梯度不显著的像素意味着在其位置进行的神经计算对最终的模型预测的贡献是相对微弱的,即有大量的可被剪枝的神经元计算操作。本文所提出的方法让神经网络的有效计算操作的像素相对范围变高了,分布更广了,即提高了神经计算效率。
(a) 禁用拉伸
(b) 启用拉伸
图8. 编码器梯度
Figure 8. Encoder gradients
4.5. 神经隐空间的特征主成分分析
端到端分割任务能够体现神经网络在目标分割任务上的定位、分类能力,但不能够体现不同的策略对神经隐空间的影响。虽然分析神经网络作出判断的具体依据至今依旧是难点,但由于在胃癌分割中只涉及两个类(正常组织区域、病灶组织区域),所以我们能够使用主成分分析来尝试解析出在高维隐空间中是否存在两个互相分离的主成分特征(PC)。本节引入假设:主成分分析(PCA)所解析出的两个成分与胃癌的二值分类有关。
(a) 禁用拉伸
(b) 启用拉伸
Figure 9. Binary principal component analysis results of the neural implicit space
图9. 神经隐空间二元主成分分析
从图9中可知,在禁用拉伸时,在第1层的隐空间可见轻微的主成分分离趋势,而在其他层中,隐空间的分离趋势均不明显,这意味着编码器尚未拥有较强的胃癌分辨能力。在使用本文提出的方法之后,深层(第3层)隐空间呈现出两条平行的渐近线,这代表着隐空间中存在着两个重点特征,能够被PCA所解析。
需要注意的是,图9中的隐空间为MedNeXt模型的编码器向解码器传输的空间,采样自模型拟合完成后在89个样本上进行推理时产生的高维特征的平均值。该隐空间的特征会被解码器进一步处理,以生成最终的胃癌分类判断。即使在禁用拉伸时隐空间的特征分离程度不明显,在经过解码器进一步特征映射后,依旧可能得到可用的分类结果,这体现在定量分析部分(3.2节)的精度并不为0。
5. 结论
本研究针对卷积神经网络在CT胃癌影像分析中存在的卷积感受野与CT重建域不一致问题,提出了一种基于仿射拉伸的截面增强方法,旨在通过优化数据分布特征减少神经元的冗余计算。实验结果表明,该方法在多个主流分割模型上显著提升了胃癌病灶的识别效率与精度,为临床快速辅助诊断提供了新的技术思考。本文使用了临床数据源进行再分析,更进一步的研究应当对这类方法在临床场景下医师的接受程度和认可程度作出细致评估。
致 谢
本研究受到了国家自然科学基金项目(61572325);上海市重点科技项目(19DZ1208903)的资助,本文作者团队对上述项目的支持表示感谢。
基金项目
国家自然科学基金项目(61572325);上海市重点科技项目(19DZ1208903)。
NOTES
*通讯作者。