基于深度学习ResNet50模型的儿童肺炎分类研究
2024-12-12王泰乐袁芳梅李所艳郭玉洁牛玉霞
关键词:肺炎;X射线图像;深度学习;ResNet50;分类;计算机辅助诊断
0 引言
肺炎是一种常见的严重呼吸道感染疾病,对儿童的健康和生命构成了严重影响[1]。据世界卫生组织统计, 每年约有150万儿童因肺炎而死亡,死于肺炎的儿童人数超过死于疟疾、腹泻和麻疹的儿童总和[2]。儿童肺炎主要表现为呼吸道感染、发热、疲倦乏力及咳痰等症状[3]。然而,多项研究表明,仅通过儿童的主要表现来判断其是否患有肺炎缺乏敏感性和特异性,可能导致误诊或过度治疗[4]。因此,早期准确判断儿童是否患有肺炎对其生命健康至关重要[5]。
深度学习在肺炎诊断中展现出显著优势。它通过分析大量的医学影像和病历数据,能够快速、准确地诊断肺炎,并提供相应的治疗建议。此外,深度学习模型具有高准确性、可扩展性、高效性、自动化以及辅助决策等优点,已成为肺炎诊断领域的重要工具。本文提出了一种基于ResNet50 的儿童肺炎分类模型。在公开的儿童肺炎X光数据集上经过训练和优化,利用深度学习ResNet50 模型自动学习儿童肺炎X光图像中的病灶信息,实现肺炎的分类,并在准确率、精确率、召回率和F1 分数这四个评价指标上进行实验结果的验证和评估。与传统肺炎诊断方法相比,基于ResNet50的儿童肺炎分类模型表现出更好的泛化性和鲁棒性,对儿童肺炎的计算机辅助诊断具有积极的意义。
1 方法
1.1 基于深度学习的ResNet50网络
针对儿童肺炎的问题,本文提出了一种ResNet50 模型,如图1所示,该模型用于儿童肺炎图像分类。其结构主要包括输入层、卷积层、残差块、全局平均池化层和分类器,具体流程如图1所示。
首先,将特征图大小为224×224的儿童肺炎X射线图像输入7×7卷积层和最大池化层进行特征提取,对特征图进行下采样,同时通过批量归一化和ReLU激活函数处理,最终输出大小为56×56的特征图。
其次,将输出大小为56×56的特征图经过Stage I 至Stage IV 的处理,最终得到7×7 的特征图。每个Stage由若干个残差块组成,残差块包含两个1×1卷积和一个3×3卷积,并且每个卷积后面都接有BN层和ReLU激活函数。通过3×3卷积提取特征,并引入1×1 卷积以调整通道数,从而提高计算效率。最后,加入残差连接以缓解梯度消失,并帮助模型更快地收敛。
最后,将特征图输入全连接层中进行儿童肺炎X 射线图像分类。全连接层将特征图转换为一维向量,并进行分类操作。通过学习适合任务的特征映射,使得网络能够对不同的输入样本做出正确的分类。
ResNet50在儿童肺炎图像分类中表现出高准确性,其深层网络结构和残差块的设计使得网络能够有效提取特征信息。通过残差连接,解决了深层网络中的梯度问题。多个残差块的堆叠有助于提取高层次的抽象特征,从而提高分类准确性。同时,ResNet50具有较强的鲁棒性和泛化能力,能够抵抗噪声和干扰。
1.2 卷积计算
卷积计算图是描述卷积神经网络中卷积操作的一种图形表示,如图2所示。在深度学习中,卷积操作是一种有效的方式,用于从输入数据中提取特征。在ResNet50模型中,卷积操作通过权值共享来提取特征。输入一个大小为224×224的特征图,每个像素包含RGB三个通道。卷积核是一个3×3的矩阵,对应每个通道的权重值。对于每个像素,将3×3窗口中的像素值与卷积核对应的权重相乘并求和,从而得到新的特征图的像素值。重复这一过程,直到遍历完整个输入特征图。在卷积计算中,还添加了一个偏置项,其值为1,用于引入偏移值以进一步调节特征图的响应。最终得到的输出特征图尺寸与输入特征图的尺寸相同,均为224×224。整个卷积过程通过卷积核的权重共享实现,即卷积核在整个特征图上进行滑动计算,这可以减少网络中的参数量,加快计算速度,同时能够提取图像的局部特征以捕捉图像的空间局部性。
2 实验及结果分析
2.1 数据集
实验所用数据集是由广东市妇幼保健中心整理并公开的肺炎X射线数据集ChestRay2017[6]。该数据集包含5 856张X射线图像,其中正常图像1 583张,肺炎图像4 273张,如图3所示。为了进行实验,笔者将数据集按照6∶2∶2的比例分成训练集、验证集和测试集。对于肺炎X射线图像,将其输入尺寸设置为224×224,并将训练图像的尺寸缩放至256×256。此外,笔者还对训练集进行了随机的水平和垂直翻转以增强数据集。最后,将训练集转换为向量格式,并进行像素值归一化,使其像素值范围保持在0至255之间。
2.2 实验环境
本文的实验环境配置如下:操作系统为WindowsServer 2019;内存为256GB;中央处理器由两块IntelXeon Gold 6154处理器构成,主频为3GHz,共有36个CPU 核心;图像处理器采用两块并行的TITAN V 显卡;使用的编程环境为PyCharm;开发框架基于GPU 的PyTorch;优化器为随机梯度下降优化器(StochasticGradient Descent, SGD) 。此外,不同模型均使用相同参数进行训练,最终选择验证集中最小损失对应的权重,用于测试集的评估。
2.3 评价指标
为全面评估本文方法的分类性能,通过准确率(Accuracy, Acc) 、召回率(Recall, Rec) 、精确率(Preci⁃sion, Pre) 及F1值(F1 Score, F1 Score) 四项指标来评估模型的有效性,相关公式如(1)~(4)所示。其中,TP(True Positive) 表示样本为正类且预测为正类;FP(False Positive) 表示样本为负类且预测为正类;FN(False Negative) 表示样本为正类但预测为负类;TN(True Negative) 表示样本为负类且预测为负类。根据这四个指标的值构造混淆矩阵,以可视化分类结果。
2.4 实验结果
2.4.1 模型对比实验结果
模型对比实验结果如表1所示。
2.4.2 混淆矩阵可视化
混淆矩阵(Confusion Matrix) ,又称可能性矩阵或错误矩阵。在图像精度评价中,混淆矩阵主要用于比较分类结果与实际测得值,展示分类模型在预测过程中对哪些部分产生了混淆,从而全面评估分类模型的性能和效果。图4显示了ResNet50与ResNet18的对比混淆矩阵:
在混淆矩阵中,各数值反映了分类模型性能的不同方面。在这种情况下,有153个样本被正确分类为正类,而仅有9个样本错误分类为负类。此外,只有6 个样本被错误分类为正类,而334个样本被正确分类为负类。这表明模型训练中有效数据的准确率高达95%以上。相较之下,在本实验中,ResNet50的效果明显优于ResNet18。
3 结论
肺炎不仅会影响儿童的呼吸系统,增加呼吸困难和呼吸衰竭的风险,还可能引发其他器官的并发症,例如心脏损害和大脑损害,对儿童的健康造成严重影响。因此,通过对大量儿童胸片数据的训练和优化,研究中使用的深度学习ResNet50模型展现了较高的准确性和可靠性。ResNet50模型具备强大的特征提取能力,能够自动学习图像中的关键信息,从而实现对儿童肺炎的准确分类。
与传统肺炎诊断方法相比,基于深度学习ResNet50模型的分类方法在诊断准确性、敏感性和特异性等方面具有显著优势。研究结果表明,准确率(Accuracy) 为96.61%,F1值(F1-score) 为97.53%,精确率(Precision) 为97.96%,召回率(Recall) 为97.71%。基于深度学习ResNet50模型的儿童肺炎分类方法具有较高的泛化能力和鲁棒性,能够有效识别不同类型的儿童肺炎。
综上所述,基于深度学习ResNet50模型的儿童肺炎分类研究证明了其在儿童肺炎诊断中的有效性和可行性,为医生提供了一种新的自动化技术手段,减轻了工作负担,并提高了医疗服务的质量。