10-718 ML in Practice: Spring 2026

Overview

This is a project- and discuss-based course designed to provide students training and experience in solving real-world problems using machine learning, exploring the interface between research and practice. The goal of this course is to give students exposure to the nuance of applying machine learning to the real-world, where common assumptions (like iid and stationarity) break down. Students will learn how to formulate real-world business or policy scenarios as machine learning problems, how to address common challenges which arise in applying ML to such problems (e.g., distribution shift or missingness), how to rigorously evaluate the results of such interventions in practice; and how to present such empirical results orally and in writing. We will place an emphasis throughout on issues related to ethics and fairness in machine learning, and discuss how choices throughout the machine learning pipeline – including problem formulation, outcome definition, data collection, and model training – contribute to the social impact of algorithmic systems.

After completing the course, students should be able to design and evaluate novel combinations of learning algorithms; take real-world questions involving data and evaluate and/or develop appropriate methods to answer these questions; and present technical material clearly, in spoken and written form.

Prerequisites

Students entering the class are expected to have a pre-existing working knowledge of common machine learning methods, as well as implementation in Python. We will focus on how to choose between different machine learning techniques, modify them to address common real-world challenges, and evaluate their performance. We will assume that students are already familiar with the models themselves (e.g., linear regression, decisions trees, ensembles, neural networks), as well as how to train such models in Python.

The core content of this course does not exactly follow any one textbook. We will have required and suggested readings associated with each lecture, which can be found on the course website. Two general references that may be helpful are:

Course Components

The requirements of this course consist of two components: participating in in-class discussions, presentating material for class, and completing the course project.

Class discussions

This course emphasizes the process of thinking through real-world problems and how and when they can be addressed using machine learning. Accordingly, our class sessions will rely on student participation to discuss potential scenarios and case studies together. You are highly encouraged to engage actively during class discussions, which will make the course much more exciting for everyone. During such discussions, we expect you to be respectful at all times towards your fellow students. Discussions will loosely follow the role-playing seminar format; for each paper, you will either be assigned a presenter role or complete the non-presenter assignment (described below).

Presenter assignment

You will periodically present a paper in class, taking on one of the following presenter roles.

Non-presenter assignment

If you are not presenting the paper, you must still read the paper and provide at least one discussion question about the paper (e.g., something you're uncertain about or would like to hear discussed).

Course project

Students will complete a semester-long course project that explores the application of machine learning to a problem of practical interest. Students may work in groups of two or three people. Each group will select a dataset, which _cannot_ be one commonly used in machine learning research. Over a series of assignments, each group will define a problem to be addressed using the dataset, clean and explore the data, develop baselines and machine learning models, and explore the impact of additional desiderata on their pipeline (e.g., fairness, privacy, interpretability, or model efficiency). Students can either select their own dataset for the project (which cannot be a commonly used ML benchmark dataset) or select one from the set of examples provided.

Grading

Each component will contribute towards the final grade as follows:

Discussion participation

Discussion and participation is 40%, graded out of 30 points.

Course project

The project is 60%, graded out of 100 points

Other policies

Regrade requests

If you believe an error was made during grading, please open a regrade request in Gradescope. For each assignment, regrade requests will be open for only 2 weeks after the grades have been published. This is to encourage you to check the feedback you’ve received early!

Late homeworks

You have 4 total grace days that can be used to submit late homework assignments without penalty. We will automatically keep a tally of these grace days for you; they will be applied greedily. You may not use more than 2 grace days on any single homework assignment. Additionally, please note: No late days can be applied to the discussion assignments (presenter or non-presenter). If you sign up for a presenter role and find that you will miss class, you must either (a) find someone to swap presentation slots with or (b) create the presentation and find another student to present it for you.

Extensions

In general, we do not grant extensions on assignments. There are several exceptions: For any of the above situations, you may request an extension by emailing your instructor. The email should be sent as soon as you are aware of the conflict and at least 5 days prior to the deadline. In the case of an emergency, no notice is needed.

Audit Policy

Official auditing of the course (i.e. taking the course for an “Audit” grade) is not permitted this semester.

Unofficial auditing of the course (i.e. watching the lectures online or attending them in person) is welcome and permitted without prior approval. Unofficial auditors will not be given access to course materials such as homework assignments and exams.

Pass/Fail Policy

Pass/Fail is not allowed in this class.

Accommodations for Students with Disabilities

If you have a disability and have an accommodations letter from the Disability Resources office, I encourage you to discuss your accommodations and needs with the instructor as early in the semester as possible. I will work with you to ensure that accommodations are provided as appropriate. If you suspect that you may have a disability and would benefit from accommodations but are not yet registered with the Office of Disability Resources, I encourage you to contact them at access@andrew.cmu.edu.

Academic Integrity Policies

Read this Carefully

Collaboration among Students

Previously used assignments

Some of the assignments used in this class may have been used in prior versions of this class, or in classes at other institutions, or elsewhere. Solutions to them may be, or may have been, available online, or from other people or sources. It is explicitly forbidden to use any such sources, or to consult people who have solved these problems before. It is explicitly forbidden to search for these problems or their solutions on the internet. Only collaboration with other students who are currently taking the class is allowed, and only under the conditions stated above.