Machine Learning and its
Applications
Dr. Priyank Thakkar
Associate Professor
Computer Science and Engineering Department
Institute of Technology
Nirma University
Syllabus
Syllabus: Teaching
Hours
Unit I 3
Introduction: Motivation and Applications, importance of Data Visualization, Basics of
Supervised and Unsupervised Learning
Unit II 14
Regression Techniques: Basic concepts and applications of Regression, Simple Linear
Regression – Gradient Descent and Normal Equation Method, Multiple Linear Regression, Non-
Linear Regression, Linear Regression with Regularization, Hyper-parameters tuning, Loss
Functions, Evaluation Measures for Regression Techniques
Unit III 10
Classification Techniques: Naïve Bayes Classification, Fitting Multivariate Bernoulli
Distribution, Gaussian Distribution and Multinomial Distribution, K-Nearest Neighbours,
Decision trees.
Support Vector Machines: Hard Margin and Soft Margin, Kernels and Kernel Trick, Evaluation
Measures for Classification Techniques
Unit IV 9
Artificial Neural Networks: Biological Neurons and Biological Neural Networks, Perceptron
Learning, Activation Functions, Multilayer Perceptrons, Back-propagation Neural Networks,
Competitive Neural Networks
Unit V 4
Clustering: Hierarchical Agglomerative Clustering, k-means Algorithm, Self-Organizing Maps
Unit VI 5
Advanced Concepts: Basics of Semi-Supervised and Reinforcement Learning, Linear
Discriminant Analysis, Introduction to Deep Learning
Books
1. Tom Mitchell, Machine Learning, TMH
2. C. Bishop, Pattern Recognition and Machine
Learning, Springer
3. R. O. Duda, P. E. Hart and D. G. Stork, Pattern
Classification and Scene Analysis, Wiley
4. KishanMehrotra, Chilukuri Mohan and Sanjay
Ranka, Elements of Artificial Neural Networks,
Penram International
5. RajjanShinghal, Pattern Recognition, Techniques
and Applications, OXFORD
6. AthemEalpaydin, Introduction to Machine
Learning, PHI
Moodle Site
https://lms.nirmauni.ac.in/course/view.php?id=1031
Teaching & Evaluation Scheme
Teaching Scheme:
Theory Tutorial Practical Credits
3 0 2 4
Evaluation Methodology:
SEE CE LPW
Exam Duration 3.0 Hrs. Continuous Continuous + Sem.
Evaluation End
Component Weightage 0.4 0.4 0.2 (0.75 + 0.25)
Teaching & Evaluation Scheme
Breakup of CE
Unit 1 Unit 2 Unit 3
Exam Quizzes Assignments Comprehensive
Evaluation
Inter 0.3 0.3 0.4
Component Weightage
Numbers 3 2 1
Marks of Each 10 15 40
Assignments
1. Prepare a term paper (survey of at least 40 research papers published
in conference/journal with h5-index >= 30 and later than 2011) on stock
market future “price/movement” prediction using machine learning.
2. You will be provided dataset of 10 stocks. This dataset would have
training and validation data with ground truth. Test data would be provided
without ground truth. You will build a model for next day’s price/movement
prediction. For price prediction, evaluation measures to compute include
MAE, MSE, RMSE and MAPE. For movement prediction, evaluation measures
to compute include Accuracy and F1-measure. You will make prediction for
the data in test set and submit. Marks awarded will be based on averaged
MAPE/Accuracy over 10 stocks.
Note:
1. Both the assignments are to be performed in a group of 4. While
deciding your group, we recommend you to ensure that there is at least one
student who is good at technical writing.
2. Each group would be given some serial number and groups with odd
serial number would work on movement prediction while other groups would
work on price prediction.
Practical List
1. Introduction to Python and Numpy (2 Hrs) *
2. Introduction to Pandas, Matplotlib and Sklearn (2 Hrs) *
3. Simple and Multiple Linear Regression using Gradient Descent & Normal
Equation Method (without using sklearn or equivalent library for both) (4
Hrs)
4. Linear Regression with Regularization (without using sklearn or
equivalent library) and Simple and Multiple Linear Regression with and
without regularization using Sklearn (2 Hrs)
5. Naïve-Bayes – Multivariate Bernoulli, Multinomial and Gaussian using
sklearn (2 Hrs)
6. Decision Trees – ID3, C4.5 using sklearn (2 Hrs)
7. Support Vector Classification and Regression with Grid Search for
Hyper-parameter tuning using sklearn (2 Hrs)
8. AND gate using Perceptron Learning (self-implementation) (2 Hrs)
Practical List
9. Ex-OR Gate/any other problem using Backpropagation Neural Networks
(self-implementation) (4 Hrs)
10. Backpropagation Neural Network and K-means using sklearn (2 Hrs)
11. Reinforcement Learning for some game. (self-implementation) (6 Hrs)
Note: Practical 1 and 2 are of 5 marks, each of the rest is of 10 marks.
* Those who are already good at Python, Numpy, Pandas, Matplotlib and
Sklearn, they can perform following 2 practical instead:
1. Use pytesseract library in Python for optical character recognition from
(i) an image file (ii) a multi-page pdf file
2. Download financial report of some company in a pdf format. Using Tabula
library in Python extract multiple tables from the financial report and save
each table in a separate csv file. Repeat the entire task using Camelot
library.
Introduction
AI, ML and DL
10
Source: [1]
Introduction
What is Machine Learning (ML)?
Introduction
Flavors of Machine Learning
Introduction
Flavors of Machine Learning
Supervised Learning
Unsupervised Learning
Semi Supervised Learning
Reinforcement Learning
Introduction
Have you already been benefitted by ML?
Google search and ranked pages
Spam E-mail
Recommendations on Amazon, Flipkart, Movielens
Related advertisements on websites
Applications
Natural Language Processing
Autonomous Tagging of Stackoverflow Questions
Make a multi-label classification system that
automatically assigns tags for questions posted on a
forum such as StackOverflow or Quora.
Dataset: StackLite or 10% sample
Applications
Natural Language Processing
Autonomous Tagging of Stackoverflow Questions
Make a multi-label classification system that
automatically assigns tags for questions posted on a
forum such as StackOverflow or Quora.
Dataset: StackLite or 10% sample
Automated essay grading
The purpose of this project is to implement and train
machine learning algorithms to automatically assess
and grade essay responses.
Dataset: Essays with human graded scores
Applications
Natural Language Processing
Autonomous Tagging of Stackoverflow Questions
Make a multi-label classification system that
automatically assigns tags for questions posted on a
forum such as StackOverflow or Quora.
Dataset: StackLite or 10% sample
Automated essay grading
The purpose of this project is to implement and train
machine learning algorithms to automatically assess
and grade essay responses.
Dataset: Essays with human graded scores
Sentence to Sentence semantic similarity
Can you identify question pairs that have the same
intent or meaning?
Dataset: Quora question pairs with similar questions
marked
Applications
Natural Language Processing
Fight online abuse
Can you confidently and accurately tell whether a particular
comment is abusive?
Dataset: Toxic comments on Kaggle
Applications
Natural Language Processing
Fight online abuse
Can you confidently and accurately tell whether a particular
comment is abusive?
Dataset: Toxic comments on Kaggle
Open Domain question answering
Can you build a bot which answers questions according to the
student's age or her curriculum?
Facebook's FAIR is built in a similar way for Wikipedia.
Dataset: NCERT books for K-12/school students in India,
NarrativeQA by Google DeepMind and SQuAD by Stanford
Applications
Natural Language Processing
Fight online abuse
Can you confidently and accurately tell whether a particular
comment is abusive?
Dataset: Toxic comments on Kaggle
Open Domain question answering
Can you build a bot which answers questions according to the
student's age or her curriculum?
Facebook's FAIR is built in a similar way for Wikipedia.
Dataset: NCERT books for K-12/school students in India,
NarrativeQA by Google DeepMind and SQuAD by Stanford
Social Chat/Conversational Bots
Can you build a bot which talks to you just like people talk on
social networking sites?
Reference: Chat-bot architecture
Dataset: Reddit Dataset
Applications
Natural Language Processing
Copy-cat Bot
Generate plausible new text which looks like some
other text
Obama Speeches? For instance, you can create a bot
which writes some new speeches in Obama's style
Trump Bot? Or a Twitter bot which mimics
@realDonaldTrump
Narendra Modi bot saying "doston"? Start by
scrapping off his Hindi speeches from his personal
website
Example Dataset: English Transcript of Modi speeches
Applications
Applications that can’t be programmed by hand
Handwriting Recognition
Applications
Applications that can’t be programmed by hand
Natural Language Processing
Machine Translation
Applications
Applications that can’t be programmed by hand
Handwriting Recognition
Natural Language Processing
Machine Translation
Word Sense Disambiguation
"I am taking aspirin for my cold" the disease sense is
intended
"Let's go inside, I'm cold" the temperature sensation sense is
meant
"It's cold today, only 2 degrees", implies the environmental
condition sense.
Applications
Applications that can’t be programmed by hand
Handwriting Recognition
Natural Language Processing
Machine Translation
Word Sense Disambiguation
"I am taking aspirin for my cold" the disease sense is
intended
"Let's go inside, I'm cold" the temperature sensation sense is
meant
"It's cold today, only 2 degrees", implies the environmental
condition sense.
Part-of-Speech Tagging
“And now for something completely different”
[('And', 'CC'), ('now', 'RB'), ('for', 'IN'), ('something',
'NN'), ('completely', 'RB'), ('different', 'JJ')]
Here we see that and is CC, a coordinating conjunction; now
and completely are RB, or adverbs; for is IN, a preposition;
something is NN, a noun; and different is JJ, an adjective.
Applications
Applications that can’t be programmed by hand
Handwriting Recognition
Natural Language Processing
Machine Translation
Word Sense Disambiguation
"I am taking aspirin for my cold" the disease sense is
intended
"Let's go inside, I'm cold" the temperature sensation sense is
meant
"It's cold today, only 2 degrees", implies the environmental
condition sense.
Part-of-Speech Tagging
“And now for something completely different”
[('And', 'CC'), ('now', 'RB'), ('for', 'IN'), ('something',
'NN'), ('completely', 'RB'), ('different', 'JJ')]
Here we see that and is CC, a coordinating conjunction; now
and completely are RB, or adverbs; for is IN, a preposition;
something is NN, a noun; and different is JJ, an adjective.
Sentiment Analysis
Applications
Applications that can’t be programmed by hand
Natural Language Processing
Named-Entity Recognition
Teddy Roosevelt was a great president
Teddy bears are on sale
Applications
Applications that can’t be programmed by hand
Natural Language Processing
Named-Entity Recognition
Teddy Roosevelt was a great president
Teddy bears are on sale
Chatbot
Applications
Applications that can’t be programmed by hand
Natural Language Processing
Named-Entity Recognition
Teddy Roosevelt was a great president
Teddy bears are on sale
Chatbot
Speech Recognition, etc.
Speech recognition is the ability of a machine or program to
identify words and phrases in spoken language and convert
them to a machine-readable format.
The most frequent applications of speech recognition include
voice dialling and voice search.
Applications
Applications that can’t be programmed by hand
Natural Language Processing
Named-Entity Recognition
Teddy Roosevelt was a great president
Teddy bears are on sale
Chatbot
Speech Recognition, etc.
Speech recognition is the ability of a machine or program to
identify words and phrases in spoken language and convert
them to a machine-readable format.
The most frequent applications of speech recognition include
voice dialling and voice search.
Text Summarization
Extractive Summarization
Abstractive Summarization
Celebrities [2]
33
Celebrities [2]
34
Pose Guided Person Image Generation [3]
35
Pose Guided Person Image Generation [3]
36
CycleGAN [4]
37
Text to Image [5]
38
Image Inpainting [6]
39
DiscoGAN [7]
40
Pix2Pix [8]
41
Face aging (Age-cGAN) [9]
42
Unsupervised Domain Adaptation by Backpropagation [10, 11]
Learning a discriminative classifier or other predictor in the
presence of a shift between training and test distributions
is known as domain adaptation (DA).
Applications
Applications that can’t be programmed by hand
Computer Vision
Security and Surveillance
Applications
Applications that can’t be programmed by hand
Computer Vision
Security and Surveillance
Age Invariant Face Recognition
Applications
Applications that can’t be programmed by hand
Computer Vision
Security and Surveillance
Age Invariant Face Recognition
Gesture Analysis
Applications
Applications that can’t be programmed by hand
Computer Vision
Security and Surveillance
Age Invariant Face Recognition
Gesture Analysis
Autonomous Vehicle
Applications
Applications that can’t be programmed by hand
Computer Vision
Security and Surveillance
Age Invariant Face Recognition
Gesture Analysis
Autonomous Vehicle
Gender Recognition
Applications
Applications that can’t be programmed by hand
Computer Vision
Security and Surveillance
Age Invariant Face Recognition
Gesture Analysis
Autonomous Vehicle
Gender Recognition
Emotion Recognition
Applications
Applications that can’t be programmed by hand
Computer Vision
Security and Surveillance
Age Invariant Face Recognition
Gesture Analysis
Autonomous Vehicle
Gender Recognition
Emotion Recognition
Age Prediction
Applications
Applications that can’t be programmed by hand
Computer Vision
Security and Surveillance
Age Invariant Face Recognition
Gesture Analysis
Autonomous Vehicle
Gender Recognition
Emotion Recognition
Age Prediction
Image Classification (ImageNet Large Scale Visual
Recognition Competition (ILSVRC))
Semantic Segmentation
52
http://cs231n.stanford.edu/slides/2018/cs231n_2018_lecture11.pdf
Instance Segmentation
53
http://cs231n.stanford.edu/slides/2018/cs231n_2018_lecture11.pdf
Applications
Applications that can’t be programmed by hand
Computer Vision
Security and Surveillance
Age Invariant Face Recognition
Gesture Analysis
Autonomous Vehicle
Gender Recognition
Emotion Recognition
Age Prediction
Image Classification (ImageNet Large Scale Visual
Recognition Competition (ILSVRC))
Object Detection
Applications
Applications that can’t be programmed by hand
Computer Vision
Security and Surveillance
Age Invariant Face Recognition
Gesture Analysis
Autonomous Vehicle
Gender Recognition
Emotion Recognition
Age Prediction
Image Classification (ImageNet Large Scale Visual
Recognition Competition (ILSVRC))
Object Detection
Semantic Segmentation
Applications
Applications that can’t be programmed by hand
Computer Vision
Security and Surveillance
Age Invariant Face Recognition
Gesture Analysis
Autonomous Vehicle
Gender Recognition
Emotion Recognition
Age Prediction
Image Classification (ImageNet Large Scale Visual
Recognition Competition (ILSVRC))
Object Detection
Semantic Segmentation
Instance Segmentation
Applications
Applications that can’t be programmed by hand
Computer Vision
Security and Surveillance
Age Invariant Face Recognition
Gesture Analysis
Autonomous Vehicle
Gender Recognition
Emotion Recognition
Age Prediction
Image Classification (ImageNet Large Scale Visual
Recognition Competition (ILSVRC))
Object Detection
Semantic Segmentation
Instance Segmentation
Image and Video Captioning
Applications
Applications that can’t be programmed by hand
Computer Vision
Security and Surveillance
Age Invariant Face Recognition
Gesture Analysis
Autonomous Vehicle
Gender Recognition
Emotion Recognition
Age Prediction
Image Classification (ImageNet Large Scale Visual
Recognition Competition (ILSVRC))
Object Detection
Semantic Segmentation
Instance Segmentation
Image and Video Captioning
Video Summarization
Applications
Applications that can’t be programmed by hand
Computer Vision
Security and Surveillance
Age Invariant Face Recognition
Gesture Analysis
Autonomous Vehicle
Gender Recognition
Emotion Recognition
Age Prediction
Image Classification (ImageNet Large Scale Visual
Recognition Competition (ILSVRC))
Object Detection
Semantic Segmentation
Instance Segmentation
Image and Video Captioning
Video Summarization
CBIR (three variants)
Applications
Applications that can’t be programmed by hand
Computer Vision
Security and Surveillance
Age Invariant Face Recognition
Gesture Analysis
Autonomous Vehicle
Gender Recognition
Emotion Recognition
Age Prediction
Image Classification (ImageNet Large Scale Visual
Recognition Competition (ILSVRC))
Object Detection
Semantic Segmentation
Instance Segmentation
Image and Video Captioning
Video Summarization
CBIR (three variants)
Driver’s Drowsiness Detection
Applications
Applications that can’t be programmed by hand
Computer Vision
Emojinator (Emoji Classifier)
Applications
Personalized Websites
Applications
Personalized Websites
Medical Domain
Lung Cancer Detection (Nodules form CT Scan Images)
Bone X-ray
Applications
Personalized Websites
Medical Domain
Finance
Applications
Personalized Websites
Medical Domain
Finance
Intrusion Detection System
Applications
Personalized Websites
Medical Domain
Finance
Intrusion Detection System
Optimized Routing in IP Networks
Applications
Personalized Websites
Medical Domain
Finance
Intrusion Detection System
Optimized Routing in IP Networks
Wireless Sensor Network
Applications
Personalized Websites
Medical Domain
Finance
Intrusion Detection System
Optimized Routing in IP Networks
Wireless Sensor Network
Friend Recommendation
Applications
Personalized Websites
Medical Domain
Finance
Intrusion Detection System
Optimized Routing in IP Networks
Wireless Sensor Network
Friend Recommendation
Tag Recommendation
Applications
Personalized Websites
Medical Domain
Finance
Intrusion Detection System
Optimized Routing in IP Networks
Wireless Sensor Network
Friend Recommendation
Tag Recommendation
Solar Intensity Prediction
Applications
Personalized Websites
Medical Domain
Finance
Intrusion Detection System
Optimized Routing in IP Networks
Wireless Sensor Network
Friend Recommendation
Tag Recommendation
Solar Intensity Prediction
Weather Prediction
Applications
Personalized Websites
Medical Domain
Finance
Intrusion Detection System
Optimized Routing in IP Networks
Wireless Sensor Network
Friend Recommendation
Tag Recommendation
Solar Intensity Prediction
Weather Prediction
Soil Moisture Estimation
Applications
Personalized Websites
Medical Domain
Finance
Intrusion Detection System
Optimized Routing in IP Networks
Wireless Sensor Network
Friend Recommendation
Tag Recommendation
Solar Intensity Prediction
Weather Prediction
Soil Moisture Estimation
Oil Spill Detection
Applications
Personalized Websites
Medical Domain
Finance
Intrusion Detection System
Optimized Routing in IP Networks
Wireless Sensor Network
Friend Recommendation
Tag Recommendation
Solar Intensity Prediction
Weather Prediction
Soil Moisture Estimation
Oil Spill Detection
Land use Land Cover Classification
Applications
Personalized Websites
Medical Domain
Finance
Intrusion Detection System
Optimized Routing in IP Networks
Wireless Sensor Network
Friend Recommendation
Tag Recommendation
Solar Intensity Prediction
Weather Prediction
Soil Moisture Estimation
Oil Spill Detection
Land use Land Cover Classification
Cyclone Path Prediction
Applications
Personalized Websites
Medical Domain
Finance
Intrusion Detection System
Optimized Routing in IP Networks
Wireless Sensor Network
Friend Recommendation
Tag Recommendation
Solar Intensity Prediction
Weather Prediction
Soil Moisture Estimation
Oil Spill Detection
Land use Land Cover Classification
Cyclone Path Prediction
Robotics
Applications
Music Recommender System
Applications
Music Recommender System
LipNet
Applications
Music Recommender System
LipNet
Image Enlarging
Applications
Music Recommender System
LipNet
Image Enlarging
Image Outpainting
Imagine you have a half image of a scene and you wanted
the full scenery, well that’s what image outpainting can do
Applications
Music Recommender System
LipNet
Image Enlarging
Image Outpainting
Audio Visual Scene Aware Dialog (DSTC)
The goal is to generate a complete and natural response
to a question about a scene, given video and audio of the
scene and the history of previous turns in the dialog.
To answer successfully, agents must ground concepts
from the question in the video while leveraging
contextual cues from the dialog history.
References
1. https://towardsdatascience.com/the-10-deep-learning-methods-ai-
practitioners-need-to-apply-885259f402c1
2. Progressive Growing of GANs for Improved Quality, Stability, and
Variation
3. Ma, Liqian, et al. "Pose guided person image generation." Advances in
Neural Information Processing Systems. 2017.
4. https://github.com/junyanz/CycleGAN
5. https://github.com/hanzhanggit/StackGAN
6. https://github.com/pathak22/context-encoder
7. https://github.com/carpedm20/DiscoGAN-pytorch
8. https://github.com/phillipi/pix2pix
9. Antipov, Grigory, Moez Baccouche, and Jean-Luc Dugelay. "Face aging
with conditional generative adversarial networks." Image Processing (ICIP),
2017 IEEE International Conference on. IEEE, 2017.
10. https://pdfs.semanticscholar.org/presentation/f4af/de757b9dfc697
d149 e 95cb193aa4749530e2.pdf
11. Ganin, Yaroslav, and Victor Lempitsky. "Unsupervised domain adaptation
by backpropagation." arXiv preprint arXiv:1409.7495 (2014).
Disclaimer
Content of this presentation is not original and it
has been prepared from various sources for
teaching purpose.