Lecture 1 / 30
Topic 01 - Unit I - Neural Network Foundations

What is Deep Learning?

Syllabus Topic Template
Definition

Deep Learning (DL) is a specialized subset of Machine Learning based on artificial neural networks. The "deep" in deep learning refers to the use of multiple layers in the network. These algorithms attempt to simulate the behavior of the human brain to "learn" from large amounts of data.

Machine Learning vs. Deep Learning

While both are branches of AI, their approach to data processing differs significantly:

  • Machine Learning: Usually requires manual feature extraction. A human expert must tell the algorithm what data points (features) to look at to make a decision.
  • Deep Learning: Performs automatic feature extraction. You feed the raw data (like pixels of an image) directly into the network, and the hidden layers automatically learn which features are important.
💡 Why Now?

The math behind deep learning has existed since the 1980s. It only became a dominant force recently due to two factors: the explosion of Big Data (to train the models) and the advancement of GPUs (to perform the massive matrix calculations quickly).

Real World Applications

Deep Learning drives the most cutting-edge technologies we use today:

  • Computer Vision: Facial recognition, medical image analysis (detecting tumors), and object detection.
  • Natural Language Processing (NLP): ChatGPT, language translation, and sentiment analysis.
  • Speech Recognition: Virtual assistants like Siri and Alexa.

A Quick Look at Keras/TensorFlow

Building a deep neural network is remarkably accessible with modern frameworks. Here is a conceptual peek at creating a simple multi-layer network:

intro_dl.py
# 1. Import TensorFlow/Keras
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense

# 2. Initialize a Sequential model (a linear stack of layers)
model = Sequential()

# 3. Add 'Deep' Layers to the network
model.add(Dense(128, activation='relu', input_shape=(784,))) # Hidden Layer 1
model.add(Dense(64, activation='relu'))                      # Hidden Layer 2
model.add(Dense(10, activation='softmax'))                   # Output Layer

# 4. Compile the model ready for training
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])
Practice Task

Research the difference between TensorFlow and PyTorch. What are the pros and cons of each framework, and which one is generally preferred in academia versus industry?

Topic 02 - Unit I - Neural Network Foundations

Artificial Neural Networks (ANNs)

Syllabus Topic
Placeholder

Content for Artificial Neural Networks (ANNs) goes here.

Topic 03 - Unit I - Neural Network Foundations

The Perceptron

Syllabus Topic
Placeholder

Content for The Perceptron goes here.

Topic 04 - Unit I - Neural Network Foundations

Activation Functions

Syllabus Topic
Placeholder

Content for Activation Functions goes here.

Topic 05 - Unit I - Neural Network Foundations

Forward Propagation

Syllabus Topic
Placeholder

Content for Forward Propagation goes here.

Topic 06 - Unit II - Training Deep Networks

Loss Functions

Syllabus Topic
Placeholder

Content for Loss Functions goes here.

Topic 07 - Unit II - Training Deep Networks

Gradient Descent & Backpropagation

Syllabus Topic
Placeholder

Content for Gradient Descent & Backpropagation goes here.

Topic 08 - Unit II - Training Deep Networks

Optimizers (Adam, RMSprop)

Syllabus Topic
Placeholder

Content for Optimizers (Adam, RMSprop) goes here.

Topic 09 - Unit II - Training Deep Networks

Handling Overfitting (Dropout)

Syllabus Topic
Placeholder

Content for Handling Overfitting (Dropout) goes here.

Topic 10 - Unit II - Training Deep Networks

Batch Normalization

Syllabus Topic
Placeholder

Content for Batch Normalization goes here.

Topic 11 - Unit III - Computer Vision (CNNs)

Introduction to CNNs

Syllabus Topic
Placeholder

Content for Introduction to CNNs goes here.

Topic 12 - Unit III - Computer Vision (CNNs)

Convolution Operations

Syllabus Topic
Placeholder

Content for Convolution Operations goes here.

Topic 13 - Unit III - Computer Vision (CNNs)

Pooling Layers

Syllabus Topic
Placeholder

Content for Pooling Layers goes here.

Topic 14 - Unit III - Computer Vision (CNNs)

Famous CNN Architectures (ResNet)

Syllabus Topic
Placeholder

Content for Famous CNN Architectures (ResNet) goes here.

Topic 15 - Unit III - Computer Vision (CNNs)

Transfer Learning

Syllabus Topic
Placeholder

Content for Transfer Learning goes here.

Topic 16 - Unit IV - Sequence Models (RNNs)

Sequence Data & RNNs

Syllabus Topic
Placeholder

Content for Sequence Data & RNNs goes here.

Topic 17 - Unit IV - Sequence Models (RNNs)

The Vanishing Gradient Problem

Syllabus Topic
Placeholder

Content for The Vanishing Gradient Problem goes here.

Topic 18 - Unit IV - Sequence Models (RNNs)

Long Short-Term Memory (LSTM)

Syllabus Topic
Placeholder

Content for Long Short-Term Memory (LSTM) goes here.

Topic 19 - Unit IV - Sequence Models (RNNs)

Gated Recurrent Units (GRUs)

Syllabus Topic
Placeholder

Content for Gated Recurrent Units (GRUs) goes here.

Topic 20 - Unit IV - Sequence Models (RNNs)

Sequence-to-Sequence Models

Syllabus Topic
Placeholder

Content for Sequence-to-Sequence Models goes here.

Topic 21 - Unit V - Advanced DL & Transformers

Attention Mechanisms

Syllabus Topic
Placeholder

Content for Attention Mechanisms goes here.

Topic 22 - Unit V - Advanced DL & Transformers

The Transformer Architecture

Syllabus Topic
Placeholder

Content for The Transformer Architecture goes here.

Topic 23 - Unit V - Advanced DL & Transformers

Autoencoders

Syllabus Topic
Placeholder

Content for Autoencoders goes here.

Topic 24 - Unit V - Advanced DL & Transformers

Variational Autoencoders (VAEs)

Syllabus Topic
Placeholder

Content for Variational Autoencoders (VAEs) goes here.

Topic 25 - Unit V - Advanced DL & Transformers

Generative Adversarial Networks (GANs)

Syllabus Topic
Placeholder

Content for Generative Adversarial Networks (GANs) goes here.

Topic 26 - Unit VI - Frameworks & Deployment

Deep Q-Networks (RL Basics)

Syllabus Topic
Placeholder

Content for Deep Q-Networks (RL Basics) goes here.

Topic 27 - Unit VI - Frameworks & Deployment

Introduction to PyTorch

Syllabus Topic
Placeholder

Content for Introduction to PyTorch goes here.

Topic 28 - Unit VI - Frameworks & Deployment

Introduction to TensorFlow & Keras

Syllabus Topic
Placeholder

Content for Introduction to TensorFlow & Keras goes here.

Topic 29 - Unit VI - Frameworks & Deployment

Model Deployment Strategies

Syllabus Topic
Placeholder

Content for Model Deployment Strategies goes here.

Topic 30 - Unit VI - Frameworks & Deployment

Ethics in Deep Learning

Syllabus Topic
Placeholder

Content for Ethics in Deep Learning goes here.