上一篇分享了改进版的肺炎分类案例,今天将分享新冠肺炎,病毒肺炎,无肺炎的三分类在测试数据上的多种组合试验过程,为了方便大家学习理解整个流程,将整个流程步骤进行了整理,并给出详细的步骤结果。感兴趣的朋友赶紧动手试一试吧。
一、比赛介绍
2019年冠状病毒病 (COVID-19) 已在全球蔓延,并在全球范围内造成了前所未有的破坏。人工智能技术可以在帮助抗击这一流行病方面发挥重要作用。此外,学习的经验有助于对抗和预防未来的流行病。多家医院和卫生专业人员共享了来自多种模式的 COVID-19 图像,以帮助推进该领域的研究。
该挑战旨在开发一种能够在胸部 X 射线图像中检测 COVID-19 的多类分类算法。该数据集包含3个图像类别:COVID-19、肺炎和正常(健康)。通过 20,000 多张图像,参与者可以训练算法来解决这一挑战。将发布一个测试集,并将用于对所获得的结果进行基准测试。
二、数据介绍
该数据集包含 20,000 多张图像和 3 个类别:COVID-19、肺炎和正常(健康)。数据分为训练集和验证集,可用于开发和调整检测/分类算法。后面将发布一个测试集,其中包含一组要归入 3 个类别之一的图像。将提供一个示例提交文件。参与者需要使用与示例提交文件相同的格式将他们的分类结果上传到测试集。
训练集和验证集:17,955 张CXR图像和3,430张CXR图像
数据集下载链接:
https://cxr-covid19.grand-challenge.org/Download/
评估三个标准:准确度、灵敏度和特异性。
三、技术路线
1、下载好数据集后,数据已经分配好训练集和验证集,读取X光图像并生成对应标签值,正常是标签0,COVID-19是标签1,肺炎是标签2,并生成训练集和验证集。
2、对所有的图像进行统一缩放处理,大小统一大小是256x256,图像归一化,采用均值是0和方差是1的方式进行归一化。
3、网络采用的是VGG16网络结构,损失函数是交叉熵,学习率是0.001,droupout是0.5,epoch是20,batchsize是64.
4、训练结果
训练损失函数结果
训练精度函数结果
验证损失函数结果
验证精度函数结果
四、不同方法测试集结果
4.1、交叉熵损失函数的测试集结果
4.2、多类别focalloss损失函数的测试集结果
4.3、将损失函数换成多类别focalloss和多类别交叉熵的混合损失函数,alpha是1:1:1,gama是2,两个损失权重是1:1。
训练损失函数
训练精度函数
验证损失函数
验证精度函数
验证集结果
三组ROC曲线及数值
标签0与其他标签
标签1与其他标签
标签2与其他标签
混淆矩阵
分类指标
precision recall f1-score support
0.0 0.91 0.89 0.90 1000
1.0 0.99 0.96 0.98 1432
2.0 0.86 0.90 0.88 1000
avg / total 0.93 0.93 0.93 3432
测试集结果
最终肺炎分类比赛排名