Closed xauat-liushipeng closed 3 years ago
可以发下你dataset的config吗
dataset_type = 'CocoDataset' data_root = 'data/'
img_norm_cfg = dict( mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) train_pipeline = [ dict(type='LoadImageFromFile'), dict(type='LoadAnnotations', with_bbox=True), dict(type='Resize', img_scale=(1447, 2048), keep_ratio=True), dict(type='RandomCrop', crop_size=(1600, 1440)), dict(type='RandomFlip', flip_ratio=0.5), dict(type='Normalize', img_norm_cfg), dict(type='Pad', size_divisor=32), dict(type='DefaultFormatBundle'), dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels']), ] test_pipeline = [ dict(type='LoadImageFromFile'), dict( type='MultiScaleFlipAug', img_scale=(1583, 2048), flip=True, transforms=[ dict(type='Resize', keep_ratio=True), dict(type='RandomFlip'), dict(type='Normalize', img_norm_cfg), dict(type='Pad', size_divisor=32), dict(type='ImageToTensor', keys=['img']), dict(type='Collect', keys=['img']), ]) ] data = dict( samples_per_gpu=1, workers_per_gpu=2, train=[ dict( type=dataset_type, ann_file=data_root + 'annotations/train.json', img_prefix=data_root + 'train/', pipeline=train_pipeline), ], val=dict( type=dataset_type, ann_file=data_root + 'annotations/val.json', img_prefix=data_root + 'val/', pipeline=test_pipeline), test=dict( type=dataset_type, ann_file=data_root + 'annotations/test.json', img_prefix=data_root + 'test/', pipeline=test_pipeline)) evaluation = dict(interval=1, metric='bbox')
类别只分了一类 classes = ('formula')
上一个问题解决了确实是数据集cfg的问题,目前还有个问题就是Ranger不可用,说是mmcv not registry
上一个问题解决了确实是数据集cfg的问题,目前还有个问题就是Ranger不可用,说是mmcv not registry
Ranger是我自行加进mmdet里面的,所以需要在本工程代码根目录上运行pip install -e -v .
或者python setup.py develop
好的,感谢您耐心答复
我也卡在了Ranger。 完全按照了您的安装步骤安装,但仍然报错 KeyError: 'Ranger is not in the optimizer registry'
我也卡在了Ranger。 完全按照了您的安装步骤安装,但仍然报错 KeyError: 'Ranger is not in the optimizer registry'
刚刚修复了Ranger不可用的bug,pull最新的code试试,或者可以参考自定义添加Optimizer的文档customize_runtime.md
新的修复依旧报错。不过我自己修复了。
修改ranger.py
from mmcv.runner.optimizer import OPTIMIZERS @OPTIMIZERS.register_module() class Ranger(Optimizer): ……
紧接着,将'../base/schedules/schedule_2x.py'中optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)注释掉,否则会引发momentum的keyerror
最后,将mmdet/models/dense_heads中gfl_head.py 对应最新版mmdetection的同文件对应修改,否则会引发torch在reduce时float和long类型不统一的问题。
目前code可以正常运行,但强烈建议团队再次做code review,不知道还有没有其他隐藏问题。
感谢对bug的修复,近期我会做一次code review,还遇到问题的话及时提issue
新的修复依旧报错。不过我自己修复了。
修改ranger.py
from mmcv.runner.optimizer import OPTIMIZERS @OPTIMIZERS.register_module() class Ranger(Optimizer): ……
紧接着,将'../base/schedules/schedule_2x.py'中optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)注释掉,否则会引发momentum的keyerror
最后,将mmdet/models/dense_heads中gfl_head.py 对应最新版mmdetection的同文件对应修改,否则会引发torch在reduce时float和long类型不统一的问题。
目前code可以正常运行,但强烈建议团队再次做code review,不知道还有没有其他隐藏问题。
哈哈, 谢谢修复bug,公司内部的代码弄不出来,看他手抄了一遍,居然没有在外网验证就发布,靠谱程度打折扣。。。 @Yuxiang1995 colab上有免费的GPU也应该跑一把。。。。。。
新的修复依旧报错。不过我自己修复了。
修改ranger.py
from mmcv.runner.optimizer import OPTIMIZERS @OPTIMIZERS.register_module() class Ranger(Optimizer): ……
紧接着,将'../base/schedules/schedule_2x.py'中optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)注释掉,否则会引发momentum的keyerror
最后,将mmdet/models/dense_heads中gfl_head.py 对应最新版mmdetection的同文件对应修改,否则会引发torch在reduce时float和long类型不统一的问题。
目前code可以正常运行,但强烈建议团队再次做code review,不知道还有没有其他隐藏问题。
老哥 想问一下你用这个代码可以复现README里面的结果吗?我复现的时候模型一直不收敛,不知道老哥你有没有遇到这种情况。
新的修复依旧报错。不过我自己修复了。 修改ranger.py from mmcv.runner.optimizer import OPTIMIZERS @OPTIMIZERS.register_module() class Ranger(Optimizer): …… 紧接着,将'../base/schedules/schedule_2x.py'中optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)注释掉,否则会引发momentum的keyerror 最后,将mmdet/models/dense_heads中gfl_head.py 对应最新版mmdetection的同文件对应修改,否则会引发torch在reduce时float和long类型不统一的问题。 目前code可以正常运行,但强烈建议团队再次做code review,不知道还有没有其他隐藏问题。
老哥 想问一下你用这个代码可以复现README里面的结果吗?我复现的时候模型一直不收敛,不知道老哥你有没有遇到这种情况。
请问您收敛了吗,小白一个的我直接让那个返回tensor,训练出来的效果不好,loss一直卡在2左右,不知道您的结果如何?
新的修复依旧报错。不过我自己修复了。 修改ranger.py from mmcv.runner.optimizer import OPTIMIZERS @OPTIMIZERS.register_module() class Ranger(Optimizer): …… 紧接着,将'../base/schedules/schedule_2x.py'中optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)注释掉,否则会引发momentum的keyerror 最后,将mmdet/models/dense_heads中gfl_head.py 对应最新版mmdetection的同文件对应修改,否则会引发torch在reduce时float和long类型不统一的问题。 目前code可以正常运行,但强烈建议团队再次做code review,不知道还有没有其他隐藏问题。
老哥 想问一下你用这个代码可以复现README里面的结果吗?我复现的时候模型一直不收敛,不知道老哥你有没有遇到这种情况。
请问您收敛了吗,小白一个的我直接让那个返回tensor,训练出来的效果不好,loss一直卡在2左右,不知道您的结果如何?
把backbone换成ResNet就收敛了,应该是原始的ResNeSt有问题吧
新的修复依旧报错。不过我自己修复了。 修改ranger.py from mmcv.runner.optimizer import OPTIMIZERS @OPTIMIZERS.register_module() class Ranger(Optimizer): …… 紧接着,将'../base/schedules/schedule_2x.py'中optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)注释掉,否则会引发momentum的keyerror 最后,将mmdet/models/dense_heads中gfl_head.py 对应最新版mmdetection的同文件对应修改,否则会引发torch在reduce时float和long类型不统一的问题。 目前code可以正常运行,但强烈建议团队再次做code review,不知道还有没有其他隐藏问题。
老哥 想问一下你用这个代码可以复现README里面的结果吗?我复现的时候模型一直不收敛,不知道老哥你有没有遇到这种情况。
我没有跑这个数据集,我在我们内部的公式检测数据集上测试了一下,效果并没有超过我们现有的方法。
新的修复依旧报错。不过我自己修复了。 修改ranger.py from mmcv.runner.optimizer import OPTIMIZERS @OPTIMIZERS.register_module() class Ranger(Optimizer): …… 紧接着,将'../base/schedules/schedule_2x.py'中optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)注释掉,否则会引发momentum的keyerror 最后,将mmdet/models/dense_heads中gfl_head.py 对应最新版mmdetection的同文件对应修改,否则会引发torch在reduce时float和long类型不统一的问题。 目前code可以正常运行,但强烈建议团队再次做code review,不知道还有没有其他隐藏问题。
老哥 想问一下你用这个代码可以复现README里面的结果吗?我复现的时候模型一直不收敛,不知道老哥你有没有遇到这种情况。
请问您收敛了吗,小白一个的我直接让那个返回tensor,训练出来的效果不好,loss一直卡在2左右,不知道您的结果如何?
把backbone换成ResNet就收敛了,应该是原始的ResNeSt有问题吧
改成ResNet,最终模型效果能达到README里面的结果吗
您好,您的repo和mmd官方代码我都试过了,都存在这个问题。数据集有什么特殊要求吗,正常的cocodataset style有问题 Traceback (most recent call last): File "tools/train.py", line 188, in
main()
File "tools/train.py", line 164, in main
datasets = [build_dataset(cfg.data.train)]
File "/home/a/.local/lib/python3.7/site-packages/mmdet/datasets/builder.py", line 58, in build_dataset
elif cfg['type'] == 'ConcatDataset':
File "/home/a/.local/lib/python3.7/site-packages/mmcv/utils/config.py", line 35, in missing
raise KeyError(name)
KeyError: 'type'