YOLO v2 under darkflow

YOLO v2 under darkflow


code structure:

two-stage process: load cfg & weights, and then build tensorflow graph



training suggestion(https://github.com/thtrieu/darkflow/issues/80):

First, train on a very small dataset (3~5 images) of both classes. Only when you successfully overfit this small dataset (an inexpensive end-to-end test for the whole system), then move on to training on your whole dataset.

If overfitting fails, I'll help you look into the details.

Not being able to overfit such a small training set means the learning rate are too big; or there is bug in the code.


For me, the absolute thing to do before training is to overfit the network on 3-5 images from random weights. Only when you are able to obtain reasonable detection, proceed to train until convergence. Convergence is a tricky concept, in many cases, loss stop decreasing does not mean convergence.

In YOLOv2 output, there are x, y, w, h representing coordinates, c for objectness and a probability distribution over classes, repeat all for B boxes on S x S grid cells. Take all of these into account when calculating your expected convergence loss. I may develop some feature to help evaluating such value.

Only when you have a rough estimate of such value, then you are able to declare convergence with confidence. Otherwise, it is highly likely that your net simply got stuck.






猜你喜欢

转载自blog.csdn.net/honk2012/article/details/80176252
今日推荐