Convert Figma logo to code with AI

microsoft logoAI-For-Beginners

12 Weeks, 24 Lessons, AI for All!

34,466
5,760
34,466
57

Top Related Projects

Documentation for Google's Gen AI site - including the Gemini API and Gemma

12 weeks, 26 lessons, 52 quizzes, classic Machine Learning for all

10 Weeks, 20 Lessons, Data Science for All!

185,446

An Open Source Machine Learning Framework for Everyone

82,049

Tensors and Dynamic neural networks in Python with strong GPU acceleration

🤗 Transformers: State-of-the-art Machine Learning for Pytorch, TensorFlow, and JAX.

Quick Overview

AI For Beginners is a 12-week, 24-lesson curriculum created by Microsoft to teach the fundamentals of Artificial Intelligence. It covers various AI topics, including machine learning, deep learning, natural language processing, and computer vision, providing a comprehensive introduction to AI for beginners.

Pros

  • Comprehensive curriculum covering a wide range of AI topics
  • Free and open-source, making it accessible to anyone interested in learning AI
  • Includes hands-on projects and exercises to reinforce learning
  • Created by Microsoft, ensuring high-quality content and industry relevance

Cons

  • May be too broad for those seeking in-depth knowledge in specific AI areas
  • Requires some basic programming knowledge, which might be challenging for complete beginners
  • The course is self-paced, which may lack the structure some learners prefer
  • Content may become outdated as AI technologies rapidly evolve

Getting Started

To get started with AI For Beginners:

  1. Visit the GitHub repository: https://github.com/microsoft/AI-For-Beginners
  2. Clone the repository or download the course materials
  3. Review the syllabus and course structure in the README file
  4. Start with Lesson 1 and follow the curriculum sequentially
  5. Complete the exercises and projects associated with each lesson
  6. Join the course's Discord channel for community support and discussions

Note: This is not a code library, so there are no code examples or quick start instructions. The course provides Jupyter notebooks and other resources for hands-on learning throughout the lessons.

Competitor Comparisons

Documentation for Google's Gen AI site - including the Gemini API and Gemma

Pros of generative-ai-docs

  • Focuses specifically on generative AI, providing in-depth coverage of this cutting-edge technology
  • Offers practical examples and code snippets for implementing generative AI models
  • Regularly updated with the latest advancements in Google's AI technologies

Cons of generative-ai-docs

  • Limited scope compared to AI-For-Beginners, which covers a broader range of AI topics
  • May be more challenging for absolute beginners due to its focus on advanced generative AI concepts
  • Less structured learning path compared to AI-For-Beginners' curriculum-style approach

Code Comparison

AI-For-Beginners:

import numpy as np
X = np.array([[1, 2], [3, 4], [5, 6]])
y = np.array([2, 4, 6])
model = LinearRegression().fit(X, y)

generative-ai-docs:

import google.generativeai as genai
genai.configure(api_key=os.getenv("GOOGLE_API_KEY"))
model = genai.GenerativeModel('gemini-pro')
response = model.generate_content("Tell me a joke")

This comparison highlights the different focus areas of the two repositories. AI-For-Beginners provides a broader introduction to AI concepts, while generative-ai-docs delves deeper into specific generative AI technologies and implementations using Google's tools.

12 weeks, 26 lessons, 52 quizzes, classic Machine Learning for all

Pros of ML-For-Beginners

  • More comprehensive coverage of machine learning topics
  • Includes hands-on projects and quizzes for practical learning
  • Offers content in multiple languages

Cons of ML-For-Beginners

  • Less focus on deep learning and neural networks
  • May not cover the latest AI advancements as extensively

Code Comparison

ML-For-Beginners:

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
model = RandomForestClassifier(n_estimators=100)
model.fit(X_train, y_train)

AI-For-Beginners:

import tensorflow as tf
model = tf.keras.Sequential([
    tf.keras.layers.Dense(64, activation='relu', input_shape=(input_dim,)),
    tf.keras.layers.Dense(1, activation='sigmoid')
])
model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])

The ML-For-Beginners repository focuses on traditional machine learning algorithms and techniques, while AI-For-Beginners delves more into deep learning and neural networks. ML-For-Beginners provides a broader foundation in machine learning concepts, making it suitable for beginners. AI-For-Beginners, on the other hand, offers more advanced topics in artificial intelligence, catering to those interested in cutting-edge AI technologies.

10 Weeks, 20 Lessons, Data Science for All!

Pros of Data-Science-For-Beginners

  • More comprehensive coverage of data science fundamentals
  • Includes practical exercises and projects for hands-on learning
  • Stronger focus on statistical analysis and data visualization techniques

Cons of Data-Science-For-Beginners

  • Less emphasis on advanced machine learning algorithms
  • Fewer resources on deep learning and neural networks
  • Limited coverage of AI-specific topics like natural language processing

Code Comparison

Data-Science-For-Beginners:

import pandas as pd
import matplotlib.pyplot as plt

data = pd.read_csv('dataset.csv')
plt.scatter(data['x'], data['y'])
plt.show()

AI-For-Beginners:

import tensorflow as tf
from tensorflow import keras

model = keras.Sequential([
    keras.layers.Dense(64, activation='relu', input_shape=(10,)),
    keras.layers.Dense(1, activation='sigmoid')
])

The code snippets highlight the different focus areas of the two repositories. Data-Science-For-Beginners emphasizes data manipulation and visualization using libraries like pandas and matplotlib, while AI-For-Beginners delves into machine learning model creation using TensorFlow and Keras.

Both repositories offer valuable resources for beginners in their respective fields, with Data-Science-For-Beginners providing a broader foundation in data analysis and AI-For-Beginners offering more specialized knowledge in artificial intelligence and machine learning techniques.

185,446

An Open Source Machine Learning Framework for Everyone

Pros of TensorFlow

  • Comprehensive, production-ready deep learning framework
  • Extensive ecosystem with tools like TensorBoard for visualization
  • Supports multiple programming languages and platforms

Cons of TensorFlow

  • Steeper learning curve for beginners
  • More complex setup and configuration
  • Larger codebase, which can be overwhelming for newcomers

Code Comparison

AI-For-Beginners (Python example):

import numpy as np

def sigmoid(x):
    return 1 / (1 + np.exp(-x))

# Simple neural network forward pass
def forward(X, W1, W2):
    Z1 = np.dot(X, W1)
    A1 = sigmoid(Z1)
    Z2 = np.dot(A1, W2)
    return sigmoid(Z2)

TensorFlow (Python example):

import tensorflow as tf

# Define a simple neural network
model = tf.keras.Sequential([
    tf.keras.layers.Dense(64, activation='relu', input_shape=(10,)),
    tf.keras.layers.Dense(32, activation='relu'),
    tf.keras.layers.Dense(1, activation='sigmoid')
])

# Compile and train the model
model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])
model.fit(X_train, y_train, epochs=10, batch_size=32)
82,049

Tensors and Dynamic neural networks in Python with strong GPU acceleration

Pros of PyTorch

  • Comprehensive deep learning framework with extensive functionality
  • Large, active community providing support and contributions
  • Widely used in industry and research, with frequent updates

Cons of PyTorch

  • Steeper learning curve for beginners
  • More complex setup and installation process
  • Less focused on educational content for AI newcomers

Code Comparison

AI-For-Beginners (using TensorFlow):

model = tf.keras.Sequential([
    tf.keras.layers.Dense(64, activation='relu'),
    tf.keras.layers.Dense(10, activation='softmax')
])

PyTorch:

model = nn.Sequential(
    nn.Linear(784, 64),
    nn.ReLU(),
    nn.Linear(64, 10),
    nn.Softmax(dim=1)
)

Summary

AI-For-Beginners is designed as an educational resource for those new to AI, offering structured lessons and examples. PyTorch, on the other hand, is a powerful, production-ready deep learning framework used by professionals and researchers. While PyTorch provides more advanced capabilities, it may be overwhelming for beginners. AI-For-Beginners offers a gentler introduction to AI concepts but lacks the depth and flexibility of PyTorch for complex projects.

🤗 Transformers: State-of-the-art Machine Learning for Pytorch, TensorFlow, and JAX.

Pros of transformers

  • Extensive library of pre-trained models for various NLP tasks
  • Actively maintained with frequent updates and new features
  • Seamless integration with popular deep learning frameworks

Cons of transformers

  • Steeper learning curve for beginners
  • Focused primarily on NLP, less suitable for general AI education
  • Requires more computational resources for training and inference

Code Comparison

AI-For-Beginners:

import numpy as np

def sigmoid(x):
    return 1 / (1 + np.exp(-x))

def neural_network(input_layer, weights, bias):
    return sigmoid(np.dot(input_layer, weights) + bias)

transformers:

from transformers import AutoTokenizer, AutoModelForSequenceClassification

tokenizer = AutoTokenizer.from_pretrained("bert-base-uncased")
model = AutoModelForSequenceClassification.from_pretrained("bert-base-uncased")

inputs = tokenizer("Hello, world!", return_tensors="pt")
outputs = model(**inputs)

The AI-For-Beginners code demonstrates a simple neural network implementation, while the transformers code showcases the ease of using pre-trained models for complex NLP tasks.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

GitHub license GitHub contributors GitHub issues GitHub pull-requests PRs Welcome

GitHub watchers GitHub forks GitHub stars Binder Gitter

Artificial Intelligence for Beginners - A Curriculum

 Sketchnote by (@girlie_mac)
AI For Beginners - Sketchnote by @girlie_mac

Explore the world of Artificial Intelligence (AI) with our 12-week, 24-lesson curriculum! It includes practical lessons, quizzes, and labs. The curriculum is beginner-friendly and covers tools like TensorFlow and PyTorch, as well as ethics in AI

What you will learn

Mindmap of the Course

In this curriculum, you will learn:

  • Different approaches to Artificial Intelligence, including the "good old" symbolic approach with Knowledge Representation and reasoning (GOFAI).
  • Neural Networks and Deep Learning, which are at the core of modern AI. We will illustrate the concepts behind these important topics using code in two of the most popular frameworks - TensorFlow and PyTorch.
  • Neural Architectures for working with images and text. We will cover recent models but may be a bit lacking in the state-of-the-art.
  • Less popular AI approaches, such as Genetic Algorithms and Multi-Agent Systems.

What we will not cover in this curriculum:

Find all additional resources for this course in our Microsoft Learn collection

For a gentle introduction to AI in the Cloud topics you may consider taking the Get started with artificial intelligence on Azure Learning Path.

Content

Lesson LinkPyTorch/Keras/TensorFlowLab
0Course SetupSetup Your Development Environment
IIntroduction to AI
01Introduction and History of AI--
IISymbolic AI
02Knowledge Representation and Expert SystemsExpert Systems / Ontology /Concept Graph
IIIIntroduction to Neural Networks
03PerceptronNotebookLab
04Multi-Layered Perceptron and Creating our own FrameworkNotebookLab
05Intro to Frameworks (PyTorch/TensorFlow) and OverfittingPyTorch / Keras / TensorFlowLab
IVComputer VisionPyTorch / TensorFlowExplore Computer Vision on Microsoft Azure
06Intro to Computer Vision. OpenCVNotebookLab
07Convolutional Neural Networks & CNN ArchitecturesPyTorch /TensorFlowLab
08Pre-trained Networks and Transfer Learning and Training TricksPyTorch / TensorFlowLab
09Autoencoders and VAEsPyTorch / TensorFlow
10Generative Adversarial Networks & Artistic Style TransferPyTorch / TensorFlow
11Object DetectionTensorFlowLab
12Semantic Segmentation. U-NetPyTorch / TensorFlow
VNatural Language ProcessingPyTorch /TensorFlowExplore Natural Language Processing on Microsoft Azure
13Text Representation. Bow/TF-IDFPyTorch / TensorFlow
14Semantic word embeddings. Word2Vec and GloVePyTorch / TensorFlow
15Language Modeling. Training your own embeddingsPyTorch / TensorFlowLab
16Recurrent Neural NetworksPyTorch / TensorFlow
17Generative Recurrent NetworksPyTorch / TensorFlowLab
18Transformers. BERT.PyTorch /TensorFlow
19Named Entity RecognitionTensorFlowLab
20Large Language Models, Prompt Programming and Few-Shot TasksPyTorch
VIOther AI Techniques
21Genetic AlgorithmsNotebook
22Deep Reinforcement LearningPyTorch /TensorFlowLab
23Multi-Agent Systems
VIIAI Ethics
24AI Ethics and Responsible AIMicrosoft Learn: Responsible AI Principles
IXExtras
25Multi-Modal Networks, CLIP and VQGANNotebook

Each lesson contains

  • Pre-reading material
  • Executable Jupyter Notebooks, which are often specific to the framework (PyTorch or TensorFlow). The executable notebook also contains a lot of theoretical material, so to understand the topic you need to go through at least one version of the notebook (either PyTorch or TensorFlow).
  • Labs available for some topics, which give you an opportunity to try applying the material you have learned to a specific problem.
  • Some sections contain links to MS Learn modules that cover related topics.

Getting Started

Don't forget to star (🌟) this repo to find it easier later.

Meet other Learners

Join our official AI Discord server to meet and network with other learners taking this course and get support.

Quizzes

A note about quizzes: All quizzes are contained in the Quiz-app folder in etc\quiz-app, They are linked from within the lessons the quiz app can be run locally or deployed to Azure; follow the instruction in the quiz-app folder. They are gradually being localized.

Help Wanted

Do you have suggestions or found spelling or code errors? Raise an issue or create a pull request.

Special Thanks

Other Curricula

Our team produces other curricula! Check out: