Lots to cover today! We start lesson 3 looking at an interesting dataset: Planet's Understanding the Amazon from Space. In order to get this data in to the shape we need it for modeling, we'll use one of fastai's most powerful (and unique!) tools: the data block API. We'll be coming back to this API many times over the coming lessons, and mastery of it will make you a real fastai superstar! Once you've finished this lesson, if you're ready to learn more about the data block API, have a look at this great article: Finding Data Block Nirvana, by Wayde Gilliam.
One important feature of the Planet dataset is that it is a multi-label dataset. That is: each satellite image can contain multiple labels, whereas previous datasets we've looked at have had exactly one label per image. We'll look at what changes we need to make to work with multi-label datasets.
Next, we will look at image segmentation, which is the process of labeling every pixel in an image with a category that shows what kind of object is portrayed by that pixel. We will use similar techniques to the earlier image classification models, with a few tweaks. fastai makes image segmentation modeling and interpretation just as easy as image classification, so there won't be too many tweaks required.
We will be using the popular Camvid dataset for this part of the lesson. In future lessons, we will come back to it and show a few extra tricks. Our final Camvid model will have dramatically lower error than any model we've been able to find in the academic literature!
What if your dependent variable is a continuous value, instead of a category? We answer that question next, looking at a keypoint dataset, and building a model that predicts face keypoints with high accuracy.
- Lesson notes from @PoonamV
- Detailed lesson notes by @hiromi
- The notebooks for this lesson require fastai 1.0.21 or later. Please
conda install -c fastai fastai
(or the equivalent for your platform), and of course remember togit pull
to get the latest notebooks - Notebooks:
- Lesson 3 in-class discussion
- Links to different parts in video by @melonkernel
- Useful online courses for ML background: -- Introduction to Machine Learning for Coders taught by @jeremy -- Machine Learning taught by Andrew Ng (coursera)
- Video Browser with Searchable Transcripts Password: deeplearningSF2018 (do not share outside the forum group) - PRs welcome.
- Quick and easy model deployment using Render
- Introduction to Kaggle API in Google Colab (Part-I) tutorial by @mmiakashs
- Data block API
- Python partials
- MoviePy Python module for video editing mentioned by @rachel
- WebRTC example for web video from @etown
- Nov 14 Meetup (wait list) Conversation between Jeremy Howard and Leslie Smith
- List of transforms in
vision.transform
package
- Cyclical Learning Rates for Training Neural Networks paper by Leslie Smith
- ULMFit fine-tuning for NLP Classification used in
language_model_learner()
- Michael Nielsen's book