# AI-For-Beginners Curriculum Structure: A Complete Guide to the 12-Week Learning Path

> Explore the AI-For-Beginners curriculum structure, a 12-week learning path with 24 lessons divided into eight phases. Discover pre-reading, Jupyter notebooks, and labs.

- Repository: [Microsoft/AI-For-Beginners](https://github.com/microsoft/AI-For-Beginners)
- Tags: getting-started
- Published: 2026-08-11

---

**The AI-For-Beginners curriculum is a 12-week, 24-lesson learning path organized into eight thematic phases, with each lesson bundling pre-reading materials, dual-framework Jupyter notebooks, and optional hands-on labs.**

The microsoft/AI-For-Beginners repository provides a self-contained, progressive education in artificial intelligence. The curriculum structure follows a pedagogical progression from foundational theory to advanced deep learning implementations, with all lessons mapped in the master [`README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/README.md) and supported by a pinned [`environment.yml`](https://github.com/microsoft/AI-For-Beginners/blob/main/environment.yml) for reproducible Python environments.

## High-Level Curriculum Phases

The curriculum is divided into **eight distinct phases** (0 through VII plus Extras), each targeting specific AI domains. The high-level hierarchy is defined in the repository's main [`README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/README.md):

- **Phase 0: Course Setup** – Lesson 0 covers environment configuration and tooling setup via [`lessons/0-course-setup/setup.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/0-course-setup/setup.md).
- **Phase I: Introduction to AI** – Lesson 1 explores AI history and foundational concepts in [`lessons/1-Intro/README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/1-Intro/README.md).
- **Phase II: Symbolic AI** – Lesson 2 focuses on knowledge representation and expert systems within [`lessons/2-Symbolic/README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/2-Symbolic/README.md).
- **Phase III: Neural Networks** – Lessons 3–5 cover perceptrons, multi-layer perceptrons with custom frameworks, and production frameworks (PyTorch/TensorFlow) including overfitting concepts, located in [`lessons/3-NeuralNetworks/README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/3-NeuralNetworks/README.md).
- **Phase IV: Computer Vision** – Lessons 6–12 progress from OpenCV fundamentals through CNNs, transfer learning, autoencoders, VAEs, GANs, object detection, and U-Net semantic segmentation in [`lessons/4-ComputerVision/README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/4-ComputerVision/README.md).
- **Phase V: Natural Language Processing** – Lessons 13–20 address text representation (Bag-of-Words/TF-IDF), Word2Vec/GloVe embeddings, language modeling, RNNs, generative RNNs, BERT transformers, named entity recognition, and large language model prompt engineering via [`lessons/5-NLP/README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/README.md).
- **Phase VI: Other AI Techniques** – Lessons 21–23 examine genetic algorithms, deep reinforcement learning, and multi-agent systems in [`lessons/6-Other/README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/6-Other/README.md).
- **Phase VII: AI Ethics** – Lesson 24 covers responsible AI and ethical considerations in [`lessons/7-Ethics/README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/7-Ethics/README.md).
- **Extras** – Additional content such as Lesson 25 on multi-modal networks (CLIP, VQ-GAN) resides in [`lessons/X-Extras/X1-MultiModal/README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/X-Extras/X1-MultiModal/README.md).

## Lesson Composition and Format

Every lesson in the AI-For-Beginners curriculum follows a consistent three-part structure designed for hands-on learning:

1. **Pre-reading material** – Curated links to theory articles, academic papers, and explanatory videos that establish conceptual foundations before coding.
2. **Executable Jupyter notebooks** – Each lesson provides production-ready notebooks, typically offering two parallel implementations: one for **PyTorch** and one for **TensorFlow/Keras**. These notebooks combine explanatory markdown with executable code cells.
3. **Labs (optional)** – Practical assignments that require applying lesson concepts to concrete problems, reinforcing theoretical knowledge through implementation challenges.

The repository also includes **beginner-friendly example notebooks** (such as *Hello AI World* and *Simple Neural Network*) that provide quick, runnable introductions before learners engage with the full 24-lesson series.

## Repository Structure and Key Files

The curriculum organization is reflected in the repository's file hierarchy. These critical files define the learning environment and navigation:

- **[`README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/README.md)** – The central navigation hub containing the curriculum table, lesson descriptions, and high-level overview.
- **[`environment.yml`](https://github.com/microsoft/AI-For-Beginners/blob/main/environment.yml)** – Conda environment specification pinning dependencies including TensorFlow 2.17, PyTorch, Keras 3.5, OpenCV, and scikit-learn to ensure reproducible execution across all notebooks.
- **[`lessons/0-course-setup/setup.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/0-course-setup/setup.md)** – Initial configuration instructions for development environments.
- **[`lessons/3-NeuralNetworks/README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/3-NeuralNetworks/README.md)** – Core neural network theory and implementation guides.
- **[`lessons/4-ComputerVision/README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/4-ComputerVision/README.md)** – Computer vision deep learning methodologies.
- **[`lessons/5-NLP/README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/5-NLP/README.md)** – Natural language processing techniques from embeddings to transformers.
- **[`lessons/6-Other/README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/6-Other/README.md)** – Advanced topics including genetic algorithms and reinforcement learning.
- **[`lessons/7-Ethics/README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/7-Ethics/README.md)** – Responsible AI guidelines and ethical frameworks.
- **[`etc/quiz-app/README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/etc/quiz-app/README.md)** – A Vue.js-based quiz application that integrates with lesson content for knowledge verification.

## Working with the Curriculum Code

Learners interact with the curriculum primarily through Jupyter notebooks. Below are examples of programmatically accessing lesson materials and executing models as implemented in the microsoft/AI-For-Beginners source code.

Load and inspect a lesson notebook programmatically using `nbformat`:

```python
import nbformat

def load_notebook(path):
    with open(path) as f:
        return nbformat.read(f, as_version=4)

# Load the Perceptron notebook (PyTorch version)

perceptron_nb = load_notebook(
    "lessons/3-NeuralNetworks/03-Perceptron/Perceptron.ipynb"
)
print(perceptron_nb.cells[0].source)   # prints the first markdown cell

```

Execute inference using a pre-trained model from the computer vision lessons:

```python
import torch
from torchvision import models, transforms
from PIL import Image

model = models.resnet18(pretrained=True)
model.eval()

preprocess = transforms.Compose([
    transforms.Resize(256),
    transforms.CenterCrop(224),
    transforms.ToTensor(),
    transforms.Normalize(
        mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]
    ),
])

img = Image.open("lessons/4-ComputerVision/06-IntroCV/sample_images/dog.jpg")
input_tensor = preprocess(img).unsqueeze(0)   # shape: [1, 3, 224, 224]

with torch.no_grad():
    output = model(input_tensor)
    _, pred = torch.max(output, 1)

print(f"Predicted class index: {pred.item()}")

```

## Summary

- The AI-For-Beginners curriculum structure consists of **24 lessons across 12 weeks**, organized into eight thematic phases from basic setup to AI ethics.
- Each lesson bundles **pre-reading materials, dual-framework Jupyter notebooks (PyTorch and TensorFlow), and optional hands-on labs**.
- The repository root contains **[`README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/README.md)** for navigation and **[`environment.yml`](https://github.com/microsoft/AI-For-Beginners/blob/main/environment.yml)** for dependency management, while lesson content resides in numbered directories under `lessons/`.
- Advanced topics include **computer vision (CNNs, GANs, segmentation)**, **NLP (transformers, LLMs)**, and **reinforcement learning**, culminating in responsible AI practices.

## Frequently Asked Questions

### How long does it take to complete the AI-For-Beginners curriculum?

The curriculum is designed as a **12-week learning path** covering 24 lessons. Learners typically complete two lessons per week, though the self-paced structure allows for flexible scheduling based on prior experience with Python and machine learning concepts.

### Do I need to know both PyTorch and TensorFlow to follow the lessons?

No. While the repository provides **parallel notebook implementations** for both PyTorch and TensorFlow/Keras in most lessons, you can complete the entire curriculum using only one framework. The dual-format approach accommodates different organizational preferences and industry requirements.

### What dependencies are required to run the lesson notebooks?

The repository includes an **[`environment.yml`](https://github.com/microsoft/AI-For-Beginners/blob/main/environment.yml)** file that specifies exact package versions, including TensorFlow 2.17, PyTorch, Keras 3.5, OpenCV, and scikit-learn. Creating a Conda environment from this file ensures all 24 lessons execute without dependency conflicts.

### Are there assessments or quizzes to test my knowledge?

Yes. The repository includes a **Vue.js quiz application** located in [`etc/quiz-app/README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/etc/quiz-app/README.md) that integrates with lesson content. Additionally, optional **labs** at the end of lessons provide practical assignments to validate understanding of concepts like perceptron implementation or transformer architectures.