PaddleSeg icon indicating copy to clipboard operation
PaddleSeg copied to clipboard

[MedicalSeg] Fix MedicalSeg TIPC bugs

Open Bobholamovic opened this issue 1 year ago • 1 comments

主要改动

重写了MedicalSeg部分的TIPC脚本,解决先前存在的如${model_name}提取行号不正确、大量配置文件选项被绕过且未给出任何警告、inference部分不记录执行状态等问题。

目前MedicalSeg部分的TIPC脚本与PaddleSeg主仓库TIPC脚本(只比较基础训推链条)存在的主要区别如下:

  1. MedicalSeg的TIPC脚本不包含parse_extra_args()功能;
  2. MedicalSeg的TIPC脚本不支持AMP训练,因此配置文件中指定的--precision选项会被绕过,并给出一条警告;
  3. 模型导出和推理使用的是best_model/子目录下的模型,而不是最后一次迭代对应的模型;
  4. UNETR模型在训练时只使用单卡,推理时不使用CPU,也不启用MKL-DNN。

其中第2、3、4条是为了使修改后的脚本与修改前执行效果一致;第1条则是考虑到目前MedicalSeg的TIPC脚本还无需添加parse_extra_args()这样较为复杂的功能。

其它改动

修复了MedicalSeg中一部分脚本存在的格式问题。

待解决问题

在调试中发现UNETR的TIPC部分存在如下问题:

  1. 验证时需要的内存太大,动态图跑eval的话1块16G的V100也不够用;
  2. 无法支持MKL-DNN,若强行启用会报卷积输入形状错误。

Bobholamovic avatar Aug 09 '22 16:08 Bobholamovic

训练、评估、导出、推理截图分别如下:

Bobholamovic avatar Aug 10 '22 14:08 Bobholamovic