This session has ended.

Title: Machine Learning

Course number: COMP4220 (undergraduate) COMP5450 (graduate) 

Session: Spring 2016

Location: Olsen Hall 109 (North Campus)

Meeting Times: Tue/Thu 3:30-4:45pm

Instructor: Kate Saenko, Office HoursOlsen Hall 223, Tue/Thu 2:30-3:15; 4:15-5:30, and by appointment  

TA: Liqun (Catherine) Shao Office HoursOlsen Hall 212A, Mon 2:00-3:30pm and Tue 10:00am-11:30am, and by appointment

Catalog listing   

This introductory course gives an overview of machine learning techniques used in data mining and pattern recognition applications. Topics include: foundations of machine learning, including statistical and probabilistic methods; generative and discriminative models; linear regression; Bayesian methods; parametric and non-parametric classification; supervised and unsupervised learning; clustering and dimensionality reduction; anomaly detection; and applications to very large datasets.


This is an upper-level undergraduate/graduate course. All students should have completed the following courses (or their equivalents):

  • 92.322 Discrete Structures II (or Linear Algebra)
  • 92.386 Probability & Statistics I
  • 91.102 Computing II

In addition, students must complete and pass Quiz 0 on prerequisite math knowledge – Probability & Statistics, Discrete math, Calculus, basic Matrix Algebra given in the first week of class. Students who cannot pass Quiz 0 must drop the class. For the graduate section, students must have additionally completed

  • Linear Algebra I and II
  • Calculus III

Project Sequence

The course can be taken as part of the two-course project sequence in combination with either 91.420 Artificial Intelligence, 91.530 Topics: Natural Language Processing, or 91.423 Computer Vision.


The required textbook is:

The course will also follow and build on Andrew Ng’s online course lectures, available at


Other recommended supplemental textbooks are:

Software and Hardware

The course will use the Octave scientific programming environment, a free version of Matlab. To facilitate programming assignments, software libraries in the corresponding programming language will be made available to the students.

Meeting Format

The class will meet twice a week for a 75 min lecture, taught by the instructor.

Syllabus Overview

  1. Introduction to Machine Learning. Review of mathematical concepts.
  2. Probabilistic Approaches. Maximum Likelihood Principle.
  3. Multivariate linear regression. Bayesian regression. Bias-variance trade-off.
  4. Logistic regression, One-vs-all classification, Regularization.
  5. Neural Networks. Convolutional Neural Networks.
  6. Practical advice for applying learning algorithms: debugging, feature/model design, setting up experiment structure, evaluating methods.
  7. Support Vector Machines (SVMs) and the intuition behind them.
  8. Active learning. Bootstrapping.
  9. Unsupervised learning: clustering and dimensionality reduction, anomaly detection.
  10. Ensemble classifiers: Boosting.
  11. Nearest neighbor models. Metric learning.
  12. Large-scale machine learning. Example applications of machine learning.

Student Learning Outcomes

After the completion of the course, the students should be able to understand 

  • the design, construction and evaluation of a machine learning/pattern recognition system
  • the mathematical foundations of several mainstream machine learning algorithms
  • major classes of approaches in machine learning/pattern recognition literature
  • the theoretical issues involved in learning algorithm design such as the curse of dimensionality
  • implementation of machine learning techniques in a scientific computing environment

These goals will be evaluated through quizzes, homeworks, and a final project.

Deliverables/Graded work

Students will be evaluated based on the following graded work (subject to change):

  • 3 in-class quizzes: 45% (quiz 0: 5% quiz 1: 20% quiz 2: 20%) 
  • project: 40% 
  • homeworks: 10% (self-graded)
  • class participation: 5%

Students enrolled in the graduate section will be expected to submit additional work and/or achieve a higher percentage on the exams to receive the same grade as undergraduate section students. 

Late Policy

  • homework: 10% off per day, up to 7 days
  • other deliverables: 20% off per day, up to 4 days
Important: if you cannot submit an assignment on time because of CS department server issues, please IMMEDIATELY 1) send an email to, 2) cc: the instructor and TA, 3) do not modify the timestamps on your files, i.e. timestamps should be from before the deadline, even if the files are submitted later. Only doing (1)-(3) can result in late charge reversal.

Academic Honesty Policy: Students are expected to honor all CS department and UMass Lowell policies related to academic honesty and integrity. Violators risk failing the course in addition to any actions taken by university administration. The default CS department policy is that a student who cheats will fail the course. The University's policy is described here. A definition of plagiarism is here. All work on exams must be the student's own work. All work on homework assignments must also be the student's own work, with the following exceptions: 1) hints provided by the instructor or TA may be used but must be acknowledged in writing in the student's work; 2) high-level hints from another student may also be used if a student is unable to make progress on an assignment problem on his/her own; this type of hint must also be acknowledged in writing in the student's work. Detailed collaboration among students on homework assignments is not permitted. Students cannot obtain homework answers from web sites. The first violation will result in a warning and possible grade of 0, the second violation will result in a report to the university. 

Religious Observance: UMass Lowell respects the religous observances of students. If religious obligations conflict with course due dates and/or examinations, students should notify the professor in writing well in advance of the due date.