我应该对训练集中存在的所有物体进行标记和训练(yolo darknet)

(yolo - 物体检测)

如果图像中有两只狗并且我在训练集中存在的所有图像中只训练了其中一只狗,那么训练集中的其他狗我没有标记并训练它们将影响过程和会不会认为它们是背景的一部分? I am asking especially about yolo darknet object detection.

它似乎是这样,因为在3000批次之后它没有检测到任何东西 . 所以问题是,我应该训练所有物体(如所有训练组中的所有狗)或者无关紧要,因为yolo只会从标记的物体中获取这些特征并忽略背景?

回答(1)

2 years ago

是的,重要的是,您要查找的所有对象都会在训练数据集的图像上标记 . 你教导找到它们所在的对象,而不是找到不存在的对象 .

CNN Yolo尝试解决3个问题:

  • 用矩形标记Yolo训练的对象 - 最后一层的正面错误

  • 不要将一个对象标记为另一个对象 - 最后一层上的负面错误

  • 不标记背景中的任何对象 - 最后一层上的负面错误

即Yolo寻找差异,为什么第一只狗被认为是一个对象,第二只狗被认为是背景 . 如果你想找到任何一只狗,但你只标记了其中的一些,而且标记为狗 are not statistically different 来自未标记的狗,那么它的检测准确度将极低 . 因为 abs(positive_error) ~= abs(negative_error) 和训练结果 sum(positive_errors) + sum(negative_errors) ~= 0 . 这是一个矛盾的任务 - 你想要同时:找到一只狗,却找不到狗 .

但是,如果没有标记的狗标记的狗 are statistically different ,例如标记为斗牛犬但没有标记拉布拉多犬,那么Yolo网络将被训练以区分彼此 .

似乎是这样,因为在3000批次之后它没有发现任何东西 .

这还不够,Yolo需要10000-40000次迭代 .