21EC744 Machine Learning with Python
Course Learning Objectives
● To understand the basic theory underlying machine learning.
● To be able to formulate machine learning problems corresponding to different applications.
● To understand a range of machine learning algorithms along with their strengths and weaknesses.
● To be able to apply machine learning algorithms to solve problems of moderate complexity.
● To apply the algorithms to a real-world problem, optimize the models learned and report on the expected accuracy that can be achieved by applying the models.
SYLLABUS COPY
MODULE - 1
Introduction
Introduction to Machine Learning, Building intelligent machines to transform data into knowledge, The three different types of machine learning, An introduction to the basic terminology and notations, A roadmap for building machine learning systems, Using Python for machine learning.
Training Machine Learning Algorithms for Classification
Artificial neurons – a brief glimpse into the early history of machine learning, Implementing a perceptron learning algorithm in Python, Adaptive linear neurons and the convergence of learning
MODULE - 2
A Tour of Machine Learning Classifiers Using Scikit-Learn
Choosing a classification algorithm, First steps with scikit-learn, Modeling class probabilities via logistic regression, Maximum margin classification with support vector machines, Solving nonlinear problems using a kernel SVM, Decision tree learning, K-nearest neighbors – a lazy learning algorithm
Building Good Training Sets – Data Preprocessing
Dealing with missing data, Handling categorical data, Partitioning a dataset in training and test set s, Bringing features onto the same scale, Selecting meaningful features, Assessing feature importance with random forests.
MODULE - 3
Compressing Data via Dimensionality Reduction
Unsupervised dimensionality reduction via principal component Analysis, Supervised data compression via linear discriminant analysis, Using kernel principal component analysis for nonlinear mappings
Learning Best Practices for Model Evaluation and Hyperparameter Tuning
Streamlining workflows with pipelines, Using k-fold cross-validation to assess model performance, Debugging algorithms with learning and validation curves, Fine-tuning machine learning models via grid search, Looking at different performance evaluation metrics
Applying Machine Learning to Sentiment Analysis
Obtaining the IMDb movie review dataset, Introducing the bag-of-words model, training a logistic regression model for document classification , Working with bigger data – online algorithms and out-of-core learning
MODULE - 4
Embedding a Machine Learning Model into a Web Application
Serializing fitted scikit-learn estimators, Setting up a SQLite database for data storage, Developing a web application with Flask, Turning the movie classifier into a web application, Deploying the web application to a public server
Predicting Continuous Target Variables with Regression Analysis
Introducing a simple linear regression model, Exploring the Housing Dataset, Implementing an ordinary least squares linear regression model, Fitting a robust regression model using RANSAC, Evaluating the performance of linear regression models, Using regularized methods for regression- Turning a linear regression model into a curve – polynomial regression
MODULE - 5
Working with Unlabeled Data – Clustering Analysis
Grouping objects by similarity using k-means, Organizing clusters as a hierarchical tree,
Training Artificial Neural Networks for Image Recognition
Modeling complex functions with artificial neural networks, Classifying handwritten digits, Training an artificial neural network, Other neural network architectures
Course outcome
1. Appreciate the importance of visualization in the data analytics solution
2. Apply structured thinking to unstructured problems
3. Understand a very broad collection of machine learning algorithms and problems
4. Learn algorithmic topics of machine learning and mathematically deep enough to introduce the required theory
5. Develop an appreciation for what is involved in learning from data.
Suggested Learning Resources
Text Books
1. Python Machine Learning by Sebastian Raschka, Published by Packt Publishing Ltd.
2. Machine Learning with Python for Everyone by Mark E Fenner
3. Machine Learning using Python by Manaranjan Pradhan & U Dinesh Kumar
4. Practical Machine Learning with Python by Dipanjan Sarkar, Raghav Bali &Tushar Sharma