Undergraduate Minor 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 Minor in Machine Learning allows undergraduates to learn about the core principles of machine learning.
The Machine Learning Minor is open to undergraduate students in any major at Carnegie Mellon outside the School of Computer Science. (SCS students should instead consider the Machine Learning Concentration.) Students should apply for admission at least one semester before their expected graduation date, but are encouraged to apply as soon as they have taken the prerequisite classes for the minor. Grades from the core courses are also welcomed with the application. An admission decision will usually be made within one month.
Students who started their undergraduate degree at CMU in 2018 or earlier should refer to the pre-2019 curriculum.
Requirements for the Minor
- All courses for the ML Minor, including prerequisites, must be passed with a C or better.
- CS background: 15-122 Principles of Imperative Computation
- One year calculus: 21-120 and 21-122 or equivalent
- Probability & statistics:
- Option 1: (36-217, 36-218, 36-225, 15-259, or 21-325) plus (36-226 or 36-326)
- Option 2: 36-218 with at least a B
Double Counting Restrictions:
No course in the Machine Learning Minor may be counted towards another SCS minor. Additionally, at least 3 courses (each being at least 9 units) must be used for only the Machine Learning Minor, 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 Minor.)
Core Courses - 24 units:
The Machine Learning Minor has 2 core courses that provide a foundation in the field:
- 10-301 or 10-315 Introduction to Machine Learning
- One of the following four courses:
- 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 (each being at least 9 units) from the options below:
The Machine Learning Minor requires at least 3 electives of at least 9 units each in Machine Learning. Students may select one of the following options to satisfy the electives requirement:
- 3 Principal courses
- 2 Principal courses + 1 Interdisciplinary course
- 2 Principal courses + 1 semester of CS Senior Honors Thesis or Senior Research
- 1 Principal course + 2 semesters of CS Senior Honors Thesis or Senior Research
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 Minor, if the student is adequately prepared for the more advanced version and the home department approves the student's registration.
- 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
- Other courses as approved
Note: Courses must come from separate lines. For example, if 10-417 Intermediate Deep Learning is used for the ML Minor, 11-485 Introduction to Deep Learning cannot also be used for the ML Minor.
- 02-510 Computational Genomics
- 03-511 Computational Molecular Biology and Genomics
- 10-335 Art and Machine Learning
- 10-737 Creative AI
- 11-411 Natural Language Processing
- 11-441 Machine Learning for Text Mining
- 11-661 Language and Statistics
- 11-731 Machine Translation and Sequence-to-Sequence Models
- 11-751 Speech Recognition and Understanding
- 11-755 Machine Learning for Signal Processing
- 11-777 Multimodal Machine Learning
- 15-281 Artificial Intelligence: Representation and Problem Solving
- 15-386 Neural Computation
- 15-388 Practical Data Science
- 15-482 Autonomous Agents
- 16-311 Introduction to Robotics
- 16-385 Computer Vision
- 16-720 Computer Vision
- 16-745 Optimal Control and Reinforcement Learning
- 16-824 Visual Learning and Recognition
- 16-831 Statistical Techniques in Robotics
- 17-537 Artificial Intelligence Methods for Social Good
- 17-640 IoT, Big Data, and ML: A Hands-on Approach
- 36-315 Statistical Graphics and Visualization
- 36-402 Advanced Methods for Data Analysis
- 36-461 Special Topics: Statistical Methods in Epidemiology
- 36-462 Special Topics: Data Mining
- 36-463 Special Topics: Multilevel and Hierarchical Models
- 36-464 Special Topics: Applied Multivariate Methods
- 36-700 Probability and Mathematical Statistics or 36-705 Intermediate Statistics
- Other courses as approved
Note: Courses must come from separate lines. For example, if 36-700 Probability and Mathematical Statistics is used for the ML Minor, 36-705 Intermediate Statistics cannot also be used for the ML Minor.
CS Senior Honors Thesis
The CS Senior Honors Thesis consists of 36 units of academic credit for this work, usually under the course number 07-599 SCS Honors Undergraduate Research Thesis. Up to 24 units (12 units each semester) may be counted towards the ML Minor. Students must consult with the Computer Science Department for information about the CS 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 consists of 2 semesters of 10-500 Senior Research Project, totaling 24 units and counting as 2 electives.
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. Sample 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 Minor Director to confirm that the project will count for the Machine Learning Minor.
Your one-page research proposal should contain the following:
- A working title, your name, and your advisor's name
- The following 7 sections, using the section titles in bold below:
- Abstract (100 to 500 words)
- Motivation (why your research problem is important)
- Contributions (bulleted list of your research contributions)
- Related Work (brief mention of most relevant existing work)
- Expected Results (short description of likely outcomes)
- Timeline (detailed list of milestones over the next year)
- The signature of your research advisor, signifying endorsement of the project and willingness to supervise and evaluate it.
The student should expect to meet with the Minor Director during both Senior Fall and Spring to discuss the project, and will present the work and submit a year-end write-up to the Minor Director at the end of Senior year.
Students are encouraged to reach out to the Minor Director with questions at any time.
The ML Director of Undergraduate Studies is Professor Matt Gormley and the ML Minor Program Coordinator is Dorothy Holland-Minkley. They can both be reached at firstname.lastname@example.org. Please contact them about eligibility, curriculum, etc.
Dorothy Holland-Minkley holds office hours for prospective students. During Fall 2019, these are on Thursdays from 2 PM - 3 PM in her office, GHC 8008. During times of high demand, she may instead be in the conference room next door in GHC 8010.
How To Apply
Complete the Machine Learning Minor 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 Minor (which can be changed later), and a brief (150-250 word) Statement of Purpose describing your reasons for pursuing the ML Minor. 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.