Time: Tuesday, Thursday
1:00pm2:15pm
Location: Sennott Square, Room 5313
Instructor: Milos
Hauskrecht
Computer Science Department
5329 Sennott Square
phone: x48845
email: milos at cs pitt edu
office hours: Tuesday 2:304:00PM, Wednesday 10:0011:30am
TA: Yanbing Xue
Computer Science Department
5324 Sennott Square
phone:
email: yax14 at pitt edu
office hours: Monday 2:003:30pm, Wednesday 3:305:00pm
Course description
Lectures
Homeworks
Term projects
Matlab
The goal of the field of machine learning is to build computer systems that learn from experience and that are capable to adapt to their environments. Learning techniques and methods developed by researchers in this field have been successfully applied to a variety of learning tasks in a broad range of areas, including, for example, text classification, gene discovery, financial forecasting, credit card fraud detection, collaborative filtering, design of adaptive web agents and others.
This introductory machine learning course will give an overview of models and algorithms used in modern machine learning, including linear models, multilayer neural networks, support vector machines, density estimation methods, Bayesian belief networks, mixture models, clustering, ensamble methods, and reinforcement learning. The course will give the student the basic ideas and intuition behind these methods, as well as, a more formal understanding of how and why they work. Students will have an opportunity to experiment with machine learning solutions on various datasets and apply them a selected problem in the context of a term project.
Prerequisites
Knowledge of calculus, linear algebra, probability (CS 1151), statistics (CS 1000), and programming (CS 1501) or equivalent, or the permission of the instructor.
Lectures  Topic(s)  Assignments  

January 9 
Introduction to Machine Learning.
Readings: Bishop: Chapter 1 
.  
January 11 
Designing a learning system.
Readings: Bishop: Chapter 1 
.  
January 16 
Matlab tutorial.
Readings: 
.  
January 18 
Designing a learning system
Readings: Bishop: Chapter 1 
Homework assignment 1 ( Data for HW1)  
January 23 
Designing a learning system (cont) Density estimation (introduction) Readings: Bishop: Chapter 1, 

January 25 
Density estimation
Readings: Bishop: Chapter 2.12 
Homework assignment 2 ( Data for HW2)  
January 30 
Density estimation II Readings: Bishop: Chapter 2.23. 

February 1 
Density estimation III
Readings: Bishop: Chapter 2.45 
Homework assignment 3 ( Data for HW3)  
February 5 
Linear regression
Readings: Bishop: Chapter 3.12. 

February 8 
Linear regression II Linear models for classification Readings: Bishop: Chapter 4.1. and 4.3. 
Homework assignment 4 ( Data for HW4)  
February 13 
Generative classification models
Readings: Bishop: Chapter 4.2. 

February 15 
Evaluation of classifiers Support vector machines Readings: Bishop: Chapter 7.1. 
Homework assignment 5 ( Data for HW5)  
February 20 
Support vector machines II Decision Trees Readings: Bishop: Chapters 7.1., 14.4. 

February 22 
Multilayer neural networks
Readings: Bishop: Chapters 5.13, 5.5. 
Homework assignment 6 ( Data for HW6)  
March 1 
Bayesian belief networks
Readings: Bishop: Chapters 8.12 

March 13 
Bayesian belief networks II
Readings: Bishop: Chapters 8.12 

March 15 
Bayesian belief networks: inference
Readings: Bishop: Chapters 8.12, 8.4. 
Homework assignment 7 ( Data for HW7)  
March 20 
Expectation Maximization
Readings: Bishop: Chapter 9.34, 9.2. 

March 22 
Clustering
Readings: (no readings in Bishop) you may want to read Clustering chapter in: 
Homework assignment 8 ( Data for HW8)  
March 24  Python tools for ML
Readings: 

March 29 
Clustering
Readings: 
Homework assignment 9 ( Data for HW9)  
April 3 
Learning with multiple models: Mixture of experts. Bagging.
Readings:


April 5 
Learning with multiple models: Boosting. Reinforcement learning I. Readings:

Homework assignment 10 ( Data for HW10)  
April 10 
Reinforcement learning II.
Readings:

The homework assignments will have mostly a character of projects and will require you to implement some of the learning algorithms covered during the lectures. Programming assignments will be implemented in Matlab. See rules for the submission of programs.
The assignment reports and programs should be submitted electronically via Course web. The assignments are due at the beginning of the class on the day specified on the assignment. In general, no extensions will be granted.
Collaborations:
No collaboration on homework assignments, programs, and exams is permitted unless you are specifically instructed to work in groups.
The term project is due at the end of the semester and accounts for a significant portion of your grade.
Matlab is a mathematical tool for numerical computation and manipulation, with excellent graphing capabilities. It provides a great deal of support and capabilities for things you will need to run Machine Learning experiments. The CSSD at UPitt offers $5 student licenses for Matlab. To obtain the licence please check the following link to the Matlab CSSD page . In addition, Upitt has a number of Matlab licences running on both unix and windows platforms.
Other Matlab resources on the web:
Online
MATLAB documentation
Online
Mathworks documentation including MATLAB toolboxes
Cheating policy: Cheating and any other antiintellectual behavior, including giving your work to someone else, will be dealt with severely and will result in the Fail (F) grade. If you feel you may have violated the rules speak to us as soon as possible. Please make sure you read, understand and abide by the Academic Integrity Code for the Faculty and College.
Students With Disabilities:
If you have a disability for which you are or may be requesting an
accommodation, you are encouraged to contact both your instructor and
Disability Resources and Services, 216 William Pitt Union, (412)
6487890 as early as possible in the term. DRS
will verify your disability and determine reasonable accomodations for
this course.
Course webpage from Spring 2015