Files
TinyTorch/dev/usage-paths/classroom-use.html
2025-11-25 18:08:28 +00:00

859 lines
41 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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>TinyTorch for Instructors: Complete ML Systems Course &#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=afcf7c3c" />
<!-- 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 = 'usage-paths/classroom-use';</script>
<script src="../_static/ml-timeline.js?v=76e9b3e3"></script>
<script src="../_static/wip-banner.js?v=5357532b"></script>
<script src="../_static/marimo-badges.js?v=1e5d2842"></script>
<script src="../_static/sidebar-link.js?v=404b701b"></script>
<script src="../_static/hero-carousel.js?v=10341d2a"></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="👩‍🏫 TinyTorch Instructor Guide" href="../instructor-guide.html" />
<link rel="prev" title="Student Workflow" href="../student-workflow.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 this book..."
aria-label="Search this book..."
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">
<ul class="nav bd-sidenav bd-sidenav__home-link">
<li class="toctree-l1">
<a class="reference internal" href="../intro.html">
Getting Started
</a>
</li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">🚀 Getting Started</span></p>
<ul class="current nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../quickstart-guide.html">Quick Start Guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../student-workflow.html">Student Workflow</a></li>
<li class="toctree-l1 current active"><a class="current reference internal" href="#">For Instructors</a></li>
<li class="toctree-l1"><a class="reference internal" href="../instructor-guide.html">Instructor Guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="ta-guide.html">TA Guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="team-onboarding.html">Team Onboarding</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="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../chapters/00-introduction.html">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="../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-source-buttons">
<button class="btn dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false" aria-label="Source repositories">
<i class="fab fa-github"></i>
</button>
<ul class="dropdown-menu">
<li><a href="https://github.com/mlsysbook/TinyTorch" target="_blank"
class="btn btn-sm btn-source-repository-button dropdown-item"
title="Source repository"
data-bs-placement="left" data-bs-toggle="tooltip"
>
<span class="btn__icon-container">
<i class="fab fa-github"></i>
</span>
<span class="btn__text-container">Repository</span>
</a>
</li>
<li><a href="https://github.com/mlsysbook/TinyTorch/edit/main/site/usage-paths/classroom-use.md" target="_blank"
class="btn btn-sm btn-source-edit-button dropdown-item"
title="Suggest edit"
data-bs-placement="left" data-bs-toggle="tooltip"
>
<span class="btn__icon-container">
<i class="fas fa-pencil-alt"></i>
</span>
<span class="btn__text-container">Suggest edit</span>
</a>
</li>
<li><a href="https://github.com/mlsysbook/TinyTorch/issues/new?title=Issue%20on%20page%20%2Fusage-paths/classroom-use.html&body=Your%20issue%20content%20here." target="_blank"
class="btn btn-sm btn-source-issues-button dropdown-item"
title="Open an issue"
data-bs-placement="left" data-bs-toggle="tooltip"
>
<span class="btn__icon-container">
<i class="fas fa-lightbulb"></i>
</span>
<span class="btn__text-container">Open issue</span>
</a>
</li>
</ul>
</div>
<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/usage-paths/classroom-use.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>TinyTorch for Instructors: Complete ML Systems Course</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="#planned-course-infrastructure">🎯 Planned Course Infrastructure</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#why-tinytorch-for-your-classroom">🌟 Why TinyTorch for Your Classroom</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#course-module-overview">Course Module Overview</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#academic-learning-goals">Academic Learning Goals</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#quick-start-for-instructors">🚀 Quick Start for Instructors</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#assessment-options">📋 Assessment Options</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#automated-grading">Automated Grading</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#flexible-point-distribution">Flexible Point Distribution</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#project-based-assessment">Project-Based Assessment</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#instructor-resources">Instructor 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-documentation">Essential Documentation</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#support-tools">Support Tools</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#community">Community</a></li>
</ul>
</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="tinytorch-for-instructors-complete-ml-systems-course">
<h1>TinyTorch for Instructors: Complete ML Systems Course<a class="headerlink" href="#tinytorch-for-instructors-complete-ml-systems-course" title="Link to this heading">#</a></h1>
<div style="background: #d4edda; border: 1px solid #28a745; padding: 1.5rem; border-radius: 0.5rem; margin: 2rem 0;">
<h3 style="margin: 0 0 0.5rem 0; color: #155724;">✅ Classroom Integration Available</h3>
<p style="margin: 0; color: #155724;">TinyTorch includes complete <a href="https://nbgrader.readthedocs.io/" style="color: #155724; text-decoration: underline; font-weight: bold;">NBGrader</a> integration with automated grading workflows. See the <a href="../instructor-guide.html" style="color: #155724; font-weight: bold;">Complete Instructor Guide</a> for setup, grading rubrics, and sample solutions.</p>
</div>
<div style="background: #e3f2fd; border: 1px solid #2196f3; padding: 1rem; border-radius: 0.5rem; margin: 1rem 0;">
<strong>📖 Course Vision:</strong> This page describes the planned TinyTorch classroom experience.<br>
<strong>📖 For Current Usage:</strong> Students should follow the <a href="../student-workflow.html">Student Workflow</a> guide.
</div>
<div style="background: #f8f9fa; border: 1px solid #dee2e6; padding: 2rem; border-radius: 0.5rem; text-align: center; margin: 2rem 0;">
<h2 style="margin: 0 0 1rem 0; color: #495057;">🏫 Planned: Turn-Key ML Systems Education</h2>
<p style="font-size: 1.1rem; margin: 0; color: #6c757d;">Transform students from framework users to systems engineers</p>
</div>
<p><strong>Vision:</strong> Replace black-box API courses with deep systems understanding. Students will build neural networks from scratch, understand every operation, and graduate job-ready for ML engineering roles.</p>
<hr class="docutils" />
<section id="planned-course-infrastructure">
<h2>🎯 Planned Course Infrastructure<a class="headerlink" href="#planned-course-infrastructure" title="Link to this heading">#</a></h2>
<div style="background: #f8f9fa; border-left: 4px solid #007bff; padding: 1.5rem; margin: 1.5rem 0;">
<h4 style="margin: 0 0 1rem 0; color: #0056b3;">Planned Features: Production-Ready Course Materials</h4>
<div style="display: grid; grid-template-columns: 1fr 1fr; gap: 1rem;">
<div>
<ul style="margin: 0; padding-left: 1rem;">
<li><strong>Three-tier progression</strong> (20 modules) with [NBGrader](https://nbgrader.readthedocs.io/) integration</li>
<li><strong>Automated grading</strong> for immediate feedback</li>
<li><strong>Professional CLI tools</strong> for development workflow</li>
<li><strong>Real datasets</strong> (CIFAR-10, text generation)</li>
</ul>
</div>
<div>
<ul style="margin: 0; padding-left: 1rem;">
<li><strong>Complete instructor guide</strong> with setup & grading ([available now](../instructor-guide.html))</li>
<li><strong>Flexible pacing</strong> (14-18 weeks depending on depth)</li>
<li><strong>Industry practices</strong> (Git, testing, documentation)</li>
<li><strong>Academic foundation</strong> from university research</li>
</ul>
</div>
</div>
</div>
<p><strong>Planned Course Duration:</strong> 14-16 weeks (flexible pacing)
<strong>Student Outcome:</strong> Complete ML framework supporting vision AND language models</p>
<p><strong>Current Status:</strong> Complete NBGrader integration available! See the <a class="reference internal" href="#../instructor-guide.html"><span class="xref myst">Instructor Guide</span></a> for setup, grading workflows, and sample solutions.</p>
</section>
<hr class="docutils" />
<section id="why-tinytorch-for-your-classroom">
<h2>🌟 Why TinyTorch for Your Classroom<a class="headerlink" href="#why-tinytorch-for-your-classroom" title="Link to this heading">#</a></h2>
<div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 1.5rem; margin: 2rem 0;">
<div style="background: #e8f5e8; padding: 1.5rem; border-radius: 0.5rem; border-left: 4px solid #4caf50;">
<h4 style="margin: 0 0 1rem 0; color: #2e7d32;">🎯 Deep Learning Outcomes</h4>
<p style="margin: 0 0 0.5rem 0; font-weight: 600;">Students build neural networks from scratch</p>
<ul style="margin: 0; font-size: 0.9rem; color: #64748b;">
<li>Graduates understand deep systems architecture</li>
<li>Can debug ML issues from first principles</li>
<li>Prepared for ML engineering roles</li>
<li>Confident implementing novel architectures</li>
</ul>
</div>
<div style="background: #fff3e0; padding: 1.5rem; border-radius: 0.5rem; border-left: 4px solid #ff9800;">
<h4 style="margin: 0 0 1rem 0; color: #f57c00;">⚡ Zero-Setup Teaching</h4>
<p style="margin: 0 0 0.5rem 0; font-weight: 600;">30-minute instructor setup, then focus on teaching</p>
<ul style="margin: 0; font-size: 0.9rem; color: #64748b;">
<li><strong>NBGrader integration</strong>: Automated grading & feedback</li>
<li><strong>One-command workflows</strong>: Generate, release, collect assignments</li>
<li><strong>Progress dashboards</strong>: Track all students at a glance</li>
<li><strong>Flexible pacing</strong>: Adapt to your semester schedule</li>
</ul>
</div>
<div style="background: #f3e5f5; padding: 1.5rem; border-radius: 0.5rem; border-left: 4px solid #9c27b0;">
<h4 style="margin: 0 0 1rem 0; color: #7b1fa2;">🏆 Industry-Standard Workflow</h4>
<p style="margin: 0 0 0.5rem 0; font-weight: 600;">Students learn professional ML engineering practices</p>
<ul style="margin: 0; font-size: 0.9rem; color: #64748b;">
<li><strong>Git workflow</strong>: Feature branches, commits, merges</li>
<li><strong>CLI tools</strong>: Professional development environment</li>
<li><strong>Testing culture</strong>: Every implementation immediately validated</li>
<li><strong>Documentation</strong>: Clear code, explanations, insights</li>
</ul>
</div>
<div style="background: #e1f5fe; padding: 1.5rem; border-radius: 0.5rem; border-left: 4px solid #03a9f4;">
<h4 style="margin: 0 0 1rem 0; color: #0277bd;">🔬 Deep Systems Understanding</h4>
<p style="margin: 0 0 0.5rem 0; font-weight: 600;">Beyond APIs: Students understand how ML really works</p>
<ul style="margin: 0; font-size: 0.9rem; color: #64748b;">
<li><strong>Memory analysis</strong>: Profile and optimize resource usage</li>
<li><strong>Performance insights</strong>: Understand computational complexity</li>
<li><strong>Production context</strong>: How PyTorch/TensorFlow actually work</li>
<li><strong>Systems thinking</strong>: Architecture, scaling, optimization</li>
</ul>
</div>
</div>
</section>
<hr class="docutils" />
<section id="course-module-overview">
<h2>Course Module Overview<a class="headerlink" href="#course-module-overview" title="Link to this heading">#</a></h2>
<p>The TinyTorch course consists of 20 progressive modules organized into learning stages.</p>
<p><strong>📖 See <a class="reference internal" href="../chapters/00-introduction.html"><span class="std std-doc">Complete Course Structure</span></a></strong> for detailed module descriptions, learning objectives, and prerequisites for each module.</p>
</section>
<hr class="docutils" />
<section id="academic-learning-goals">
<h2>Academic Learning Goals<a class="headerlink" href="#academic-learning-goals" title="Link to this heading">#</a></h2>
<p><strong>What Students Will Achieve:</strong></p>
<ul class="simple">
<li><p>Build deep systems understanding through implementation</p></li>
<li><p>Bridge gap between ML theory and engineering practice</p></li>
<li><p>Prepare for real-world ML systems challenges</p></li>
<li><p>Enable research into novel architectures and optimizations</p></li>
</ul>
<p><strong>Core Capabilities Developed:</strong></p>
<ul class="simple">
<li><p>Implement neural networks from scratch</p></li>
<li><p>Understand autograd and backpropagation deeply</p></li>
<li><p>Optimize models for production deployment</p></li>
<li><p>Build complete frameworks supporting vision and language</p></li>
</ul>
</section>
<hr class="docutils" />
<section id="quick-start-for-instructors">
<h2>🚀 Quick Start for Instructors<a class="headerlink" href="#quick-start-for-instructors" title="Link to this heading">#</a></h2>
<div style="background: #f8f9fa; border: 1px solid #dee2e6; border-radius: 0.5rem; padding: 2rem; margin: 2rem 0;">
<h3 style="margin: 0 0 1rem 0; text-align: center; color: #495057;">⏱️ 30 Minutes to Teaching-Ready Course</h3>
<p style="text-align: center; margin: 0 0 1.5rem 0; color: #6c757d;">Three simple steps to transform your ML teaching</p>
<div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1.5rem;">
<div style="background: white; padding: 1.5rem; border-radius: 0.5rem; border: 1px solid #dee2e6;">
<h4 style="color: #495057; margin: 0 0 0.5rem 0;">1⃣ Clone & Setup (10 min)</h4>
<div style="background: #f8f9fa; padding: 1rem; border-radius: 0.25rem; font-family: monospace; font-size: 0.85rem; margin: 0.5rem 0;">
git clone TinyTorch<br>
cd TinyTorch<br>
source .venv/bin/activate<br>
pip install -r requirements.txt
</div>
<p style="font-size: 0.9rem; margin: 0; color: #6c757d;">One-time environment setup</p>
</div>
<div style="background: white; padding: 1.5rem; border-radius: 0.5rem; border: 1px solid #dee2e6;">
<h4 style="color: #495057; margin: 0 0 0.5rem 0;">2⃣ Initialize Course (10 min)</h4>
<div style="background: #f8f9fa; padding: 1rem; border-radius: 0.25rem; font-family: monospace; font-size: 0.85rem; margin: 0.5rem 0;">
tito nbgrader init<br>
tito module status --comprehensive
</div>
<p style="font-size: 0.9rem; margin: 0; color: #6c757d;">NBGrader integration & health check</p>
</div>
<div style="background: white; padding: 1.5rem; border-radius: 0.5rem; border: 1px solid #dee2e6;">
<h4 style="color: #495057; margin: 0 0 0.5rem 0;">3⃣ First Assignment (10 min)</h4>
<div style="background: #f8f9fa; padding: 1rem; border-radius: 0.25rem; font-family: monospace; font-size: 0.85rem; margin: 0.5rem 0;">
tito nbgrader generate 01_tensor<br>
tito nbgrader release 01_tensor
</div>
<p style="font-size: 0.9rem; margin: 0; color: #6c757d;">Ready to distribute to students!</p>
</div>
</div>
<div style="text-align: center; margin-top: 1.5rem;">
<a href="../instructor-guide.html" style="display: inline-block; background: #007bff; color: white; padding: 0.5rem 1rem; border-radius: 0.25rem; text-decoration: none; font-weight: 500; margin-right: 1rem;">📖 Complete Instructor Guide</a>
<a href="ta-guide.html" style="display: inline-block; background: #28a745; color: white; padding: 0.5rem 1rem; border-radius: 0.25rem; text-decoration: none; font-weight: 500;">👥 TA Guide</a>
<a href="../testing-framework.html" style="display: inline-block; background: #28a745; color: white; padding: 0.5rem 1rem; border-radius: 0.25rem; text-decoration: none; font-weight: 500;">🧪 Testing Framework Guide</a>
</div>
</div>
</section>
<hr class="docutils" />
<section id="assessment-options">
<h2>📋 Assessment Options<a class="headerlink" href="#assessment-options" title="Link to this heading">#</a></h2>
<section id="automated-grading">
<h3>Automated Grading<a class="headerlink" href="#automated-grading" title="Link to this heading">#</a></h3>
<ul class="simple">
<li><p>NBGrader integration for all modules</p></li>
<li><p>Automatic test execution and scoring</p></li>
<li><p>Detailed feedback generation</p></li>
</ul>
</section>
<section id="flexible-point-distribution">
<h3>Flexible Point Distribution<a class="headerlink" href="#flexible-point-distribution" title="Link to this heading">#</a></h3>
<ul class="simple">
<li><p>Customize weights per module</p></li>
<li><p>Add bonus challenges</p></li>
<li><p>Include participation components</p></li>
</ul>
</section>
<section id="project-based-assessment">
<h3>Project-Based Assessment<a class="headerlink" href="#project-based-assessment" title="Link to this heading">#</a></h3>
<ul class="simple">
<li><p>Combine modules into larger projects</p></li>
<li><p>Capstone project for final evaluation</p></li>
<li><p>Portfolio development opportunities</p></li>
</ul>
</section>
</section>
<hr class="docutils" />
<section id="instructor-resources">
<h2>Instructor Resources<a class="headerlink" href="#instructor-resources" title="Link to this heading">#</a></h2>
<section id="essential-documentation">
<h3>Essential Documentation<a class="headerlink" href="#essential-documentation" title="Link to this heading">#</a></h3>
<ul class="simple">
<li><p><strong><a class="reference internal" href="../instructor-guide.html"><span class="std std-doc">Complete Instructor Guide</span></a></strong> - 30-minute setup, grading rubrics, sample solutions, common errors</p></li>
<li><p><strong><a class="reference internal" href="ta-guide.html"><span class="std std-doc">TA Guide</span></a></strong> - Common student errors, debugging strategies, office hour patterns</p></li>
<li><p>Module-specific teaching notes in each <a class="reference external" href="http://ABOUT.md">ABOUT.md</a> file</p></li>
<li><p><a class="reference internal" href="../chapters/00-introduction.html"><span class="std std-doc">Course Structure</span></a> - Full curriculum overview</p></li>
<li><p><a class="reference internal" href="../student-workflow.html"><span class="std std-doc">Student Workflow</span></a> - Essential development cycle</p></li>
</ul>
</section>
<section id="support-tools">
<h3>Support Tools<a class="headerlink" href="#support-tools" title="Link to this heading">#</a></h3>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">tito</span> <span class="pre">module</span> <span class="pre">status</span> <span class="pre">--comprehensive</span></code> - System health dashboard</p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">tito</span> <span class="pre">nbgrader</span> <span class="pre">status</span></code> - Assignment tracking</p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">tito</span> <span class="pre">nbgrader</span> <span class="pre">report</span></code> - Grade export</p></li>
</ul>
</section>
<section id="community">
<h3>Community<a class="headerlink" href="#community" title="Link to this heading">#</a></h3>
<ul class="simple">
<li><p>GitHub Issues for technical support</p></li>
<li><p>Instructor discussion forum (coming soon)</p></li>
<li><p>Regular updates and improvements</p></li>
</ul>
</section>
</section>
<hr class="docutils" />
<section id="next-steps">
<h2>📞 Next Steps<a class="headerlink" href="#next-steps" title="Link to this heading">#</a></h2>
<ol class="arabic simple">
<li><p><strong>📖 Review <a class="reference internal" href="../chapters/00-introduction.html"><span class="std std-doc">Course Structure</span></a></strong> for complete curriculum overview</p></li>
<li><p><strong>🚀 Explore <a class="reference internal" href="../student-workflow.html"><span class="std std-doc">Student Workflow</span></a></strong> to understand the development cycle</p></li>
<li><p><strong>💻 Set up your environment</strong> using the <a class="reference internal" href="../quickstart-guide.html"><span class="std std-doc">Quick Start Guide</span></a></p></li>
<li><p><strong>📧 Contact us</strong> via GitHub Issues for instructor support</p></li>
</ol>
<hr class="docutils" />
<p><em>Ready to teach the most comprehensive ML systems course? Lets build something amazing together!</em> 🎓</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: "./usage-paths"
},
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="../student-workflow.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">Student Workflow</p>
</div>
</a>
<a class="right-next"
href="../instructor-guide.html"
title="next page">
<div class="prev-next-info">
<p class="prev-next-subtitle">next</p>
<p class="prev-next-title">👩‍🏫 TinyTorch Instructor Guide</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="#planned-course-infrastructure">🎯 Planned Course Infrastructure</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#why-tinytorch-for-your-classroom">🌟 Why TinyTorch for Your Classroom</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#course-module-overview">Course Module Overview</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#academic-learning-goals">Academic Learning Goals</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#quick-start-for-instructors">🚀 Quick Start for Instructors</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#assessment-options">📋 Assessment Options</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#automated-grading">Automated Grading</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#flexible-point-distribution">Flexible Point Distribution</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#project-based-assessment">Project-Based Assessment</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#instructor-resources">Instructor 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-documentation">Essential Documentation</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#support-tools">Support Tools</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#community">Community</a></li>
</ul>
</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>