Brief Course Description

This course will introduce the student to the fundamentals of machine learning including the following topics:

  1. Supervised Learning
    • Naive Bayes
    • Linear and Logistic Regression
    • Support Vector Machines (SVMs)
    • Neural Nets and Deep Learning
  2. Unsupervised Learning
    • Dimensionality Reduction
    • Clustering
  3. Graphical Models
    • Bayesian Networks
    • Markov Models
  4. Reinforcement Learning
    • Markov Decision Processes
    • Q-learning
    • Function Approximation

The course schedule is subject to change. See the schedule tab above.


Kevin Murphy Machine Learning A Probabilistic Perspective

Sutton and Barto Reinforcement Learning: An Introduction, 2nd Edition


  1. Introduction to Probability and Statistics, Linear Algebra, Algorithms.
  2. All programming assignments must be completed in Python. You must be willing to learn Python in order to do these assignments.

Instruction Staff

Instructor: Chris Amato (c.amato [at]
Office hours: Wednesday 2:30-3:30, 522 ISEC, or by Appt.

TA: Kechen Qin
Office hours: Monday 1:30-2:30,  208 WVH, or by Appt.

TA: Ram Prakash Arivu Chelvan
Office hours: Thursday 1:00 to 2:00, 605 ISEC, or by Appt.


Our Piazza page is here. If you haven't already been added, please register.

Work Load

Required course work for CS6140 is:

  • 4 Programming assignments (30% of your grade)
  • Problem sets (20% of your grade)
  • 2 MidTerms (30% of your grade)
  • 1 Final project and presentations (20% of your grade)

Problem sets

Problem sets are due at the beginning of each Tuesday class. Students may discuss the problems with other students, but must write up their own solutions.

Final project

The final project can be on any topic related to Machine Learning. Many people choose to work on a project applying a method studied in the class to some practical problem. The amount of project work should be equivalent to approximately two programming assignments. Students my work alone or in groups of 2 or 3.

Academic Integrity

Cheating and other acts of academic dishonesty will be referred to OSCCR (office of student conduct and conflict resolution) and the College of Computer Science. See this link.

Lateness Policy

Late assignments will be penalized by 10% for each day late. For example, if you turned in a perfect programming assignment two days late, you would receive an 80% instead of 100%.