Achieve complete emoji consistency across all modules for student materials

Decision: Keep emojis in section headers for better student experience

Rationale:
- 📊 🎯 🧠 📚 emojis provide visual scanning and semantic meaning
- More engaging and approachable for students
- Clear information architecture (Info, Objectives, Concepts, Implementation)
- 13/14 modules already used this pattern - now 14/14 consistent
- Maintains TOC navigation (vs hidden admonition boxes)

Changes:
- Fixed 01_setup: Added 🎯 Learning Objectives, 🧠 Overview, 📚 What You'll Build
- Fixed 11_compression: Added 📊 Module Info, 🎯 Learning Objectives, 🧠 Overview
- Reverted 06_cnn: Back to ## headers (from admonition boxes) for TOC visibility
- All modules now follow: 📊 Module Info → 🎯 Learning Objectives → 🧠 Build/Overview → 📚 What You'll Build

Result: Consistent, student-friendly visual hierarchy across all 14 modules
This commit is contained in:
Vijay Janapa Reddi
2025-07-16 01:25:32 -04:00
parent bcc78057b4
commit 56fa527aba
6 changed files with 31 additions and 43 deletions

View File

@@ -24,11 +24,7 @@ learning_objectives: ['Understand the nbdev notebook-to-Python workflow', 'Write
Welcome to TinyTorch! This is your first module in the Machine Learning Systems course.
## Overview
The setup module teaches you the complete TinyTorch development workflow while introducing fundamental programming concepts. You'll learn to write code with NBDev directives, implement classes and functions, and understand the module-to-package export system.
## Learning Goals
## 🎯 Learning Objectives
- Understand the nbdev notebook-to-Python workflow
- Write your first TinyTorch code with `#| export` directives
@@ -36,15 +32,11 @@ The setup module teaches you the complete TinyTorch development workflow while i
- Run tests and use the CLI tools
- Get comfortable with the development rhythm
## Files
## 🧠 Overview
- `setup_dev.py` - Main development file (Jupytext format with full educational content)
- `setup_dev.ipynb` - Jupyter notebook version (auto-generated and executed)
- `tinytorch_flame.txt` - ASCII art file containing the TinyTorch flame design
- `tests/test_setup.py` - Comprehensive pytest test suite
- `README.md` - This file
The setup module teaches you the complete TinyTorch development workflow while introducing fundamental programming concepts. You'll learn to write code with NBDev directives, implement classes and functions, and understand the module-to-package export system.
## What You'll Implement
## 📚 What You'll Build
### 1. Basic Functions
- `hello_tinytorch()` - Display ASCII art and welcome message

View File

@@ -5,7 +5,7 @@ difficulty: "Intermediate"
time_estimate: "2-4 hours"
prerequisites: []
next_steps: []
learning_objectives: []
learning_objectives: ['Understand the convolution operation (sliding window, local connectivity, weight sharing)', 'Implement Conv2D with explicit for-loops (single channel, single filter, no stride/pad)', 'Visualize how convolution builds feature maps', 'Compose Conv2D with other layers to build a simple ConvNet', '(Stretch) Explore stride, padding, pooling, and multi-channel input']
---
# Module: CNN
@@ -16,24 +16,20 @@ learning_objectives: []
```{admonition} 📊 Module Info
:class: note
## 📊 Module Info
- **Difficulty**: ⭐⭐⭐ Advanced
- **Time Estimate**: 6-8 hours
- **Prerequisites**: Tensor, Activations, Layers, Networks modules
- **Next Steps**: Training, Computer Vision modules
**Implement the core building block of modern computer vision: the convolutional layer.**
```
```{admonition} 🎯 Learning Objectives
:class: tip
## 🎯 Learning Objectives
- Understand the convolution operation (sliding window, local connectivity, weight sharing)
- Implement Conv2D with explicit for-loops (single channel, single filter, no stride/pad)
- Visualize how convolution builds feature maps
- Compose Conv2D with other layers to build a simple ConvNet
- (Stretch) Explore stride, padding, pooling, and multi-channel input
```
## 🧠 Build → Use → Understand
1. **Build**: Implement Conv2D from scratch (for-loop)

View File

@@ -16,10 +16,13 @@ learning_objectives: ['Understand model size and deployment constraints in real
## Overview
This module teaches students to make neural networks smaller, faster, and more efficient for real-world deployment. Students implement four core compression techniques and learn to balance accuracy with efficiency.
## 📊 Module Info
- **Difficulty**: ⭐⭐⭐⭐⭐ Expert
- **Time Estimate**: 8-10 hours
- **Prerequisites**: Networks, Training modules
- **Next Steps**: Kernels, MLOps modules
## Learning Goals
## 🎯 Learning Objectives
- Understand model size and deployment constraints in real systems
- Implement magnitude-based pruning to remove unimportant weights
- Master quantization for 75% memory reduction (FP32 → INT8)
@@ -27,6 +30,9 @@ This module teaches students to make neural networks smaller, faster, and more e
- Create structured pruning to optimize network architectures
- Compare compression techniques and their trade-offs
## 🧠 Overview
This module teaches students to make neural networks smaller, faster, and more efficient for real-world deployment. Students implement four core compression techniques and learn to balance accuracy with efficiency.
## Educational Flow
### Step 1: Understanding Model Size

View File

@@ -8,11 +8,7 @@
Welcome to TinyTorch! This is your first module in the Machine Learning Systems course.
## Overview
The setup module teaches you the complete TinyTorch development workflow while introducing fundamental programming concepts. You'll learn to write code with NBDev directives, implement classes and functions, and understand the module-to-package export system.
## Learning Goals
## 🎯 Learning Objectives
- Understand the nbdev notebook-to-Python workflow
- Write your first TinyTorch code with `#| export` directives
@@ -20,15 +16,11 @@ The setup module teaches you the complete TinyTorch development workflow while i
- Run tests and use the CLI tools
- Get comfortable with the development rhythm
## Files
## 🧠 Overview
- `setup_dev.py` - Main development file (Jupytext format with full educational content)
- `setup_dev.ipynb` - Jupyter notebook version (auto-generated and executed)
- `tinytorch_flame.txt` - ASCII art file containing the TinyTorch flame design
- `tests/test_setup.py` - Comprehensive pytest test suite
- `README.md` - This file
The setup module teaches you the complete TinyTorch development workflow while introducing fundamental programming concepts. You'll learn to write code with NBDev directives, implement classes and functions, and understand the module-to-package export system.
## What You'll Implement
## 📚 What You'll Build
### 1. Basic Functions
- `hello_tinytorch()` - Display ASCII art and welcome message

View File

@@ -1,23 +1,19 @@
# 🔥 Module: CNN
```{admonition} 📊 Module Info
:class: note
## 📊 Module Info
- **Difficulty**: ⭐⭐⭐ Advanced
- **Time Estimate**: 6-8 hours
- **Prerequisites**: Tensor, Activations, Layers, Networks modules
- **Next Steps**: Training, Computer Vision modules
**Implement the core building block of modern computer vision: the convolutional layer.**
```
```{admonition} 🎯 Learning Objectives
:class: tip
## 🎯 Learning Objectives
- Understand the convolution operation (sliding window, local connectivity, weight sharing)
- Implement Conv2D with explicit for-loops (single channel, single filter, no stride/pad)
- Visualize how convolution builds feature maps
- Compose Conv2D with other layers to build a simple ConvNet
- (Stretch) Explore stride, padding, pooling, and multi-channel input
```
## 🧠 Build → Use → Understand
1. **Build**: Implement Conv2D from scratch (for-loop)

View File

@@ -1,9 +1,12 @@
# 🔥 Module: Compression
## Overview
This module teaches students to make neural networks smaller, faster, and more efficient for real-world deployment. Students implement four core compression techniques and learn to balance accuracy with efficiency.
## 📊 Module Info
- **Difficulty**: ⭐⭐⭐⭐⭐ Expert
- **Time Estimate**: 8-10 hours
- **Prerequisites**: Networks, Training modules
- **Next Steps**: Kernels, MLOps modules
## Learning Goals
## 🎯 Learning Objectives
- Understand model size and deployment constraints in real systems
- Implement magnitude-based pruning to remove unimportant weights
- Master quantization for 75% memory reduction (FP32 → INT8)
@@ -11,6 +14,9 @@ This module teaches students to make neural networks smaller, faster, and more e
- Create structured pruning to optimize network architectures
- Compare compression techniques and their trade-offs
## 🧠 Overview
This module teaches students to make neural networks smaller, faster, and more efficient for real-world deployment. Students implement four core compression techniques and learn to balance accuracy with efficiency.
## Educational Flow
### Step 1: Understanding Model Size