Description

CIS 5200 provides a fundamental introduction to the mathematics, algorithms and practice of machine learning, focusing on representation, loss functions, and optimization. Topics covered include:

  • Supervised learning: least squares regression, logistic regression, L0/L1/L2 feature selection/regularization, online learning, boosting, Naive Bayes, support vector machines, ensemble methods, neural nets/deep learning
  • Unsupervised learning: PCA, K-means clustering, Gaussian Mixture Models, EM, HMMs, Bayesian networks
  • Reinforcement learning: TD-learning, Q-learning, deep learning

Audience

The course is aimed broadly at advanced undergraduates and beginning graduate students in computer science, electrical engineering, mathematics, physics, and statistics. This is a hard course; A good alternative for those with less math background or time is CIS419/519 or, if you want a really nice, much easier intro, take the Coursera ML course. If unsure which to take, see this.

Software

We will be coding in Python, using the Jupyter/SKLearn/Pytorch libraries, running on Google Colab.

Pre-requisites

  • Basic probability and statistics (random variables, covariance matrix, CDF/PDF, Gaussian and other distributions, multiple regression). [CSE 261]
  • Basic linear algebra (matrices, vectors, rank, basis, projection, inverse, eigenvectors).
  • Reasonable python programming skills, including basic knowledge of python.

Reading Materials