Open yan4821567 opened 4 years ago
降低一下学习率试试,3d unet用的basic block是bn first,学习率要小点
yan4821567 notifications@github.com 于2020年4月14日周二 下午10:41写道:
感谢将代码开源,我看代码里有3Dunet+vae,也有3Dunet,我想使用3Dunet作为baseline看一下分割效果,loss使用自带的dice,但代码里没有直接切换网络的功能,所以我就对代码做了以下修改:
1.在config.py http://1.xn--config-200k.py中把MODEL.NAME 修改为unet,并且修改了data_root
2.在train_val.py http://2.xn--train_val-kd5p.py中修改了训练过程:
output, vout, mu, logvar = model(batch_x) -> output, c4d = model(batch_x)
cfg, output, batch_x, batch_y, vout, mu, logvar -> loss_dict = losses 'dice' http://output,batch_y
meters.update(**loss_dict) #注释掉了meters.update这一行
并 if phase == 'train': optimizer.zero_grad() loss_dict.backward()#直接对loss_dict进行了backward optimizer.step()
在eval过程中修改了dice计算方法 if phase == 'eval': dice = 1 - loss_dict.item() print('dice='+str(dice))
其他基本没有改动,训练时dice从0.1提升到0.3,然后一直是0,请问我是修改成3DUnet哪里思路错了吗 还是说有其他哪里需要注意的?
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/doublechenching/brats_segmentation-pytorch/issues/2, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEMDHZVSTGMXJ4LJFTIATHDRMRY25ANCNFSM4MHZOSVQ .
-- so beautiful
感谢将代码开源,我看代码里有3Dunet+vae,也有3Dunet,我想使用3Dunet作为baseline看一下分割效果,loss使用自带的dice,但代码里没有直接切换网络的功能,所以我就对代码做了以下修改:
1.在config.py中把MODEL.NAME修改为unet,并且修改了data_root
2.在train_val.py中修改了训练过程:
output, vout, mu, logvar = model(batch_x) -> output, c4d = model(batch_x)
cfg, output, batch_x, batch_y, vout, mu, logvar -> loss_dict = losses['dice'] (output,batch_y)
meters.update(**loss_dict) #注释掉了meters.update这一行
并 if phase == 'train': optimizer.zero_grad() loss_dict.backward()#直接对loss_dict进行了backward optimizer.step()
在eval过程中修改了dice计算方法 if phase == 'eval': dice = 1 - loss_dict.item() print('dice='+str(dice))
其他基本没有改动,训练时dice从0.1提升到0.3,然后一直是0,请问我是修改成3DUnet哪里思路错了吗 还是说有其他哪里需要注意的?