Welcome
Welcome to Walk with fastai, the missing pieces for success. If you are here for the first time, welcome to this exciting 7 week endeavor of first learning fastai and then taking it to the next level. If you’ve been here before, you know it’ll be a wild ride.
This course is designed to teach what isn’t taught in the original lectures by Jeremy Howard and learn how to practically apply it and thrive with the framework in the real world.
Who am I?
Who am I and what right do I have to be teaching you this course?
- Zachary Mueller
- World Expert in fastai
- 4+ years of experience with the framework, and actively involved in its development
- Community Leader in fastai
- Core contributor to the fastai framework
- The guy who often answers your questions in the fastai forums within days
- Author of multiple fastai-centered projects including fastinference, fastdebug, wwf, lib2nbdev, and nbdev-extensions
- Wrote a paper utilizing fastai for tabular data and presented it at IEEE
- I scuba dive
What’s wrong with just Practical Deep Learning for Coders?
Practical Deep Learning for Coders (PDLC) is a phenominal introductory course to the fastai framework. Jeremy lays down the foundations while also giving students the opportunity to take and run with his teachings.
But there’s a problem.
It’s designed to be introductory.
Much of the interesting concepts, deep dives, and corporate-focused applications aren’t taught until the last few lectures and then everything else exciting is done in Part 2 which requires an even higher level of knowledge to follow.
This is where Walk with fastai comes in. My aim is to bridge the gap from PDLC to becoming a world-expert in fastai so that you can stand on your own two feet and be confident in your abilities as a practitioner using the framework.
What will be taught in this course?
- An overview of how fastai fits in amongst other ML tools, and when using fastai is a good choice
- More practical applications of the fastai framework that you can apply in industry
- How to debug fastai code
- How to use fastai in production, including how to interoperate fastai with other tools like datasets and hosting models on the Hub
- Alternatives to fastai dataloaders for development and production use cases that can increase transparency and reliability
- How to utilize large compute clusters to train large models effectively and smaller models efficiently on Big Data
By the end of this course, I will take you from just thinking fastai is a cool framework to someone who can apply fastai to any problem and come out with success
What are the requirements?
- Ideally one year of familiarity with coding, especially Python. At the minimum, you should know the basics of object-oriented programming, classes, functions, and if you know some advanced concepts such as decorators you will do well.
- Access to compute, either through Google Colaboratory or Paperspace will handle 99% of this course
- The final 1% on distributed training will need multiple GPUs, which you can rent for cheap on Google Cloud
- Internet access to download datasets and models
Course structure
- For those who preordered, you can follow along live on stream
- Course notebooks are shared as of day 1 of the course releasing
- Lectures are ~1 hour long each, and will be broken up into segments within a week after the initial lecture and added to the course materials
- There will be options to download all of the lectures or the broken segments
Course format
This course will focus on the vision aspect of fastai through 7 lectures:
- Lesson 1:
- Introduction
- Classifying Cats and Dogs with the High Level API
- Performing Image Classification on a real Kaggle dataset
- Lesson 2:
- Low-Level API with MNIST and building models
- Using fastai as a tool for PyTorch and preforming transfer learning from scratch
- Lesson 3:
- Multi-Label Classification
- The Unknown Label problem
- Cross Validation and Ensembling
- Lesson 4:
- Image Segmentation
- ViT and Custom Weights
- Lesson 5:
- Exploring state-of-the-art with fastai and ViT Continued
- Deployment to Spaces with Learner and no Learner
- Lesson 6:
- Distributed Data Parallelism with fastai and Accelerate
- Training on Big Data
- Lesson 7:
- Digging into fastcore enough to have fastai make sense
- Brief introduction to nbdev