Faculty of Science Home Page University of Alberta Home Page

CMPUT 466/551 (Intro ML) Course Outline

General Information

Term: Winter, 2008 (Lecture B1)
Date and Time: Tu/Th 2-3:20pm
Location: ETL E2 001
Number of credits: 3

See also Handout

Useful Pointers

Lecture Notes (Syllabus)
Assignments   Project Info
Current marks (Gradebook) Grads  UnderGrads
     (Login = CCid account; password = student id -- feel free to change this!)
CMPUT 466 Newsgroup


Instructor: R Greiner
Office: Ath 3-59
Phone: 492-5461
E-mail: greiner at cs.ualberta.ca
Office Time: 3:20-3:50 Tu/Th

To contact Prof + TAs: c466@ugrad.cs.ualberta.ca

View other contact information.


Learning -- ie, using experience to improve performance -- is an essential component of intelligence.  The field of Machine Learning, which addresses the challenge of producing machines that can learn, has become an extremely active, and exciting area, with an ever expanding inventory of  practical (and profitable!) results, many enabled by recent advances in the underlying theory.

This course provides a (near)graduate-level introduction to the field, with an emphasis on the design on agents that can learn about their environment, to help them improve their performance on a range of tasks.  We will cover

  • practical aspects, including algorithms for learning decision trees, neural networks and  belief networks;
  • general models, possibly including reinforcement learning;  and
  • theoretical concepts, including relevant ideas from statistics, inductive bias, Bayesian learning and the PAC learning framework.
Programming assignments will include hands-on experiments with various learning algorithms, possibly including neural network learning for face recognition, and decision tree learning from databases of credit records.

If time permits, we will also survey the latest new results (exponentiated gradient, ...) and discuss some new applications, in the areas of data-mining, and computational molecular biology.
See Lecture Notes for more details.


Any student who understands the material in this course will understand the foundations of machine learning (ML), and many of the standard computational tools available. That person will be able to apply these ideas and tools in novel situations -- eg, to determine whether any ML methods apply to this situation, and if so, which will work most effectively. S/He will also be able to assess claims made by others, with respect to both software products and general frameworks, and also be able to appreciate some new research results.


While there are no formal prerequisites for this course, we assume that each student has a basic programming capability and a rudimentary knowledge of calculus, linear algebra, probability and statistics. It would be advantageous (but not essential) to have some prior exposure to optimization methods, and a previous course on artificial intelligence (eg, CMPUT 366).
We do assume that all students know C/C++/JAVA, and know, or at least be willing to learn, Matlab.

Course Topics

(see above)

Course Work and Evaluation

There will be 4 (solo) assignments, and 1 (team) Project see course schedule for the details.

Grading System

During the term, your marks will be accumulated out of 100%, as indicated in this table.

At the end of the term, you will be assigned a letter grade. The mapping from term mark (out of 100%) and final letter grade (corresponding to the 4-point scale) will be consistent with university guidelines, but there is no a priori distribution or formula. See 61.6 University of Alberta Marking and Grading Guidelines.

Deferred Exams

If necessary, will be scheduled according to regulations.


If you have any questions or concerns about your marks on a particular assignment, you must contact the TA who graded this assignment, within 7 days of the mark being posted. After that, we will not consider remarking or re-evaluating the work. (Note also that we reserve the right to re-evaluate the entire assignment, not just a single question.)

Course Materials

Required Pattern Recognition and Machine Learning, C.M. Bishop, Springer, 2006.
Buy it from Springer   Amazon.ca   BooksPrice   mysimon   Chapters   Campusi
Required Reinforcement Learning, by Sutton/Barto
(note it is being revised... and is on-line)
Recommended Duda, Hart, Stork: Pattern Classification, Wiley, 2001.
  E Alpaydin, Introduction to Machine Learning, MIT Press, 2004.


Course Outlines

Policy about course outlines can be found in Section 23.4(2) of the University Calendar.

Academic Integrity

The University of Alberta is committed to the highest standards of academic integrity and honesty. Students are expected to be familiar with these standards regarding academic honesty and to uphold the policies of the University in this respect. Students are particularly urged to familiarize themselves with the provisions of the Code of Student Behaviour (online at www.ualberta.ca/secretariat/appeals.htm) and avoid any behaviour which could potentially result in suspicions of cheating, plagiarism, misrepresentation of facts and/or participation in an offence. Academic dishonesty is a serious offence and can result in suspension or expulsion from the University. (GFC 29 SEP 2003)


In CMPUT 466, collaboration on assignments is allowed, even encouraged. This means that you can freely discuss with other students the concepts involved and even how they may be solved. The purpose of allowing collaboration is for students to learn from each other, and to understand the course material through discussion with fellow students. However, you must write your own answers, and your own code. You may NOT submit someone else's work with your name on it as if it is your own. Our advice: during your meeting, do not write down notes. See also Dept Collaboration Policy.

You are welcome to comb the web for relevant material. However, if you use any of this material, you must be sure to give credit. Please, look at the definition of plagiarism and cheating in the Code of Student Behaviour. We assume that you are familiar with the content of that document.

Late Policy

We will excuse a total of 4 late days, over all of the assignments.

    (Eg, if HW#1 was due on 5/Oct, and HW#3 was due on 21/Nov, then you could hand-in HW#1 1 day late [by midnight 6/Oct], and HW#4 3 days late [midnight 24/Nov], without penalty.)
Notice a "day" corresponds to a week-day; the HW must be handed in by midnight of that day. If you run out of the 4 "extension-days", we reserve the right to not accept any other late HWs. (Note that handing in any portion of your homework late counts as "1" in your late-assignment count.)

Department Policies

Refer to Department Policy to learn about:

  • Collaboration
  • Excused Absences
  • Conditions of Use

University Policies

The University of Alberta policies include, but are not limited to, the following: