pjreddie / darknet

Convolutional Neural Networks
http://pjreddie.com/darknet/
Other
25.74k stars 21.33k forks source link

What is the latest version of YOLO? Is V5 a scam? #2198

Open franva opened 4 years ago

franva commented 4 years ago

Hi guys,

I am learning the YOLO, it looks great~! I think this Github repo and this website are the official websites for YOLO?

But recently I saw an article talking about YOLO V5.

My 1st thought is : what? Since what time does YOLO get V5??

I searched from the Cornell University and could not find anything about YOLO V5 either.

  1. Could someone tell me what is the latest version of YOLO?
  2. What is the official website for YOLO?

Appreciated,

Winston

AlexeyAB commented 4 years ago

The latest version - YOLOv4 (YOLOv4 and Scaled-YOLOv4), with paper, with URLs from official repository, and with the best Accuracy/Speed among all known algorithms.

YOLOv5-Ultralytics - model is worse than Scaled-YOLOv4, without a scientific article.


image


84604438-abf6ec80-aec8-11ea-8341-f4563ea51dbc


scaled_yolov4 AP50:95 - FPS (Tesla V100) Paper: https://arxiv.org/abs/2011.08036

comparison_gpus


85734112-6e366700-b705-11ea-95d1-fcba0de76d72


84310129-d57ee380-ab69-11ea-87c6-e7f2c33d5f40


image

franva commented 4 years ago

Firstly, thank you for your detailed explanation about where YOLO comes from, who firstly invented YOLO and how YOLO is currently going. This really clears my mind about the history of YOLO and who is the official and who is not, so thumb up for this :)

After knowing these information, as a beginner of AI I can tell why the article I referenced in my question is so confusing.

In the video mentioned in the article, they claimed that their fake YOLOV5 aiming at different perspectives ,e.g. ease of use, exportability, memory requirement, etc... image

With not much AI background knowledge, as a beginner, I don't think their fake YOLOV5 should use the name YOLO at all. If a new model architecture is created, then I would expect to see its related academic papers on some scientific websites. If it's just a tweak of an existing YOLO V3, the author of fake YOLO V5 should name it something like YOLOV3-PyTorch.

As a beginner of AI, I dislike this kind of behavior, as it is waste of my time to learn such a fake architecture and I am sure there are many beginners who will have similar experience as mine, but not all of them have luck to discovered that "YOLOV5" is a fake one. So as an owner of YOLO V4, and the owner of YOLO V3 and all other owners of YOLO should do something to make people aware of this wrongdoing.

So here is my thought, I feel that many of users(developers) will be familiar with Python and PyTorch framework based AI models versus C based YOLO models. This is where the selling point of the fake YOLO V5 is. Therefore, why not the owner(@AlexeyAB ) of this YOLO V4, create an authentic YOLO V4 for PyTorch(Python) version model? I feel this is a better way to defeat the fake one.

AlexeyAB commented 4 years ago

I am not opposed the Ultralytics repository. I am opposed to unfair comparisons with YOLOv4. YOLOv4 can be trained on both repos: https://github.com/ultralytics/yolov3 and https://github.com/ultralytics/yolov5 So in the future, a more accurate and faster version of YOLO on these repositories may indeed be released. And it will be very convenient for those who want to use Python and Pytorch.

AlexeyAB commented 4 years ago

YOLOv4 training and inference on different frameworks / libraries:

Pytorch-implementations:

TensorFlow: https://github.com/hunglc007/tensorflow-yolov4-tflite

OpenCV (YOLOv4 built-in OpenCV): https://github.com/opencv/opencv

TensorRT: https://github.com/ceccocats/tkDNN

Tencent/NCNN: https://github.com/Tencent/ncnn

TVM https://tvm.ai/about

OpenDataCam: https://github.com/opendatacam/opendatacam#-hardware-pre-requisite

BMW-InnovationLab - Training with YOLOv4 has never been so easy (monitor it in many different ways like TensorBoard or a custom REST API and GUI):