The Machine Learning Track

Blue CS@CU logo for MS students

Machine Learning

The Machine Learning Track is intended for students who wish to develop their knowledge of machine learning techniques and applications. Machine learning is a rapidly expanding field with many applications in diverse areas such as bioinformatics, fraud detection, intelligent systems, perception, finance, information retrieval, and other areas.


Students must complete at least a total of 30 graduate credits and must maintain at least a 2.7 overall GPA in order to be eligible for the MS degree in Computer Science.

1. Breadth Courses (12 pts)

Visit the breadth requirement page for more information.

2. Required Track Courses (6pts)

Students must complete two required track courses by either taking two courses from group A or one course from group A and one course from group B. (At least one course must be taken from group A). Students who have taken equivalent courses in the past and received grades of at least a B may apply for waivers and take other CS courses instead.


Course ID


A COMS W4252 Introduction to Computational Learning Theory
A COMS W4771 or COMS W4721 or ELEN 4720[1] Machine Learning OR Machine Learning for Data Science OR Machine Learning for Signals, Information and Data
A COMS W4772 or COMS 6772 Advanced Machine Learning
A COMS 4995 Neural Networks Deep Learning
A COMS/STAT G6509/6701 Foundations of Graphical Models (This course is an advanced course, but MS students may register for it with instructor approval)
A COMS 4732 Computer Vision II
A COMS 4773 Machine Learning Theory
A COMS 4774 Unsupervised Learning
A COMS 4775 Causal Inference (Previously listed as COMS 4995: Causal Inference)
B COMS W4731 Computer Vision I
B COMS W4705 Natural Language Processing
B COMS W4733 Computational Aspects of Robotics
B COMS W4701 Artificial Intelligence

**Due to significant overlap, students can receive credits for only one of the following courses- COMS W4771: Machine Learning, COMS W4721: Machine Learning for Data Science, OR (as of Spring 2020) ELEN 4720: Machine Learning for Signals, Information, and Data)

3. Track Electives (6pts)

Students are required to take 2 courses from the following list, at least one of which must be a 6000-level course. Students cannot ‘double count’ a course that they took as a required track course as a track elective. Other courses on this list may be used as General Electives or to replace required track courses when the student has received a waiver.

Course ID


COMS W4111 Introduction to Databases
COMS W4252 Introduction to Computational Learning Theory
CSOR W4246 Algorithms for Data Science
COMS W4705 Intro to Natural Language Processing
COMS W4731 Computer Vision
COMS 4732 Computer Vision II
COMS W4733 Computational Aspects of Robotics
COMS W4737 Biometrics
COMS W4761 Computational Genomics
COMS E4762 Machine Learning for Functional Genomics
COMS W4771 or COMS W4721 or ELEN 4720[1] Machine Learning OR Machine Learning for Data Science OR Machine Learning for Signals, Information and Data
COMS W4772 or COMS 6772 Advanced Machine Learning (or COMS 6998: Machine Learning Personalization only valid if taken in Spring 2018)
COMS W4776 Machine Learning for Data Science
COMS W4995 Visit the topics courses page to see which COMS 4995 courses apply to this track.
COMS E6111 Advanced Database Systems
COMS E6232 Analysis of Algorithms II
COMS E6253 Advanced Topics in Computational Learning Theory
COMS E6717 (ELEN E6717) Information Theory
COMS E6735 Visual Databases
COMS E6737 Biometrics
COMS E6901 Projects in Computer Science (Advisor approval required)
COMS E6998 Visit the topics courses page to see which COMS 6998 courses apply to this track.
CSEE E6892 Bayesian Models in Machine Learning
CSEE E6898 Large-Scale Machine Learning
CSEE E6898 Sparse Signal Modeling
APMA E4990 Modeling Social Data
BINF G4006 Translational Bioinformatics
ECBM E4040 Neural Networks and Deep Learning
ECBM E6040 Neural Networks and Deep Learning Research
EECS E6691 Topics in  Data-Driven Analysis & Comp: Advanced Deep Learning
EECS E6699 Topics in Data-Driven Analysis and Computation: Mathematics of Deep Learning
EECS E6720 Bayesian Models of Machine Learning
EECS E6870 Speech Recognition
EECS E6893 Big Data Analytics or Topics-Information Processing (May only count 1 of these)
EECS E6895 Topic Adv Big Data Analytics
EECS E6894 Deep Learning for Computer Vision and Natural Language Processing
ELEN 6885 Reinforcement Learning
ELEN E6886 Sparse Representations and Higher Dimensional Geometry
ELEN E6899 Topics in Information Processing: Autonomous Multi-Agent Systems
IEOR E6613 Optimization I
IEOR 6617 Machine Learning and High-Dimensional Data
IEOR E8100 Optimization Methods in Machine Learning
IEOR E8100 Big Data & Machine Learning
MECS E6615 Advanced Robotic Manipulation
STAT 4001 (previously known as SIEO 4150) Introduction to Probability and Statistics
STAT W4201/4291/5291 or IEOR 4150 Probability and Statistics/Advanced Data Analysis
STAT W4240* or IEOR 4540 Data Mining
STAT W4282 or STAT GU4205 Linear Regression/Time Series Analysis/Linear Regression Models
STAT W4249/STAT 4243 Applied Data Science
STAT G4400/4241/5241* Statistical Machine Learning
STAT W4640/4224/5224 Bayesian Statistics
STAT 5242 Advanced Machine Learning
STAT W4700 Probability and Statistics
STAT G6101 Statistical Modeling and Data Analysis I
STAT G6104 Computational Statistics
STAT GR8101 Topics in Applied Statistics: Applied Causality

**Due to significant overlap, please be aware of the following exceptions:

  • Students can receive credits for only one of these courses (COMS W4771: Machine Learning, COMS W4721: Machine Learning for Data Science, or ELEN 4720: Machine Learning for Signals, Information, and Data
  • Students in the Machine Learning track can only take 1 of the following courses: ELEN 4903, IEOR 4525, STAT 4240, STAT 4400/4241/5241 – as a track elective or a general elective

4. General Electives (6pts)

Students must complete six credits of General Elective Courses, at the 4000 level or above. At least three of these points must be chosen from either the Track Electives listed above or from the CS department at the 4000 level or higher.

Students may also request to use at most 3 points of Non-CS/Non-Track coursework if approved by the process listed below.

  • Non-CS/Non-Track: CS MS students may request up to 3 points of Non-CS/Non-Track points to count toward their 30-point MS program. CS Track advisor may review and approve if the course is determined to be relevant to the CS MS track and sufficiently technical in nature. Students should send the Non-CS/Non-Track Form and the course syllabus to your Track Advisor for review.
Please note:
  • Students who waive track requirements by using previous courses must still complete 30 graduate credits. This can be done by expanding their elective selection to include courses listed as required track courses and elective track courses; or by taking other graduate courses
  • Students must take at least 6 points of technical courses at the 6000 level overall. One of the Track Electives courses has to be a 3pt 6000-level course from the Track Electives list
  • If the number of points used to fulfill the above requirements is less than 30, then General Elective graduate courses at 4000-level or above must be taken so that the total number of credits taken is 30
  • The Degree Progress Checklist should be used to keep track of your requirements. If you have questions for your Track Advisor or CS Advising, you should have an updated Checklist prepared


Please visit the Directory of Classes to get the updated course listings. Please also note that not all courses are offered every semester or even every year. A few courses are offered only once every two or three years or even less frequently.

Please note that some Data Science Institute courses, such as COMS W4121 (Computer Systems for Data Science), do not count towards the CS MS degree. If you have any questions, please contact your advisor or CS Advising.

As of Spring 15, STAT W4252: Introduction to Data Science is no longer an approved track elective course.

** Known Non-Track Course**

CSOR E4995: Financial Software Systems

Updated: 07/25/2023