Professor: Keith W. Ross, keithwross@nyu.edu
Office hours: Thursdays 4:00pm-5:00pm and by appointment Room 1415
Recitation Instructor: Yanqiu (Autumn) Wu; yanqiu.wu@nyu.edu
Office hours: Tuesday 1-3pm, Thursday 1-3pm Room 709 first 1-2 weeks; then room 1233
Also available by appointment
Che Watcher Wang, Room 1233, cw1681@nyu.edu
Learning Assistant: Zijie Lu, zijie.lu@nyu.edu
Office hours: Wednesday: 3:30pm- 5pm, Thursday: 3:15pm- 5pm
Room: Academic Resource Center (ARC)
Class Times: Tuesday, 9:45-11:00 AM
Wednesday 8:15-9:45 AM
Thursday, 9:45-11:00 AM
Prerequisites:
Introduction to Computer Programming (Python)
Calculus
Recommended:
Good at math
Good at Python programming
helpful:
Linear Algebra
Probability and Statistics
Introduction to Computer Science
Data Structures
Course Description:
Machine learning, and in particular deep learning, is at the core of all the excitement surrounding modern AI. It is a fast-moving field at the intersection of computer science, mathematics, probability and statistics, and optimization. It has been used in many consumer applications including Google Translate, Amazon Alexa, face recognition apps, Netflix recommendations, and self-driving cars.
In this class, students will learn about the theoretical foundations of machine learning and how to use machine learning to solve real-world data-driven problems. We will apply machine learning to numerical, textual, and image data. The first half of the course will focus on basic machine learning concepts and some classic machine learning algorithms. The second half of the course will focus on neural networks and deep learning.
In addition to two exams, the course will have six or seven homework assignments and a final project. The final project, as well as many of the homework assignments, will involve mathematics and programming.
There is no textbook for the course. The course will draw from a number of sources, including
David Sontag's Machine Learning and Computational Statistics (NYU)
Andrew Ng's Coursera Machine Learning Course (Stanford)
Andrew Ng Deep Learning Coursera Course
The mathematical level will be higher than Andrew Ng's machine learning course.
Topics:
We will be covering the following topics, roughly in the following order:
- Overview of Machine Learning
- Perceptron Algorithm
- Regression
- Gradient descent and Stochastic Gradient Descent
- Support Vector Machines
- Dimensionality Reduction and Principle Component Analysis
- Maximum Likelihood Estimation and Logistic Regression
- Neural Networks: Forward Propagation
- Neural Networks: Back Propagation Algorithm and Derivation
- Deep Learning: Convolutional Networks
- Deep Learning: Recurrent Neural Networks
- Selected Topics from Andrew Ng's Deep Learning course
Programming Language:
All programming will be done in Python.
Grading:
Two tests: 40%
Homework assignments (x6): 25%
Final project: 25%
Participation: 10%
Final Project: Due Wednesday, May 22, 9:00am
For the final project, you are to apply one or more of the machine learning techniques to some data set of your choosing. You are to work in teams to two. You may apply Machine Learning to just about any domain. See the Final Project page for more details.
FINAL PROJECTS FOR 2018 ARE HERE
FINAL PROJECTS FOR 2017 ARE HERE