Deep Learning for Coders with fastai and PyTorch: My Journey Through Chapters 1–3


A structured summary of Part 1 (Chapters 1–3) from “Deep Learning for Coders with fastai and PyTorch” by Jeremy Howard & Sylvain Gugger— what I learned and why it matters!
🌟 Breaking the Barriers: Deep Learning Is for Everyone
The biggest myth about deep learning? That it’s only for PhDs or big companies.
Here’s what you actually DON’T need:
Advanced math (high school math is enough)
Massive datasets (amazing results with just 50 images)
Supercomputers (free GPUs work great)
A PhD (passion > degrees)
Deep learning uses neural networks with multiple layers to automatically learn patterns in data.
🧠 What Is a Neural Network?
A neural network is a flexible mathematical function made up of weights. Thanks to the Universal Approximation Theorem, in theory a neural network can model any problem to any accuracy, as long as it has enough layers and data.
Key properties:
Highly flexible – can learn many types of problems
Automatically improves using Stochastic Gradient Descent (SGD)
One method works for vision, text, audio, and more
🤖 What Is Machine Learning?
Arthur Samuel defined machine learning as programming computers to learn from experience instead of explicit instructions.
The key is: give the computer data and a way to evaluate itself, and it improves automatically.
Traditional programming:
Inputs → Program → Results
Machine learning:
Inputs + Weights → Model → Results → Compare → Update Weights
And once trained:
New Input → Trained Model → Predictions
Modern terms:
Architecture = program structure
Parameters = weights
Loss = performance measure optimized during training
Metrics = human-readable performance measure
Building My First Model: Image Classifier
This exercise inspired me to apply the same approach to build my own “Windows vs Doors” classifier.
I collected a small dataset, fine‑tuned a pretrained model, deployed it as a web app with Gradio, and hosted it on Hugging Face Spaces.
👉 Read the full article here
Steps
Import libraries – fastai simplifies everything
Download dataset – Oxford-IIIT Pet Dataset (7,349 labeled images)
Label images – extract “cat” or “dog” from filenames
Create DataLoaders – split into training & validation
Build CNN Learner – use a pretrained ResNet
Fine-tune – adapt to our dataset
Evaluate – < 2% error, in minutes!
🔍 Understanding What We Just Built
At first, our model feels like magic: a few lines of code and it can tell cats from dogs. In reality, it’s a Convolutional Neural Network (CNN)—a model that mimics how the visual cortex works. Early layers detect edges and textures; deeper layers combine them into complex shapes like ears or faces.
We didn’t start from scratch. Instead, we used a pretrained ResNet model, which had already learned visual patterns from 1.3M ImageNet images. Through transfer learning, we reused this knowledge and added a new “head” layer for our task.
The fine-tuning process:
Train only the new head.
Gradually adjust earlier layers.
Evaluate on a validation set (20% unseen data) to ensure generalization.
What looks like magic is a structured process: reuse past knowledge, adapt it, and validate.
🌍 Beyond Image Classification (Quick Glimpse)
Deep learning also powers:
Object detection, image segmentation
Text understanding, summarization, translation
Fraud detection, recommendation systems, even audio analysis
🧠 Chapter 2: Going Deeper Into How It Works
Chapter 1 felt like magic—few lines of code and a near-perfect classifier. Chapter 2 slows things down and explains the mechanics behind that magic.
Preparing Data the Right Way
Fastai automates key steps:
Download & split datasets (e.g., Oxford Pets) into training and validation sets with
RandomSplitter
.Resize all images to a fixed size for efficient computation.
Augment data (flips, rotations, crops) to make models robust even with small datasets.
DataLoaders and the Training Loop
DataLoaders
batches and shuffles data automatically. The model learns in a loop:
predict → calculate loss → adjust weights → repeat for many epochs.
Core Concepts Reinforced
Transfer learning & fine‑tuning: Start from a pretrained model and adapt.
Classification vs regression: Predict categories vs continuous values.
Overfitting: When the model memorizes instead of generalizing.
⚖Chapter 3 – Data Ethics
This chapter covers why ethics is central to AI.
Types of Issues:
Bias
- Example: A hiring algorithm trained on biased data may discriminate against women.
Feedback Loops
- Example: Predictive policing systems that focus on certain neighborhoods end up sending more police there, reinforcing bias.
Disinformation
- Example: Algorithms recommending extreme content based on engagement metrics.
What Can We Do?
Diverse data: Avoid one-sided training sets
Transparency: Show how models make predictions
Policy changes: Actively review and adjust outcomes
Human oversight: Models should assist, not decide alone
✨ Final Thoughts
These first three chapters turned deep learning from “magic” into a clear process: good data, pretrained models, fine‑tuning, and validation.
I even applied these steps to build my own Windows‑vs‑Doors classifier and deploy it online.
In the next article, we’ll explore Part 2 of the book—diving deeper into larger datasets, performance tricks, and what’s really happening inside the models.
Subscribe to my newsletter
Read articles from Krupa Sawant directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
