This is a tentative schedule. Changes will be made as the semester progresses.

Week | Topic | Material | Reading | Assignments |
---|---|---|---|---|

Week 1: Jan 22 - Jan 25 | Overview. Intro to machine learning. Python. | 01 Course Overview 01 High-D Spaces 02 Matrices and Plotting | From Python to Numpy, Chapters 1 - 2 Scipy Lectures, Section 1 Deep Learning, Chapters 1 - 5.1.4 | |

Week 2: Jan 28 - Feb 1 | Fitting linear models to data as a direct matrix calculation, and incrementally using stochastic gradient descent (SGD) | 03 Linear Regression | Deep Learning, Section 5.1.4 and 5.9 |

Week | Topic | Material | Reading | Assignments |
---|---|---|---|---|

Week 3: Feb 4 - Feb 8 | Stochastic gradient descent (SGD). Ridge regression. Data partitioning. Probabilistic Linear Regression. Regression with fixed nonlinearities. | 04 Linear Regression Using Stochastic Gradient Descent (SGD) 05 Linear Ridge Regression and Data Partitioning 07 Linear Regression with Fixed Nonlinear Features | Deep Learning, Section 7.3 The Great A.I. Awakening, by Gideon Lewis-Krause, NYT, Dec 14, 2016. | |

Week 4: Feb 11 - Feb 15 | Introduction to nonlinear regression with neural networks. | 08 Stochastic Gradient Descent with Parameterized Activation Function A2 Adam vs SGD | Deep Learning, Chapter 6 (skip 6.2) | A1 Stochastic Gradient Descent for Simple Models due Tuesday, February 12, 10:00 PM. |

Week 5: Feb 18 - Feb 22 | More neural networks | 10 More Nonlinear Regression with Neural Networks | ||

Week 6: Feb 25 - Mar 1 | Autoencoders. Activation functions. | 11 Autoencoder Neural Networks | Searching for Activation Functions, by Ramachandran, Zoph, and Le | A2 Adam vs SGD due Monday February 25, 10:00 PM. |

Week | Topic | Material | Reading | Assignments |
---|---|---|---|---|

Week 7: Mar 4 - Mar 8 | Classification. LDA and QDA. K-Nearest Neighbors. | 12 Introduction to Classification 13 Gaussian Distributions | ||

Week 8: Mar 11 - Mar 15 | Classification with Neural Networks | 14 Classification with Linear Logistic Regression 15 Classification with Nonlinear Logistic Regression Using Neural Networks 16 Introduction to Pytorch | ||

Mar 18 - Mar 22 | Spring Break | |||

Week 9: Mar 25 - Mar 29 | Analysis of Trained Networks. Bottleneck Networks. Classifying Hand-Drawn Digits. | 17 Analysis of Neural Network Classifiers and Bottleneck Networks 18 Dealing with Time Series by Time-Embedding 19 Recurrent Neural Networks |

Week | Topic | Material | Reading | Assignments |
---|---|---|---|---|

Week 10: Apr 1 - Apr 5 | Convolutional Neural Networks | 20 Classifying Hand-drawn Digits 21 Convolutional Neural Networks 22 Introduction to Reinforcement Learning | Reinforcement Learning: An Introduction, by Sutton and Barto, 2nd ed. | |

Week 11: Apr 8 - Apr 12 | Reinforcement Learning. Games using Tabular Q functions. | 23 Reinforcement Learning with Neural Network as Q Function | Project proposal due at 10 pm Friday evening. You are welcome to start with a copy of the linked Google Doc. | |

Week 12: Apr 15 - Apr 19 | Reinforcement Learning using Neural Networks as Q functions. | 24 Reinforcement Learning to Control a Marble 25 Reinforcement Learning for Two Player Games | ||

Week 13: Apr 22 - Apr 26 | Unsupervised Learning. Dimensionality Reduction. Clustering. | 26 Linear Dimensionality Reduction 27 Examples of Linear Dimensionality Reduction 28 K-Means Clustering | ||

Week 14: Apr 29 - May 3 | Hierarchical clustering. K Nearest Neighbors Classification. Support Vector Machines. | 29 Hierarchical Clustering 30 Nonparametric Classification with K Nearest Neighbors 31 Support Vector Machines |

Week | Topic | Material | Reading | Assignments |
---|---|---|---|---|

Week 15: May 6 - May 10 | Ensembles. Other topics. | 32 Ensembles of Convolutional Neural Networks 33 Machine Learning for Brain-Computer Interfaces 34 Modeling Global Climate Change | Final Project Report due Wednesday, May 8, 10:00 PM. Here is a Project Report Example | |

May 13 - May 16 | Final Exams |