Sunday, August 9, 2020

MACHINE LEARNING

[As per Choice Based Credit System (CBCS) scheme]

(Effective from the academic year 2017 - 2018)

SEMESTER – VII Subject Code 17CS73 IA Marks 40 Number of Lecture Hours/Week 03 Exam Marks 60 Total Number of Lecture Hours 50 Exam Hours 03 CREDITS – 04

Module – 1 Introduction: Well posed learning problems, Designing a Learning system, Perspective and Issues in Machine Learning. Concept Learning: Concept learning task, Concept learning as search, Find-S algorithm, Version space, Candidate Elimination algorithm, Inductive Bias.

Text Book1, Sections: 1.1 – 1.3, 2.1-2.5, 2.7 10 Hours


Module – 2 Decision Tree Learning: Decision tree representation, Appropriate problems for decision tree learning, Basic decision tree learning algorithm, hypothesis space search in decision tree learning, Inductive bias in decision tree learning, Issues in decision tree learning.

Text Book1, Sections: 3.1-3.7 10 Hours


Module – 3 Artificial Neural Networks: Introduction, Neural Network representation, Appropriate problems, Perceptrons, Backpropagation algorithm.

Text book 1, Sections: 4.1 – 4.6 08 Hours


Module – 4 Bayesian Learning: Introduction, Bayes theorem, Bayes theorem and concept learning, ML and LS error hypothesis, ML for predicting probabilities, MDL principle, Naive Bayes classifier, Bayesian belief networks, EM algorithm

Text book 1, Sections: 6.1 – 6.6, 6.9, 6.11, 6.12 10 Hours


Module – 5 Evaluating Hypothesis: Motivation, Estimating hypothesis accuracy, Basics of sampling theorem, General approach for deriving confidence intervals, Difference in error of two hypothesis, Comparing learning algorithms. Instance Based Learning: Introduction, k-nearest neighbor learning, locally weighted regression, radial basis function, cased-based reasoning, Reinforcement Learning: Introduction, Learning Task, Q Learning

Text book 1, Sections: 5.1-5.6, 8.1-8.5, 13.1-13.3 12 Hours


Text Books: 1.

Tom M. Mitchell, Machine Learning, India Edition 2013, McGraw Hill Education.

Reference Books: 1. Trevor Hastie, Robert Tibshirani, Jerome Friedman, h The Elements of Statistical Learning, 2nd edition, springer series in statistics.

2. Ethem Alpaydın, Introduction to machine learning, second edition, MIT press.








Pre Requisite for Machine Learning


Coding Capabilities: 

The ease of converting logical statements into code can go a long way while becoming an ML practitioner.

Most of the open-source libraries are available in Python and R(especially data science libraries).

A good knowledge of Python can accelerate the learning curve.

Some of the important Python packages are

  1. Tensorflow (Parallel and Distributed Computation for Machine Learning and Deep Learning)

  2. numpy (Efficient Matrices Computations)

  3. OpenCV (Python’s Image Processing Toolbox)

  4. R Studio

  5. Pycharm

  6. iPython/Jupyter Notebook

  7. Julia

  8. Spyder

  9. Anaconda

  10. Rodeo

  11. Google –Colab


Online environment to learn python


  1. FOSS IIT Bombay


  1. Spoken – tutorials IIT Bombay


  1. Open course of MIT on python ( Offered by Coursera MIT OCW) free


  1. Python Documentation


Online environment for deep learning

  1. Google colabs

  2. AWS

  3. IBM blue mix

  4. Microsoft Azure

  5. ML flow


  1. OpenCV (Python’s Image Processing Toolbox)

  2. Python

  3. R

  4. Matlab

  5. Octave

  6. Julia

  7. C++

  8. C

Algorithms and Data Structures:

Data structures are efficient data models and are designed for efficiency in terms of memory and time consumed. Knowing how to handle data can fasten the processing. It also helps design better and faster algorithms, be it for pre-processing of data or designing the algorithm itself.

Calculus:

The heart of neural networks is the back propagation algorithm, based totally on differentiation. Hence we recommend a basic outline of calculus would help in the understanding of the training process.

Linear Algebra:

Gilbert Strang teaches the subject in the most fluidic manner and thus we strongly suggest his course on MIT OCW, available on YouTube. Linear Algebra is important because the data we deal with is multi-dimensional. For example, when we try to predict the price of a house, the various dimensions are location, area, facilities available, etc. Matrices are the most ideal way to deal with higher dimensions.

Statistics:

The basic understanding of mean, median, and mode of various probability distributions, especially the gaussian distribution is useful, as most of the data found in the real world can be modelled via these probability distributions and thus simplify the data to a fewer number of parameters.

Vector Algebra













Wednesday, May 15, 2019

Syllabus for Design Analysis of Algorithm 17CS43

DESIGN AND ANALYSIS OF ALGORITHMS
SEMESTER – IV           Subject Code 18CS43                    IA Marks 40                          CREDITS – 04
Number of Lecture Hours/Week 04   Exam Marks 60 Total    Number of Lecture Hours 50 Exam Hours 03
Module 1                                                                                                                                            10 Hours
Introduction: What is an Algorithm? (T2:1.1), Algorithm Specification (T2:1.2), Analysis Framework (T1:2.1), Performance Analysis: Space complexity, Time complexity (T2:1.3). Asymptotic Notations: Big-Oh notation (O), Omega notation (Ω), Theta notation (Θ), and Little-oh notation (o), Mathematical analysis of Non-Recursive and recursive Algorithms with Examples (T1:2.2, 2.3, 2.4). Important Problem Types: Sorting, Searching, String processing, Graph Problems, Combinatorial Problems. Fundamental Data Structures: Stacks, Queues, Graphs, Trees, Sets and Dictionaries. (T1:1.3,1.4)                                                       
Module 2                                                                                                                                            10 Hours
Divide and Conquer: General method, Binary search, Recurrence equation for divide and conquer, Finding the maximum and minimum (T2:3.1, 3.3, 3.4), Merge sort, Quick sort (T1:4.1, 4.2), Strassen’s matrix multiplication (T2:3.8), Advantages and Disadvantages of divide and conquer. Decrease and Conquer Approach: Topological Sort. (T1:5.3)
Module 3                                                                                                                                            10 Hours
Greedy Method: General method, Coin Change Problem, Knapsack Problem, Job sequencing with deadlines (T2:4.1, 4.3, 4.5). Minimum cost spanning trees: Prim’s Algorithm, Kruskal’s Algorithm (T1:9.1, 9.2). Single source shortest paths: Dijkstra's Algorithm (T1:9.3). Optimal Tree problem: Huffman Trees and Codes (T1:9.4). Transform and Conquer Approach: Heaps and Heap Sort (T1:6.4).
Module 4                                                                                                                                            10 Hours
Dynamic Programming: General method with Examples, Multistage Graphs (T2:5.1, 5.2). Transitive Closure: Warshall’s Algorithm, All Pairs Shortest Paths: Floyd's Algorithm, Optimal Binary Search Trees, Knapsack problem ((T1:8.2, 8.3, 8.4), Bellman-Ford Algorithm (T2:5.4), Travelling Sales Person problem (T2:5.9), Reliability design (T2:5.8).
Module 5                                                                                                                                           10 Hours
Backtracking: General method (T2:7.1), N-Queens problem (T1:12.1), Sum of subsets problem (T1:12.1), Graph coloring (T2:7.4), Hamiltonian cycles (T2:7.5). Branch and Bound: Assignment Problem, Travelling Sales Person problem (T1:12.2), 0/1 Knapsack problem (T2:8.2, T1:12.2): LC Branch and Bound solution (T2:8.2), FIFO Branch and Bound solution (T2:8.2). NP10 Hours Complete and NP-Hard problems: Basic concepts, non-deterministic algorithms, P, NP, NP-Complete, and NP-Hard classes (T2:11.1).
Course Outcomes
  1. Understand the importance concepts of algorithm design, working principles of well known algorithm, Their application, associated time complexity
  2. Apply mathematical concepts to analyze various recursive, non recursive algorithms.
  3. Design solution to given problem by selecting appropriate algorithm strategy.
  4. Construct solution to given problem using Greedy, dynamic programming, backtracking, subset and combinatorial principles.
  5. Compare conventional,  NP, NP Hard class of problem for algorithm design
  6. Analyze  performance of algorithm using modern tool.
Text Books:
T1.Introduction to the Design and Analysis of Algorithms, Anany Levitin:, 2rd Edition, 2009. Pearson. T2.Computer Algorithms/C++, Ellis Horowitz, Satraj Sahni and Rajasekaran, 2nd Edition, 2014, Universities Press
Evaluation:
1.      SEE 60 marks   2. SIA 30 marks   3 Slip Test 5 marks   4. Group Activity       5 marks


Monday, February 2, 2015

Dear students the below link contains Design and Analysis of Algorithm (10CS43) syllabus together with university question paper
ADA Question paper and syllabus

  DSA-Module-1-PPT