# AI For Beginners Curriculum: Prerequisites, Structure, and Complete Setup Guide

> Explore the AI For Beginners curriculum. Learn prerequisites like Python and TensorFlow, its 12-week structure covering neural networks, NLP, AI ethics, and get setup help.

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

---

**The AI For Beginners curriculum is a 12‑week, 24‑lesson open‑source program maintained by Microsoft that requires Python 3, Conda, Jupyter, and both TensorFlow and PyTorch, structured into modular lessons covering symbolic AI, neural networks, computer vision, NLP, and AI ethics.**

Microsoft’s **AI For Beginners** repository (`microsoft/AI-For-Beginners`) provides a comprehensive, university‑level introduction to artificial intelligence through hands‑on coding. The curriculum is designed as a self‑paced or instructor‑led course that progresses from the history of AI to modern deep learning architectures and responsible AI principles. Every lesson includes executable Jupyter notebooks with parallel implementations in **PyTorch** and **TensorFlow**, allowing learners to choose their preferred framework.

## Prerequisites for the AI For Beginners Curriculum

Before cloning the repository, ensure your system meets the following requirements defined in the source code:

- **Python 3** – The entire curriculum uses Python 3.x syntax within Jupyter notebooks.
- **Conda or Miniconda** – The primary setup relies on a Conda environment defined in [`environment.yml`](https://github.com/microsoft/AI-For-Beginners/blob/main/environment.yml) at the repository root. Running `conda env create -f environment.yml` generates the isolated `ai4beg` environment with all dependencies【README.md#L81-L86】.
- **Jupyter Notebook or JupyterLab** – Lessons are delivered as `.ipynb` files launched via `jupyter notebook` or `jupyter lab`.
- **TensorFlow 2.x and PyTorch** – Both frameworks are installed simultaneously through the Conda environment; individual lessons provide separate notebooks for each framework so you can compare implementations【README.md#L84-L95】.
- **Optional GPU** – While most early lessons run on CPU, later modules covering Convolutional Neural Networks (CNNs), Generative Adversarial Networks (GANs), and Reinforcement Learning (RL) benefit significantly from CUDA‑enabled GPUs. The repository includes GPU‑check commands in [`AGENTS.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/AGENTS.md) to verify TensorFlow and PyTorch GPU access【AGENTS.md#L57-L61】.
- **Git and VS Code** (optional) – For local development, clone the repo and open it in VS Code, or use the provided devcontainer configuration.
- **Internet Connection** – Several notebooks download datasets (e.g., ImageNet subsets, text corpora) on first execution.

### Quick Start Setup

Execute these commands in your terminal to create the environment and launch Jupyter:

```bash

# Create the environment (installs Python, TensorFlow, PyTorch, OpenCV, etc.)

conda env create -f environment.yml

# Activate the environment

conda activate ai4beg

# Launch JupyterLab

jupyter lab

```

For detailed troubleshooting, refer to [`lessons/0-course-setup/setup.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lessons/0-course-setup/setup.md), which contains platform‑specific guidance for Windows, macOS, and Linux.

## Curriculum Structure and Learning Path

The repository organizes content under the `lessons/` directory, mapping directly to the 12‑week syllabus:

```

lessons/
 ├─ 0-course-setup/          # Installation, environment verification, teacher guidance

 ├─ 1-Intro/                 # History of AI and fundamental concepts

 ├─ 2-Symbolic/              # Knowledge representation, logic, and expert systems

 ├─ 3-NeuralNetworks/        # Perceptron, multi‑layer networks, backpropagation, frameworks

 ├─ 4-ComputerVision/        # OpenCV basics, CNNs, transfer learning, GANs, object detection, segmentation

 ├─ 5-NLP/                   # Text representation, word embeddings, RNNs, Transformers, NER, LLMs

 ├─ 6-Other/                 # Genetic algorithms, deep reinforcement learning, multi‑agent systems

 ├─ 7-Ethics/                # Responsible AI, fairness, and societal impact

 └─ X-Extras/                # Advanced topics: CLIP, VQ‑GAN, multi‑modal networks

```

Each folder corresponds to one or more weeks of study. For example, `lessons/3-NeuralNetworks/03-Perceptron/` contains the theoretical README, the `Perceptron.ipynb` notebook, and a `lab/` subdirectory with practical assignments.

### Lesson Format and Components

Every lesson in the AI For Beginners curriculum follows a consistent pedagogical pattern:

1. **Pre‑reading Material** – Concise theory sections or links to Microsoft Learn modules that explain the mathematical or conceptual foundations.
2. **Executable Notebooks** – Two versions of each coding exercise: one using PyTorch (e.g., `ConvNetsPyTorch.ipynb`) and one using TensorFlow (e.g., `ConvNetsTF.ipynb`). You can complete the curriculum using only one framework or compare both【README.md#L81-L112】.
3. **Labs (Optional)** – Hands‑on assignments stored in [`lab/README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/lab/README.md) directories that require implementing solutions without step‑by‑step guidance.
4. **Quizzes** – Low‑stakes knowledge checks before and after each lesson. The quiz application is a Vue.js project located in `etc/quiz-app/` that can run locally or be deployed to Azure Static Web Apps.

The curriculum also supports multilingual learning; translations are maintained under `translations/` with associated visual assets in `translated_images/`【README.md#L24-L30】.

## Running the Quiz Application Locally

To use the interactive quiz features for self‑assessment, navigate to the quiz directory and start the development server:

```bash
cd etc/quiz-app
npm install
npm run serve   # Application available at http://localhost:8080

```

This component is optional but recommended for verifying comprehension before progressing to subsequent weeks.

## Summary

- **Environment**: Requires Python 3, Conda ([`environment.yml`](https://github.com/microsoft/AI-For-Beginners/blob/main/environment.yml)), Jupyter, and both TensorFlow 2.x and PyTorch installed in the `ai4beg` environment.
- **Duration**: 12‑week structured program with 24 core lessons plus optional advanced topics in `X-Extras/`.
- **Framework Flexibility**: Every lesson provides dual‑framework notebooks (PyTorch and TensorFlow).
- **Modular Design**: Lessons are self‑contained within `lessons/` subdirectories, each containing theory, executable code, optional labs, and quizzes.
- **GPU Optional**: Necessary only for compute‑intensive computer vision and reinforcement learning modules.

## Frequently Asked Questions

### Do I need a GPU to complete the AI For Beginners curriculum?

No, a GPU is optional. The early lessons on symbolic AI and basic neural networks run efficiently on CPU. However, according to the repository’s setup documentation in [`AGENTS.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/AGENTS.md), GPU acceleration is strongly recommended for weeks covering CNNs, GANs, and deep reinforcement learning to reduce training time from hours to minutes【AGENTS.md#L57-L61】.

### Can I complete the curriculum using only PyTorch or only TensorFlow?

Yes. While the [`environment.yml`](https://github.com/microsoft/AI-For-Beginners/blob/main/environment.yml) installs both frameworks to give you flexibility, each lesson is designed so you can choose either the PyTorch notebook (e.g., `TransformersPyTorch.ipynb`) or the TensorFlow version (e.g., `CBoW-TF.ipynb`) without missing core concepts.

### How long does it take to complete the full curriculum?

The course is structured as a 12‑week program, assuming approximately 3‑5 hours of study per week. However, because the repository is self‑paced, you can adjust the timeline based on your familiarity with Python and linear algebra.

### Is the AI For Beginners curriculum available in languages other than English?

Yes. The repository includes a `translations/` directory containing localized content and a `translated_images/` folder for non‑English diagrams and figures. The main [`README.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/README.md) references these paths for community‑contributed translations【README.md#L24-L30】.