Giter Club home page Giter Club logo

yolov3-multigpu's Introduction

yolov3-multigpu

train pytorch-yolov3 with multi GPU

This repository is forked from https://github.com/eriklindernoren/PyTorch-YOLOv3, I modify it to support multi GPU train.

If you want to use multi GPU train, you should modify these below:

  • pad targets in utils/datasets.py -> collate_fn() function line149
  • remove pad targets in utils/utils.py -> build_targets() function line 301
  • re-calculate batch-index(targets) in utils/utils.py -> build_targets() function line 325
  • move model outputs/loss from cpu to gpu in models.py -> Darknet.forward() function line 330
  • calculate loss sum from all GPUs in train.py -> line 121
  • modify log info in train.py -> line 130

原来仓库问题修复:

  1. mAP计算 论文中是55.3, 原来仓库使用conf_thresh=0.001@IOU=0.5 mAP为53.6
  1. gt box越界错误 fix gt box may cross boundary in utils/utils.py -> build_targets() function line 332

  2. 多卡读取weights

4.多卡log信息

TODO tricks:

training tricks

  • data augmentation
  • multi scale train √
  • multi GPU train √
  • label smooth
  • mix up
  • cosine lr √
  • warmup √
  • group normalization (deprecated)

detection tricks

  • focal loss
  • soft nms (not supported)
  • GIOU

yolov3-multigpu's People

Contributors

ujsyehao avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.