tensorflow - 对于 62 个类的对象检测模型,我应该采取多少训练样本?
问题描述
我正在尝试使用https://github.com/wizyoung/YOLOv3_TensorFlow为 62 个类训练一个 YOLOv3 模型。
我应该为每个班级抽取多少个样本。我使用的是 Nvidia GTX 1050Ti GPU,那么每个 300*300 大小的图像的批量大小应该是多少?80-20 训练/测试拆分是否理想?
解决方案
80-20% 的 train-test(val) 拆分取决于样本的数量,而不是类的数量。您拥有的数据越多,train 和 test(val) 之间的差异百分比就越大(对于数百万个样本数据,您可以有 95%---5% 的拆分)
通常,每个对象至少(最少)数量为 200 个 bounding_boxes_annotations。也就是说,你的每个类至少应该有 200 个注解。
1050Ti 只有 4GB VRAM。根据您的 image_size,您可以增加或减少 batch_size。但是,考虑到您没有太多可用的 VRAM,很可能(如果您有 OOM 问题,请将其减少到 1)对于 300x300 的图像,batch_size 为 2 将是您可以达到的最大值。
推荐阅读
- google-apps-script - 在特定的 Google 表格中设置表格
- ssh - 在 ssh 文件夹中找不到 id_ed25519 私钥和公钥文件
- swiftui - SwiftUI - removeAll 的错误索引(其中:)
- powershell - 使用 PSObject 输出数组;限制为 4 列
- asp.net - Asp.net 中的 Razorpay 集成
- android - 如何在 react-native-splash-screen 的 android 初始屏幕中设置响应式徽标?
- python - /wiki/HTML 处的类型错误
- php - 如何从 WooCommerce 子类别产品计数中删除括号
- ruby-on-rails - Angular Universal/SSR --> ERROR TypeError: ActionCable.WebSocket is not a constructor
- python - 如何区分python azure函数中的HTTP请求方法?