我试图解释yolov3.cfg文件中不同参数的目的,但是,我找不到有关imply_thresh and truth_thresh的任何解释。
我当前的(有限(的理解是,它们要么与非最大抑制作用有关,因此它们充当结合边界框的阈值,或者上限和下限,以确保对预测的信心。
找不到真正在线解释参数的人,只有在配置文件中复制部分的人。我已经浏览了https://blog.paperspace.com/tag/series-yolo/yolov3在pytorch中实现,但是,他们可以平稳地跳过并解释这两个参数。
>yolov3.cfg的相关部分如下所示。
[yolo]
mask = 3,4,5
anchors = 10,13, 16,30, 33,23, 30,61, 62,45, ...
classes=80
num=9
jitter=.3
ignore_thresh = .7
truth_thresh = 1
random=1
我不认为这很重要,但是我正在使用Alexeyab的Darknet存储库作为框架。
我也发现了这一点:
ignore_thresh = .7 :参数确定是否需要计算iou错误是否大于阈值,并且IOU错误在成本函数中没有捏合。
truth_thresh = 1 :计算中涉及的iOU阈值的大小。
当预测的检测框与ignore_thresh的地面重叠时,检测框将不参与损失的计算,否则会。
目的是控制参与损失计算的检测框架的规模。
当ignore_thresh太大,接近1时,然后参与。检测框中的回归数量将较小,并且很容易引起过度拟合。
如果ignore_thresh设置了太小,则涉及计算的参与者数量将很大。同时,执行检测框架回归时很容易引起拟合。