Skip to content

After training, network cannot detect anything from the training set #17

@mimslim

Description

@mimslim

I generated 3,000 synthetic images of rectangles (only one class, class="0"), along with 3,000 label files ("*.txt") that I think are appropriate. The training loss went from 11,000 down to 0.004 over about an hour. I let it go on another hour to 0.000025 loss. I figured I was vastly overtraining -- but I need to see this network do something -- anything. Unfortunately, it cannot detect anything from even my training set:

Loading weights from /mydrive/yolov4/backup/yolov4-obj_final.weights...
seen 64, trained: 32 K-images (0 Kilo-batches_64)
Done! Loaded 162 layers from weights-file

calculation mAP (mean average precision)...
Detection layer: 139 - type = 28
Detection layer: 150 - type = 28
Detection layer: 161 - type = 28
1000
detections_count = 0, unique_truth_count = 0
class_id = 0, name = Box, ap = 0.00% (TP = 0, FP = 0)

for conf_thresh = 0.25, precision = -nan, recall = -nan, F1-score = -nan
for conf_thresh = 0.25, TP = 0, FP = 0, FN = 0, average IoU = 0.00 %

IoU threshold = 50 %, used Area-Under-Curve for each unique Recall
mean average precision (mAP@0.50) = 0.000000, or 0.00 %
Total Detection Time: 38 Seconds

I assume now that the weights are being trained down to 0.000, but I thought the MISH activation was supposed to prevent this. Any words of wisdom? Are there any applications consistent with YoloV4 that can read an image file and label info and produce a picture with a drawn bounding box so that I know my annotation files are constructed properly? I have the x,y, w,h normalized between {0,1} with regards to the image width and height. Maybe my image SNR is too low (these are synthesized for very dark conditions)?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions