---
format:
  html:
    title: "Introduction to Machine Learning Systems"
    date: today
    date-format: long
    doi: "v0.7.2"
    doi-title: "Version"
    author:
      name: Vijay Janapa Reddi
      email: vj@eecs.harvard.edu
      url: https://vijay.seas.harvard.edu
      affiliation: Harvard University
---

::: {.content-visible when-format="html:js"}

```{=html}
<p id="welcome" class="unnumbered" style="font-size: 2rem; font-weight: 600; line-height: 1.2; margin: 1.1rem 0 1rem;">Welcome</p>

<div class="abstract-section">
  <div class="abstract-content">
    <p>Machine learning has evolved from a research discipline into an engineering practice. Building systems that learn from data requires more than understanding algorithms; it demands expertise spanning data pipelines, model development, deployment constraints, accelerator behavior, and operational practice. AI capability is not a software feature; it is an emergent property of the co-design of Data, Algorithm, and Machine under both statistical and computational constraints. This book introduces AI engineering as the discipline of building intelligent systems that operate in the real world, then develops its ML systems foundation at the node level. The treatment covers four areas: foundations (system characteristics, development workflows), building (deep learning mathematics, architectures, framework internals), optimization (compression, hardware acceleration, benchmarking), and deployment (serving infrastructure, operations, responsible engineering). The emphasis throughout is on the quantitative trade-offs among data, algorithms, and machines.</p>
  </div>

  <a href="../../assets/downloads/Machine-Learning-Systems-Vol1.pdf" target="_blank" class="book-card-link" title="Download PDF">
    <div class="book-card">
      <img src="../../assets/images/covers/cover-hardcover-book-vol1.webp" alt="Machine Learning Systems Book Cover" class="book-image" />
      <p class="book-title">Introduction to Machine Learning Systems</p>
      <p class="book-subtitle">Publisher: The MIT Press (2026)</p>
      <p style="font-size: 0.8em; color: #6c757d; margin-top: 6px; margin-bottom: 0;">📖 Download PDF</p>
    </div>
  </a>
</div>
```

<p id="learning-path" class="unnumbered" style="font-size: 1.45rem; font-weight: 600; line-height: 1.25; margin: 1.5rem 0 0.75rem;">Learning Path</p>

The book progresses through four stages:

- **Part I: Foundations**: Establish the conceptual foundation and mental models that underpin effective systems work.
- **Part II: Build**: Engineer complete workflows from data pipelines through training infrastructure.
- **Part III: Optimize**: Transform theoretical understanding into systems that run efficiently in resource-constrained environments.
- **Part IV: Deploy**: Navigate serving, operations, and responsible engineering practices.

<p id="prerequisites" class="unnumbered" style="font-size: 1.45rem; font-weight: 600; line-height: 1.25; margin: 1.5rem 0 0.75rem;">Prerequisites</p>

This book assumes:

- **Programming proficiency** in Python with familiarity in NumPy
- **Mathematics foundations** in linear algebra, calculus, and probability at the undergraduate level
- Prior ML experience is helpful but not required; @sec-neural-computation provides essential background

<p id="support-our-mission" class="unnumbered" style="font-size: 1.45rem; font-weight: 600; line-height: 1.25; margin: 1.5rem 0 0.75rem;">Support Our Mission</p>

```{=html}
<div class="support-mission">
  <p><strong>2026 Goal:</strong> Help 100,000 students learn ML Systems. Sponsors like the <a href="https://edgeaifoundation.org/" target="_blank" rel="noopener noreferrer">EDGE AI Foundation</a> match every star with funding that supports learning.</p>

  <div class="support-actions">
    <span class="star-count" id="star-count">Loading...</span>
    <a href="https://github.com/harvard-edge/cs249r_book" target="_blank" rel="noopener" class="github-star-btn">⭐ Star on GitHub</a>
  </div>

  <p class="support-note">
    <a href="https://opencollective.com/mlsysbook" target="_blank" rel="noopener">Support us on Open Collective →</a>
  </p>
</div>
```

```{=html}
<script>
async function fetchGitHubStars() {
  const starElement = document.getElementById('star-count');

  try {
    const response = await fetch('https://api.github.com/repos/harvard-edge/cs249r_book');
    const data = await response.json();
    const starCount = data.stargazers_count;
    const formattedCount = starCount.toLocaleString();
    starElement.textContent = formattedCount;
    starElement.style.opacity = '1';
  } catch (error) {
    console.error('Failed to fetch GitHub stars:', error);
    starElement.textContent = 'Unavailable';
    starElement.style.opacity = '1';
  }
}

document.addEventListener('DOMContentLoaded', fetchGitHubStars);
</script>
```

<p id="listen-to-the-machine-learning-systems-podcast" class="unnumbered" style="font-size: 1.45rem; font-weight: 600; line-height: 1.25; margin: 1.5rem 0 0.75rem;">Listen to the Machine Learning Systems Podcast</p>

```{=html}
<div class="podcast-section">
  <p>
    This short podcast, created with Google's NotebookLM and inspired by insights from our <a href="https://web.eng.fiu.edu/gaquan/Papers/ESWEEK24Papers/CPS-Proceedings/pdfs/CODES-ISSS/563900a043/563900a043.pdf" target="_blank" rel="noopener">IEEE education viewpoint paper</a>, offers an accessible overview of the book's key ideas and themes.
  </p>
  <audio controls="controls">
    <source src="../../assets/media/notebooklm_podcast_mlsysbookai.mp3" type="audio/mpeg" />
    Your browser does not support the audio element.
  </audio>
</div>
```

<p id="contributing" class="unnumbered" style="font-size: 1.45rem; font-weight: 600; line-height: 1.25; margin: 1.5rem 0 0.75rem;">Contributing</p>

::: {.content-visible when-format="html"}
This is a collaborative project. The project [contribution guidelines](https://github.com/harvard-edge/cs249r_book/blob/main/book/docs/CONTRIBUTING.md) explain how to participate. Feedback, corrections, and new ideas are welcome through GitHub [issues](https://github.com/harvard-edge/cs249r_book/issues).
:::

::: {.content-visible when-format="pdf"}
This is a collaborative project. The project contribution guidelines explain how to participate, and feedback, corrections, and new ideas are welcome through the GitHub issue tracker at the book's repository (`harvard-edge/cs249r_book`).
:::

:::
