Closed Li-Mingshuang closed 1 year ago
The validating log: 2022-11-30 19:32:44,503 Subject 87/125, BraTS2021_01299_data_f32.pkl, | mri_full: Dice Score: WT: 0.0000, TC: 0.0000, ET: 0.0000 | mri_missF: Dice Score: WT: 0.0000, TC: 0.0000, ET: 0.0000 | mri_missT1ce: Dice Score: WT: 0.0000, TC: 0.0000, ET: 0.0000 | mri_missT1: Dice Score: WT: 0.0000, TC: 0.0000, ET: 0.0000 | mri_missT2: Dice Score: WT: 0.0000, TC: 0.0000, ET: 0.0000 | mri_missF_T1ce: Dice Score: WT: 0.0000, TC: 0.0000, ET: 0.0000 | mri_missF_T1: Dice Score: WT: 0.0027, TC: 0.0000, ET: 0.0000 | mri_missF_T2: Dice Score: WT: 0.0000, TC: 0.0000, ET: 0.0000 | mri_missT1ce_T1: Dice Score: WT: 0.0000, TC: 0.0000, ET: 0.0000 | mri_missT1ce_T2: Dice Score: WT: 0.0000, TC: 0.0000, ET: 0.0000 | mri_missT1_T2: Dice Score: WT: 0.0000, TC: 0.0000, ET: 0.0000 | mri_missF_T1ce_T1: Dice Score: WT: 0.0000, TC: 0.0000, ET: 0.0000 | mri_missF_T1ce_T2: Dice Score: WT: 0.0000, TC: 0.0000, ET: 0.0000 | mri_missF_T1_T2: Dice Score: WT: 0.0000, TC: 0.0000, ET: 0.0000 | mri_missT1ce_T1_T2: Dice Score: WT: 0.0000, TC: 0.0000, ET: 0.0000
And there is no code in 'predict.py' to use these arguments to do inference.
And the occupation of gpu memory fluctuates greatly
(1) As for the validation results, at early training phase, the performance is indeed poor due to random missing modalities inputs. If the log suggests the medium and late training phase, you can check whether the validation data and labels are correctly fed and processed.
(2) Actually, the predict.py lacks the main function to run independently. It can be called by train.py via validate_softmax
function to achieve inference.
(3) As the paper suggested, training D2Net is encouraged to use NVIDIA V100 GPUs with 32GB memory. The occupied GPU memory for one image is 15GB above in the training forward stage.
感谢开源和回复!我会采取你的建议。 这是我训练了175个epoch后测试的结果: mri_full: WT: 0.71720, TC: 0.00421, ET: 0.01306 请问你认为这个结果合理吗,是不是还需要继续训练到论文中说的400个epoch,还是说我训练或测试的方法可能出了什么问题导致TC和ET的dice过低?
感谢你对我们工作的关注! 我认为训练了175 epoch后,mri_full: WT: 0.71720, TC: 0.00421, ET: 0.01306的结果是不正常的,正常情况下在训练100 epoch左右之后,validation上TC和ET的平均dice score可以达到60和30以上,趋于收敛。对于目前这个过低的结果,可以查看一下是否是一下几个原因导致的: (1)数据预处理:特别是对于TC和ET肿瘤区域的mask的处理是否正确; (2)难例:在validation中,可能存在个别样本的TC和ET区域难以识别,导致个别样本效果很低,但大量样本的均值应该是正常水平; (3)超参:由于training数据可能不同,D2Net的性能对于‘’contrast_w‘’, ''kd_dense_fea_attn''等超参比较敏感,可以尝试调节超参来提高性能。
感谢您在D2Net的贡献,我的训练不是很稳定,能把您的权重文件和数据集划分的文件发我邮箱吗?非常感谢 dyq0336@163.com
感谢你对我们工作的关注! 我认为训练了175 epoch后,mri_full: WT: 0.71720, TC: 0.00421, ET: 0.01306的结果是不正常的,正常情况下在训练100 epoch左右之后,validation上TC和ET的平均dice score可以达到60和30以上,趋于收敛。对于目前这个过低的结果,可以查看一下是否是一下几个原因导致的: (1)数据预处理:特别是对于TC和ET肿瘤区域的mask的处理是否正确; (2)难例:在validation中,可能存在个别样本的TC和ET区域难以识别,导致个别样本效果很低,但大量样本的均值应该是正常水平; (3)超参:由于training数据可能不同,D2Net的性能对于‘’contrast_w‘’, ''kd_dense_fea_attn''等超参比较敏感,可以尝试调节超参来提高性能。
谢谢作者的回复,我有参考你的意见去调试网络,不过由于我水平有限,依然碰到了训练不够稳定且训练400个epoch的结果差预期较多的问题,可以把您完整的超参设置和网络权重文件也开源出来或者发到我的邮箱吗,非常感谢!ms.li@siat.ac.cn
感谢你对我们工作的关注! 我认为训练了175 epoch后,mri_full: WT: 0.71720, TC: 0.00421, ET: 0.01306的结果是不正常的,正常情况下在训练100 epoch左右之后,validation上TC和ET的平均dice score可以达到60和30以上,趋于收敛。对于目前这个过低的结果,可以查看一下是否是一下几个原因导致的: (1)数据预处理:特别是对于TC和ET肿瘤区域的mask的处理是否正确; (2)难例:在validation中,可能存在个别样本的TC和ET区域难以识别,导致个别样本效果很低,但大量样本的均值应该是正常水平; (3)超参:由于training数据可能不同,D2Net的性能对于‘’contrast_w‘’, ''kd_dense_fea_attn''等超参比较敏感,可以尝试调节超参来提高性能。
谢谢作者的回复,我有参考你的意见去调试网络,不过由于我水平有限,依然碰到了训练不够稳定且训练400个epoch的结果差预期较多的问题,可以把您完整的超参设置和网络权重文件也开源出来或者发到我的邮箱吗,非常感谢!ms.li@siat.ac.cn
您好,我已经把权重文件发到了您的邮箱 :-)
感谢你对我们工作的关注! 我认为训练了175 epoch后,mri_full: WT: 0.71720, TC: 0.00421, ET: 0.01306的结果是不正常的,正常情况下在训练100 epoch左右之后,validation上TC和ET的平均dice score可以达到60和30以上,趋于收敛。对于目前这个过低的结果,可以查看一下是否是一下几个原因导致的: (1)数据预处理:特别是对于TC和ET肿瘤区域的mask的处理是否正确; (2)难例:在validation中,可能存在个别样本的TC和ET区域难以识别,导致个别样本效果很低,但大量样本的均值应该是正常水平; (3)超参:由于training数据可能不同,D2Net的性能对于‘’contrast_w‘’, ''kd_dense_fea_attn''等超参比较敏感,可以尝试调节超参来提高性能。
谢谢作者的回复,我有参考你的意见去调试网络,不过由于我水平有限,依然碰到了训练不够稳定且训练400个epoch的结果差预期较多的问题,可以把您完整的超参设置和网络权重文件也开源出来或者发到我的邮箱吗,非常感谢!ms.li@siat.ac.cn
您好,我已经把权重文件发到了您的邮箱 :-)
您好,我最近正在进行相关工作的研究,请问可以把权重文件发我一份吗,十分感谢。maggielsy1026@gmail.com
There are some problems in the code.