Hudaodao99
Hudaodao99
> After fine-tuning on the COCO dataset with 80 classes, when I tested the model again, I found that it could only detect the classes present in the COCO dataset....
> @Hudaodao99 你好,我也遇到了同样的问题。同配置coco上微调,达不到论文中的精度,两种微调方式的mAP50比论文低4.2、3.7。 你好,我刚尝试用 configs/finetune_coco/yolo_world_l_efficient_neck_2e-4_80e_8gpus_mask-refine_finetune_coco.py的config进行finetune,达到了论文指标。但原文件的权重文件是没有加入cc3m的pretain(这个结果在论文中没有提到),仍旧可以达到map=53.3,这是我疑惑的点。
> @Hudaodao99 你好,我也遇到了同样的问题。同配置coco上微调,达不到论文中的精度,两种微调方式的mAP50比论文低4.2、3.7。 > @Hudaodao99 你好,我也遇到了同样的问题。同配置coco上微调,达不到论文中的精度,两种微调方式的mAP50比论文低4.2、3.7。 > > 您好! 我配置了环境想复现yolo_world_l在coco上的finetune结果,但实际跑出来的结果介于s和m模型结果的中间。 过程详细按照finetune的文档进行实验: > > > > 1. 由于加入efficient neck的yolo_world_l代码网页报错404,此次复现使用的是未加入efficient neck的yolo_world_l。 > > 2. 论文仅给出L的finetune模型在O365,GoldG,CC3M上进行pretrain。为了完全复现,将原文档中的加载权重`load_from='pretrained_models/yolo_world_l_clip_base_dual_vlpan_2e-3adamw_32xb16_100e_o365_goldg_train_pretrained-0e566235.pth'`改为`load_from='pretrained_models/yolo_world_l_clip_base_dual_vlpan_2e-3adamw_32xb16_100e_o365_goldg_cc3mlite_train_pretrained-7a5eea3b.pth'` > > 3. 超参数:8a800*16bs > > 4....
> > Hi, Getting same error for custom data finetuning. > > ``` > > data['category_id'] = self.cat_ids[label] > > IndexError: list index out of range > > ``` >...
@wondervictor 感谢指导~ 但在finetune自己数据集的实验中,会出现加入efficient neck的结果比未加入efficient neck的表现效果更好。经过可视化发现,未加入efficient neck进行finetune会出现空检测结果,这会导致低准确率。请问你们做实验会出现这种情况吗?或者有更好的解决办法来避免吗?
@wondervictor 感谢您的细心解答~我使用的MultiModalDataset格式来进行finetune,请问不使用YOLOv5MixedGroundingDataset格式,同时不使用efficient neck的方式,只使用MultiModalDataset是否也可以达到open-vocabulary detection效果呢? 在文档中给出的三个config文件中,将`num_classes` 和`num_training_classes`均设置为10(我自己数据集的总类别数量),epoch=80,threshold默认。finetune后的三个权重文件进行测试结果分别如下: 1. yolo_world_l_dual_vlpan_2e-4_80e_8gpus_finetune_coco.py  2. yolo_world_l_dual_vlpan_2e-4_80e_8gpus_mask-refine_finetune_coco.py  3. yolo_world_l_efficient_neck_2e-4_80e_8gpus_mask-refine_finetune_coco.py  **如上所示,只有最后一种含有efficient neck的finetune会正常检测出目标,其余两个都会存在空检测(将整张图作为目标)。请问怎么解决或者避免呢?或者有其他参数需要注意更改的吗?**
@wondervictor 很感激您的回复!期待解决方法~ 请问**侧重不一样**是指YOLOv5MixedGroundingDataset格式的泛化性更强或者open-vocabulary语义理解更好吗?如果我将固定类别扩充句子为这个格式,是否检测泛化性效果更好?open-vocabulary效果更好呢?
@wondervictor 明白了,十分感谢~
@wondervictor 好的~ 但是我在实验时发现image_demo.py中输入的text已经默认加入一个空类别了,可能空类别的加入并不能影响空白检测? `texts = [[t.strip()] for t in args.text.split(",")] + [[" "]]`