GLIP复现分析
GLIP-L 和 GLIP-T(C) 在 COCO 数据集上的 Zero-Shot 预测结果
GPU为Tesla P40 24G。
指标 | GLIP-L | GLIP-T(C) |
---|---|---|
AP@[IoU=0.50:0.95] (所有区域的平均精度) | 51.24%/61.7% | 46.74%/55.1% |
AP@[IoU=0.50] (IoU=0.50时的平均精度) | 68.23% | 63.43% |
AP@[IoU=0.75] (IoU=0.75时的平均精度) | 55.81% | 51.14% |
AP (小目标) | 37.22% | 33.55% |
AP (中等目标) | 55.66% | 50.72% |
AP (大目标) | 66.10% | 59.06% |
AR@[IoU=0.50:0.95] (所有区域,maxDets=1) | 39.68% | 37.72% |
AR@[IoU=0.50:0.95] (所有区域,maxDets=10) | 65.44% | 62.19% |
AR@[IoU=0.50:0.95] (所有区域,maxDets=100) | 69.18% | 65.66% |
AR (小目标) | 53.94% | 49.08% |
AR (中等目标) | 74.70% | 70.47% |
AR (大目标) | 84.97% | 81.36% |
权重文件大小 | 6.9GB | 3.71GB |
推理速度(GPU为Tesla P40 24G) | 906ms | 517ms |
参数量 | 430M | 231M |
YOLOv8 推理速度测试结果
在GPU为Tesla P40 24G 的情况下对yolov8的推理速度进行重新计算
模型 | 平均推理时间 (ms) | 权重大小 (MB) | mAPval 50-95(%) | 参数量 |
---|---|---|---|---|
YOLOv8n | 50.5 | 6.2 | 37.3 | 3.2M |
YOLOv8s | 18.6 | 21.5 | 44.9 | 11.2M |
YOLOv8m | 26.8 | 49.7 | 50.2 | 25.9M |
YOLOv8l | 40.6 | 83.7 | 52.9 | 43.7M |
YOLOv8x | 56.8 | 131.0 | 53.9 | 68.2M |
分析
数据需求
GLIP除了图像数据,类别label外还需要文本注释。寻找大量的有注释的目标检测数据可能存在困难。但是可以参考RemoteCLIP论文当中的box-to-caption方法生成注释数据。
效果分析
GLIP-L在zero-shot任务的精度上略低于YOLOv8x,而微调后GLIP-L,GLIP-T(C)的精度都超越了YOLOv8x。GLIP融合了文本和图像模态,所以在无固定类别的目标检测中会更加灵活,再加上有手动提示调优的存在,在下游任务上会更优于单模态的YOLOv8x。
训练成本分析
YOLOv8系列参数较少,而GLIP普遍较大。根据参数量进行估计,对同一张图片进行训练时,GLIP-L的算力需求是YOLOv8x的6.3倍。在GLIP论文当中,GLIP-T与GLIP-L在16台V100上训练时采用的batch_size才分别为1,2张。
部署分析
-
GLIP模型太大,最大的GLIP-L达到了6.9G,这不利于在存储资源有限的设备部署上。
-
推理时间太长,不适合做实时性要求较高的任务。
-
如果在服务器上部署,面对较多的用户,算力需求会很高。
结论
GLIP展现出在开放类别检测和跨任务迁移中的强大潜力。尽管模型体积大、训练成本高限制了其应用场景,但通过压缩优化和加速方法,GLIP有望在任务中展现出更好的效果。