COSC 425

Introduction to Machine Learning

Fall 2019

Bruce MacLennan [he/his/him]
Phone: 974-0994
Office: Min Kao 550
Hours: MW 2:30–3:30, or make an appointment

Nicholas Van Nostrand
Office: Min Kao 217
Hours: MWF 2:30–3:30, or make an appointment
Email: nvannost at

Zhuohang Li 
Office: Min Kao 205
Hours: TR 10:00–11:00, or make an appointment
Email: zli96 at

Classes: 1:25–2:15 MWF in Min Kao 524

This page:



COSC 425:
Machine learning is concerned with computer programs that automatically improve their performance through experience. This course covers the theory and practice of machine learning from a variety of perspectives. We cover topics such as clustering, decision trees, neural network learning, statistical learning methods, Bayesian learning methods, dimension reduction, kernel methods, and reinforcement learning. Programming assignments include implementation and hands-on experiments with various learning algorithms.
COSC 425 is not in the Graduate Catalog, and so graduate students cannot take COSC 425 for graduate credit. Instead, there is a new course, COSC 522 Machine Learning, which will be taught this semester.


COSC 425:
(RE) Prerequisite(s): Electrical and Computer Engineering 313 or 317 or Mathematics 323; Mathematics 251 or 257.
This is a 400-level computer science course, and it is taught at a level appropriate for seniors in computer science. You will be expected to have the background knowledge of senior CS students and, of course, to be competent, efficient, and effective programmers.
You will be programming at least six machine learning algorithms. I recommend python or Matlab/Octave, but C++ and Java are also acceptable. If you want to use another language, please contact me.



Alpaydin: Introduction to Machine Learning (3rd ed., 2014, MIT Press).


For Students with Disabilities
Students who have a disability that requires accommodation(s) should make an appointment with the Office of Disability Services (974-6087) to discuss their specific needs as well as schedule an appointment with me during my office hours.
Name and Pronoun Accommodations
If you use a name and/or pronouns other than what is in the course roll, please email me with the name and/or pronouns that you would like me to use and I will be glad to accommodate this request.

Tentative List of Topics

We will spend a week or two on each of these topics, which correspond to the indicated chapters in the textbook.

  1. Introduction (ch. 1)
  2. Supervised Learning (ch. 2)
  3. Bayesian Decision Theory (ch. 3)
  4. Parametric Methods (chs. 4–5)
  5. Dimensionality Reduction (ch. 6)
  6. Clustering (ch. 7)
  7. Non-Parametric Methods (ch. 8)
  8. Decision Trees (ch. 9)
  9. Neural Networks (chs. 10–11)
  10. Local Models (ch. 12)
  11. Kernel Machines (ch. 13)
  12. Reinforcement Learning (ch. 18) [optional]
  13. Machine Learning Experiments (ch. 19) [optional]

Additional Information

Return to MacLennan’s home page
Send mail to Bruce MacLennan /

Valid HTML 4.01! This page in
Last updated:  2019-09-13.