====== Schedule ====== ===== Announcements ===== This is a tentative schedule. Changes will be made as the semester progresses. ===== January ===== |< 100% 10% 20% 30% 20% 20% >| ^ Week ^ Topic ^ Material ^ Reading ^ Assignments ^ | Week 1:\\ Jan 22 - Jan 25 | Overview. Intro to machine learning. Python. | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/01 Course Overview.ipynb|01 Course Overview]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/01 High-D Spaces.ipynb|01 High-D Spaces]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/02 Matrices and Plotting.ipynb|02 Matrices and Plotting]] | [[http://www.labri.fr/perso/nrougier/from-python-to-numpy/|From Python to Numpy]], Chapters 1 - 2\\ [[http://www.scipy-lectures.org/|Scipy Lectures]], Section 1\\ [[http://www.deeplearningbook.org/|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) | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/03 Linear Regression.ipynb|03 Linear Regression]] | [[http://www.deeplearningbook.org/contents/ml.html|Deep Learning, Section 5.1.4 and 5.9]] | ===== February ===== |< 100% 10% 20% 30% 20% 20% >| ^ 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. | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/04 Linear Regression Using Stochastic Gradient Descent (SGD).ipynb|04 Linear Regression Using Stochastic Gradient Descent (SGD)]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/05 Linear Ridge Regression and Data Partitioning.ipynb|05 Linear Ridge Regression and Data Partitioning]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/07 Linear Regression with Fixed Nonlinear Features.ipynb|07 Linear Regression with Fixed Nonlinear Features]] |[[http://www.deeplearningbook.org/|Deep Learning]], Section 7.3\\ [[http://www.nytimes.com/2016/12/14/magazine/the-great-ai-awakening.html?_r=0|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. | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/08 Stochastic Gradient Descent with Parameterized Activation Function.ipynb|08 Stochastic Gradient Descent with Parameterized Activation Function]] | [[http://www.deeplearningbook.org/|Deep Learning]], Chapter 6 (skip 6.2) | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/A1 Stochastic Gradient Descent for Simple Models.ipynb|A1 Stochastic Gradient Descent for Simple Models]] due Tuesday, February 12, 10:00 PM.\\ [[http://www.cs.colostate.edu/~anderson/cs445/notebooks/good-ones/|Examples of good solutions]] | | Week 5:\\ Feb 18 - Feb 22 | More neural networks | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/09 Scaled Conjugate Gradient for Training Neural Networks.ipynb|09 Scaled Conjugate Gradient for Training Neural Networks]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/10 More Nonlinear Regression with Neural Networks.ipynb|10 More Nonlinear Regression with Neural Networks]] | | | Week 6:\\ Feb 25 - Mar 1 | Autoencoders. Activation functions. | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/11 Autoencoder Neural Networks.ipynb|11 Autoencoder Neural Networks]] | [[https://arxiv.org/pdf/1710.05941.pdf|Searching for Activation Functions]], by Ramachandran, Zoph, and Le\\ [[http://aclweb.org/anthology/D18-1472|Is it Time to Swish? Comparing Deep Learning Activation Functions Across NLP tasks]], by Eger, Youssef, and Gurevych | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/A2 Adam vs SGD.ipynb|A2 Adam vs SGD]] due Tuesday February 26, 10:00 PM. | ===== March ===== |< 100% 10% 20% 30% 20% 20% >| ^ Week ^ Topic ^ Material ^ Reading ^ Assignments ^ | Week 7:\\ Mar 4 - Mar 8 | Classification. LDA and QDA. K-Nearest Neighbors. | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/12 Introduction to Classification.ipynb|12 Introduction to Classification]] \\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/13 Gaussian Distributions.ipynb|13 Gaussian Distributions]] | [[https://towardsdatascience.com/jupyter-lab-evolution-of-the-jupyter-notebook-5297cacde6b|Jupyter Lab: Evolution of the Jupyter Notebook]] by Parul Pandey | | | Week 8:\\ Mar 11 - Mar 15 | Classification with Neural Networks | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/14 Classification with Linear Logistic Regression.ipynb|14 Classification with Linear Logistic Regression]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/15 Classification with Nonlinear Logistic Regression Using Neural Networks.ipynb|15 Classification with Nonlinear Logistic Regression Using Neural Networks]] | | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/A3 Neural Network Regression and Activation Functions.ipynb|A3 Neural Network Regression and Activation Functions]] due Friday March 15, 10:00 PM. | | Mar 18 - Mar 22 | Spring Break | | Week 9:\\ Mar 25 - Mar 29 | Pytorch. Analysis of Trained Networks. Bottleneck Networks. Classifying Hand-Drawn Digits. | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/16 Introduction to Pytorch.ipynb|16 Introduction to Pytorch]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/17 Analysis of Neural Network Classifiers and Bottleneck Networks.ipynb|17 Analysis of Neural Network Classifiers and Bottleneck Networks]] \\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/18 Dealing with Time Series by Time-Embedding.ipynb|18 Dealing with Time Series by Time-Embedding]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/19 Recurrent Neural Networks.ipynb|19 Recurrent Neural Networks]] | | | ===== April ===== |< 100% 10% 20% 30% 20% 20% >| ^ Week ^ Topic ^ Material ^ Reading ^ Assignments ^ | Week 10:\\ Apr 1 - Apr 5 | Convolutional Neural Networks | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/20 Classifying Hand-drawn Digits.ipynb|20 Classifying Hand-drawn Digits]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/21 Convolutional Neural Networks.ipynb|21 Convolutional Neural Networks]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/22 Introduction to Reinforcement Learning.ipynb|22 Introduction to Reinforcement Learning]] | [[http://incompleteideas.net/book/the-book.html|Reinforcement Learning: An Introduction]], by Sutton and Barto, 2nd ed. | | | Week 11:\\ Apr 8 - Apr 12 | Reinforcement Learning. Games using Tabular Q functions. | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/23 Reinforcement Learning with Neural Network as Q Function.ipynb|23 Reinforcement Learning with Neural Network as Q Function]] | | [[https://drive.google.com/open?id=1KHAxeIwL3ait2ZUbILdbJjCLW47JwxKpdjsAr5kkkZk|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. | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/24 Reinforcement Learning to Control a Marble.ipynb|24 Reinforcement Learning to Control a Marble]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/25 Reinforcement Learning for Two Player Games.ipynb|25 Reinforcement Learning for Two Player Games]] | | Week 13:\\ Apr 22 - Apr 26 | Unsupervised Learning. Dimensionality Reduction. Clustering. | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/26 Linear Dimensionality Reduction.ipynb|26 Linear Dimensionality Reduction]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/27 Examples of Linear Dimensionality Reduction.ipynb|27 Examples of Linear Dimensionality Reduction]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/28 K-Means Clustering.ipynb|28 K-Means Clustering]] | | Week 14:\\ Apr 29 - May 3 | Hierarchical clustering. K Nearest Neighbors Classification. Support Vector Machines. | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/29 Hierarchical Clustering.ipynb|29 Hierarchical Clustering]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/30 Nonparametric Classification with K Nearest Neighbors.ipynb|30 Nonparametric Classification with K Nearest Neighbors]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/31 Support Vector Machines.ipynb|31 Support Vector Machines]] | | } ===== May ===== |< 100% 10% 20% 30% 20% 20% >| ^ Week ^ Topic ^ Material ^ Reading ^ Assignments ^ | Week 15:\\ May 6 - May 10 | Ensembles. Other topics. | [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/32 Ensembles of Convolutional Neural Networks.ipynb|32 Ensembles of Convolutional Neural Networks]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/33 Machine Learning for Brain-Computer Interfaces.ipynb|33 Machine Learning for Brain-Computer Interfaces]]\\ [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/34 Modeling Global Climate Change.ipynb|34 Modeling Global Climate Change]] | | Final Project Report due Wednesday, May 8, 10:00 PM. Here is a [[http://nbviewer.ipython.org/url/www.cs.colostate.edu/~anderson/cs445/notebooks/Project Report Example.ipynb|Project Report Example]] | | May 13 - May 16 | Final Exams | | | |