Commit Graph

1041 Commits

Author SHA1 Message Date
Vijay Janapa Reddi
b52b762545 feat(profiler): Add helper functions for optimization modules
- Add quick_profile() for simplified profiling interface
- Add analyze_weight_distribution() for compression module
- Both functions will be used by modules 15-18
2025-11-09 09:15:13 -05:00
Vijay Janapa Reddi
c010ca7651 docs: Add comprehensive implementation plan for optimization tier restructure 2025-11-09 09:14:15 -05:00
Vijay Janapa Reddi
3178ceec41 Rename Intelligence Tier to Architecture Tier
Changed tier name from 'Intelligence' to 'Architecture' for clarity:
- Updated TOC: 🏛️ Architecture Tier (08-14)
- Updated all tier badges in modules 08-14
- Changed emoji from 🧠 to 🏛️ (building/columns)

Rationale:
- 'Intelligence' was vague and didn't describe content
- 'Architecture' accurately describes what students learn
- Professional terminology used in ML industry
- Clearer pedagogical narrative: different neural architectures
  (data infrastructure, CNNs for vision, Transformers for language)

Content remains unchanged, only naming improved.
2025-11-09 08:32:07 -05:00
Vijay Janapa Reddi
ed38878999 fix: Pin to jupyter-book < 1.0 as v2 has issues with directory handling 2025-11-08 19:06:17 -05:00
Vijay Janapa Reddi
3c7bd5d331 debug: Add directory listing after build to diagnose missing HTML output 2025-11-08 19:04:36 -05:00
Vijay Janapa Reddi
48714ca594 fix: Remove unused appendices directory that was causing build errors 2025-11-08 19:03:25 -05:00
Vijay Janapa Reddi
616090d2e7 fix: Remove --all flag from jupyter-book build to only generate HTML 2025-11-08 19:01:53 -05:00
Vijay Janapa Reddi
baa93c9937 debug: Add file listing to diagnose checkout issue 2025-11-08 18:59:53 -05:00
Vijay Janapa Reddi
bd21e72bf6 fix: Replace wildcard gitignore that was preventing file checkout 2025-11-08 18:54:11 -05:00
Vijay Janapa Reddi
7b00c46225 fix: Clean before build and exclude appendices directory from Jupyter Book 2025-11-08 18:52:25 -05:00
Vijay Janapa Reddi
b4dbc99cc0 fix: Exclude .venv and build artifacts from Jupyter Book scanning 2025-11-08 18:49:56 -05:00
Vijay Janapa Reddi
f464469e9f Merge branch 'dev' 2025-11-08 18:47:18 -05:00
Vijay Janapa Reddi
1f0e5713b4 fix: Simplify book deployment workflow and remove legacy convert_readmes dependency 2025-11-08 18:47:02 -05:00
Vijay Janapa Reddi
57f85ef536 Merge branch 'dev' 2025-11-08 18:42:45 -05:00
Vijay Janapa Reddi
c12ae5f3c2 Simplify CLI and rename community commands
CLI improvements for better UX:
- Renamed 'tito community submit' to 'tito community share'
- Removed tito/commands/submit.py (moved to module workflow)
- Updated tito/main.py with cleaner command structure
- Removed module workflow commands (start/complete/resume)
- Updated __init__.py exports for CommunityCommand
- Updated _modidx.py with new module exports

Result: Cleaner CLI focused on essential daily workflows and
clear distinction between casual sharing vs formal competition.
2025-11-07 20:05:13 -05:00
Vijay Janapa Reddi
16660d921d Implement MLPerf Edu Competition module (Module 20)
Complete capstone competition implementation:
- Two division tracks: Closed (optimize) and Open (innovate)
- Baseline CNN model for CIFAR-10
- Validation and submission generation system
- Integration with Module 19 normalized scoring
- Honor code and GitHub repo submission workflow
- Worked examples and student templates

Module 20 is now a pedagogically sound capstone that applies
all Optimization Tier techniques in a fair competition format.
2025-11-07 20:04:57 -05:00
Vijay Janapa Reddi
3cefcf192e Add normalized scoring and MLPerf principles to Module 19
Enhancements to benchmarking module:
- Added calculate_normalized_scores() for fair hardware comparison
- Implemented speedup, compression ratio, accuracy delta metrics
- Added MLPerf principles section to educational content
- Updated module to support competition fairness

These changes enable Module 20 competition to work across different hardware.
2025-11-07 20:04:46 -05:00
Vijay Janapa Reddi
f5004807eb Clean up book directory - remove duplicates and archive unused files
Removed duplicate content:
- user-manual.md (17K) - duplicate of quickstart-guide.md
- instructor-guide.md (12K) - duplicate of classroom-use.md
- leaderboard.md (6K) - old Olympics content, superseded by community.md

Archived development/reference files to docs/archive/book-development/:
- THEME_DESIGN.md, convert_*.py, verify_build.py (build scripts)
- faq.md, kiss-principle.md, vision.md (reference docs)
- quick-exploration.md, serious-development.md (unused usage paths)

Archived unused images to book/_static/archive/:
- Gemini_Generated_Image_*.png (3 AI-generated images)

Result:
- 26% reduction in markdown files (39 → 29)
- No duplication of content
- Cleaner repository structure
- All active files in TOC or properly referenced

See docs/archive/book-development/CLEANUP_SUMMARY.md for details.
2025-11-07 18:34:11 -05:00
Vijay Janapa Reddi
2c14195c6c Add MLPerf® trademark notation
Added registered trademark symbol to MLPerf throughout:
- TOC: MLPerf® Edu Competition
- Chapter 20: MLPerf® Edu Competition

Proper attribution respects MLPerf trademark ownership.
2025-11-07 18:20:48 -05:00
Vijay Janapa Reddi
4c4d75631e Improve module naming for clarity
Changes:
- Module 09: 'Spatial' → 'Spatial (CNNs)' in TOC for clarity
- Module 20: 'TinyMLPerf' → 'MLPerfEdu' to avoid confusion
  * TinyMLPerf is a real benchmark for edge devices
  * MLPerfEdu clearly indicates educational competition
  * More accurate descriptor for this capstone
- Fixed 'Performance Tier' → 'Optimization Tier' in Module 20 objectives

Better naming makes the course structure clearer for students.
2025-11-07 18:15:39 -05:00
Vijay Janapa Reddi
be8c5a58b2 Update Optimization Tier badge from PERFORMANCE to OPTIMIZATION
Changed tier badge text for modules 15-19 to match TOC naming:
- Was: ** PERFORMANCE TIER**
- Now: ** OPTIMIZATION TIER**

Ensures consistency between TOC and chapter badges.
2025-11-07 17:55:05 -05:00
Vijay Janapa Reddi
8a4f6804a9 Standardize Foundation Tier chapters to consistent format
All Foundation Tier modules (01-07) now use consistent formatting:
- Standard tier badge: **🏗️ FOUNDATION TIER** | Difficulty | Time
- Removed HTML divs and Module Info sections
- Clean Overview sections
- Consistent structure across all modules

Fixed Module 04 (Losses) which had wrong content (was about Networks)
2025-11-07 17:54:56 -05:00
Vijay Janapa Reddi
5b59a3b466 Move KV Caching from Optimization to Intelligence Tier
KV Caching (Module 14) is about how transformers work efficiently,
not pure performance optimization. Moving it to Intelligence Tier.

Changes:
- Updated TOC: Intelligence Tier now 08-14 (was 08-13)
- Updated TOC: Optimization Tier now 15-19 (was 14-19)
- Changed Module 14 badge from PERFORMANCE to INTELLIGENCE
2025-11-07 17:54:46 -05:00
Vijay Janapa Reddi
4c8ce176d1 Remove temporary documentation files
Cleaned up temporary files created during website standardization work:
- FINAL_STATUS.md, WEBSITE_USER_FEEDBACK.md, WORK_COMPLETE_README.md
- book/CONTENT_IMPROVEMENTS.md
- Tier overview placeholder files (content integrated into TOC structure)

These were working documents and are no longer needed.
2025-11-07 17:38:16 -05:00
Vijay Janapa Reddi
dec3bacbf3 Update Foundation Tier modules (02-07) and TOC structure
Foundation Tier modules updated to final standardized version:
- Consistent YAML frontmatter with all metadata
- FOUNDATION tier badges throughout
- Professional tone with minimal emojis
- Complete learning objectives and systems thinking questions
- Real-world connections to production systems

TOC structure improvements:
- Clean 3-tier organization (Foundation, Intelligence, Performance)
- Proper tier captions and ordering
- All 20 modules properly integrated
- Capstone section clearly marked
2025-11-07 17:38:00 -05:00
Vijay Janapa Reddi
22ef4b9571 Standardize Module 20 (TinyMLPerf Competition) to professional template
- Add complete YAML frontmatter with metadata
- Add CAPSTONE badge with 5-star (Ninja) difficulty
- Standardize to exactly 5 learning objectives
- Implement competition structure with Closed/Open divisions
- Add comprehensive submission guidelines and validation
- Include normalized metrics for fair hardware comparison
- Add honor code and GitHub repo requirements
- Provide example optimizations at different skill levels
- Add Systems Thinking Questions on optimization priorities
- Connect to real MLPerf and industry applications
- Professional tone throughout
- Mark completion of all 20 modules!
2025-11-07 17:34:21 -05:00
Vijay Janapa Reddi
a43cbba5f0 Standardize Performance Tier Modules 16-19 to professional template
Module 16 (Acceleration): Hardware-aware optimization with SIMD and cache-friendly algorithms
Module 17 (Quantization): INT8 quantization and mixed-precision strategies
Module 18 (Compression): Pruning and model compression techniques
Module 19 (Benchmarking): MLPerf-style rigorous benchmarking

All modules include:
- Complete YAML frontmatter with metadata
- PERFORMANCE tier badges
- Standardized 5 learning objectives
- Build → Use → Optimize pedagogical pattern
- Production context and historical evolution
- Systems thinking questions
- Real-world connections
- Professional tone with minimal emojis
- Clear navigation to next modules
2025-11-07 17:32:48 -05:00
Vijay Janapa Reddi
fdc6f1a004 Standardize Module 15 (Profiling) to professional template
- Add complete YAML frontmatter with metadata
- Add PERFORMANCE tier badge
- Standardize to exactly 5 learning objectives
- Implement Build → Use → Optimize pedagogical pattern
- Add Why This Matters with Google/OpenAI production context
- Add comprehensive Implementation Guide with Timer, MemoryProfiler, FLOPCounter
- Add Systems Thinking Questions on Amdahls Law and bottlenecks
- Add Real-World Connections to TPU optimization and inference serving
- Reduce emoji usage for professional tone
- Add clear What's Next navigation to Module 16
2025-11-07 17:29:53 -05:00
Vijay Janapa Reddi
1598731d57 Standardize Module 14 (KV Caching) to professional template
- Add complete YAML frontmatter with metadata
- Add PERFORMANCE tier badge (first Performance Tier module)
- Standardize to exactly 5 learning objectives
- Implement Build → Use → Optimize pedagogical pattern
- Add Why This Matters with ChatGPT/Claude production context
- Add historical evolution of caching in transformers
- Add comprehensive Implementation Guide with cache structures and cached attention
- Add Systems Thinking Questions on memory-speed trade-offs
- Add Real-World Connections to conversational AI and code completion
- Reduce emoji usage for professional tone
- Add clear What's Next navigation to Module 15
2025-11-07 17:28:07 -05:00
Vijay Janapa Reddi
bbdf4a0787 Standardize Module 13 (Transformers) to professional template
- Add complete YAML frontmatter with metadata
- Add INTELLIGENCE tier badge (final module in Intelligence Tier)
- Standardize to exactly 5 learning objectives
- Implement Build → Use → Analyze pedagogical pattern
- Add Why This Matters with GPT-4/BERT/Claude production context
- Add historical context from pre-transformer to transformers everywhere
- Add comprehensive Implementation Guide with transformer blocks, GPT decoder, BERT encoder
- Add Systems Thinking Questions on layer depth and residual connections
- Add Real-World Connections to LLMs, search, and code generation
- Reduce emoji usage for professional tone
- Add clear What's Next navigation to Module 14 (Performance Tier)
2025-11-07 17:23:23 -05:00
Vijay Janapa Reddi
6a3d75d7b8 Standardize Module 12 (Attention) to professional template
- Add complete YAML frontmatter with metadata
- Add INTELLIGENCE tier badge
- Standardize to exactly 5 learning objectives
- Implement Build → Use → Analyze pedagogical pattern
- Add Why This Matters with GPT-4/BERT/AlphaFold production context
- Add historical context from RNNs to Transformers revolution
- Add comprehensive Implementation Guide with scaled dot-product and multi-head attention code
- Add Systems Thinking Questions on O(n²) complexity and multi-head benefits
- Add Real-World Connections to LLMs, translation, and vision transformers
- Reduce emoji usage for professional tone
- Add clear What's Next navigation to Module 13
2025-11-07 17:21:27 -05:00
Vijay Janapa Reddi
e36069598c Standardize Module 11 (Embeddings) to professional template
- Add complete YAML frontmatter with metadata
- Add INTELLIGENCE tier badge
- Standardize to exactly 5 learning objectives
- Implement Build → Use → Analyze pedagogical pattern
- Add Why This Matters with GPT-3/BERT production context
- Add historical evolution from Word2Vec to contextual embeddings
- Add comprehensive Implementation Guide with lookup tables and positional encodings
- Add Systems Thinking Questions on memory scaling and sparse gradients
- Add Real-World Connections to LLMs and recommendation systems
- Reduce emoji usage for professional tone
- Add clear What's Next navigation to Module 12
2025-11-07 17:19:45 -05:00
Vijay Janapa Reddi
d803c27200 Standardize Module 10 (Tokenization) to professional template
- Add complete YAML frontmatter with metadata
- Add INTELLIGENCE tier badge
- Standardize to exactly 5 learning objectives
- Implement Build → Use → Analyze pedagogical pattern
- Add Why This Matters with OpenAI/Google production context
- Add historical evolution from word-level to BPE
- Add comprehensive Implementation Guide with CharTokenizer and BPE code
- Add Systems Thinking Questions on vocab size vs sequence length trade-offs
- Add Real-World Connections to GPT, BERT, and code models
- Reduce emoji usage for professional tone
- Add clear What's Next navigation to Module 11
2025-11-07 17:17:37 -05:00
Vijay Janapa Reddi
a3855e511b Standardize Module 09 (Spatial/CNNs) to professional template
- Add complete YAML frontmatter with metadata
- Add INTELLIGENCE tier badge
- Standardize to exactly 5 learning objectives (systems/implementation/patterns/framework/optimization)
- Implement Build → Use → Analyze pedagogical pattern
- Add Why This Matters with production context (Tesla, Meta, medical imaging)
- Add historical context (LeNet to ResNet evolution)
- Add detailed Implementation Guide with Conv2D and pooling code
- Add Systems Thinking Questions on parameter efficiency and hierarchical features
- Add Real-World Connections to autonomous vehicles and medical imaging
- Reduce emoji usage for professional tone
- Add clear What's Next navigation to Module 10
2025-11-07 17:16:03 -05:00
Vijay Janapa Reddi
b0a0c054b4 Standardize Module 08 (DataLoader) to professional template
- Add complete YAML frontmatter with metadata
- Add INTELLIGENCE tier badge
- Standardize to exactly 5 learning objectives
- Implement Build → Use → Analyze pedagogical pattern
- Add Why This Matters section with production + historical context
- Add Implementation Guide with step-by-step instructions
- Add Systems Thinking Questions for deeper reflection
- Add Real-World Connections to industry applications
- Reduce emoji usage significantly (professional tone)
- Add clear What's Next navigation to Module 09
2025-11-07 17:14:29 -05:00
Vijay Janapa Reddi
ef8930d0cb Add final status document summarizing all work completed
- Complete task breakdown and statistics
- Review checklist for user
- Clear next steps and options
- Quick start commands for review
- Time investment summary
2025-11-07 01:17:12 -05:00
Vijay Janapa Reddi
4ec3f46c9b Add commit log for easy reference 2025-11-07 01:16:05 -05:00
Vijay Janapa Reddi
d20f435898 Add work completion summary for user review
- Comprehensive summary of all improvements
- Quick quality check commands
- Clear next steps and options
- Explanation of design decisions
- Success metrics and statistics
2025-11-07 01:15:47 -05:00
Vijay Janapa Reddi
5e5468c129 Add comprehensive user feedback and review document
- Analyze all improvements from user perspective
- Assess quality, consistency, and best practices
- Provide recommendations for next steps
- Review emoji reduction and professionalism
- Evaluate commit quality and structure
- Rate overall quality as Excellent (9/10)
2025-11-07 01:14:38 -05:00
Vijay Janapa Reddi
e5464d4852 Update TOC with tier overview pages and improved structure
- Add tier overview pages at start of each tier
- Update tier captions to be descriptive and professional
- Remove excessive emoji usage from captions
- Fix Performance Tier naming (was Optimization)
- Fix Module 20 title (TinyMLPerf Competition)
- Add leaderboard to Community section
2025-11-07 01:13:02 -05:00
Vijay Janapa Reddi
41c7bf6309 Add Intelligence and Performance Tier overview pages
- Create tier-2-intelligence.md (Modules 08-13)
- Create tier-3-performance.md (Modules 14-19)
- Professional tone with clear module roadmaps
- Link to tier milestones and prerequisites
- Consistent structure across all three tier pages
2025-11-07 01:12:21 -05:00
Vijay Janapa Reddi
809b46d6f2 Update Module 07 Training - Complete Foundation Tier
- Add Foundation Tier badge and complete metadata
- Implement complete training loops with validation
- Add checkpointing and metrics tracking
- Explain training dynamics and debugging
- Mark Foundation Tier completion with milestone unlock
- Link to Intelligence Tier (Module 08)
2025-11-07 01:10:48 -05:00
Vijay Janapa Reddi
d6f06b2712 Update Module 06 Optimizers with professional template
- Add Foundation Tier badge and complete metadata
- Implement SGD, Momentum, and Adam optimizers
- Explain adaptive learning rates and momentum
- Add memory analysis (Adam uses 2x parameter memory)
- Link to Training module next
2025-11-07 01:09:13 -05:00
Vijay Janapa Reddi
58ca3711b4 Update Module 05 Autograd with professional template
- Add Foundation Tier badge and complete metadata
- Reduce emoji usage for professional tone
- Explain computational graphs and chain rule clearly
- Add backward pass implementation details
- Add systems thinking on memory overhead
- Link to Optimizers module next
2025-11-07 01:07:39 -05:00
Vijay Janapa Reddi
a4647fc528 Fix Module 04 content - change from Networks to Losses
- Correct module content to Loss Functions (MSE, Cross-Entropy, BCE)
- Add Foundation Tier badge and complete metadata
- Add numerical stability explanations
- Add systems thinking questions
- Link to Autograd module next
2025-11-07 01:06:15 -05:00
Vijay Janapa Reddi
9fd71fffa2 Update Module 03 Layers with professional template
- Add Foundation Tier badge and complete metadata
- Reduce emoji usage for professional tone
- Add Xavier initialization explanation
- Add systems thinking questions
- Add parameter management details
- Link to next module (Losses)
2025-11-07 01:04:55 -05:00
Vijay Janapa Reddi
d151f333f3 Update Module 02 Activations with professional template
- Add complete YAML frontmatter with metadata
- Add Foundation Tier badge
- Reduce emoji usage (professional tone)
- Add systems thinking questions section
- Add where code lives section
- Add what's next navigation
- Improve numerical stability explanations
2025-11-07 01:03:35 -05:00
Vijay Janapa Reddi
0bec66e927 Add website content improvements implementation guide
- Create CONTENT_IMPROVEMENTS.md with professional content standards
- Focus on consistency, reduced emoji usage, systems thinking
- Define implementation phases and module template structure
2025-11-07 01:01:15 -05:00
Vijay Janapa Reddi
af8afdfb62 Remove tito module and tito notebooks commands from CLI
Removed commands:
- tito module (start/complete/resume) - students just open files
- tito notebooks - redundant with export

Students now have a simpler workflow
2025-11-07 00:36:58 -05:00
Vijay Janapa Reddi
9582f6ada2 Fix duplicate submit commands by renaming community submit to share
Issue: Had two conflicting submit commands:
- tito submit (competition submission - top level)
- tito community submit (social sharing - hierarchical)

Solution:
- Renamed 'tito community submit' to 'tito community share'
- Kept 'submit' as an alias for backward compatibility
- Updated all help text and documentation references
- Changed function name from _submit_results to _share_results

Clear separation now:
- tito community share = Social progress sharing (Modules 1-19)
- tito submit = Competition submission (Module 20)

No more confusion between the two workflows
2025-11-07 00:25:56 -05:00