1

我正在尝试使用 Darknet 框架和 Yolov4 训练自定义数据集。我建立了自己的数据集,但在 google colab 中收到了 Out of memory 消息。它还说“尝试将细分更改为64”或类似的东西。我已经搜索了主要 .cfg 参数的含义,例如批处理,细分等,我可以理解增加细分数量意味着在处理之前拆分成更小的“图片”,从而避免致命的“CUDA out of memory” ”。确实切换到 64 效果很好。现在我在任何地方都找不到最终问题的答案:最终的重量文件和准确性是否“受损” 通过做这个?更具体地说,对最终结果的影响是什么?如果我们抛开训练时间(因为有更多的细分要训练,肯定会增加),准确率会如何?

换句话说:如果我们使用完全相同的数据集并使用 8 个细分进行训练,然后使用 64 个细分做同样的事情,那么 best_weight 文件是否会相同?对象检测成功率会相同还是更差?谢谢你。

4

1 回答 1

0

第一次阅读评论假设您有 100 个批次。

  • 批量大小 = 64
  • 细分 = 8
  • 它将划分您的批次 = 64/8 => 8
  • 现在它会将 8 个分割的部分一一加载并工作到 RAM 中,因为 RAM 容量低,您可以根据 RAM 容量更改参数。您还可以减少批量大小,因此在 ram 中占用的空间很小。它不会对数据集图像做任何事情。它只是将无法加载到 RAM 中的大批量大小拆分,因此分成小块。
于 2021-06-16T04:40:45.410 回答