Hi,

Today, I'm super pleased to announce that two much anticipated courses have just been released inside PyImageSearch University.
 

PyTorch 101 — Fundamentals of PyTorch

Image
Most deep learning tutorials I've authored on PyImageSearch have used Keras and TensorFlow; however, I've received a number of requests from readers asking me to cover PyTorch as well. I took the hint and decided to cover PyTorch.

Here are the lessons you'll find inside PyTorch 101:
  1. What is PyTorch? (24m 57s)
  2. Your First Neural Network with PyTorch (23m 08s)
  3. Training Your First CNN with PyTorch (32m 49s)
  4. Image Classification with Pre-Trained Networks and PyTorch (13m 08s)
  5. Object Detection with Pre-Trained Networks and PyTorch (16m 17s)
We'll be adding PyTorch 102 (Intermediate Techniques for CV Practitioners) and PyTorch 103 (Advanced PyTorch) in the next couple months as well.

To access PyTorch 101, along with our 19 other computer vision/deep learning courses, all you need to do is join PyImageSearch University.
 

Deep Learning 125 — Data Pipelines with tf.data

Image
Deep Learning 125 will show you how to create more efficient data pipelines using TensorFlow's tf.data API.

Training a deep neural network requires data. A lot of data. This data could be read from disk, from the cloud, parsed from a CSV file, images loaded individually, etc. Furthermore, we are more than likely applying data augmentation to this data to improve the ability of our model to generalize.

However, often overlooked is how long the data reading, parsing, and data augmentation process takes. If our neural network can train on a batch of data faster than the data loading process can provide it, then our neural network is left "waiting", hungry for more data. Not only is this wasteful, but it takes longer for our neural network to train.

Essentially, what we have here is a producer/consumer relationship.

The data loader is our producer. It must produce enough data to feed our hungry neural network, ensuring a batch of data is always available to it.

The neural network is our consumer. It's starved for data and needs the consumer to always have batches of data ready for it. Any lapse in the data production process causes our network to impatiently tap its foot and check its watch — when is the next batch of data coming?!

Most TensorFlow/Keras users are comfortable with the ImageDataGenerator class for data loading and data augmentation. It has a simple API and is admittedly quite easy to use…

...but it's also painfully slow.

Instead, I recommend you construct data pipelines using TensorFlow's tf.data API. You'll see anywhere from a 4-40x improvement in your data pipeline, allowing you to train your networks faster. And yes, while it does take a bit more work to use tf.data, it's well worth the effort.

Here are lessons you'll find inside Deep Learning 125:
  1. A Gentle Introduction to tf.data with TensorFlow (28m 49s)
  2. Data Pipelines with tf.data and TensorFlow (22m 03s)
  3. Data Augmentation with tf.data and TensorFlow (29m 00s)
To access Deep Learning 125, just create an account on PyImageSearch University.
 

Here's what you're missing out on by *not* joining PyImageSearch University.

By not joining PyImageSearch University, here is what you're missing out on:
  • 20 courses on essential computer vision, deep learning, and OpenCV topics
  • 20 Certificates of Completion (one for each course)
  • 32h 10m on-demand video
  • Pre-configured Jupyter Notebooks running in Google Colab
  • Run all code examples in your web browser — works on Windows, macOS, and Linux (no dev environment configuration required!)
  • Access to centralized code repos for all 400+ tutorials on PyImageSearch
  • Easy one-click downloads for code, datasets, pre-trained models, etc.
  • Access on mobile, laptop, desktop, etc.
  • Brand new courses released every month, ensuring you can keep up with state-of-the-art techniques
As Mohammed Ehsan, computer vision practitioner, said:

"I absolutely love it. PyImageSearch University is far better than so many 'dumb', 'unorganized', and 'impractical' courses present all over the internet."

If you're looking for a straightforward, easy-to-follow path to master computer vision and deep learning, look no further than PyImageSearch University.

I'm currently offering a 7 day free trial. Click here to take PyImageSearch University for a spin, no strings attached.

I hope to see you inside.

Adrian Rosebrock
Chief PyImageSearcher