在之前的这篇文章: 【3D 图像分割】基于 Pytorch 的 VNet 3D 图像分割2(基础数据流篇) 的结尾处,我们提到了在训练阶段遇到的下面这个问题:
在采用vent模型进行3d数据的分割训练任务中,输入大小是16*96*96,这个的裁剪是放到Dataset类里面裁剪下来的image和mask。但是在训练时候发现几个问题:
- 加载数据耗费了很长时间,从启动训练,到正式打印开始按batch循环,这段时间就有30分钟
batch=64, torch.utils.data.DataLoader里面的num_workers=8,训练总是到8的倍数时候,要停顿较长时间等待- 4个GPU并行训练的,GPU的利用率长时间为0,偶尔会升上去,一瞬间又为0
free -m查看的内存占用,发现buff和cache会逐步飙升,慢慢接近占满。
请问出现这种情况,会是哪里存在问题啊?模型是正常训练和收敛拟合的也比较好,就是太慢了。分析myDataset数据读取的代码,有几个地方可能是较为耗时,和占用内存的地方:
g
基于Pytorch的VNet 3D图像分割数据处理
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



