Tensorflow 2.x will be the new default in DeepLabCut! (2.2rc3 up now!)

Scan the QR code (or click HERE) to see the original blog post on why we rolled up!

Scan the QR code (or click HERE) to see the original blog post on why we rolled up!

We have updated and refactored major parts of the code base for seamless Tensorflow 2+ integration.

This is part of 2.2rc3, and thus in 2.2 will be the default!

adapted from: https://blog.tensorflow.org/2019/01/whats-coming-in-tensorflow-2-0.html

adapted from: https://blog.tensorflow.org/2019/01/whats-coming-in-tensorflow-2-0.html

This means:

(1) You should update: you can create a new installation environment. This is easy, and you can keep your older env for safe keeping! In short, your older projects will work, and new projects will get all the cool advantages of TF2! See their blog (and updates for more), but in short its quite a bit easier to build on, so we hope this enables more researchers to play with the base code.

How do I easily update?

Simple: click HERE to download a NEW conda environment file. You can keep your older DLC-GPU, DLC-CPU for safe keeping (and peace of mind, I get it!). 🔥

(2) deeplabcut-core is depreciated! ✅

(3) The latest NVIDIA GPUs, CUDA, etc are supported! 🥂🙌

(4) We tested it, a lot …. a big shout out to lead developer Dr. Jessy Lauer for the big PR and testing the code across platforms, GPUs, models and TF versions to be sure we did not slow you down! See full PR here: https://github.com/DeepLabCut/DeepLabCut/pull/1323 and here are some take homes:

  • Benchmarked on 4 datasets (single- and multi-animal, w/ grayscale and color images) with TensorFlow (TF)1.15.5 (which serves as reference), TF2.3, and TF2.5; batch size 8, 30k iterations (except for the marmosets: 20k); 3 backbones (resnet_50, mobilenet_v2_0.5, efficientnet-b0); 2 GPU devices (TITAN RTX & GEFORCE GTX 1080).
    No significant main effects of either backbone or TF version were found. Training duration is reported relative to TF1 training time (Y axis, and value printed above each bar), and in seconds (underneath/within the bar):

123963082-682b3400-d9b2-11eb-9c3e-16ccf45a7589.png

(5) We have new docs to help you with the transition. This is simpler to install in the long run (1 conda file!) and again just requires you have CUDA (and associated cuDNN, see docs!).

Along with this major change there are some excellent updates to the code base for RC3!

For the full change log, see here: https://github.com/DeepLabCut/DeepLabCut/compare/2.2rc2...master

Other highlights include:

Happy DeepLabCutting, Friends!

From the dev team,
Mackenzie

mackenzie