ResNet18、DenseNet121和ResNet50胸片三分类对比

ResNet18、DenseNet121和ResNet50胸片三分类对比 一、为什么要训练三个模型三个模型解决的是同一个任务但网络结构不同ResNet18层数较浅残差结构简单推理速度快ResNet50网络更深使用瓶颈残差块参数量更大DenseNet121层与层之间密集连接特征复用能力较强。对比实验必须尽量控制变量。三个模型应使用相同的数据划分、输入尺寸、数据增强、类别顺序和评价方法。否则指标差异可能来自实验条件而不是网络结构。二、实验结果本项目得到的测试结果如下模型参数量/M准确率Macro-F1正常召回细菌性召回病毒性召回推理耗时/msResNet1811.180.82370.82390.89310.78200.831035.70DenseNet1216.960.80680.80670.88050.77160.795886.20ResNet5023.510.80170.80200.92450.75780.753584.10从结果看ResNet18 的准确率和 Macro-F1 最高同时推理速度最快因此被选为系统默认模型。三、为什么模型更深却不一定更准确“网络越深效果越好”只在一定条件下成立。ResNet50 在本项目中没有超过 ResNet18可能有以下原因数据集规模有限深层模型更容易过拟合胸片类别之间的差异较细数据质量和标签噪声可能成为主要瓶颈不同架构对学习率、冻结层数和训练轮数的最佳设置不同更大的模型需要更多训练数据和更充分的超参数搜索单次实验会受到随机初始化和数据顺序影响。因此选择部署模型不能只看网络深度或参数量。四、为什么使用Macro-F1准确率的计算方式是Accuracy 正确预测数量 / 总样本数量当各类别样本数量不均衡时准确率可能被数量最多的类别主导。Macro-F1 会分别计算每个类别的 F1再取算术平均Macro-F1 (F1_normal F1_bacteria F1_virus) / 3它给予三个类别相同权重更适合观察模型是否只擅长某一个类别。五、如何理解类别召回率召回率表示某一类别的真实样本中有多少被模型成功找出Recall TP / (TP FN)ResNet50 的正常类召回率达到 0.9245但细菌性和病毒性肺炎召回率较低。这说明它更容易识别正常胸片却可能漏掉更多肺炎样本。医疗辅助场景不能只追求某一个类别的高指标需要综合观察各类别表现。六、选择部署模型的原则模型选择可以综合考虑Macro-F1 和准确率重点类别召回率单张推理耗时参数量和内存占用Grad-CAM 是否关注合理区域在真实部署环境中的稳定性。本项目最终选择 ResNet18是因为它在效果和效率之间取得了更好的平衡而不是因为它名字更简单。七、实验还可以怎样改进更严格的实验可以让每个架构使用不同随机种子重复训练三至五次并报告平均值和标准差。例如ResNet18 Macro-F1 0.824 ± 0.006还可以增加交叉验证、置信区间、ROC-AUC、PR 曲线以及错误样本分析。毕业设计如果时间有限至少要保证三个模型的数据划分和评价流程一致。八、总结训练多个模型的目的不是凑数量而是通过受控实验回答“哪种架构更适合当前任务”。本实验说明参数更多、网络更深并不必然带来更好的结果最终模型应依据效果、速度和风险共同选择。参考标签ResNet18ResNet50DenseNet121模型对比深度学习胸片分类