/MachineLearning

CS446: Machine Learning in Spring 2018, UIUC

Primary LanguagePython

Open Source Love HitCount

Table of Contents:

Course Information:

The goal of Machine Learning is to build computer systems that can adapt and learn from data. In this course we will cover three main areas:

  1. Discriminative models
  2. Generative models
  3. Reinforcement learning models

In particular we will cover the following:

  • Linear Regression
  • Logistic Regression
  • Support Vector Machines
  • Deep Nets
  • Structured Methods
  • Learning Theory
  • kMeans
  • Gaussian Mixtures
  • Expectation Maximization
  • Markov Decision Processes
  • Q-Learning

Pre-requisites:

Probability, Linear Algebra, and proficiency in Python.

Instructors:

  • Alexander Schwing, Website [Link]
  • Matus Telgarsky, Website [Link]

Assignments

  • Assignment 1: Introduction + Python — Design by Colin, Review by Yucheng
  • Assignment 2: Linear Regression — Design by Raymond, Review by Jyoti
  • Assignment 3: Binary Classification — Design by Youjie, Review by Jyoti
  • Assignment 4: Support Vector Machine — Design by Raymond, Review by Ishan
  • Assignment 5: Multiclass Classification — Design by Yucheng, Review by Safa
  • Assignment 6: Deep Neural Networks — Design by Safa, Review by Yuan-Ting
  • Assignment 7: Structured Prediction — Design by Colin, Review by Yucheng
  • Assignment 8: k-Means — Design by Jyoti, Review by Youjie
  • Assignment 9: Gaussian Mixture Models — Design by Ishan, Review by Colin
  • Assignment 10: Variational Autoencoder — Design by Yuan-Ting, Review by Raymond
  • Assignment 11: Generative Adverserial Network — Design by Ishan, Review by Yuan-Ting
  • Assignment 12: Q-learning — Design by Safa, Review by Youjie

Announcement:

All copyrights reserved © CS446 Instructors & TAs

  • Raymond Yeh, Website [Link]
  • Colin Graber
  • Safa Messaoud
  • Yuan Ting Hu
  • Ishan Deshpande
  • Jyoti Aneja
  • Youjie Li
  • Yucheng Chen

A collection of minimal and clean implementations of machine learning algorithms. This project is targeting people who want to learn internals of ml algorithms or implement them from scratch. The code is much easier to follow than the optimized libraries and easier to play with. All algorithms are implemented in Python, using numpy, scipy and autograd.

A very basic numpy implementation of CNN. original source

Notebook for naive implementation of Adversarial Neural Network. original source