今天将分享肺炎分类(有无肺炎和肺炎发展严重程度)的完整实现过程,为了方便大家学习理解整个流程,将整个流程步骤进行了整理,并给出详细的步骤结果。感兴趣的朋友赶紧动手试一试吧。
一、比赛背景介绍
任务目标:通过CT 扫描预测发展为严重的COVID-19?预测严重的COVID-19,定义为在获得CT扫描(AUC,主要指标)后一个月内插管或死亡。COVID19的阳性将作为排行榜中的次要指标进行评估。
二、比赛数据集
STOIC 数据集包含来自 10,735 名患者的计算机断层扫描。6448名受试者的 RT-PCR 呈阳性,相当于研究期间疾病流行率为 60.0%。这包括在第一次阴性测试后的第一周内具有阳性 RT-PCR 的受试者。在1个月的随访中,964 例患者死亡(插管后267 例,未插管697例),611例存活但必须在某一时刻插管。总共有24% (1575/6448) 的COVID病例是严重的(严重程度定义为需要一次性插管或死亡)。
参与者可以下载 2000 例CT 扫描(数据集的约 20%),从 STOIC 数据库中随机选择,包括相应的临床标签(RT-PCR ,严重性),用于训练他们的算法。
三、比赛重要时间
2021 年 12 月 6 日:训练数据可用,挑战开始!
2021 年 12 月 23 日:基线算法的存储库已发布,资格赛的提交期开始。
2022 年 3 月 23 日:资格赛中最终提交的截止日期。
2022 年 4 月 1 日:表现最好的参与者将被邀请参加最后一轮。
2022 年 4 月 21 日:最后一轮的提交已结束。
四、技术路线
4.1、有无肺炎二分类
1、对reference文件按照8:1:1分成训练数据,验证数据和测试数据。
2、根据reference文件的probCOVID数值0和1,将训练数据,验证数据和测试数据分成标签0和1的数据。
3、对所有的图像进行统一缩放处理,缩放到固定大小96x96x96,采用(-1000,0)范围对图像进行截断,然后再对图像进行归一化,用均值是0和方差是1的方式进行归一化。
4、网络采用的是VGG163d网络结构,损失是交叉熵,学习率是0.001,droupout是0.5,epoch是80,batchsize是8。
5、训练结果
训练损失函数结果
训练精度函数结果
验证损失函数结果
验证精度函数结果
6、测试结果
ROC曲线及数值
混淆矩阵
分类指标
precision recall f1-score support
0.0 0.90 0.97 0.94 76
1.0 0.98 0.94 0.96 125
avg / total 0.95 0.95 0.95 201
4.2、肺炎严重程度二分类
1、对reference文件按照8:1:1分成训练数据,验证数据和测试数据。
2、根据reference文件的probCOVID是1的数据进行筛选数据,再通过probSevere数值0和1,将训练数据,验证数据和测试数据分成标签0和1的数据。
3、对所有的图像进行统一缩放处理,缩放到固定大小96x96x96,采用(-1000,0)范围对图像进行截断,然后再对图像进行归一化,用均值是0和方差是1的方式进行归一化。
4、网络采用的是VGG163d网络结构,损失是交叉熵,学习率是0.001,droupout是0.5,epoch是80,batchsize是8。
5、训练结果
训练损失函数结果
训练精度函数结果
验证损失函数结果
验证精度函数结果
7、测试结果
ROC曲线及数值
混淆矩阵
分类指标
precision recall f1-score support
0.0 0.99 1.00 0.99 95
1.0 1.00 0.97 0.98 30
avg / total 0.99 0.99 0.99 125