深度学习对象检测预训练模型的大小

数据挖掘 深度学习 物体检测
2022-02-13 05:38:55

我正在对五种不同的模型进行基准测试,

YOLO v2
YOLO v3
Cascade R-CNN
Faster R-CNN
Retina Net

在我的比较中,我想知道每个模型的大小,以讨论潜在的过度拟合(如果某些模型比其他模型大)。它可以是层数,参数数。对于 Yolo 模型,这些在论文中有所说明,例如 YOLOv2 有 106 层,有 51,000,657 个参数,而 YOLOv3 有 349 层和 65,252,682 个参数。

我查看了其他模型,但在他们自己的论文中找不到类似的数字。因此,如果您能帮助我弄清楚这三个是否比 YOLO 更简单,或者它们在复杂性方面的位置,我将不胜感激。

1个回答

如果您正在研究不同的架构,我建议您查看https://www.modelzoo.co/它包含大量指向不同架构中实现的链接。这可以帮助您直观地了解如何通过代码构建模型,以防论文不直观。

我更多地使用 PyTorch,所以我专注于寻找 PyTorch 的实现。以下是您列出的模型的 Github 存储库链接:

使用 PyTorch 网络,您可以通过多种方式计算权重/参数的数量,这个StackOverflow 问题有多个答案,所有答案都显示了不同的方法。最简单的是:

pytorch_total_params = sum(p.numel() for p in model.parameters() if p.requires_grad)

在这篇文章中,还有一些方法可以详细说明网络中每一层的大小。