Course Schedule

The following tentative course schedule will be followed. The schedule is flexible and might change due to progression paste, students' feedback, and unforeseen issues.

EventWeekDescriptionRequired reading
Assignment(p0)0Warmup: Python, NumPy, Pandas
Lecture1IntroductionLinear Algebra, Probability, Python
Lecture1K-nearest neighborsKNN
Assignment(w1)2K-nearest neighbors
Lecture2PerceptronNYT
Assignment(p1)2Perceptron
Lecture2Generative models
Lecture3Probabilistic reasoning
Lecture3Bayesian networks
Lecture4Naive BayesTom Mitchell's book Chp 3, Sec 1,2
Lecture4Logistic RegressionTom Mitchell's book Chp 3, Sec 3
Lecture5Gradient DescentGD Overview
Lecture5Linear Regression
Assignment(p2)5Logistic and Linear Regression
Lecture6Linear SVM
Assignment(p3)6SVM
Lecture6Empirical Risk Minimization
Assignment(w2)6Empirical Risk Minimization
Lecture7ML Debugging, Over-UnderfittingAndrew Ng's notes
Lecture7Bias/Variance Tradeoff
Lecture8Kernels
Lecture8Kernel machines
Lecture9Decision/Regression Trees
Lecture9Bagging
Lecture10Random forests
Lecture10BoostingBoosting Paper
Assignment(p4)10Decision/Regression Trees
Exam10Midterm exam
Lecture11Feedforward Neural NetworksDeep Learning Chp 2
Lecture11Backpropagation
Lecture12Python Automatic Differentiation libraries
Assignment(p5)10PyTorch
Lecture12Derivative free optimizationCMA-ES
Lecture13Unsupervised learning: feature extraction
Lecture13Multi-armed banditsSB Chp 2
Lecture14Markov-decision processesSB Chp 3
Assignment(w3)14MDP
Lecture14Value Iteration