Study on Brain Tumor Image Classification Based on Improved MobileViT Model
To address the challenges presented by current deep learning-based brain tumor classification algorithms, which involve numerous parameters and complex computations, we propose a lightweight brain tumor image classification model based on an enhanced version of MobileViT. Firstly, a convolutional block attention module (CBAM) is added to the lightweight model MobileViT to effectively enhance the local and global feature maps. Secondly, a transfer learning approach is used to accelerate the learning speed of the network model on brain tumor images. Additionally, we employ the cosine annealing algorithm to optimize the training process of our proposed lightweight model, facilitating better convergence. Finally, we evaluate the effectiveness of our proposed model on a real brain tumor dataset, comparing it with several state-of-the-art baselines including ResNet, DenseNet121, ShuffleNet, EfficientNet, MobileNet, and MobileViT. The experimental results show that compared to the baseline model, the proposed model in this paper not only significantly improves the accuracy of brain tumor image classification, but also has a lower computational complexity, which meets the requirements of deploying deep learning models in edge computing.
Brain Tumor
脑肿瘤是在大脑、脑干、脊髓等中枢神经系统中形成的一类异常组织生长,是当今发病率和死亡率前十的恶性肿瘤之一
头颅磁共振成像(Magnetic Resonance Imaging, MRI)是一种医学影像学检查技术,MRI可以在不使用X射线的情况下,获取头颅的三维图像,在脑部疾病的诊断中具有重要的作用。脑肿瘤的治疗和预后通常依赖于病理类型和肿瘤分级等关键指标的确定,对脑肿瘤MRI图像进行自动分类,可以帮助医生更快速、准确地诊断脑肿瘤,从而提高治疗效果和患者生存率。
目前,对于脑肿瘤MRI图像的分类方法大致分为两类,一种是基于深度学习的分类方法,另一种则是基于轻量化模型的分类方法。Mengash等
虽然基于CNN的网络模型在脑肿瘤图像数据集上表现出了出色的分类准确性,但传统的CNN架构往往参数量较大,并不利于实际应用。因此,越来越多的研究人员致力于轻量化脑肿瘤分类模型的研究。Lu等
本文以MobileViT_xxs
为了通过整合全局信息来提升模型的分类性能,我们提出了一种新的基于改进MobileViT模型的脑肿瘤图像分类方法,该方法集成了MobileViT、CBAM和迁移学习技术等多种技术。具体的改进包括:(1) 在MobileViT模型中添加了CBAM模块和残差连接机制;(2) 将原始MV2模块中的ReLU6激活函数替换为SiLU激活函数;(3) 在训练过程中使用余弦退火算法更新学习率并使用迁移学习的方法加速模型收敛。
MobileViT block是MobileViT模型的核心部分,其结构如
1) 将输入矩阵 先通过一个 的卷积层以捕捉特征图中的局部空间信息,再通过一个1 × 1的卷积层将特征图投影到高维特种空间中,得到具有局部空间信息的 ,其中 表示输入特征矩阵的高、宽和通道数,d表示经过1 × 1的卷积层调整后的通道数。
2) 将 转换为一系列不重叠的patches表示为 ,其中 , , 是patches的高和宽。
3)
通过Transformer模块
(1)
4) 将 还原为 大小的序列 。随后通过1 × 1卷积将 调整为 的大小并与最初的输入特张图X进行拼接。最后通过一个3 × 3的卷积层进行特征融合。
MV2模块是MobileNetV2
原MV2模块中的激活函数为ReLU6激活函数,是ReLU激活函数的变种之一。虽然ReLU函数解决了正输入的梯度消失问题,但它在负输入时遇到了导数恒为0的难题,导致负区间的梯度消失问题,从而阻碍了许多神经元的更新。因此,本文使用SiLU激活函数代替ReLU6激活函数,SiLU激活函数是Sigmoid和ReLU的改进版本,具有无上界有下界、在接近零时更平滑的特点,在深度网络中的效果优于ReLU。SiLU激活函数的计算如公式(2)所示:
(2)
卷积注意力模块(Convolutional Block Attention Module, CBAM)
通道注意力模块旨在帮助网络识别各通道的重要性,具体计算过程如等式(3)、(4)所示。首先,输入特征分别通过全局平均池化(AvgPool)和全局最大池化(MaxPool)操作提取全局信息。然后,分别通过多层感知机(MLP)对提取到的全局信息进行处理,随后将两部分信息相加再通过一个Sigmoid激活函数得到每个通道的权重向量 。最后,将最初的输入特征F与通道权重向量 相乘,得到通道注意力特征图F1。空间注意力模块则是帮助网络识别不同空间维度的重要性,同理可根据公式(5)、(6)得到空间注意力特征图F2。
(3)
(4)
(5)
(6)
其中, 分别表示输入特征图,通道注意力特征图和空间注意力特征图。 表示全局平均池化, 表示全局最大池化。 表示多层感知机, 是Sigmoid激活函数, 表示逐点乘法, 则表示卷积操作。
迁移学习是一种机器学习方法,旨在将从一个任务或领域学到的知识和经验应用到另一个相关的任务或领域中,以改善学习效果。迁移学习已广泛应用于自然语言处理、计算机视觉等领域。本文提出的分类模型是为计算机视觉中的图像分类任务而设计的。在本文中,我们使用ImageNet数据集对MobileViT进行了预训练,该数据集包含1000个类别和126万张自然图像。尽管自然图像与脑肿瘤图像可能不同,但它们仍然具有相关性。通过迁移学习,模型能够从ImageNet数据集中学习到角、边、颜色、纹理等特征。这些学习到的特征有助于提高模型在脑肿瘤图像分类中的有效性。
学习速率是影响深度学习模型性能的超参数之一。学习速率过大往往会导致模型的振荡,而学习速率过小则会导致非常缓慢的训练过程。余弦退火
本文所使用的数据集来自于Kaggle数据集,是2020年7月由印度杜尔加布尔国家理工学院的Sartaj Bhuvaji等人公开的脑肿瘤MRI四分类数据集
为便于模型训练,本文将图像重新分配标签:胶质瘤标记为0,脑膜瘤标记为1,无肿瘤标记为2,垂体瘤标记为3。并且将图像随机裁剪到224 × 224像素的分辨率大小,然后以0.5的概率随机水平翻转图像,以增强模型的鲁棒性。随后将图像转换为张量类型,并对图像进行标准化处理。标准化后的图像 可表示为:
(7)
其中,
表示图像中每个通道的像素值,
表示图像每个通道中像素值的均值,
表示图像每个通道中像素值的标准差。将处理好的数据集的70%作为训练集,30%作为测试集,其数据分布如
数据集 | 胶质瘤 | 脑膜瘤 | 无肿瘤 | 垂体瘤 | 总计 |
训练集 | 649 | 656 | 350 | 631 | 2286 |
测试集 | 277 | 281 | 150 | 270 | 978 |
总计 | 926 | 937 | 500 | 901 | 3264 |
实验采用Windows 10平台进行训练,并使用Pytorch深度学习框架进行网络构建。该实验基于GPU型号NVIDIA GeForce GTX 1080,15 GB内存。GPU数量为1,CPU数量为8核。实验设置迭代次数为20,BatchSize为30。使用余弦退火算法在训练过程中对学习率进行调整,其中学习率在每个周期开始的最大值设置为0.001,学习率在每个周期结束的最小值设置为0.00001。对比模型的学习率固定为0.0001。所有模型均采用了迁移学习的方法提升模型训练性能。
为评估模型的分类性能,本文采用准确率(Accuracy)、精确率(Precision)、召回率(Recall)和F1值作为评估指标,具体的计算规则如公式(8)、(9)、(10)、(11)所示。
(8)
(9)
(10)
其中TP(True Positive)表示原本为正类样本且预测为正类样本的数量,TN (True Negative)表示原本为负类样本且预测为负类样本的数量,FP (False Positive)表示原本为负类样本但预测为正类样本的数量,FN (False Negative)表示原本为正类样本但预测为负类样本的数量。
为验证本文方法的有效性,分别使用ResNet34
本文采用了10种不同的深度学习模型对脑肿瘤图像数据集进行分类。
1) 本文提出模型在脑肿瘤图像数据集上的分类准确率为97.0%,精确率为97.1%,召回率为97.0%,F1值为97.0%。经过比较,本文所提出模型的所有性能指标都是最佳的,甚至分类准确率比ResNet50高出0.4%。
2) 在基线模型中,ResNet系列网络的分类性能明显优于其他轻量级深度学习模型(DenseNet,ShuffleNet,EfficientNet,MobileNet和MobileViT),这归因于ResNet作为深度残差网络,在图像分类、目标检测和语义分割等许多计算机视觉任务中都表现出了良好的性能。
3) 在基线模型中,MobileViT是轻量级模型中表现最佳的模型,其分类准确率为90.6%,精确率为90.8%,召回率为90.6%,F1值为90.6%。然而与我们提出的模型相比,MobileViT的四个指标都低了近7%,这表明我们提出的模型优于MobileViT。
模型 | 准确率 | 精确率 | 召回率 | F1 | 参数量 | FLOPs |
ResNet50 | 0.966 | 0.967 | 0.966 | 0.966 | 23,516,228 | 4.09826048G |
ResNet34 | 0.963 | 0.964 | 0.963 | 0.963 | 21,286,724 | 3.66699008G |
DenseNet121 | 0.892 | 0.891 | 0.892 | 0.891 | 6,957,956 | 2.848985856G |
ShuffleNetV2_x2_0 | 0.793 | 0.801 | 0.793 | 0.795 | 5,353,192 | 0.584959696G |
EfficientNet | 0.771 | 0.777 | 0.771 | 0.770 | 4,012,672 | 0.393804448G |
MobileNetV3_large | 0.877 | 0.877 | 0.877 | 0.876 | 4,207,156 | 0.220317112G |
MobileNetV3_small | 0.843 | 0.844 | 0.843 | 0.841 | 1,521,956 | 0.057191512G |
MobileNetV2 | 0.773 | 0.776 | 0.773 | 0.774 | 2,228,996 | 0.306178784G |
MobileViT | 0.906 | 0.908 | 0.906 | 0.906 | 952,308 | 0.304916367G |
本文提出模型 | 0.970 | 0.971 | 0.970 | 0.970 | 955,542 | 0.306991777G |
计算复杂度也是深度学习模型的一个重要度量指标,特别是对于部署在边缘设备上的深度学习模型,在本文中我们使用参数量和FLOPs (每秒浮点运算次数)来评估各模型的计算复杂度。从
为验证本文提出的模型的有效性,我们进行了消融实验,以验证改进模块对模型分类性能的影响。实验结果如
模型 | 准确率 | 精确率 | 召回率 | F1 |
MobileViT | 0.906 | 0.908 | 0.906 | 0.906 |
MobileViT + Improved MV2 | 0.958 | 0.958 | 0.958 | 0.958 |
MobileViT + Improved MV2 + Cosine Annealing | 0.966 | 0.966 | 0.966 | 0.966 |
MobileViT + Improved MV2 + Cosine Annealing + CBAM | 0.970 | 0.971 | 0.970 | 0.970 |
为了使脑肿瘤图像分类模型能够应用于移动设备和嵌入式设备,我们提出了一种基于改进的MobileViT的轻量级图像分类模型。首先,利用CBAM模块来提高模型捕获局部信息和融合全局信息的能力。其次,将MV2模块中的激活函数ReLU6替换为更稳健的SiLU激活函数。第三,采用余弦退火算法来更新模型的学习率,以避免模型陷入局部最优点。最后,采用了迁移学习方法,将在ImageNet数据集上预训练好的权重应用于模型中,以提升模型学习速率。大量的实验表明,我们提出的模型在脑肿瘤图像分类方面具有良好的竞争性能。我们开发的低成本智能诊断工具,不仅帮助医学专家和放射技师提供脑疾病的早期诊断,而且适合部署在边缘设备。
在未来的研究中,我们将考虑在更多更大的数据集上进行实验研究。目前我们只研究了三种脑肿瘤,计划通过增加更多的脑肿瘤类别来验证我们的模型的有效性。此外,本文提出的模型是一个轻量级的深度学习模型,虽然这个模型的分类精度高,计算复杂性不是最小的,所以在不降低分类精度的情况下进一步减少计算时间是我们另一个潜在的研究方向。
国家自然科学基金资助项目(72461030)。
*通讯作者。