我正在用 1 个班级训练 Darknet Yolo(有 9000 个训练示例!),但我有这个输出样本:
v3 (iou loss, Normalizer: (iou: 0.07, obj: 1.00, cls: 1.00) Region 150 Avg (IOU: 0.000000), count: 1, class_loss = 0.003734, iou_loss = 0.000000, total_loss = 0.003734
IOU 保持恒定为 0.07,并且类别损失非常低。
(next mAP calculation at 1000 iterations)
250: 0.004589, 0.011130 avg loss, 0.000004 rate, 7.071465 seconds, 16000 images, 2.931760 hours left
导致这个恒定小iou的问题是什么?
详情
yolov4-custom.cfg 文件中最相关的部分:
batch=64
subdivisions=16
width=512
height=512
channels=1
momentum=0.949
decay=0.0005
max_batches = 2000
steps=1600,1800
...
filters=18
activation=linear
[yolo]
mask = 6,7,8
anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401
classes=1
obj.data 文件:
classes = 1
train = /content/darknet/build/darknet/x64/data/train.txt
names = /content/darknet/build/darknet/x64/data/obj.names
backup = /content/darknet/build/darknet/x64/backup/
obj.name 文件:
Object
答案 0 :(得分:0)
首先你需要改变cfg文件。如果你有<= 3个类,你需要设置max_batches = 6000,steps: 4800, 5400。然后你需要设置所有3个yolo layer和prev。层的过滤器。并且损失应该变低,这就是训练,你的模型训练得很好。