# Active Contribution Areas in AI for Beginners: Contributing to Microsoft's Open-Source Curriculum

> Explore active contribution areas in Microsoft's AI For Beginners open-source curriculum including Deep Reinforcement Learning, Object Detection, and more. Contribute today!

- Repository: [Microsoft/AI-For-Beginners](https://github.com/microsoft/AI-For-Beginners)
- Tags: how-to-guide
- Published: 2026-08-21

---

**The AI for Beginners repository actively seeks contributions in Deep Reinforcement Learning, Object Detection, Named Entity Recognition, and Custom Embedding Training, as documented in the [`AGENTS.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/AGENTS.md) file.**

Microsoft's **AI for Beginners** is an open-source educational curriculum designed to make artificial intelligence accessible to newcomers. As the field evolves, the project maintains specific **active contribution areas** where community members can add the most value through new notebooks, datasets, and code examples. These priority zones are officially listed in the **Active Contribution Areas** section of [`AGENTS.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/AGENTS.md) (line 205) and guide contributors toward content gaps that need immediate attention.

## Current High-Priority Contribution Areas

The following four domains represent the core **active contribution areas in AI for Beginners** where new educational content will have the highest impact.

### Deep Reinforcement Learning Sections

The curriculum needs expanded lessons and notebooks that introduce fundamental RL concepts such as Q-learning and policy gradients. Contributors should create hands-on examples that walk beginners through agent-environment interactions using libraries like **OpenAI Gym**.

According to [`AGENTS.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/AGENTS.md), reinforcement learning is prioritized because it remains a core AI technique that beginners often find difficult to approach without guided tutorials. New contributions should target the `lessons/3-NeuralNetworks/` directory, which houses existing RL notebooks.

```python
import numpy as np
import gym

env = gym.make("FrozenLake-v1", is_slippery=False)
Q = np.zeros((env.observation_space.n, env.action_space.n))

def choose_action(state, epsilon=0.1):
    if np.random.rand() < epsilon:
        return env.action_space.sample()
    return np.argmax(Q[state])

for episode in range(500):
    state = env.reset()
    done = False
    while not done:
        action = choose_action(state)
        next_state, reward, done, _ = env.step(action)
        Q[state, action] = reward + 0.99 * np.max(Q[next_state])
        state = next_state
print("Learned Q‑table:", Q)

```

### Object Detection Improvements

Contributors can provide up-to-date notebooks covering bounding-box detection, modern architectures like **YOLO** and **SSD**, or integration of pre-trained models. This area focuses on practical computer vision skills that align with current industry practices.

New object detection material should be added to `lessons/4-ComputerVision/`, the designated location for computer vision content. The ideal contribution includes working inference examples using contemporary model zoos.

```python
import torch
from pathlib import Path
from PIL import Image

model = torch.hub.load('ultralytics/yolov5', 'yolov5s', pretrained=True)
img = Image.open(Path("samples/bus.jpg"))
results = model([img])
results.print()           # prints detected classes and confidence

results.save("output")    # saves image with bounding boxes

```

### Named Entity Recognition (NER) Examples

The NLP track needs notebooks demonstrating **Named Entity Recognition** pipelines, including fine-tuning transformer models and evaluation on standard datasets. This helps learners transition from basic text processing to advanced language model applications.

Contributions should target `lessons/5-NLP/`, which holds the existing natural language processing curriculum. Clear examples that explain entity tagging and model fine-tuning are particularly valuable.

```python
from transformers import pipeline

ner = pipeline("ner", model="dslim/bert-base-NER")
text = "Microsoft was founded by Bill Gates and Paul Allen in Albuquerque."
entities = ner(text)
for ent in entities:
    print(f"{ent['entity_group']}: {ent['word']} (score={ent['score']:.2f})")

```

### Custom Embedding Training Samples

The project seeks content explaining how to train custom word- or sentence-level embeddings from scratch using libraries like **Gensim** or **Sentence-Transformers**. Teaching representation learning fundamentals deepens beginner understanding of how AI models process language.

These examples should demonstrate both theoretical concepts (vector spaces, semantic similarity) and practical implementation details.

```python
from gensim.models import Word2Vec
from gensim.utils import simple_preprocess

sentences = ["Artificial intelligence is the future",
             "Machine learning powers many modern applications",
             "Deep learning models require lots of data"]
tokenized = [simple_preprocess(s) for s in sentences]

model = Word2Vec(tokenized, vector_size=100, window=5, min_count=1, workers=4)
model.wv.most_similar("learning")

```

## Contribution Workflow and Key Files

Before submitting new content, review the detailed guidelines in [`etc/CONTRIBUTING.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/etc/CONTRIBUTING.md), which specifies coding style, notebook formatting, and the translation workflow. The [`AGENTS.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/AGENTS.md) file serves as the primary reference for current project priorities and links directly to the contribution guide.

When structuring your pull request:

- **Reinforcement Learning**: Place notebooks in `lessons/3-NeuralNetworks/`
- **Computer Vision**: Add detection examples to `lessons/4-ComputerVision/`
- **NLP**: Submit NER and embedding tutorials to `lessons/5-NLP/`
- **Quizzes**: Update `etc/quiz-app/` when adding assessment questions related to new contribution areas

## Summary

- **Deep Reinforcement Learning**, **Object Detection**, **Named Entity Recognition**, and **Custom Embedding Training** are the four active contribution areas where the AI for Beginners curriculum needs new content.
- Priority areas are officially documented in [`AGENTS.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/AGENTS.md) at line 205, with detailed submission guidelines available in [`etc/CONTRIBUTING.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/etc/CONTRIBUTING.md).
- Contributors should place computer vision materials in `lessons/4-ComputerVision/`, NLP content in `lessons/5-NLP/`, and reinforcement learning examples in `lessons/3-NeuralNetworks/`.
- All contributions should follow the repository's established Python environment and notebook formatting standards to maintain educational consistency.

## Frequently Asked Questions

### What are the current active contribution areas in AI for Beginners?

The repository currently prioritizes contributions to **Deep Reinforcement Learning sections**, **Object Detection improvements**, **Named Entity Recognition examples**, and **Custom embedding training samples**. These areas are explicitly listed in the [`AGENTS.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/AGENTS.md) file as high-priority zones where new notebooks and code examples will have the greatest impact on learners.

### Where can I find the official contribution guidelines for the AI for Beginners repository?

Detailed contribution guidelines are located in [`etc/CONTRIBUTING.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/etc/CONTRIBUTING.md) at the repository root. This document outlines the coding standards, notebook structure requirements, and the workflow for submitting pull requests. The [`AGENTS.md`](https://github.com/microsoft/AI-For-Beginners/blob/main/AGENTS.md) file also links to these guidelines from its Active Contribution Areas section.

### How do I submit a new notebook for reinforcement learning or computer vision?

Submit reinforcement learning notebooks to the `lessons/3-NeuralNetworks/` directory and computer vision content to `lessons/4-ComputerVision/`. Ensure your submission includes runnable code cells, explanatory markdown, and follows the patterns established in existing lessons. Reference the skeleton code examples for Q-learning or YOLOv5 inference as starting templates.

### Does the AI for Beginners project accept quiz questions as contributions?

Yes, the project maintains a Vue.js quiz application in `etc/quiz-app/` and welcomes contributions of new assessment questions. When you add educational content to the active contribution areas, consider submitting corresponding quiz questions that test comprehension of the new reinforcement learning, computer vision, or NLP concepts you introduce.