CS 4641 Machine Learning

Summer 2012 Syllabus

Last updated on 2012-07-25 at 09:58.


Chris Simpkins



Schedule and Office Hours


Course Description

CS 4641 is an introductory survey of modern machine learning. Machine learning is an active and growing field that would require many courses to cover completely. This course aims at the middle of the theoretical versus practical spectrum. We will learn the concepts behind several machine learning algorithms wtihout going deeply into the mathematics and gain practical experience applying them. We will consider pattern recognition and artificial intelligence perspectives, making the course valuable to students interested in data science, engineering, and intelligent agent applications.




Homework and Exams

Homework helps you learn the concepts we discuss in class and read about in our book. Exams test your understanding of these concepts. I will assign homework every day to help you prepare for the exams. They will not be graded, but we will review the answers to help you assess your own understanding.


Projects give you practical experience applying machine learning algorithms to real-world data. Each project is designed to highlight specific conceptual and practical issues to develop your intuition about how to use machine learning for your own problems.


Conceptual understanding and practical application will be graded equally:

Final letter grades will be determined by clustering the distribution of course averages. This clustering will be as generous as possible consistent with applicable policy. Guaranteed grades will be determined by:

val letterGrade = courseAverage match {
  case avg if avg >= 90 => 'A
  case avg if avg >= 80 => 'B
  case avg if avg >= 70 => 'C
  case avg if avg >= 60 => 'D
  case _ => 'F

Note that in the past, scores have been much lower than the guaranteed scores listed above. For example, on the last midterm exam a score of 30 was a B. It's the distribution that matters, not the raw score.


Class resources, including all assignments, will be maintained on this open-access web site. Projects will be submitted and grades will be maintained in T-Square.

Lectures and Assignments

Date Topics Assignments
2012-05-14 Introduction

Reading: I2ML 1

HW: I2ML 1.1,6,7,8,9

2012-05-16 Supervised Learning

Reading: I2ML 2

HW: I2ML 2.1, 2, 4, 5, 7, 8


Bayesian Decision Theory

Nonparametric Methods

Reading: I2ML 3.1-3.5, 8.1-8.5

HW: I2ML 3.1, 2, 5; 8.2, 3, 4


Decision Trees

ML Experiments

Reading: I2ML 9, 19.1, 19.5-19.7

HW: I2ML 9.1, 2, 4

Assignment: Project1

2012-05-28 Memorial Day Holiday  

Linear Discrimination

Multilayer Perceptrons

Reading: I2ML 10, 11.1-11.8.2

HW: 10.1,7-9 ; 11.1-3

2012-06-04 Online Review Work on Project 1
2012-06-06 Online Office Hours Work on Project 1
2012-06-11 Exam 1

Reading: I2ML 1-4, 8-11

Due 2012-06-11: Project1

2012-06-13 Exam 1 and Project 1 Review Withdrawal deadline: 2012-06-15
2012-06-18 Parametric & Multivariate Reading: I2ML 4, 5
2012-06-20 Dimensionality Reduction Reading: I2ML 6, PCA Primer
2012-06-25 Clustering Reading: I2ML 7
2012-06-27 Kernel Machines

Reading: I2ML 13

Assignment: Project2

2012-07-02 Combining Learners Reading: I2ML 17
2012-07-04 Independence Day Holiday  
2012-07-06 Exam 2 Review Session 15:00 in CoC 101
2012-07-09 Exam 2 Reading: I2ML 4-7, 12-13, 17
2012-07-16 Reinforcement Learning

Reading: I2ML 18.1-18.4

Due 2012-07-16: Project2

2012-07-18 Reinforcement Learning

Reading: I2ML 18 all

Assignment: Project3

2012-07-23 Hidden Markov Models Reading: I2ML 15
2012-07-25 Course Review

Reading: I2ML

Due 2012-07-30: Project3



Final Exam Reading: I2ML 15-16, 18