Carnegie Mellon University

Undergraduate Concentration in Machine Learning

Machine learning and statistical methods are increasingly used in many application areas including natural language processing, speech, vision, robotics, and computational biology. The Concentration in Machine Learning allows undergraduates to learn about the core principles of this field. The Concentration requires five courses (two core courses and three electives) from the School of Computer Science (SCS) and the Department of Statistics & Data Science. The electives primarily focus on core machine learning skills that could be broadly applicable to either industry or graduate work. A CS Senior Honors Thesis or two semesters of Senior Research may be used to satisfy part of the electives requirement, which could provide excellent research experience for students interested in pursuing a PhD.

Learning Objectives

Upon completion of this concentration, students should be able to:

  • Formulate real-world problems involving data such that they can be solved by machine learning
  • Implement and analyze existing learning algorithms
  • Employ probability, statistics, calculus, linear algebra, and optimization in order to develop new predictive models or learning methods
  • Select and apply an appropriate supervised learning algorithm for problems of different kinds, including classification, regression, structured prediction, clustering, and representation learning
  • Describe the the formal properties of models and algorithms for learning and explain the practical implications of those results
  • Compare and contrast different paradigms for learning


The School of Computer Science offers concentrations for SCS students in various aspects of computing to provide greater depth to their education. Information can be found in the Undergraduate Course Catalog. Students outside SCS are not eligible for the Machine Learning Concentration and should instead consider the Machine Learning Minor.

Requirements for the Concentration


  • CS background:  15-122
  • Math background: 15-151, 21-127, or 21-128
  • Probability & statistics:
    • Option 1: (36-217, 36-218, 36-219, 36-225, 15-259, or 21-325) plus (36-226 or 36-326)
    • Option 2: 36-218 with at least a B
    • Option 3: 15-259 plus 15-260

Double Counting Restrictions:

At least 3 courses (each being at least 9 units) must be used for only the Machine Learning Concentration, not for any other major, minor, or concentration. (These double counting restrictions apply specifically to the Core Courses and the Electives. Prerequisites may be counted towards other majors, minors, and concentrations and do not count towards the 3 courses that must be used for only the Machine Learning Concentration.)


Core - 2 Courses:

Students must take two core courses, each being at least 9 units:

  • 10-315 Introduction to Machine Learning
  • Plus one of:
    • 10-403 Deep Reinforcement Learning & Control
    • 10-405 Machine Learning with Large Datasets
    • 10-417 Intermediate Deep Learning
    • 10-418 Machine Learning for Structured Data

Electives - 3 Courses:

Students need to take three courses from the following list, each being at least 9 units. Students may substitute one of these courses with one semester of an SCS Senior Honors Thesis or equivalent senior research credit.

  • 10-403 Deep Reinforcement Learning & Control
  • 10-405 Machine Learning with Large Datasets or 10-745 Scalability in Machine Learning
  • 10-417 Intermediate Deep Learning or 11-485 Introduction to Deep Learning or 10-707 Topics in Deep Learning
  • 10-418 Machine Learning for Structured Data or 10-708 Probabilistic Graphical Models
  • 10-716 Advanced Machine Learning: Theory and Methods
  • 10-725 Convex Optimization
  • 36-401 Modern Regression

Important Notes:

  • To avoid excessive overlap in covered material, at most one of the core Deep Learning courses may be used to fulfill concentration course requirements: 10-417, 10-617, 11-485, 10-707. In general, students are discouraged from taking more than one of these.
  • 15-281 Artificial Intelligence covers several topics (i.e. reinforcement learning and Bayesian networks) that are complementary to 10-315. While not part of the ML Concentration curriculum, this course is also one to consider.
  • Students should note that some of these elective courses (those at the 600-level and higher) are primarily aimed at graduate students, and so should make sure that they are adequately prepared for them before enrolling. Graduate-level cross-listings of these courses can also be used for the ML Concentration, if the student is adequately prepared for the more advanced version and the home department approves the student's registration.
  • Please be aware that not all graduate-level courses in the Machine Learning Department may be used as electives. In particular, 10-606/10-607 Computational Foundations for Machine Learning may not be used as electives for the Machine Learning Concentration.

SCS Senior Honors Thesis

The SCS Senior Honors Thesis consists of 36 units of academic credit for this work. Up to 12 units may be counted towards the ML Concentration. Students must consult with the Computer Science Department for information about the SCS Senior Honors Thesis. Once both student and advisor agree upon a project, the student should submit a one-page research proposal to the Machine Learning Concentration Director to confirm that the project will count for the Machine Learning Concentration.

Senior Research

Senior Research consists of 2 semesters of 10-500 Senior Research Project, totaling 24 units. Up to 12 units may be counted towards the ML Concentration.

The research must be a year-long senior project, supervised or co-supervised by a Machine Learning Core Faculty member. It is almost always conducted as two semester-long projects, and must be done in senior year. Some samples of available Machine Learning Senior Projects are available here. Interested students should contact the faculty they wish to advise them to discuss the research project, before the semester in which research will take place.

Once both student and advisor agree upon a project, the student should submit a one-page research proposal to the Machine Learning Concentration Director to confirm that the project will count for the Machine Learning Concentration. The student will present the work and submit a year-end write-up to the Concentration Director at the end of Senior year.



The ML Director of Undergraduate Studies is Professor Matt Gormley and the ML Undergraduate Studies Coordinator is Dorothy Holland-Minkley. They can both be reached at Please contact them about eligibility, curriculum, etc.

Dorothy Holland-Minkley holds office hours for prospective students during Spring and Fall. The Fall 2020 office hours are Thursdays from 2 - 3 PM on Zoom (Meeting ID: 957 7986 0085; Password: learning; CMU login required). The office hours aren't held when classes aren't in session (e.g., holidays and breaks).

Professor Matt Gormley holds pre-registration office hours and is also available anytime at .

How To Apply

The Machine Learning Concentration is only open to students in SCS Majors. Students can apply beginning in Sophomore year, after they have completed the pre-requisites, and are encouraged to apply at least one semester before graduating.

Complete the Machine Learning Concentration Application Google form. It asks for your contact information, basic information about your academic history, a proposed schedule of the courses you're planning to take for the Machine Learning Concentration (which can be changed later), and a brief (150-250 word) Statement of Purpose describing your reasons for pursuing the ML Concentration. Admissions decisions are usually made within one month.

After submitting your application, you will receive a confirmation email with an "Edit Your Response" link. Save the email for your records. The link will allow you to make changes to your application if necessary.