Skip to content

Short, concise yet complete implementations of various Yolo models in the style of Tinygrad, but in pure Pytorch.

Notifications You must be signed in to change notification settings

pfeatherstone/tinyyolo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TinyYolo

If you like tiny code, Pytorch and Yolo, then you'll like TinyYolo.

What this is

  • This repo uses the new "Tiny-Oriented-Programming" paradigm invented by TinyGrad to implement a set of popular Yolo models.

  • No YAML files, just (hopefully) good, modular, readable, minimal yet complete code.

What's provided

  • models.py: contains all the Yolo models, which automatically calculate loss when targets are provided in forward function.
  • test.py: tests the models with pretrained weights from darknet, ultralytics and Yolov7.
  • train_coco.py: trains on COCO using lightning

Models

  • Yolov3
  • Yolov3-spp
  • Yolov3-tiny
  • Yolov4
  • Yolov4-tiny
  • Yolov5(n,s,m,l,x)
  • Yolov7
  • Yolov8(n,s,m,l,x)
  • Yolov10(n,s,m,b,l,x)

Observations

  • All the ultralytics models and Yolov7 use eps=0.001 and momentum=0.03 in nn.Batchnorm2d. That's unusual. I wonder what effects that has on training.

About

Short, concise yet complete implementations of various Yolo models in the style of Tinygrad, but in pure Pytorch.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published