This repo code uses Softmax and CrossEntropyLoss instead of BCEWithLogitsLoss.The improved source code is fully compatible with the original version of YOLOv5:v5. At the same time, backbone supports mobilenetv3,shufflenetv2, the original backbone supports all, and so on.
There are classes that contain relationships(subset) that can be people, men. Mutually exclusive relationships that the class such as people, cats, and dogs. Try to improve the loss function when the classes of the dataset is mutually exclusive.
BCEWithLogitsLoss adds Sigmoid to the loss function. The Sigmoid probability sum does not need to be 1.This can be done easily by just applying sigmoid function to each of raw scores. Note that the output probabilities will NOT sum to 1. The output predictions will be those classes that can beat a probability threshold.
About softmax, each element will be in the range of 0 to 1, and the elements will add up to 1. This way, they can be interpreted as a probability distribution. For more clarification, the larger the input number, the larger the probabilities will be. It makes sure that the sum of all our output probabilities is equal to 1(or close to 1).
Object detection YOLOv5 - Early Stopping mechanism.
Object Detection YOLOv5 - Fusion of convolution layer and BN layer.
Object detection YOLOv5 - Sample Assignment.
Object Detection YOLOv5 - data augmentation.
Object Detection YOLOv5 - Learning rate.
Object detection YOLOv5 - multi-machine multi-gpu training.
Object Detection YOLOv5 - floating Point Modulation.
Object detection YOLOv5 - applying NMS (non-maximum suppression) in multiple categories.
Object detection YOLOv5 - loss for objectness and classification.
Object detection YOLOv5 - loss for bounding box regression.
Object Detection YOLOv5 - Evaluation metric for YOLOv5.
Object detection YOLOv5 - anchor setting.
Object detection YOLOv5 - SPP module.
Object Detection YOLOv5 - bounding box prediction.
Object Detection YOLOv5 - Custom Network structure (YOLOv5 - ShuffleNetV2).
Object detection YOLOv5 - bounding box coordinate representation.
Object detection YOLOv5 - relationship between image size and loss weight.
Object detection YOLOv5 - change the depth and width of the network according to configuration.
Object Detection YOLOv5 - Mobile Device deployment.
Object detection YOLOv5 - Focus in YOLOv5 Backbone.
Object detection YOLOv5 - model train,val,test,export commands.
Object detection YOLOv5 - face dataset widerface convert to YOLOv5 format.
Object detection YOLOv5 - YOLOv5 dataset format.
Object detection YOLOv5 - using COCO dataset.
Object detection YOLOv5 - CrowdHuman dataset format converted to YOLOv5 format