CS 732: Advance Machine learning
Spring 2016

Instructor: Usman Roshan
Office: GITC 3802
Ph: 973-596-2872
Office hours: Tue and Thu 2:30 to 5
Email: usman@cs.njit.edu

TA: Ling Zhong
Office hours: By appointment
Email: lz25@njit.edu

Textbook: Not required
Grading: 20% programming assignments, 10% paper presentation, 70% project
Course Overview: This course will cover advance topics in machine learning. We will begin with the CUDA and OpenCL languages for parallel programming on Graphics Processing Units (GPUs) and OpenMP for multi-core programming. While machine learning and parallel programming are separate topics we include GPU and multi-core computing in this course because of their applications in machine learning on large datasets. We will then discuss recent papers in machine learning throughout the semester such as deep learning, representation learning, optimization algorithms, algorithms for big datasets, and advance Bayesian methods. Students will present recent papers and undertake a machine learning project. The project may be theoretical or experimental in nature. For example students may take on a challenge dataset from Kaggle or study theoretical error bounds of a contemporary classifier.

Course plan:

Topic
Date
Notes
Introduction to GPU computing
01/25/2016
Introduction
Basic Unix command sheet
Instructions for AFS login
CUDA exercise
02/01/2016
Simulated GWAS
Class labels for above data
Chi-square 2-df test in parallel on a GPU
Assignment 1
Chi8 (Makefile and sample script file include)
OpenCL
02/08/2016
Papers

Projects

CUDA to OpenCL slides
libOpenCL.so (NVIDIA library file for OpenCL code)
Chi2 opencl implementation
OpenCL files
Assignment 2
Papers

Projects:
  • Haifa: Deep learning for sequence alignment regression
  • Ajit: Deep learning vs. another recent classifier
  • Yuan: DNN-HMM based environmental acoustic classifier
  • Min Zhang: Unsupervised neural spike sorting
  • Yang: Neural networks with unreliable feature inputs
  • Mingda: Decision tree in C
  • Anil and Hammad: Predicting vulnerable bugs in programs
  • Anisha and Yogesh: Machine learning based robot navigation
  • Kuang: Machine learning for finance
  • Xiaoyu: Using social media data to understand and assess disasters
  • Jinhe: Conditional random fields
  • Zhangyi Jin: Big data Machine Learning implementation with Spark
  • Angie: Kaggle Yelp Photo Classification Problem
  • Clarissa: CIFAR-10 image classification
  • Haoyue Liu and Keyuan Wu: Deep learning on CIFAR-10 image classification
  • Haodi Jiang: max-min hill-climbing Bayesian network structure learning algorithm
  • Xinge: Gradient boosting
Presentations 02/15/2016
Presentations 02/22/2016
Presentations 02/29/2016
Presentations 03/07/2016
Presentations 03/21/2016
Presentations 03/28/2016
Presentations 04/04/2016
Presentations 04/11/2016
Presentations 04/18/2016
Student projects 04/25/2016
Student projects 05/11/2016
Meeting place and time: CKB 315 at 11:30