Files
TinyTorch/dev/prerequisites.html
2025-12-05 00:32:54 +00:00

712 lines
33 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>Prerequisites &amp; Self-Assessment &#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 = 'prerequisites';</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="The Learning Journey: From Atoms to Intelligence" href="chapters/learning-journey.html" />
<link rel="prev" title="Course Introduction: ML Systems Engineering Through Implementation" href="chapters/00-introduction.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"><a class="reference internal" href="chapters/00-introduction.html">Course Structure</a></li>
<li class="toctree-l1 current active"><a class="current reference internal" href="#">Prerequisites &amp; Resources</a></li>
<li class="toctree-l1"><a class="reference internal" href="chapters/learning-journey.html">Learning Journey</a></li>
<li class="toctree-l1"><a class="reference internal" href="chapters/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/prerequisites.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>Prerequisites & Self-Assessment</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="#core-requirements">Core Requirements</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#python-programming">1. Python Programming</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#basic-linear-algebra">2. Basic Linear Algebra</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#nice-to-have-background">“Nice to Have” Background</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#self-assessment-which-learning-path-fits-you">Self-Assessment: Which Learning Path Fits You?</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#path-a-foundation-first-builder-recommended-for-most">Path A: Foundation-First Builder (Recommended for most)</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#path-b-focused-systems-engineer">Path B: Focused Systems Engineer</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#path-c-academic-researcher">Path C: Academic Researcher</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#complementary-learning-resources">Complementary Learning Resources</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#essential-systems-context">Essential Systems Context</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#mathematical-foundations">Mathematical Foundations</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#visual-intuition">Visual Intuition</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#python-numpy">Python &amp; NumPy</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#ready-to-begin">Ready to Begin?</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#next-steps">Next Steps</a></li>
</ul>
</nav>
</div>
</div>
</div>
<div id="searchbox"></div>
<article class="bd-article">
<section id="prerequisites-self-assessment">
<h1>Prerequisites &amp; Self-Assessment<a class="headerlink" href="#prerequisites-self-assessment" title="Link to this heading">#</a></h1>
<p><strong>Purpose</strong>: Ensure you have the foundational knowledge to succeed in TinyTorch and discover complementary resources for deeper learning.</p>
<hr class="docutils" />
<section id="core-requirements">
<h2>Core Requirements<a class="headerlink" href="#core-requirements" title="Link to this heading">#</a></h2>
<p>You need TWO things to start building:</p>
<section id="python-programming">
<h3>1. Python Programming<a class="headerlink" href="#python-programming" title="Link to this heading">#</a></h3>
<ul class="simple">
<li><p>Comfortable writing functions and classes</p></li>
<li><p>Familiarity with basic NumPy arrays</p></li>
<li><p>No ML framework experience required—youll build your own!</p></li>
</ul>
<p><strong>Self-check</strong>: Can you write a Python class with <code class="docutils literal notranslate"><span class="pre">__init__</span></code> and methods?</p>
</section>
<section id="basic-linear-algebra">
<h3>2. Basic Linear Algebra<a class="headerlink" href="#basic-linear-algebra" title="Link to this heading">#</a></h3>
<ul class="simple">
<li><p>Understand matrix multiplication conceptually</p></li>
<li><p>Know what a gradient (derivative) represents at a high level</p></li>
</ul>
<p><strong>Self-check</strong>: Do you know what multiplying two matrices means?</p>
<p><strong>Thats it. Youre ready to start building.</strong></p>
</section>
</section>
<hr class="docutils" />
<section id="nice-to-have-background">
<h2>“Nice to Have” Background<a class="headerlink" href="#nice-to-have-background" title="Link to this heading">#</a></h2>
<p><strong>We teach these concepts as you build</strong>—you dont need them upfront:</p>
<ul class="simple">
<li><p><strong>Calculus (derivatives)</strong>: Module 05 (Autograd) teaches this through implementation</p></li>
<li><p><strong>Deep learning theory</strong>: Youll learn by building, not lectures</p></li>
<li><p><strong>Advanced NumPy</strong>: We introduce operations as needed in each module</p></li>
</ul>
<p><strong>Learning Philosophy</strong>: TinyTorch teaches ML systems through implementation. Youll understand backpropagation by building it, not by watching lectures about it.</p>
</section>
<hr class="docutils" />
<section id="self-assessment-which-learning-path-fits-you">
<h2>Self-Assessment: Which Learning Path Fits You?<a class="headerlink" href="#self-assessment-which-learning-path-fits-you" title="Link to this heading">#</a></h2>
<section id="path-a-foundation-first-builder-recommended-for-most">
<h3>Path A: Foundation-First Builder (Recommended for most)<a class="headerlink" href="#path-a-foundation-first-builder-recommended-for-most" title="Link to this heading">#</a></h3>
<p><strong>You are:</strong></p>
<ul class="simple">
<li><p>Strong Python programmer</p></li>
<li><p>Curious about ML systems</p></li>
<li><p>Want to understand how frameworks work</p></li>
</ul>
<p><strong>Start with</strong>: Module 01 (Tensor)</p>
<p><strong>Best for</strong>: CS students, software engineers transitioning to ML, anyone wanting deep systems understanding</p>
</section>
<section id="path-b-focused-systems-engineer">
<h3>Path B: Focused Systems Engineer<a class="headerlink" href="#path-b-focused-systems-engineer" title="Link to this heading">#</a></h3>
<p><strong>You are:</strong></p>
<ul class="simple">
<li><p>Professional ML engineer</p></li>
<li><p>Need specific optimization skills</p></li>
<li><p>Want production deployment knowledge</p></li>
</ul>
<p><strong>Start with</strong>: Review Foundation Tier (01-07), focus on Optimization Tier (14-19)</p>
<p><strong>Best for</strong>: Working engineers debugging production systems, performance optimization specialists</p>
</section>
<section id="path-c-academic-researcher">
<h3>Path C: Academic Researcher<a class="headerlink" href="#path-c-academic-researcher" title="Link to this heading">#</a></h3>
<p><strong>You are:</strong></p>
<ul class="simple">
<li><p>ML theory background</p></li>
<li><p>Need implementation skills</p></li>
<li><p>Want to prototype novel architectures</p></li>
</ul>
<p><strong>Start with</strong>: Module 01, accelerate through familiar concepts</p>
<p><strong>Best for</strong>: PhD students, research engineers, anyone implementing custom operations</p>
</section>
</section>
<hr class="docutils" />
<section id="complementary-learning-resources">
<h2>Complementary Learning Resources<a class="headerlink" href="#complementary-learning-resources" title="Link to this heading">#</a></h2>
<section id="essential-systems-context">
<h3>Essential Systems Context<a class="headerlink" href="#essential-systems-context" title="Link to this heading">#</a></h3>
<p><strong><a class="reference external" href="https://mlsysbook.ai">Machine Learning Systems</a></strong> by Prof. Vijay Janapa Reddi (Harvard)</p>
<ul class="simple">
<li><p>TinyTorchs companion textbook providing systems perspective</p></li>
<li><p>Covers production ML engineering, hardware acceleration, deployment</p></li>
<li><p><strong>Perfect pairing</strong>: TinyTorch teaches implementation, ML Systems book teaches context</p></li>
</ul>
</section>
<section id="mathematical-foundations">
<h3>Mathematical Foundations<a class="headerlink" href="#mathematical-foundations" title="Link to this heading">#</a></h3>
<p><strong><a class="reference external" href="https://www.deeplearningbook.org/">Deep Learning Book</a></strong> by Goodfellow, Bengio, Courville</p>
<ul class="simple">
<li><p>Comprehensive theoretical foundations</p></li>
<li><p>Mathematical background for concepts youll implement</p></li>
<li><p><strong>Use alongside TinyTorch</strong> for deeper understanding</p></li>
</ul>
</section>
<section id="visual-intuition">
<h3>Visual Intuition<a class="headerlink" href="#visual-intuition" title="Link to this heading">#</a></h3>
<p><strong><a class="reference external" href="https://www.youtube.com/playlist?list=PLZHQObOWTQDNU6R1_67000Dx_ZCJB-3pi">3Blue1Brown: Neural Networks</a></strong></p>
<ul class="simple">
<li><p>Visual explanations of backpropagation, gradient descent, neural networks</p></li>
<li><p><strong>Perfect visual complement</strong> to TinyTorchs hands-on implementation</p></li>
</ul>
<p><strong><a class="reference external" href="https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab">3Blue1Brown: Linear Algebra</a></strong></p>
<ul class="simple">
<li><p>Geometric intuition for vectors, matrices, transformations</p></li>
<li><p><strong>Helpful refresher</strong> for tensor operations and matrix multiplication</p></li>
</ul>
</section>
<section id="python-numpy">
<h3>Python &amp; NumPy<a class="headerlink" href="#python-numpy" title="Link to this heading">#</a></h3>
<p><strong><a class="reference external" href="https://numpy.org/doc/stable/user/quickstart.md">NumPy Quickstart Tutorial</a></strong></p>
<ul class="simple">
<li><p>Essential NumPy operations and array manipulation</p></li>
<li><p><strong>Review before Module 01</strong> if NumPy is unfamiliar</p></li>
</ul>
</section>
</section>
<hr class="docutils" />
<section id="ready-to-begin">
<h2>Ready to Begin?<a class="headerlink" href="#ready-to-begin" title="Link to this heading">#</a></h2>
<p><strong>If you can:</strong></p>
<ol class="arabic simple">
<li><p>✅ Write a Python class with methods</p></li>
<li><p>✅ Explain what matrix multiplication does</p></li>
<li><p>✅ Debug Python code using print statements</p></li>
</ol>
<p><strong>Then youre ready to start building!</strong></p>
<p><strong>Not quite there?</strong> Work through the resources above, then return when ready. TinyTorch will still be here, and youll get more value once foundations are solid.</p>
</section>
<hr class="docutils" />
<section id="next-steps">
<h2>Next Steps<a class="headerlink" href="#next-steps" title="Link to this heading">#</a></h2>
<p><strong>Ready to Build:</strong></p>
<ul class="simple">
<li><p>See <span class="xref myst">Quick Start Guide</span> for hands-on experience</p></li>
<li><p>See <span class="xref myst">Student Workflow</span> for development process</p></li>
<li><p>See <a class="reference internal" href="chapters/00-introduction.html"><span class="std std-doc">Course Structure</span></a> for full curriculum</p></li>
</ul>
<p><strong>Need More Context:</strong></p>
<ul class="simple">
<li><p>See <a class="reference internal" href="resources.html"><span class="std std-doc">Additional Resources</span></a> for broader ML learning materials</p></li>
<li><p>See <a class="reference internal" href="faq.html"><span class="std std-doc">FAQ</span></a> for common questions about TinyTorch</p></li>
<li><p>See <a class="reference internal" href="community.html"><span class="std std-doc">Community</span></a> to connect with other learners</p></li>
</ul>
<hr class="docutils" />
<p><strong>Your journey from ML user to ML systems engineer starts here.</strong></p>
</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: "./."
},
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="chapters/00-introduction.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">Course Introduction: ML Systems Engineering Through Implementation</p>
</div>
</a>
<a class="right-next"
href="chapters/learning-journey.html"
title="next page">
<div class="prev-next-info">
<p class="prev-next-subtitle">next</p>
<p class="prev-next-title">The Learning Journey: From Atoms to Intelligence</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="#core-requirements">Core Requirements</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#python-programming">1. Python Programming</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#basic-linear-algebra">2. Basic Linear Algebra</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#nice-to-have-background">“Nice to Have” Background</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#self-assessment-which-learning-path-fits-you">Self-Assessment: Which Learning Path Fits You?</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#path-a-foundation-first-builder-recommended-for-most">Path A: Foundation-First Builder (Recommended for most)</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#path-b-focused-systems-engineer">Path B: Focused Systems Engineer</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#path-c-academic-researcher">Path C: Academic Researcher</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#complementary-learning-resources">Complementary Learning Resources</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#essential-systems-context">Essential Systems Context</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#mathematical-foundations">Mathematical Foundations</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#visual-intuition">Visual Intuition</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#python-numpy">Python &amp; NumPy</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#ready-to-begin">Ready to Begin?</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#next-steps">Next Steps</a></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>