Advanced Techniques in Machine Learning and Optimization (3)
Advanced Techniques in Machine Learning and Optimization (3)
Course Prerequisites
● Proficiency in Python programming
● Familiarity with linear algebra and calculus
Course Objectives
● To delve deeper into advanced machine learning and optimization techniques.
● To understand the theory and applications of deep learning.
● To develop skills in implementing advanced machine learning models.
● To apply optimization techniques to improve the performance of machine learning
models.
Course Outcomes
Upon successful completion of this course, students will be able to:
● Apply deep learning techniques to solve complex problems.
● Implement advanced machine learning algorithms like SVMs, decision trees, and
random forests.
● Utilize optimization techniques to improve model performance.
● Evaluate the performance of machine learning models.
Software Tools Required
● Python
● TensorFlow/PyTorch
● NumPy
● Pandas
● Scikit-learn
Hands-on:
Implement a CNN for image classification.
Tools and Libraries:
● Python: A versatile programming language for machine learning.
● TensorFlow/Keras: Powerful deep learning frameworks.
● NumPy: For numerical computations.
● Matplotlib: For data visualization.
Dataset:
CIFAR-10: A popular dataset containing 10 classes of images (e.g., airplanes, cars, birds,
cats, deer, dogs, frogs, horses, ships, trucks).
Problem Statement:
Given a neural network architecture, the task is to find the optimal hyperparameters (e.g.,
learning rate, batch size, number of layers, number of neurons per layer) that minimize the
loss function and maximize the model's performance.
Description:
Process:
Problem Statement:
Given a large dataset with many features, the task is to identify the most relevant features that
contribute to the model's performance.
Description:
Process:
1. Initialize Population: Create an initial population of individuals, where each individual
represents a subset of features.
2. Fitness Evaluation: Evaluate the fitness of each individual by training a model using
the selected features and measuring its performance on a validation set.
3. Selection: Select the fittest individuals to become parents for the next generation.
4. Crossover: Combine the features of selected parents to create offspring.
5. Mutation: Introduce random changes to the offspring's features.
6. Repeat Steps 2-5: Iterate until a satisfactory solution is found or a maximum number
of generations is reached.
Problem Statement:
Given a dataset of credit card transactions, the task is to identify fraudulent transactions.
Description:
Data Preprocessing:
Model Training:
● Evaluate the model's performance using metrics like accuracy, precision, recall,
and F1-score.
● Use a confusion matrix to visualize the classification results.
Learning Outcomes:
Problem Statement:
Given a dataset of customer information, the task is to group customers into segments based
on their similarities.
Description:
Data Preprocessing:
Clustering:
Analysis:
Module 5:
Mini projects:
Project 1: Building a Movie Recommendation System
Problem Description: Given a dataset of user ratings for movies, the goal is to build a
recommendation system that suggests movies to users based on their past preferences.
Learning Outcomes:
Learning Outcomes:
Learning Outcomes:
Learning Outcomes:
References:
Online Resources:
1. https://onlinecourses.nptel.ac.in/noc18_cs13/preview
2. https://archive.nptel.ac.in/courses/106/105/106105173