Files
TinyTorch/chapters/00-introduction.html
2025-12-05 00:52:38 +00:00

1169 lines
68 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en" data-content_root="../" >
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Course Introduction: ML Systems Engineering Through Implementation &#8212; Tiny🔥Torch</title>
<script data-cfasync="false">
document.documentElement.dataset.mode = localStorage.getItem("mode") || "";
document.documentElement.dataset.theme = localStorage.getItem("theme") || "";
</script>
<!-- Loaded before other Sphinx assets -->
<link href="../_static/styles/theme.css?digest=dfe6caa3a7d634c4db9b" rel="stylesheet" />
<link href="../_static/styles/bootstrap.css?digest=dfe6caa3a7d634c4db9b" rel="stylesheet" />
<link href="../_static/styles/pydata-sphinx-theme.css?digest=dfe6caa3a7d634c4db9b" rel="stylesheet" />
<link href="../_static/vendor/fontawesome/6.5.2/css/all.min.css?digest=dfe6caa3a7d634c4db9b" rel="stylesheet" />
<link rel="preload" as="font" type="font/woff2" crossorigin href="../_static/vendor/fontawesome/6.5.2/webfonts/fa-solid-900.woff2" />
<link rel="preload" as="font" type="font/woff2" crossorigin href="../_static/vendor/fontawesome/6.5.2/webfonts/fa-brands-400.woff2" />
<link rel="preload" as="font" type="font/woff2" crossorigin href="../_static/vendor/fontawesome/6.5.2/webfonts/fa-regular-400.woff2" />
<link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=03e43079" />
<link rel="stylesheet" type="text/css" href="../_static/styles/sphinx-book-theme.css?v=eba8b062" />
<link rel="stylesheet" type="text/css" href="../_static/togglebutton.css?v=13237357" />
<link rel="stylesheet" type="text/css" href="../_static/copybutton.css?v=76b2166b" />
<link rel="stylesheet" type="text/css" href="../_static/mystnb.8ecb98da25f57f5357bf6f572d296f466b2cfe2517ffebfabe82451661e28f02.css" />
<link rel="stylesheet" type="text/css" href="../_static/sphinx-thebe.css?v=4fa983c6" />
<link rel="stylesheet" type="text/css" href="../_static/sphinx-design.min.css?v=95c83b7e" />
<link rel="stylesheet" type="text/css" href="../_static/custom.css?v=009d37f4" />
<!-- Pre-loaded scripts that we'll load fully later -->
<link rel="preload" as="script" href="../_static/scripts/bootstrap.js?digest=dfe6caa3a7d634c4db9b" />
<link rel="preload" as="script" href="../_static/scripts/pydata-sphinx-theme.js?digest=dfe6caa3a7d634c4db9b" />
<script src="../_static/vendor/fontawesome/6.5.2/js/all.min.js?digest=dfe6caa3a7d634c4db9b"></script>
<script src="../_static/documentation_options.js?v=9eb32ce0"></script>
<script src="../_static/doctools.js?v=9a2dae69"></script>
<script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
<script src="../_static/clipboard.min.js?v=a7894cd8"></script>
<script src="../_static/copybutton.js?v=f281be69"></script>
<script src="../_static/scripts/sphinx-book-theme.js?v=887ef09a"></script>
<script>let toggleHintShow = 'Click to show';</script>
<script>let toggleHintHide = 'Click to hide';</script>
<script>let toggleOpenOnPrint = 'true';</script>
<script src="../_static/togglebutton.js?v=4a39c7ea"></script>
<script>var togglebuttonSelector = '.toggle, .admonition.dropdown';</script>
<script src="../_static/design-tabs.js?v=f930bc37"></script>
<script>const THEBE_JS_URL = "https://unpkg.com/thebe@0.8.2/lib/index.js"; const thebe_selector = ".thebe,.cell"; const thebe_selector_input = "pre"; const thebe_selector_output = ".output, .cell_output"</script>
<script async="async" src="../_static/sphinx-thebe.js?v=c100c467"></script>
<script>var togglebuttonSelector = '.toggle, .admonition.dropdown';</script>
<script>const THEBE_JS_URL = "https://unpkg.com/thebe@0.8.2/lib/index.js"; const thebe_selector = ".thebe,.cell"; const thebe_selector_input = "pre"; const thebe_selector_output = ".output, .cell_output"</script>
<script>DOCUMENTATION_OPTIONS.pagename = 'chapters/00-introduction';</script>
<script src="../_static/ml-timeline.js?v=76e9b3e3"></script>
<script src="../_static/wip-banner.js?v=04a7e74d"></script>
<script src="../_static/marimo-badges.js?v=e6289128"></script>
<script src="../_static/sidebar-link.js?v=404b701b"></script>
<script src="../_static/hero-carousel.js?v=10341d2a"></script>
<script src="../_static/subscribe-modal.js?v=42919b64"></script>
<link rel="icon" href="../_static/favicon.svg"/>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="next" title="Prerequisites &amp; Self-Assessment" href="../prerequisites.html" />
<link rel="prev" title="20. Capstone - Submission Infrastructure" href="../modules/20_capstone_ABOUT.html" />
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<meta name="docsearch:language" content="en"/>
</head>
<body data-bs-spy="scroll" data-bs-target=".bd-toc-nav" data-offset="180" data-bs-root-margin="0px 0px -60%" data-default-mode="">
<div id="pst-skip-link" class="skip-link d-print-none"><a href="#main-content">Skip to main content</a></div>
<div id="pst-scroll-pixel-helper"></div>
<button type="button" class="btn rounded-pill" id="pst-back-to-top">
<i class="fa-solid fa-arrow-up"></i>Back to top</button>
<input type="checkbox"
class="sidebar-toggle"
id="pst-primary-sidebar-checkbox"/>
<label class="overlay overlay-primary" for="pst-primary-sidebar-checkbox"></label>
<input type="checkbox"
class="sidebar-toggle"
id="pst-secondary-sidebar-checkbox"/>
<label class="overlay overlay-secondary" for="pst-secondary-sidebar-checkbox"></label>
<div class="search-button__wrapper">
<div class="search-button__overlay"></div>
<div class="search-button__search-container">
<form class="bd-search d-flex align-items-center"
action="../search.html"
method="get">
<i class="fa-solid fa-magnifying-glass"></i>
<input type="search"
class="form-control"
name="q"
id="search-input"
placeholder="Search..."
aria-label="Search..."
autocomplete="off"
autocorrect="off"
autocapitalize="off"
spellcheck="false"/>
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd>K</kbd></span>
</form></div>
</div>
<div class="pst-async-banner-revealer d-none">
<aside id="bd-header-version-warning" class="d-none d-print-none" aria-label="Version warning"></aside>
</div>
<header class="bd-header navbar navbar-expand-lg bd-navbar d-print-none">
</header>
<div class="bd-container">
<div class="bd-container__inner bd-page-width">
<div class="bd-sidebar-primary bd-sidebar">
<div class="sidebar-header-items sidebar-primary__section">
</div>
<div class="sidebar-primary-items__start sidebar-primary__section">
<div class="sidebar-primary-item">
<a class="navbar-brand logo" href="../intro.html">
<img src="../_static/logo-tinytorch.png" class="logo__image only-light" alt="Tiny🔥Torch - Home"/>
<script>document.write(`<img src="../_static/logo-tinytorch.png" class="logo__image only-dark" alt="Tiny🔥Torch - Home"/>`);</script>
</a></div>
<div class="sidebar-primary-item">
<script>
document.write(`
<button class="btn search-button-field search-button__button" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
<i class="fa-solid fa-magnifying-glass"></i>
<span class="search-button__default-text">Search</span>
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
</button>
`);
</script></div>
<div class="sidebar-primary-item"><nav class="bd-links bd-docs-nav" aria-label="Main">
<div class="bd-toc-item navbar-nav active">
<p aria-level="2" class="caption" role="heading"><span class="caption-text">🚀 Getting Started</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../getting-started.html">Complete Guide</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">🏗 Foundation Tier (01-07)</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../tiers/foundation.html">📖 Tier Overview</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/01_tensor_ABOUT.html">01. Tensor</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/02_activations_ABOUT.html">02. Activations</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/03_layers_ABOUT.html">03. Layers</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/04_losses_ABOUT.html">04. Losses</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/05_autograd_ABOUT.html">05. Autograd</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/06_optimizers_ABOUT.html">06. Optimizers</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/07_training_ABOUT.html">07. Training</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">🏛️ Architecture Tier (08-13)</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../tiers/architecture.html">📖 Tier Overview</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/08_dataloader_ABOUT.html">08. DataLoader</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/09_spatial_ABOUT.html">09. Convolutions</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/10_tokenization_ABOUT.html">10. Tokenization</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/11_embeddings_ABOUT.html">11. Embeddings</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/12_attention_ABOUT.html">12. Attention</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/13_transformers_ABOUT.html">13. Transformers</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">⏱️ Optimization Tier (14-19)</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../tiers/optimization.html">📖 Tier Overview</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/14_profiling_ABOUT.html">14. Profiling</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/15_quantization_ABOUT.html">15. Quantization</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/16_compression_ABOUT.html">16. Compression</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/17_memoization_ABOUT.html">17. Memoization</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/18_acceleration_ABOUT.html">18. Acceleration</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/19_benchmarking_ABOUT.html">19. Benchmarking</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">🏅 Capstone Competition</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../tiers/olympics.html">📖 Competition Overview</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/20_capstone_ABOUT.html">20. Torch Olympics</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">🧭 Course Orientation</span></p>
<ul class="current nav bd-sidenav">
<li class="toctree-l1 current active"><a class="current reference internal" href="#">Course Structure</a></li>
<li class="toctree-l1"><a class="reference internal" href="../prerequisites.html">Prerequisites &amp; Resources</a></li>
<li class="toctree-l1"><a class="reference internal" href="learning-journey.html">Learning Journey</a></li>
<li class="toctree-l1"><a class="reference internal" href="milestones.html">Historical Milestones</a></li>
<li class="toctree-l1"><a class="reference internal" href="../faq.html">FAQ</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">🛠️ TITO CLI Reference</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../tito/overview.html">Command Overview</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tito/modules.html">Module Workflow</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tito/milestones.html">Milestone System</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tito/data.html">Progress &amp; Data</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tito/troubleshooting.html">Troubleshooting</a></li>
<li class="toctree-l1"><a class="reference internal" href="../datasets.html">Datasets Guide</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">🤝 Community</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../community.html">Ecosystem</a></li>
<li class="toctree-l1"><a class="reference internal" href="../resources.html">Learning Resources</a></li>
<li class="toctree-l1"><a class="reference internal" href="../credits.html">Credits &amp; Acknowledgments</a></li>
</ul>
</div>
</nav></div>
</div>
<div class="sidebar-primary-items__end sidebar-primary__section">
</div>
<div id="rtd-footer-container"></div>
</div>
<main id="main-content" class="bd-main" role="main">
<div class="sbt-scroll-pixel-helper"></div>
<div class="bd-content">
<div class="bd-article-container">
<div class="bd-header-article d-print-none">
<div class="header-article-items header-article__inner">
<div class="header-article-items__start">
<div class="header-article-item"><button class="sidebar-toggle primary-toggle btn btn-sm" title="Toggle primary sidebar" data-bs-placement="bottom" data-bs-toggle="tooltip">
<span class="fa-solid fa-bars"></span>
</button></div>
</div>
<div class="header-article-items__end">
<div class="header-article-item">
<div class="article-header-buttons">
<div class="dropdown dropdown-download-buttons">
<button class="btn dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false" aria-label="Download this page">
<i class="fas fa-download"></i>
</button>
<ul class="dropdown-menu">
<li><a href="../_sources/chapters/00-introduction.md" target="_blank"
class="btn btn-sm btn-download-source-button dropdown-item"
title="Download source file"
data-bs-placement="left" data-bs-toggle="tooltip"
>
<span class="btn__icon-container">
<i class="fas fa-file"></i>
</span>
<span class="btn__text-container">.md</span>
</a>
</li>
<li>
<button onclick="window.print()"
class="btn btn-sm btn-download-pdf-button dropdown-item"
title="Print to PDF"
data-bs-placement="left" data-bs-toggle="tooltip"
>
<span class="btn__icon-container">
<i class="fas fa-file-pdf"></i>
</span>
<span class="btn__text-container">.pdf</span>
</button>
</li>
</ul>
</div>
<button onclick="toggleFullScreen()"
class="btn btn-sm btn-fullscreen-button"
title="Fullscreen mode"
data-bs-placement="bottom" data-bs-toggle="tooltip"
>
<span class="btn__icon-container">
<i class="fas fa-expand"></i>
</span>
</button>
<script>
document.write(`
<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button" title="light/dark" aria-label="light/dark" data-bs-placement="bottom" data-bs-toggle="tooltip">
<i class="theme-switch fa-solid fa-sun fa-lg" data-mode="light"></i>
<i class="theme-switch fa-solid fa-moon fa-lg" data-mode="dark"></i>
<i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"></i>
</button>
`);
</script>
<script>
document.write(`
<button class="btn btn-sm pst-navbar-icon search-button search-button__button" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
<i class="fa-solid fa-magnifying-glass fa-lg"></i>
</button>
`);
</script>
<button class="sidebar-toggle secondary-toggle btn btn-sm" title="Toggle secondary sidebar" data-bs-placement="bottom" data-bs-toggle="tooltip">
<span class="fa-solid fa-list"></span>
</button>
</div></div>
</div>
</div>
</div>
<div id="jb-print-docs-body" class="onlyprint">
<h1>Course Introduction: ML Systems Engineering Through Implementation</h1>
<!-- Table of contents -->
<div id="print-main-content">
<div id="jb-print-toc">
<div>
<h2> Contents </h2>
</div>
<nav aria-label="Page">
<ul class="visible nav section-nav flex-column">
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#the-origin-story-why-tinytorch-exists">The Origin Story: Why TinyTorch Exists</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#the-problem-were-solving">The Problem Were Solving</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#how-tinytorch-began">How TinyTorch Began</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#our-solution-learn-by-building">Our Solution: Learn By Building</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#core-learning-concepts">Core Learning Concepts</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#what-makes-tinytorch-different">What Makes TinyTorch Different</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#the-learning-philosophy-build-use-reflect">The Learning Philosophy: Build → Use → Reflect</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#who-this-course-serves">Who This Course Serves</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#perfect-for">Perfect For:</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#prerequisites">Prerequisites</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#what-youll-achieve-tier-by-tier-mastery">What Youll Achieve: Tier-by-Tier Mastery</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#after-foundation-tier-modules-01-07">After Foundation Tier (Modules 01-07)</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#after-architecture-tier-modules-08-13">After Architecture Tier (Modules 08-13)</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#after-optimization-tier-modules-14-20">After Optimization Tier (Modules 14-20)</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#the-ml-evolution-story-youll-experience">The ML Evolution Story Youll Experience</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#foundation-era-1980s-1990s-foundation-tier">Foundation Era (1980s-1990s) → Foundation Tier</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#architecture-era-1990s-2010s-architecture-tier">Architecture Era (1990s-2010s) → Architecture Tier</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#optimization-era-2010s-present-optimization-tier">Optimization Era (2010s-Present) → Optimization Tier</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#systems-engineering-focus-why-tiers-matter">Systems Engineering Focus: Why Tiers Matter</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#traditional-linear-approach">Traditional Linear Approach:</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#tinytorch-tier-approach">TinyTorch Tier Approach:</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#what-traditional-courses-teach-vs-tinytorch-tiers">What Traditional Courses Teach vs. TinyTorch Tiers:</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#career-impact-by-tier">Career Impact by Tier</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#learning-support-community">Learning Support &amp; Community</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#comprehensive-infrastructure">Comprehensive Infrastructure</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#multiple-learning-paths">Multiple Learning Paths</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#professional-development-practices">Professional Development Practices</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#start-your-journey">Start Your Journey</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#foundation-tier-modules-01-07">Foundation Tier (Modules 01-07)</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#architecture-tier-modules-08-13">Architecture Tier (Modules 08-13)</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#optimization-tier-modules-14-19">Optimization Tier (Modules 14-19)</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#learning-path-recommendations">Learning Path Recommendations</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#choose-your-learning-style">Choose Your Learning Style</a></li>
</ul>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div id="searchbox"></div>
<article class="bd-article">
<section id="course-introduction-ml-systems-engineering-through-implementation">
<h1>Course Introduction: ML Systems Engineering Through Implementation<a class="headerlink" href="#course-introduction-ml-systems-engineering-through-implementation" title="Link to this heading">#</a></h1>
<p><strong>Transform from ML user to ML systems engineer by building everything yourself.</strong></p>
<hr class="docutils" />
<section id="the-origin-story-why-tinytorch-exists">
<h2>The Origin Story: Why TinyTorch Exists<a class="headerlink" href="#the-origin-story-why-tinytorch-exists" title="Link to this heading">#</a></h2>
<section id="the-problem-were-solving">
<h3>The Problem Were Solving<a class="headerlink" href="#the-problem-were-solving" title="Link to this heading">#</a></h3>
<p>Theres a critical gap in ML engineering today. Plenty of people can use ML frameworks (PyTorch, TensorFlow, JAX, etc.), but very few understand the systems underneath. This creates real problems:</p>
<ul class="simple">
<li><p><strong>Engineers deploy models</strong> but cant debug when things go wrong</p></li>
<li><p><strong>Teams hit performance walls</strong> because no one understands the bottlenecks</p></li>
<li><p><strong>Companies struggle to scale</strong> - whether to tiny edge devices or massive clusters</p></li>
<li><p><strong>Innovation stalls</strong> when everyone is limited to existing framework capabilities</p></li>
</ul>
</section>
<section id="how-tinytorch-began">
<h3>How TinyTorch Began<a class="headerlink" href="#how-tinytorch-began" title="Link to this heading">#</a></h3>
<p>TinyTorch started as exercises for the <a class="reference external" href="https://mlsysbook.ai">MLSysBook.ai</a> textbook - students needed hands-on implementation experience. But it quickly became clear this addressed a much bigger problem:</p>
<p><strong>The industry desperately needs engineers who can BUILD ML systems, not just USE them.</strong></p>
<p>Deploying ML systems at scale is hard. Scale means both directions:</p>
<ul class="simple">
<li><p><strong>Small scale</strong>: Running models on edge devices with 1MB of RAM</p></li>
<li><p><strong>Large scale</strong>: Training models across thousands of GPUs</p></li>
<li><p><strong>Production scale</strong>: Serving millions of requests with &lt;100ms latency</p></li>
</ul>
<p>We need more engineers who understand memory hierarchies, computational graphs, kernel optimization, distributed communication - the actual systems that make ML work.</p>
</section>
<section id="our-solution-learn-by-building">
<h3>Our Solution: Learn By Building<a class="headerlink" href="#our-solution-learn-by-building" title="Link to this heading">#</a></h3>
<p>TinyTorch teaches ML systems the only way that really works: <strong>by building them yourself</strong>.</p>
<p>When you implement your own tensor operations, write your own autograd, build your own optimizer - you gain understanding thats impossible to achieve by just calling APIs. You learn not just what these systems do, but HOW they do it and WHY theyre designed that way.</p>
</section>
</section>
<hr class="docutils" />
<section id="core-learning-concepts">
<h2>Core Learning Concepts<a class="headerlink" href="#core-learning-concepts" title="Link to this heading">#</a></h2>
<div style="background: #f7fafc; border: 1px solid #e2e8f0; padding: 2rem; border-radius: 0.5rem; margin: 2rem 0;">
<p><strong>Concept 1: Systems Memory Analysis</strong></p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Learning objective: Understand memory usage patterns</span>
<span class="c1"># Framework user: &quot;torch.optim.Adam()&quot; - black box</span>
<span class="c1"># TinyTorch student: Implements Adam and discovers why it needs 3x parameter memory</span>
<span class="c1"># Result: Deep understanding of optimizer trade-offs applicable to any framework</span>
</pre></div>
</div>
<p><strong>Concept 2: Computational Complexity</strong></p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Learning objective: Analyze algorithmic scaling behavior</span>
<span class="c1"># Framework user: &quot;Attention mechanism&quot; - abstract concept</span>
<span class="c1"># TinyTorch student: Implements attention from scratch, measures O(n²) scaling</span>
<span class="c1"># Result: Intuition for sequence modeling limits across PyTorch, TensorFlow, JAX</span>
</pre></div>
</div>
<p><strong>Concept 3: Automatic Differentiation</strong></p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Learning objective: Understand gradient computation</span>
<span class="c1"># Framework user: &quot;loss.backward()&quot; - mysterious process</span>
<span class="c1"># TinyTorch student: Builds autograd engine with computational graphs</span>
<span class="c1"># Result: Knowledge of how all modern ML frameworks enable learning</span>
</pre></div>
</div>
</div>
</section>
<hr class="docutils" />
<section id="what-makes-tinytorch-different">
<h2>What Makes TinyTorch Different<a class="headerlink" href="#what-makes-tinytorch-different" title="Link to this heading">#</a></h2>
<p>Most ML education teaches you to <strong>use</strong> frameworks (PyTorch, TensorFlow, JAX, etc.). TinyTorch teaches you to <strong>build</strong> them.</p>
<p>This fundamental difference creates engineers who understand systems deeply, not just APIs superficially.</p>
<section id="the-learning-philosophy-build-use-reflect">
<h3>The Learning Philosophy: Build → Use → Reflect<a class="headerlink" href="#the-learning-philosophy-build-use-reflect" title="Link to this heading">#</a></h3>
<p><strong>Traditional Approach:</strong></p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">torch</span>
<span class="n">model</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">nn</span><span class="o">.</span><span class="n">Linear</span><span class="p">(</span><span class="mi">784</span><span class="p">,</span> <span class="mi">10</span><span class="p">)</span> <span class="c1"># Use someone else&#39;s implementation</span>
<span class="n">output</span> <span class="o">=</span> <span class="n">model</span><span class="p">(</span><span class="nb">input</span><span class="p">)</span> <span class="c1"># Trust it works, don&#39;t understand how</span>
</pre></div>
</div>
<p><strong>TinyTorch Approach:</strong></p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># 1. BUILD: You implement Linear from scratch</span>
<span class="k">class</span><span class="w"> </span><span class="nc">Linear</span><span class="p">:</span>
<span class="k">def</span><span class="w"> </span><span class="nf">forward</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">x</span><span class="p">):</span>
<span class="k">return</span> <span class="n">x</span> <span class="o">@</span> <span class="bp">self</span><span class="o">.</span><span class="n">weight</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">bias</span> <span class="c1"># You write this</span>
<span class="c1"># 2. USE: Your implementation in action</span>
<span class="kn">from</span><span class="w"> </span><span class="nn">tinytorch.core.layers</span><span class="w"> </span><span class="kn">import</span> <span class="n">Linear</span> <span class="c1"># YOUR code</span>
<span class="n">model</span> <span class="o">=</span> <span class="n">Linear</span><span class="p">(</span><span class="mi">784</span><span class="p">,</span> <span class="mi">10</span><span class="p">)</span> <span class="c1"># YOUR implementation</span>
<span class="n">output</span> <span class="o">=</span> <span class="n">model</span><span class="p">(</span><span class="nb">input</span><span class="p">)</span> <span class="c1"># YOU know exactly how this works</span>
<span class="c1"># 3. REFLECT: Systems thinking</span>
<span class="c1"># &quot;Why does matrix multiplication dominate compute time?&quot;</span>
<span class="c1"># &quot;How does this scale with larger models?&quot;</span>
<span class="c1"># &quot;What memory optimizations are possible?&quot;</span>
</pre></div>
</div>
</section>
</section>
<hr class="docutils" />
<section id="who-this-course-serves">
<h2>Who This Course Serves<a class="headerlink" href="#who-this-course-serves" title="Link to this heading">#</a></h2>
<section id="perfect-for">
<h3>Perfect For:<a class="headerlink" href="#perfect-for" title="Link to this heading">#</a></h3>
<p><strong>🎓 Computer Science Students</strong></p>
<ul class="simple">
<li><p>Want to understand ML systems beyond high-level APIs</p></li>
<li><p>Need to implement custom operations for research</p></li>
<li><p>Preparing for ML engineering roles that require systems knowledge</p></li>
</ul>
<p><strong>👩‍💻 Software Engineers → ML Engineers</strong></p>
<ul class="simple">
<li><p>Transitioning into ML engineering roles</p></li>
<li><p>Need to debug and optimize production ML systems</p></li>
<li><p>Want to understand what happens “under the hood” of ML frameworks</p></li>
</ul>
<p><strong>🔬 ML Practitioners &amp; Researchers</strong></p>
<ul class="simple">
<li><p>Debug performance issues in production systems</p></li>
<li><p>Implement novel architectures and custom operations</p></li>
<li><p>Optimize training and inference for resource constraints</p></li>
</ul>
<p><strong>🧠 Anyone Curious About ML Systems</strong></p>
<ul class="simple">
<li><p>Understand how PyTorch, TensorFlow actually work</p></li>
<li><p>Build intuition for ML systems design and optimization</p></li>
<li><p>Appreciate the engineering behind modern AI breakthroughs</p></li>
</ul>
</section>
<section id="prerequisites">
<h3>Prerequisites<a class="headerlink" href="#prerequisites" title="Link to this heading">#</a></h3>
<p><strong>Required:</strong></p>
<ul class="simple">
<li><p><strong>Python Programming</strong>: Comfortable with classes, functions, basic NumPy</p></li>
<li><p><strong>Linear Algebra Basics</strong>: Matrix multiplication, gradients (we review as needed)</p></li>
<li><p><strong>Learning Mindset</strong>: Willingness to implement rather than just use</p></li>
</ul>
<p><strong>Not Required:</strong></p>
<ul class="simple">
<li><p>Prior ML framework experience (we build our own!)</p></li>
<li><p>Deep learning theory (we learn through implementation)</p></li>
<li><p>Advanced math (we focus on practical systems implementation)</p></li>
</ul>
</section>
</section>
<hr class="docutils" />
<section id="what-youll-achieve-tier-by-tier-mastery">
<h2>What Youll Achieve: Tier-by-Tier Mastery<a class="headerlink" href="#what-youll-achieve-tier-by-tier-mastery" title="Link to this heading">#</a></h2>
<section id="after-foundation-tier-modules-01-07">
<h3>After Foundation Tier (Modules 01-07)<a class="headerlink" href="#after-foundation-tier-modules-01-07" title="Link to this heading">#</a></h3>
<p>Build a complete neural network framework from mathematical first principles:</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># YOUR implementation training real networks on real data</span>
<span class="n">model</span> <span class="o">=</span> <span class="n">Sequential</span><span class="p">([</span>
<span class="n">Linear</span><span class="p">(</span><span class="mi">784</span><span class="p">,</span> <span class="mi">128</span><span class="p">),</span> <span class="c1"># Your linear algebra implementation</span>
<span class="n">ReLU</span><span class="p">(),</span> <span class="c1"># Your activation function</span>
<span class="n">Linear</span><span class="p">(</span><span class="mi">128</span><span class="p">,</span> <span class="mi">64</span><span class="p">),</span> <span class="c1"># Your gradient-aware layers</span>
<span class="n">ReLU</span><span class="p">(),</span> <span class="c1"># Your nonlinearity</span>
<span class="n">Linear</span><span class="p">(</span><span class="mi">64</span><span class="p">,</span> <span class="mi">10</span><span class="p">)</span> <span class="c1"># Your classification head</span>
<span class="p">])</span>
<span class="c1"># YOUR complete training system</span>
<span class="n">optimizer</span> <span class="o">=</span> <span class="n">Adam</span><span class="p">(</span><span class="n">model</span><span class="o">.</span><span class="n">parameters</span><span class="p">(),</span> <span class="n">lr</span><span class="o">=</span><span class="mf">0.001</span><span class="p">)</span> <span class="c1"># Your optimization algorithm</span>
<span class="k">for</span> <span class="n">batch</span> <span class="ow">in</span> <span class="n">dataloader</span><span class="p">:</span> <span class="c1"># Your data management</span>
<span class="n">output</span> <span class="o">=</span> <span class="n">model</span><span class="p">(</span><span class="n">batch</span><span class="o">.</span><span class="n">x</span><span class="p">)</span> <span class="c1"># Your forward computation</span>
<span class="n">loss</span> <span class="o">=</span> <span class="n">CrossEntropyLoss</span><span class="p">()(</span><span class="n">output</span><span class="p">,</span> <span class="n">batch</span><span class="o">.</span><span class="n">y</span><span class="p">)</span> <span class="c1"># Your loss calculation</span>
<span class="n">loss</span><span class="o">.</span><span class="n">backward</span><span class="p">()</span> <span class="c1"># YOUR backpropagation engine</span>
<span class="n">optimizer</span><span class="o">.</span><span class="n">step</span><span class="p">()</span> <span class="c1"># Your parameter updates</span>
</pre></div>
</div>
<p><strong>🎯 Foundation Achievement</strong>: 95%+ accuracy on MNIST using 100% your own mathematical implementations</p>
</section>
<section id="after-architecture-tier-modules-08-13">
<h3>After Architecture Tier (Modules 08-13)<a class="headerlink" href="#after-architecture-tier-modules-08-13" title="Link to this heading">#</a></h3>
<ul class="simple">
<li><p><strong>Computer Vision Mastery</strong>: CNNs achieving 75%+ accuracy on CIFAR-10 with YOUR convolution implementations</p></li>
<li><p><strong>Language Understanding</strong>: Transformers generating coherent text using YOUR attention mechanisms</p></li>
<li><p><strong>Universal Architecture</strong>: Discover why the SAME mathematical principles work for vision AND language</p></li>
<li><p><strong>AI Breakthrough Recreation</strong>: Implement the architectures that created the modern AI revolution</p></li>
</ul>
</section>
<section id="after-optimization-tier-modules-14-20">
<h3>After Optimization Tier (Modules 14-20)<a class="headerlink" href="#after-optimization-tier-modules-14-20" title="Link to this heading">#</a></h3>
<ul class="simple">
<li><p><strong>Production Performance</strong>: Systems optimized for &lt;100ms inference latency using YOUR profiling tools</p></li>
<li><p><strong>Memory Efficiency</strong>: Models compressed to 25% original size with YOUR quantization implementations</p></li>
<li><p><strong>Hardware Acceleration</strong>: Kernels achieving 10x speedups through YOUR vectorization techniques</p></li>
<li><p><strong>Competition Ready</strong>: Torch Olympics submissions competitive with industry implementations</p></li>
</ul>
</section>
</section>
<hr class="docutils" />
<section id="the-ml-evolution-story-youll-experience">
<h2>The ML Evolution Story Youll Experience<a class="headerlink" href="#the-ml-evolution-story-youll-experience" title="Link to this heading">#</a></h2>
<p>TinyTorchs three-tier structure follows the actual historical progression of machine learning breakthroughs:</p>
<section id="foundation-era-1980s-1990s-foundation-tier">
<h3>Foundation Era (1980s-1990s) → Foundation Tier<a class="headerlink" href="#foundation-era-1980s-1990s-foundation-tier" title="Link to this heading">#</a></h3>
<p><strong>The Beginning</strong>: Mathematical foundations that started it all</p>
<ul class="simple">
<li><p><strong>1986 Breakthrough</strong>: Backpropagation enables multi-layer networks</p></li>
<li><p><strong>Your Implementation</strong>: Build automatic differentiation and gradient-based optimization</p></li>
<li><p><strong>Historical Milestone</strong>: Train MLPs to 95%+ accuracy on MNIST using YOUR autograd engine</p></li>
</ul>
</section>
<section id="architecture-era-1990s-2010s-architecture-tier">
<h3>Architecture Era (1990s-2010s) → Architecture Tier<a class="headerlink" href="#architecture-era-1990s-2010s-architecture-tier" title="Link to this heading">#</a></h3>
<p><strong>The Revolution</strong>: Specialized architectures for vision and language</p>
<ul class="simple">
<li><p><strong>1998 Breakthrough</strong>: CNNs revolutionize computer vision (LeCuns LeNet)</p></li>
<li><p><strong>2017 Breakthrough</strong>: Transformers unify vision and language (“Attention is All You Need”)</p></li>
<li><p><strong>Your Implementation</strong>: Build CNNs achieving 75%+ on CIFAR-10, then transformers for text generation</p></li>
<li><p><strong>Historical Milestone</strong>: Recreate both revolutions using YOUR spatial and attention implementations</p></li>
</ul>
</section>
<section id="optimization-era-2010s-present-optimization-tier">
<h3>Optimization Era (2010s-Present) → Optimization Tier<a class="headerlink" href="#optimization-era-2010s-present-optimization-tier" title="Link to this heading">#</a></h3>
<p><strong>The Engineering</strong>: Production systems that scale to billions of users</p>
<ul class="simple">
<li><p><strong>2020s Breakthrough</strong>: Efficient inference enables real-time LLMs (GPT, ChatGPT)</p></li>
<li><p><strong>Your Implementation</strong>: Build KV-caching, quantization, and production optimizations</p></li>
<li><p><strong>Historical Milestone</strong>: Deploy systems competitive in Torch Olympics benchmarks</p></li>
</ul>
<p><strong>Why This Progression Matters</strong>: Youll understand not just modern AI, but WHY it evolved this way. Each tier builds essential capabilities that inform the next, just like ML history itself.</p>
</section>
</section>
<hr class="docutils" />
<section id="systems-engineering-focus-why-tiers-matter">
<h2>Systems Engineering Focus: Why Tiers Matter<a class="headerlink" href="#systems-engineering-focus-why-tiers-matter" title="Link to this heading">#</a></h2>
<p>Traditional ML courses teach algorithms in isolation. TinyTorchs tier structure teaches <strong>systems thinking</strong> - how components interact to create production ML systems.</p>
<section id="traditional-linear-approach">
<h3>Traditional Linear Approach:<a class="headerlink" href="#traditional-linear-approach" title="Link to this heading">#</a></h3>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>Module 1: Tensors → Module 2: Layers → Module 3: Training → ...
</pre></div>
</div>
<p><strong>Problem</strong>: Students learn components but miss system interactions</p>
</section>
<section id="tinytorch-tier-approach">
<h3>TinyTorch Tier Approach:<a class="headerlink" href="#tinytorch-tier-approach" title="Link to this heading">#</a></h3>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>🏗️ Foundation Tier: Build mathematical infrastructure
🏛️ Architecture Tier: Compose intelligent architectures
⚡ Optimization Tier: Deploy at production scale
</pre></div>
</div>
<p><strong>Advantage</strong>: Each tier builds complete, working systems with clear progression</p>
</section>
<section id="what-traditional-courses-teach-vs-tinytorch-tiers">
<h3>What Traditional Courses Teach vs. TinyTorch Tiers:<a class="headerlink" href="#what-traditional-courses-teach-vs-tinytorch-tiers" title="Link to this heading">#</a></h3>
<p><strong>Traditional</strong>: “Use <code class="docutils literal notranslate"><span class="pre">torch.optim.Adam</span></code> for optimization”
<strong>Foundation Tier</strong>: “Why Adam needs 3× more memory than SGD and how to implement both from mathematical first principles”</p>
<p><strong>Traditional</strong>: “Transformers use attention mechanisms”
<strong>Architecture Tier</strong>: “How attention creates O(N²) scaling, why this limits context windows, and how to implement efficient attention yourself”</p>
<p><strong>Traditional</strong>: “Deploy models with TensorFlow Serving”
<strong>Optimization Tier</strong>: “How to profile bottlenecks, implement KV-caching for 10× speedup, and compete in production benchmarks”</p>
</section>
<section id="career-impact-by-tier">
<h3>Career Impact by Tier<a class="headerlink" href="#career-impact-by-tier" title="Link to this heading">#</a></h3>
<p>After each tier, you become the team member who:</p>
<p><strong>🏗️ Foundation Tier Graduate</strong>:</p>
<ul class="simple">
<li><p>Debugs gradient flow issues: “Your ReLU is causing dead neurons”</p></li>
<li><p>Implements custom optimizers: “Ill build a variant of Adam for this use case”</p></li>
<li><p>Understands memory patterns: “Batch size 64 hits your GPU memory limit here”</p></li>
</ul>
<p><strong>🏛️ Architecture Tier Graduate</strong>:</p>
<ul class="simple">
<li><p>Designs novel architectures: “We can adapt transformers for this computer vision task”</p></li>
<li><p>Optimizes attention patterns: “This attention bottleneck is why your model wont scale to longer sequences”</p></li>
<li><p>Bridges vision and language: “The same mathematical principles work for both domains”</p></li>
</ul>
<p><strong>⚡ Optimization Tier Graduate</strong>:</p>
<ul class="simple">
<li><p>Deploys production systems: “I can get us from 500ms to 50ms inference latency”</p></li>
<li><p>Leads performance optimization: “Heres our memory bottleneck and my 3-step plan to fix it”</p></li>
<li><p>Competes at industry scale: “Our optimizations achieve Torch Olympics benchmark performance”</p></li>
</ul>
</section>
</section>
<hr class="docutils" />
<section id="learning-support-community">
<h2>Learning Support &amp; Community<a class="headerlink" href="#learning-support-community" title="Link to this heading">#</a></h2>
<section id="comprehensive-infrastructure">
<h3>Comprehensive Infrastructure<a class="headerlink" href="#comprehensive-infrastructure" title="Link to this heading">#</a></h3>
<ul class="simple">
<li><p><strong>Automated Testing</strong>: Every component includes comprehensive test suites</p></li>
<li><p><strong>Progress Tracking</strong>: 16-checkpoint capability assessment system</p></li>
<li><p><strong>CLI Tools</strong>: <code class="docutils literal notranslate"><span class="pre">tito</span></code> command-line interface for development workflow</p></li>
<li><p><strong>Visual Progress</strong>: Real-time tracking of learning milestones</p></li>
</ul>
</section>
<section id="multiple-learning-paths">
<h3>Multiple Learning Paths<a class="headerlink" href="#multiple-learning-paths" title="Link to this heading">#</a></h3>
<ul class="simple">
<li><p><strong>Quick Exploration</strong> (5 min): Browser-based exploration, no setup required</p></li>
<li><p><strong>Serious Development</strong> (8+ weeks): Full local development environment</p></li>
<li><p><strong>Classroom Use</strong>: Complete course infrastructure with automated grading</p></li>
</ul>
</section>
<section id="professional-development-practices">
<h3>Professional Development Practices<a class="headerlink" href="#professional-development-practices" title="Link to this heading">#</a></h3>
<ul class="simple">
<li><p><strong>Version Control</strong>: Git-based workflow with feature branches</p></li>
<li><p><strong>Testing Culture</strong>: Test-driven development for all implementations</p></li>
<li><p><strong>Code Quality</strong>: Professional coding standards and review processes</p></li>
<li><p><strong>Documentation</strong>: Comprehensive guides and system architecture documentation</p></li>
</ul>
</section>
</section>
<hr class="docutils" />
<section id="start-your-journey">
<h2>Start Your Journey<a class="headerlink" href="#start-your-journey" title="Link to this heading">#</a></h2>
<div style="background: #f8f9fa; padding: 2rem; border-radius: 0.5rem; margin: 2rem 0; text-align: center;">
<h3 style="margin: 0 0 1rem 0; color: #495057;">Begin Building ML Systems</h3>
<p style="margin: 0 0 1.5rem 0; color: #6c757d;">Choose your starting point based on your goals and time commitment</p>
<a href="../quickstart-guide.html" style="display: inline-block; background: #007bff; color: white; padding: 0.75rem 1.5rem; border-radius: 0.25rem; text-decoration: none; font-weight: 500; margin-right: 1rem;">15-Minute Start →</a>
<a href="01-setup.html" style="display: inline-block; background: #28a745; color: white; padding: 0.75rem 1.5rem; border-radius: 0.25rem; text-decoration: none; font-weight: 500;">Foundation Tier →</a>
</div>
<p><strong>Next Steps</strong>:</p>
<ul class="simple">
<li><p><strong>New to TinyTorch</strong>: Start with <span class="xref myst">Quick Start Guide</span> for immediate hands-on experience</p></li>
<li><p><strong>Ready to Commit</strong>: Begin <a class="reference internal" href="../modules/01_tensor_ABOUT.html"><span class="std std-doc">Module 01: Tensor</span></a> to start building</p></li>
<li><p><strong>Teaching a Course</strong>: Review <a class="reference internal" href="#../getting-started.html#instructors"><span class="xref myst">Getting Started Guide - For Instructors</span></a> for classroom integration</p></li>
</ul>
<div class="tip admonition">
<p class="admonition-title">Your Three-Tier Journey Awaits</p>
<p>By completing all three tiers, youll have built a complete ML framework that rivals production implementations:</p>
<p><strong>🏗️ Foundation Tier Achievement</strong>: 95%+ accuracy on MNIST with YOUR mathematical implementations
<strong>🏛️ Architecture Tier Achievement</strong>: 75%+ accuracy on CIFAR-10 AND coherent text generation
<strong>⚡ Optimization Tier Achievement</strong>: Production systems competitive in Torch Olympics benchmarks</p>
<p>All using code you wrote yourself, from mathematical first principles to production optimization.</p>
</div>
<p><strong>📖 Want to understand the pedagogical narrative behind this structure?</strong> See <a class="reference internal" href="learning-journey.html"><span class="std std-doc">The Learning Journey</span></a> to understand WHY modules flow this way and HOW they build on each other through a six-act learning story.</p>
<hr class="docutils" />
<section id="foundation-tier-modules-01-07">
<h3>Foundation Tier (Modules 01-07)<a class="headerlink" href="#foundation-tier-modules-01-07" title="Link to this heading">#</a></h3>
<p><strong>Building Blocks of ML Systems • 6-8 weeks • All Prerequisites for Neural Networks</strong></p>
<div style="background: #f8f9fd; border: 1px solid #e0e7ff; padding: 2rem; border-radius: 0.5rem; margin: 2rem 0;">
<p><strong>What Youll Learn</strong>: Build the mathematical and computational infrastructure that powers all neural networks. Master tensor operations, gradient computation, and optimization algorithms.</p>
<p><strong>Prerequisites</strong>: Python programming, basic linear algebra (matrix multiplication)</p>
<p><strong>Career Connection</strong>: Foundation skills required for ML Infrastructure Engineer, Research Engineer, Framework Developer roles</p>
<p><strong>Time Investment</strong>: ~20 hours total (3 hours/week for 6-8 weeks)</p>
</div>
<div class="pst-scrollable-table-container"><table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>Module</p></th>
<th class="head"><p>Component</p></th>
<th class="head"><p>Core Capability</p></th>
<th class="head"><p>Real-World Connection</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p><strong>01</strong></p></td>
<td><p><strong>Tensor</strong></p></td>
<td><p>Data structures and operations</p></td>
<td><p>NumPy, PyTorch tensors</p></td>
</tr>
<tr class="row-odd"><td><p><strong>02</strong></p></td>
<td><p><strong>Activations</strong></p></td>
<td><p>Nonlinear functions</p></td>
<td><p>ReLU, attention activations</p></td>
</tr>
<tr class="row-even"><td><p><strong>03</strong></p></td>
<td><p><strong>Layers</strong></p></td>
<td><p>Linear transformations</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">nn.Linear</span></code>, dense layers</p></td>
</tr>
<tr class="row-odd"><td><p><strong>04</strong></p></td>
<td><p><strong>Losses</strong></p></td>
<td><p>Optimization objectives</p></td>
<td><p>CrossEntropy, MSE loss</p></td>
</tr>
<tr class="row-even"><td><p><strong>05</strong></p></td>
<td><p><strong>Autograd</strong></p></td>
<td><p>Automatic differentiation</p></td>
<td><p>PyTorch autograd engine</p></td>
</tr>
<tr class="row-odd"><td><p><strong>06</strong></p></td>
<td><p><strong>Optimizers</strong></p></td>
<td><p>Parameter updates</p></td>
<td><p>Adam, SGD optimizers</p></td>
</tr>
<tr class="row-even"><td><p><strong>07</strong></p></td>
<td><p><strong>Training</strong></p></td>
<td><p>Complete training loops</p></td>
<td><p>Model.fit(), training scripts</p></td>
</tr>
</tbody>
</table>
</div>
<p><strong>🎯 Tier Milestone</strong>: Train neural networks achieving <strong>95%+ accuracy on MNIST</strong> using 100% your own implementations!</p>
<p><strong>Skills Gained</strong>:</p>
<ul class="simple">
<li><p>Understand memory layout and computational graphs</p></li>
<li><p>Debug gradient flow and numerical stability issues</p></li>
<li><p>Implement any optimization algorithm from research papers</p></li>
<li><p>Build custom neural network architectures from scratch</p></li>
</ul>
</section>
<hr class="docutils" />
<section id="architecture-tier-modules-08-13">
<h3>Architecture Tier (Modules 08-13)<a class="headerlink" href="#architecture-tier-modules-08-13" title="Link to this heading">#</a></h3>
<p><strong>Modern AI Algorithms • 4-6 weeks • Vision + Language Architectures</strong></p>
<div style="background: #fef7ff; border: 1px solid #f3e8ff; padding: 2rem; border-radius: 0.5rem; margin: 2rem 0;">
<p><strong>What Youll Learn</strong>: Implement the architectures powering modern AI: convolutional networks for vision and transformers for language. Discover why the same mathematical principles work across domains.</p>
<p><strong>Prerequisites</strong>: Foundation Tier complete (Modules 01-07)</p>
<p><strong>Career Connection</strong>: Computer Vision Engineer, NLP Engineer, AI Research Scientist, ML Product Manager roles</p>
<p><strong>Time Investment</strong>: ~25 hours total (4-6 hours/week for 4-6 weeks)</p>
</div>
<div class="pst-scrollable-table-container"><table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>Module</p></th>
<th class="head"><p>Component</p></th>
<th class="head"><p>Core Capability</p></th>
<th class="head"><p>Real-World Connection</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p><strong>08</strong></p></td>
<td><p><strong>Spatial</strong></p></td>
<td><p>Convolutions and regularization</p></td>
<td><p>CNNs, ResNet, computer vision</p></td>
</tr>
<tr class="row-odd"><td><p><strong>09</strong></p></td>
<td><p><strong>DataLoader</strong></p></td>
<td><p>Batch processing</p></td>
<td><p>PyTorch DataLoader, tf.data</p></td>
</tr>
<tr class="row-even"><td><p><strong>10</strong></p></td>
<td><p><strong>Tokenization</strong></p></td>
<td><p>Text preprocessing</p></td>
<td><p>BERT tokenizer, GPT tokenizer</p></td>
</tr>
<tr class="row-odd"><td><p><strong>11</strong></p></td>
<td><p><strong>Embeddings</strong></p></td>
<td><p>Representation learning</p></td>
<td><p>Word2Vec, positional encodings</p></td>
</tr>
<tr class="row-even"><td><p><strong>12</strong></p></td>
<td><p><strong>Attention</strong></p></td>
<td><p>Information routing</p></td>
<td><p>Multi-head attention, self-attention</p></td>
</tr>
<tr class="row-odd"><td><p><strong>13</strong></p></td>
<td><p><strong>Transformers</strong></p></td>
<td><p>Modern architectures</p></td>
<td><p>GPT, BERT, Vision Transformer</p></td>
</tr>
</tbody>
</table>
</div>
<p><strong>🎯 Tier Milestone</strong>: Achieve <strong>75%+ accuracy on CIFAR-10</strong> with CNNs AND generate coherent text with transformers!</p>
<p><strong>Skills Gained</strong>:</p>
<ul class="simple">
<li><p>Understand why convolution works for spatial data</p></li>
<li><p>Implement attention mechanisms from scratch</p></li>
<li><p>Build transformer architectures for any domain</p></li>
<li><p>Debug sequence modeling and attention patterns</p></li>
</ul>
</section>
<hr class="docutils" />
<section id="optimization-tier-modules-14-19">
<h3>Optimization Tier (Modules 14-19)<a class="headerlink" href="#optimization-tier-modules-14-19" title="Link to this heading">#</a></h3>
<p><strong>Production &amp; Performance • 4-6 weeks • Deploy and Scale ML Systems</strong></p>
<div style="background: #f0fdfa; border: 1px solid #a7f3d0; padding: 2rem; border-radius: 0.5rem; margin: 2rem 0;">
<p><strong>What Youll Learn</strong>: Transform research models into production systems. Master profiling, optimization, and deployment techniques used by companies like OpenAI, Google, and Meta.</p>
<p><strong>Prerequisites</strong>: Architecture Tier complete (Modules 08-13)</p>
<p><strong>Career Connection</strong>: ML Systems Engineer, Performance Engineer, MLOps Engineer, Senior ML Engineer roles</p>
<p><strong>Time Investment</strong>: ~30 hours total (5-7 hours/week for 4-6 weeks)</p>
</div>
<div class="pst-scrollable-table-container"><table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>Module</p></th>
<th class="head"><p>Component</p></th>
<th class="head"><p>Core Capability</p></th>
<th class="head"><p>Real-World Connection</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p><strong>14</strong></p></td>
<td><p><strong>Profiling</strong></p></td>
<td><p>Performance analysis</p></td>
<td><p>PyTorch Profiler, TensorBoard</p></td>
</tr>
<tr class="row-odd"><td><p><strong>15</strong></p></td>
<td><p><strong>Quantization</strong></p></td>
<td><p>Memory efficiency</p></td>
<td><p>INT8 inference, model compression</p></td>
</tr>
<tr class="row-even"><td><p><strong>16</strong></p></td>
<td><p><strong>Compression</strong></p></td>
<td><p>Model optimization</p></td>
<td><p>Pruning, distillation, ONNX</p></td>
</tr>
<tr class="row-odd"><td><p><strong>17</strong></p></td>
<td><p><strong>Memoization</strong></p></td>
<td><p>Memory management</p></td>
<td><p>KV-cache for generation</p></td>
</tr>
<tr class="row-even"><td><p><strong>18</strong></p></td>
<td><p><strong>Acceleration</strong></p></td>
<td><p>Speed improvements</p></td>
<td><p>CUDA kernels, vectorization</p></td>
</tr>
<tr class="row-odd"><td><p><strong>19</strong></p></td>
<td><p><strong>Benchmarking</strong></p></td>
<td><p>Measurement systems</p></td>
<td><p>Torch Olympics, production monitoring</p></td>
</tr>
<tr class="row-even"><td><p><strong>20</strong></p></td>
<td><p><strong>Capstone</strong></p></td>
<td><p>Full system integration</p></td>
<td><p>End-to-end ML pipeline</p></td>
</tr>
</tbody>
</table>
</div>
<p><strong>🎯 Tier Milestone</strong>: Build <strong>production-ready systems</strong> competitive in Torch Olympics benchmarks!</p>
<p><strong>Skills Gained</strong>:</p>
<ul class="simple">
<li><p>Profile memory usage and identify bottlenecks</p></li>
<li><p>Implement efficient inference optimizations</p></li>
<li><p>Deploy models with &lt;100ms latency requirements</p></li>
<li><p>Design scalable ML system architectures</p></li>
</ul>
</section>
</section>
<hr class="docutils" />
<section id="learning-path-recommendations">
<h2>Learning Path Recommendations<a class="headerlink" href="#learning-path-recommendations" title="Link to this heading">#</a></h2>
<section id="choose-your-learning-style">
<h3>Choose Your Learning Style<a class="headerlink" href="#choose-your-learning-style" title="Link to this heading">#</a></h3>
<div style="display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; margin: 2rem 0;">
<div style="background: #fff7ed; border: 1px solid #fdba74; padding: 1.5rem; border-radius: 0.5rem;">
<h4 style="margin: 0 0 1rem 0; color: #c2410c;">🚀 Complete Builder</h4>
<p style="margin: 0 0 1rem 0; font-size: 0.9rem;">Implement every component from scratch</p>
<p style="margin: 0; font-size: 0.85rem; color: #6b7280;"><strong>Time:</strong> 14-18 weeks<br><strong>Ideal for:</strong> CS students, aspiring ML engineers</p>
</div>
<div style="background: #f0f9ff; border: 1px solid #7dd3fc; padding: 1.5rem; border-radius: 0.5rem;">
<h4 style="margin: 0 0 1rem 0; color: #0284c7;">⚡ Focused Explorer</h4>
<p style="margin: 0 0 1rem 0; font-size: 0.9rem;">Pick one tier based on your goals</p>
<p style="margin: 0; font-size: 0.85rem; color: #6b7280;"><strong>Time:</strong> 4-8 weeks<br><strong>Ideal for:</strong> Working professionals, specific skill gaps</p>
</div>
<div style="background: #f0fdf4; border: 1px solid #86efac; padding: 1.5rem; border-radius: 0.5rem;">
<h4 style="margin: 0 0 1rem 0; color: #166534;">📚 Guided Learner</h4>
<p style="margin: 0 0 1rem 0; font-size: 0.9rem;">Study implementations with hands-on exercises</p>
<p style="margin: 0; font-size: 0.85rem; color: #6b7280;"><strong>Time:</strong> 8-12 weeks<br><strong>Ideal for:</strong> Self-directed learners, bootcamp graduates</p>
</div>
</div>
<hr class="docutils" />
<p>Welcome to ML systems engineering!</p>
</section>
</section>
</section>
<script type="text/x-thebe-config">
{
requestKernel: true,
binderOptions: {
repo: "binder-examples/jupyter-stacks-datascience",
ref: "master",
},
codeMirrorConfig: {
theme: "abcdef",
mode: "python"
},
kernelOptions: {
name: "python3",
path: "./chapters"
},
predefinedOutput: true
}
</script>
<script>kernelName = 'python3'</script>
</article>
<footer class="prev-next-footer d-print-none">
<div class="prev-next-area">
<a class="left-prev"
href="../modules/20_capstone_ABOUT.html"
title="previous page">
<i class="fa-solid fa-angle-left"></i>
<div class="prev-next-info">
<p class="prev-next-subtitle">previous</p>
<p class="prev-next-title">20. Capstone - Submission Infrastructure</p>
</div>
</a>
<a class="right-next"
href="../prerequisites.html"
title="next page">
<div class="prev-next-info">
<p class="prev-next-subtitle">next</p>
<p class="prev-next-title">Prerequisites &amp; Self-Assessment</p>
</div>
<i class="fa-solid fa-angle-right"></i>
</a>
</div>
</footer>
</div>
<div class="bd-sidebar-secondary bd-toc"><div class="sidebar-secondary-items sidebar-secondary__inner">
<div class="sidebar-secondary-item">
<div class="page-toc tocsection onthispage">
<i class="fa-solid fa-list"></i> Contents
</div>
<nav class="bd-toc-nav page-toc">
<ul class="visible nav section-nav flex-column">
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#the-origin-story-why-tinytorch-exists">The Origin Story: Why TinyTorch Exists</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#the-problem-were-solving">The Problem Were Solving</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#how-tinytorch-began">How TinyTorch Began</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#our-solution-learn-by-building">Our Solution: Learn By Building</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#core-learning-concepts">Core Learning Concepts</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#what-makes-tinytorch-different">What Makes TinyTorch Different</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#the-learning-philosophy-build-use-reflect">The Learning Philosophy: Build → Use → Reflect</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#who-this-course-serves">Who This Course Serves</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#perfect-for">Perfect For:</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#prerequisites">Prerequisites</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#what-youll-achieve-tier-by-tier-mastery">What Youll Achieve: Tier-by-Tier Mastery</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#after-foundation-tier-modules-01-07">After Foundation Tier (Modules 01-07)</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#after-architecture-tier-modules-08-13">After Architecture Tier (Modules 08-13)</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#after-optimization-tier-modules-14-20">After Optimization Tier (Modules 14-20)</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#the-ml-evolution-story-youll-experience">The ML Evolution Story Youll Experience</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#foundation-era-1980s-1990s-foundation-tier">Foundation Era (1980s-1990s) → Foundation Tier</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#architecture-era-1990s-2010s-architecture-tier">Architecture Era (1990s-2010s) → Architecture Tier</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#optimization-era-2010s-present-optimization-tier">Optimization Era (2010s-Present) → Optimization Tier</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#systems-engineering-focus-why-tiers-matter">Systems Engineering Focus: Why Tiers Matter</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#traditional-linear-approach">Traditional Linear Approach:</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#tinytorch-tier-approach">TinyTorch Tier Approach:</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#what-traditional-courses-teach-vs-tinytorch-tiers">What Traditional Courses Teach vs. TinyTorch Tiers:</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#career-impact-by-tier">Career Impact by Tier</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#learning-support-community">Learning Support &amp; Community</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#comprehensive-infrastructure">Comprehensive Infrastructure</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#multiple-learning-paths">Multiple Learning Paths</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#professional-development-practices">Professional Development Practices</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#start-your-journey">Start Your Journey</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#foundation-tier-modules-01-07">Foundation Tier (Modules 01-07)</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#architecture-tier-modules-08-13">Architecture Tier (Modules 08-13)</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#optimization-tier-modules-14-19">Optimization Tier (Modules 14-19)</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#learning-path-recommendations">Learning Path Recommendations</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#choose-your-learning-style">Choose Your Learning Style</a></li>
</ul>
</li>
</ul>
</nav></div>
</div></div>
</div>
<footer class="bd-footer-content">
<div class="bd-footer-content__inner container">
<div class="footer-item">
<p class="component-author">
By Prof. Vijay Janapa Reddi (Harvard University)
</p>
</div>
<div class="footer-item">
<p class="copyright">
© Copyright 2025.
<br/>
</p>
</div>
<div class="footer-item">
</div>
<div class="footer-item">
</div>
</div>
</footer>
</main>
</div>
</div>
<!-- Scripts loaded after <body> so the DOM is not blocked -->
<script src="../_static/scripts/bootstrap.js?digest=dfe6caa3a7d634c4db9b"></script>
<script src="../_static/scripts/pydata-sphinx-theme.js?digest=dfe6caa3a7d634c4db9b"></script>
<footer class="bd-footer">
</footer>
</body>
</html>