CS445: Introduction to Machine Learning

Sidebar

CS445

Instructor
Chuck Anderson

start

This is an old revision of the document!

Announcements

February 25: Assignment A3 has been updated. It no longer requires the implementation of the Swish activation function. And it now includes A3grader.tar and example results.

Lecture videos are available at this CS445 video recordings site.

January

Week 1:
Jan 16 - Jan 19
Overview. Intro to machine learning. Python. 01 Course Overview
02 Matrices and Plotting
From Python to Numpy, Chapters 1 - 2
Deep Learning, Chapters 1 - 5.1.4
Week 2:
Jan 22 - Jan 26
Fitting linear models to data as a direct matrix calculation, and incrementally using stochastic gradient descent (SGD) 03 Linear Regression
04 Linear Regression Using Stochastic Gradient Descent (SGD)
Week 3:
Jan 29 - Feb 2
Ridge regression. Data partitioning. Probabilistic Linear Regression. Regression with fixed nonlinearities. 05 Linear Ridge Regression and Data Partitioning
06 Probabilistic Linear Regression
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.
A1 Linear Regression due Wednesday, January 31, 10:00 PM. Here are some good solutions.

February

Week 4:
Feb 5 - Feb 9
Introduction to nonlinear regression with neural networks. 08 Stochastic Gradient Descent with Parameterized Activation Function
09 Scaled Conjugate Gradient for Training Neural Networks
Deep Learning, Chapter 6 (skip 6.2)
Week 5:
Feb 12 - Feb 16
Lectures on Feb 12th and 14th are canceled. Friday, more neural networks 10 More Nonlinear Regression with Neural Networks
Week 6:
Feb 19 - Feb 23
Autoencoders. Activation functions. 11 Autoencoder Neural Networks Searching for Activation Functions, by Ramachandran, Zoph, and Le A2 Neural Network Regression due Tuesday, February 20, 10:00 PM
Week 7:
Feb 26 - Mar 2
Classification. LDA and QDA. K-Nearest Neighbors. 12 Introduction to Classification (qdalda.py updated March 20)
13 Gaussian Distributions
A3 Activation Functions due Thursday, March 1, 10:00 PM

March

Week 8:
Mar 5 - Mar 9
Classification with Neural Networks 14 Classification with Linear Logistic Regression
15 Classification with Nonlinear Logistic Regression Using Neural Networks (updated March 18)
16 Introduction to Pytorch
Mar 12 - Mar 16 Spring Break
Week 9:
Mar 19 - Mar 23
Analysis of Trained Networks. Bottleneck Networks. Classifying Hand-Drawn Digits. 17 Analysis of Neural Network Classifiers and Bottleneck Networks (updated March 19, 10:20 AM)
18 Dealing with Time Series by Time-Embedding
19 Recurrent Neural Networks
Week 10:
Mar 26 - Mar 30
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 A4 Classification with QDA, LDA, and Logistic Regression (use() return value updated March 20) due Tuesday, March 27, 10:00 PM

April

Week 11:
Apr 2 - Apr 6
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 9 - Apr 13
Reinforcement Learning using Neural Networks as Q functions. 24 Reinforcement Learning to Control a Marble
Week 13:
Apr 16 - Apr 20
Unsupervised Learning. Dimensionality Reduction. Clustering.
Week 14:
Apr 23 - Apr 27
Support Vector Machines.