2. 大庆市油田总医院 眼科, 大庆 163319
2. Department of Ophthalmology, Daqing Oilfield General Hospital, Daqing 163319, China
近年来, 糖尿病视网膜病变(diabetic retinopathy, DR)已成为全球范围内引起关注的重要健康问题之一. 随着糖尿病患者数量的增加, DR的发病率也在不断上升, 给患者的生活质量和健康带来了严重影响[1]. 早期的DR诊断对于预防和治疗视网膜病变至关重要, 然而, 目前的诊断方法存在着一系列问题.
传统的DR诊断方法主要依赖于人工眼底图像分析, 这种方法受限于医生个体经验和观察技巧, 容易出现分类性能差、耗时费力、视网膜图像等级差异小、病灶不明显等挑战. 同时, 随着医疗技术的发展, 眼底图像的数量和质量不断增加, 传统的人工诊断已经无法满足快速准确诊断的需求. 为解决这一难题, 研究人员提出了糖尿病视网膜病变分类算法, 可准确分类病变程度, 并为医生提供眼底图像的大规模筛查和诊治辅助. 国际眼科协会将DR分为5大类别[2], 每个类别都具有特定的病变特征, 可用于判断眼底图像的病变程度. 然而, 病变特征之间存在较高的重叠性和反复率, 因此对眼底图像中最具代表性的病变特征进行提取, 用于分类, 是一项具有挑战性的任务[3,4]. 在过去的研究中, 研究人员已经利用机器学习、图像分类和模式识别等技术, 开发了用于糖尿病视网膜病变自动筛查的系统. 深度学习(deep learning, DL)技术以其出色的学习和分类能力, 成为医学图像分析和诊断的重要工具. DL有着潜力用于解决糖尿病视网膜病变的识别和分类问题. 卷积神经网络(CNN)作为一种非常受欢迎且有效的深度学习技术, 在医学图像处理领域得到了广泛应用[5].
Shankar等人[6]提出了一种利用EfficientNet架构的深度学习方法来自动检测糖尿病视网膜病变. 在实验中, 研究者分别在两个具有不同类别比例的Kaggle子集上训练了EfficientNet-B4和EfficientNet-B5模型. 实验结果显示, 这种方法在自动早期诊断糖尿病视网膜病变方面取得了良好的效果. Pravin等人[7]提出了基于EfficientNet的深度学习. 作为一种自主检测和分类糖尿病视网膜病变(DR)的方法. 该系统由4个阶段组成: 特征提取、图像增强、分类和图像预处理. 作者通过将形态学方法与对比度限制自适应直方图均衡化相结合, 提高了图像预处理步骤中视网膜图片的质量. 作者还使用二值阈值技术对图像进行分割并消除非视网膜部分. 作者在整个图像增强过程中逐步应用了通道和空间注意的双重注意技术, 以进一步提高图像质量. 通道间关系由通道注意机制跟踪, 通道内关系由空间注意机制捕获.
尽管现有方法能够对糖尿病视网膜病变进行分类, 但分类准确率有待提升. 由于病变类别之间差异细微, 不同拍摄环境和手法可能导致同类别图像的差异较大. 为了解决上述问题, 本文提出了一种名为E2E-DRNet的DR影像自动分类识别方法, 旨在更准确地提取病变特征, 通过融合了有效通道注意力机制(efficient channel attention, ECA)和高效率网络(EfficientNetV2), 实现对病变类型的精确诊断.
1 相关理论 1.1 EfficientNetV2网络2019年, Tan等人[8]提出了一种称为EfficientNet的新颖架构. 它提供了一种通过调整网络宽度、深度和图像分辨率来训练参数更少、精度更高的CNN模型的方法, 使用了MBConv块的反转残差块, MBConv块最初是在 MobileNetV2架构中引入的, 大大减少了参数数量[9]. 对 EfficientNet 架构进行了进一步增强, 并提出了新的 EfficientNetV2 模型[10], 该模型使用了另一个名为 Fused-MBConv的块以及MBConv块.
1.2 有效通道注意力机制近年来, 注意力机制在图像处理领域取得了显著进展. 其中, 有效通道注意力网络(ECANet)[11]是对压缩和激励网络(SENet)[12]的改进. SENet模块通过学习获取不同特征通道的重要程度, 按照重要程度去提升或者抑制信息特征. SENet模块流程结构如图1所示, 卷积操作后依次执行压缩、激励和重加权这3个子过程.
ECANet模块的流程结构如图2所示. 与SENet模块相比, ECANet模块将两个全连接层替换成一维卷积, 其核大小可以通过通道维度的非线性映射自适应确定. 首先在输入特征上实现通道全局平均池化(channel-wise global average pooling, GAP), 而不进行降维. 然后通过尺寸为
SENet使用全连接层进行全局信息聚合, 会忽略局部交互信息. 相比之下, ECANet通过引入一维卷积核, 使得每个通道和其邻近通道的信息得以更好地保留和交互, 从而更有效地捕捉到局部特征. SENet模块中全连接层的引入增加了计算量和参数数量. 而ECANet通过使用一维卷积, 避免了降维和升维操作, 能够减少模型的复杂度, 使得模型更轻量化.
1.3 Focal Loss损失函数
医学分类任务中, 由于健康样本相对更容易获取, 数据分布通常不平衡. 在DR分类中, 数据不均衡严重. 常用的交叉熵(cross-entropy, CE)损失函数未考虑这一问题, 可能导致模型偏向预测多数类别. 为解决这一挑战, 本文引入Focal Loss[13]作为损失函数, 减轻易学样本的权重, 提高对少数类别的关注, 改善分类性能.
Focal Loss是基于CE损失函数的改进. CE损失函数的表达式如下:
$ {L}_{{\mathrm{CE}}}(p, y)=-\sum _{i}{y}_{i}{\mathrm{log}}\left({p}_{i}\right) $ | (1) |
其中,
使用Softmax将数据集中的DR样本分为5类,
$ {p}_{t}=\frac{{{\mathrm{e}}}^{\left({a}_{t}\right)}}{\displaystyle\sum _{i=1}^{5}{{\mathrm{e}}}^{\left({a}_{j}\right)}} $ | (2) |
其中,
在式(2)基础上改进的Focal Loss公式如下:
$ FL=-\alpha {\left(1-{p}_{t}\right)}^{\gamma }\mathrm{log}\left({p}_{t}\right) $ | (3) |
其中,
EfficientNetV2网络的核心组成部分是Fused-MBConv模块. 本文对该模块进行了改进, 旨在减少模型复杂度的同时提高对DR样本的识别率. 改进后的Fused-MBConv模块如图3所示. 在该模块中, 首先执行Conv 3×3的升维操作, 然后利用注意力机制SENet模块调整特征矩阵, 通过学习自动确定每个特征通道的重要性, 以更好地保留关键的特征信息, 最后通过Conv 1×1进行降维输出. 在调整注意力机制时, 使用ECANet模块替换了原始模型中的SENet模块, 确保自动学习到每个通道的重要性, 同时有效降低模型的复杂度, 从而提升性能.
2.2 E2E-DRNet
本文在EfficientNetV2基础上, 提出一种融合有效通道注意力机制的网络模型(E2E-DRNet), 如图4所示. 这种网络可以自主学习到重点患病区域并且提供一定的医学可解释性, 实现性能的进一步提升. E2E-DRNet模型的结构由16个的改进的Fused-MBConv模块、2个卷积层和1个全连接层组成. 本文的E2E-DRNet的主要区别在于将原来的Fused-MBConv模块替换为新的Fused-MBConv模块. E2E-DRNet架构有以下3个阶段: 首先, 将待分类的DR图像输入模型中, 进行图像预处理, 得到第1阶段的结果. 经过卷积操作, 112×112×32的输出特征图进入下一阶段; 上一阶段输出的112×112×32特征图进入改进的Fused-MBConv模块层. 接下来, 7×7×320的输出特征图进入下一阶段; 将输入的7×7×320图像按照以下顺序进行操作, 得到模型的最终分类结果.
3 实验分析 3.1 数据集简介实验选择DDR数据库[14], 由7名经过训练的评分员将这些图像分为5类. 没有清晰可见病灶的低质量图像被认为是不可分级的. 在本文的实验中, 只关注DR分级任务; 即不使用属于不可分级类的图像. 因此, 训练、验证和测试图像分别为
3.2 数据预处理
在神经网络训练之前, 对眼底图像进行预处理, 包括剔除质量差的图像、去除无关黑色背景、统一分辨率为224×224、使用CLAHE进行图像增强、进行数据增强以解决数据不均衡问题. 经过预处理后, 图像数据准备好用于神经网络训练. 预处理前后的图像分别如图6(a)和图6(b)所示, DDR数据集数据分布如图7所示.
3.3 实验环境与参数设置硬件设备参数包括NVIDIA GeForce RTX 4090 GPU、13th Gen Intel(R) Core(TM) i5-13400F CPU和32 GB运行内存. 软件环境包括Windows操作系统, PyTorch 1.10.1深度学习框架, Python 3.8开发语言, 以及PyCharm集成开发环境.
模型的超参数设置如下: 学习率为1E–4, batch size为16, 训练轮数为150, 优化器选用Adam优化器.
3.4 评价指标
评估指标在决定一个训练好的模型的性能方面发挥着巨大的作用. 使用测试准确率、精确率、召回率、F1分数和混淆矩阵评估E2E-DRNet模型在该数据集上的性能. 评估指标相关公式在式(4)–式(7)中给出:
$ {A}{c}{c}{u}{r}{a}{c}{y}=\frac{TP+TN}{TP+TN+FP+FN} $ | (4) |
$ {P}{r}{e}{c}{i}{s}{i}{o}{n}=\frac{TP}{TP+FP} $ | (5) |
$ {R}{e}{c}{a}{l}{l}=\frac{TP}{TP+FN} $ | (6) |
$ F1{\textit{-}}{s}{c}{o}{r}{e}=\frac{2\times\left({Precision}\times{Recall}\right)}{{Precision}+{Recall}} $ | (7) |
其中, TP (true positive)指的是正例被正确识别的样本, TN (true negative)是负例被正确识别为负例的样本, FP (false positive)是负例被错误识别为正例的样本和FN (false negative)是正例被错误识别为负例的样本.
3.5 实验结果本文首先进行了第1阶段的粗分类, 将眼底图像分为两类: DR患者和No DR患者. 接下来, 进行了第2阶段的细分类, 将DR患者的眼底图像进一步分为4类: 轻度非增殖性糖尿病视网膜病变(Mild NPDR)、中度非增殖性糖尿病视网膜病变(Moderate NPDR)、重度非增殖性糖尿病视网膜病变(Severe NPDR)和增殖性糖尿病视网膜病变(PDR).
3.5.1 DDR数据集的实验结果为了验证改进的Fused-MBConv模块在DR分类任务中的有效性以及减少模型复杂性方面的有效性, 本文进行了实验验证. 将Fused-MBConv模块中的SENet替换为ECANet, 表1显示了使用原始和改进模块的对比结果. 实验结果表明, 在二分类任务中, 改进的Fused-MBConv模型在各项指标上均优于原始Fused-MBConv模型, 且在参数量和计算量方面有明显的减少, 表明改进后的模型更加高效. 在四分类任务中, 改进的Fused-MBConv模型同样表现出更高的正确率、精确率、召回率和F1分数, 进一步验证了其在多分类任务中的有效性. 通过引入ECANet替换SENet, 改进后的Fused-MBConv模块在提升分类性能的同时显著减少了模型复杂性.
图8(a)和(b)分别是模型在测试集二分类和四分类任务的混淆矩阵图, 表2为评价指标结果表, 可以直观地得出以下结论.
在二分类任务中, 模型的整体性能表现出色. No DR类别的精确度高达98.74%, 这表示在所有被模型预测为No DR的样本中, 有98.74%是真正属于No DR类别的; 同时, DR类别的召回率达到了98.78%, 这说明模型能够有效地捕捉到DR类别的大部分实例. 这两者的结合使得模型在准确度和F1分数上都取得了很好的结果.
对于四分类任务, 模型在轻度、中度和PDR类别上表现良好, 具有较高的精确度、召回率和F1分数. 特别是中度NPDR类别, 其精确度和召回率均超过了98%, 表明模型能够有效地将该类别与其他类别区分开来. 本文与其他深度模型进行了对比, 表3是本文与其他方法的对比结果, 可以看出本文模型在二分类以及四分类准确率优于其他方法.
图9显示了使用CE和Focal Loss训练的E2E-DRNet模型在训练过程中的损失收敛曲线. 从图9可以看出, 使用Focal Loss的模型收敛速度更快, 早期阶段的损失下降更显著, 表明 Focal Loss 更快地引导模型关注难分类样本.
3.5.2 临床数据集的实验结果
本文对临床数据集进行了深入的测试, 图10(a)和(b)分别是模型在二分类和四分类任务的混淆矩阵图, 表4为评价指标结果表, 综合而言, 该模型在临床数据集上表现良好, 通过与DDR数据集的实验结果进行对比分析, 可以更全面地评估模型的稳定性和有效性. 临床数据集的实验结果进一步证实了模型在不同类型数据集上的良好表现, 这为其在实际临床应用中的可行性提供了有力支持.
3.5.3 模型可解释性分析
为了验证模型的可解释性, 更好地理解E2E-DRNet的效果, 本文使用Grad-CAM[19]对结果进行可视化. 展示了5个DR等级(从左到右, 分别为No DR、Mild NPDR、Moderate NPDR、Severe NPDR和PDR). 顶行提供原始图像, 其中黄色箭头指示病变区域. 第2行显示了热图结果. 通过图11的可视化结果, 可以发现模型关注的区域与人工标注的病变区域一致, 说明模型在定位病变方面的表现良好. 这种可视化效果使得模型的工作过程更具可解释性, 有助于与临床医生交流和理解模型的工作方式.
4 结论与展望
本文提出了一种名为E2E-DRNet的分类模型, 结合了融合有效通道注意力机制的EfficientNetV2, 用于糖尿病视网膜病变的识别. 通过在公开数据集和某医院的临床数据上验证模型的有效性, 研究证实了该模型在提高分类准确率和增强可解释性方面的有效性. 通过引入注意力机制和使用Grad-CAM可视化技术, 不仅提高了模型的分类准确率, 还增强了模型的可解释性.
尽管该研究取得了积极的结果, 模型在临床数据集上表现良好, 尤其是在二分类任务中具有较高的准确度和F1分数, 但是在四分类任务中仍存在一些挑战. 特别是在识别中度和重度NPDR类别时, 模型的表现不尽如人意, 可能需要进一步的优化和改进. 例如, 增加样本数据、调整模型参数或改进特征工程方法等, 都是可能的改进方向.
[1] |
刘婷婷, 覃心宇, 李芬, 等. 糖尿病视网膜病变国内外预防经验及启示. 中国初级卫生保健, 2023, 37(5): 51-54. DOI:10.3969/j.issn.1001-568X.2023.05.0013 |
[2] |
孙石磊, 李明, 刘静, 等. 深度学习在糖尿病视网膜病变分类领域的研究进展. 计算机工程与应用, 2024, 60(8): 16-30. DOI:10.3778/j.issn.1002-8331.2307-0330 |
[3] |
Sungheetha A, Sharma RR. Design an early detection and classification for diabetic retinopathy by deep feature extraction based convolution neural network. Journal of Trends in Computer Science and Smart Technology (TCSST), 2021, 3(2): 81-94. DOI:10.36548/jtcsst.2021.2.002 |
[4] |
赵爽, 穆鸽, 赵文华, 等. 基于特征融合网络的糖尿病视网膜病变分类. 激光与光电子学进展, 2023, 60(14): 1417001. |
[5] |
张志强, 赵可辉, 牛惠芳, 等. 深度学习在糖尿病视网膜病变分级中的应用. 计算机系统应用, 2024, 33(1): 231-244. DOI:10.15888/j.cnki.csa.009368 |
[6] |
Shankar K, Sait ARW, Gupta D, et al. Automated detection and classification of fundus diabetic retinopathy images using synergic deep learning model. Pattern Recognition Letters, 2020, 133: 210-216. DOI:10.1016/j.patrec.2020.02.026 |
[7] |
Pravin SC, Sabapathy SPK, Selvakumar S, et al. An efficient DenseNet for diabetic retinopathy screening. International Journal of Engineering and Technology Innovation, 2023, 13(2): 125-136. DOI:10.46604/ijeti.2023.10045 |
[8] |
Tan MX, Le QV. EfficientNet: Rethinking model scaling for convolutional neural networks. Proceedings of the 36th International Conference on Machine Learning. Long Beach: ICML, 2019. 6105–6114.
|
[9] |
Sandler M, Howard A, Zhu ML, et al. MobileNetV2: Inverted residuals and linear bottlenecks. Proceedings of the 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City: IEEE, 2018. 4510–4520.
|
[10] |
Tan MX, Le QV. EfficientNetV2: Smaller models and faster training. Proceedings of the 38th International Conference on Machine Learning. ICML, 2021. 10096–10106.
|
[11] |
Wang QL, Wu BG, Zhu PF, et al. ECA-Net: Efficient channel attention for deep convolutional neural networks. Proceedings of the 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Seattle: IEEE, 2020. 11531–11539.
|
[12] |
Hu J, Shen L, Sun G. Squeeze-and-excitation networks. Proceedings of the 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City: IEEE, 2018. 7132–7141.
|
[13] |
Dina AS, Siddique AB, Manivannan D. A deep learning approach for intrusion detection in Internet of Things using focal loss function. Internet of Things, 2023, 22: 100699. DOI:10.1016/j.iot.2023.100699 |
[14] |
Li T, Gao YQ, Wang K, et al. Diagnostic assessment of deep learning algorithms for diabetic retinopathy screening. Information Sciences, 2019, 501: 511-522. DOI:10.1016/j.ins.2019.06.011 |
[15] |
He KM, Zhang YX, Ren SQ, et al. Deep residual learning for image recognition. Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016. 770–778.
|
[16] |
Szegedy C, Vanhoucke V, Ioffe S, et al. Rethinking the inception architecture for computer vision. Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Las Vegas: IEEE, 2016. 2818–2826.
|
[17] |
Huang G, Liu Z, Van Der Maaten L, et al. Densely connected convolutional networks. Proceedings of the 2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu: IEEE, 2017. 2261–2269.
|
[18] |
Simonyan K, Zisserman A. Very deep convolutional networks for large-scale image recognition. Proceedings of the 3rd International Conference on Learning Representations. San Diego: ICLR, 2015.
|
[19] |
Panwar H, Gupta PK, Siddiqui MK, et al. A deep learning and Grad-CAM based color visualization approach for fast detection of COVID-19 cases using chest X-ray and CT-scan images. Chaos, Solitons & Fractals, 2020, 140: 110190.
|