| layout | page |
|---|---|
| title | Logistics |
| description |
- (The list will be replaced with the table of contents.) {:toc}
The course is targeting the advanced undergraduate and masters level students (i.e., 4xx/6xx level). Prerequisites include courses in
- systems programming (15-213);
- linear algebra (21-240 or 21-241);
- and basic mathematical background (21-127 or 15-151).
Students are required to be familiar with both Python and C/C++ programming, machine learning or AI.
Piazza is intended for all announcements, general questions about the course, clarifications about assignments, student questions to each other, discussions about material, and so on. We strongly encourage all students to participate in discussion, ask, and answer questions in class as well as through Piazza!
Grades will be based on the following parts:
- Class Participation: 10%
- Assignments: 45%
- Each of three assignments: 15%
- Course Project: 45%
- Proposal: 5%
- Poster presentation: 20%
- Project report: 20%
You will submit all your work to Autolab.
The course project will be completed by group of one to three students. We have provided potential candidate project ideas in the area of machine learning and system. If you are interested in what has been done in previous classes, this link includes the final reports of several MLSys projects, which can be used as a reference to define the scope of yours. Still, you are also more than welcome to bring your own ideas that are related to your research. The Course project will have the following three components:
- One-page proposal (5%)
- Intrermediate check-in (no grading)
- Final course project poster presentation (15%)
- Final course project report (25%)
For one-page proposal, The team is expected to write the following components:
- Title / Team members (name and andrew ID)
- Introduction: What is the key high-level motivation behind your project?
- Problem: What research questions is your project trying to answer? Clearly define the problem you are trying to solve. Include a precise description/background about the problem.
- Status quo: You should research work related to your own. What problem did they solve and how does it relate to yours? How can you improve on what has already been done?
- High-level implementation plans: What datasets do you plan to use? How do you plan to implement and evaluate your ideas?
You can submit one-page proposal in any format (PDF) to the Autolab. Note that we understand that any component of the initial proposal can change dramatically over the course of your project. This proposal is to make sure everyone has a concrete idea of what to work on.
As an intermediate check-in of course project, we require you to come to the OH of the assigned TA to discuss your course project with them or send them a short update note through an email until April 18 23:59 EST; note that this replaces a lightning talk we originally described on the website to reduce your burden. Note that we won’t grade this. The goal is to make sure your project is in the right direction and help you resolve any issues in your project.
We require every team to present the final course project. Please submit your poster to Autolab until the deadline. Your presentation should include the following aspects: introduction and overview of your project, problem statement, related work. method, and evaluation.
For your final project report, the team is expected to write a final report (up to 8 pages without references) that generally follows the format of publication in the MLSys conference with following components:
- Title / Team members (name and andrew ID)
- Introduction: Highlight your motivation and contribution; how important is your problem? Why is your work important in this field? What are your main contributions?
- Problem: What research questions are your project trying to answer? Clearly define the problem you are trying to solve. Include a precise description/background about the problem.
- Related work: Organize previous work related to your own; what problem do they solve and how do they relate to yours? How did you improve on what has already been done?
- Overview: Present a system (or architecture) overview of your system using a single figure. Your system can be just one or a few system components rather than an end-to-end stack. Still, you should clearly show what you have done for this course project.
- Method (or system): Provide a detailed description of your own method or system. It is also fine not to have your own ideas as long as you provide meaningful insights to this field (e.g., exploring the communication/computation tradeoff by evaluating various federated learning algorithms). In addition, describe how you implemented your work. Specifically, which language and library did you use? Clearly distinguish between what you implemented and what you adopted.
- Evaluation: How did you evaluate your system? What are experimental settings (e.g., hardware)? If any, what datasets did you use? What are evaluation metrics and hyperparameters?
- Conclusion: Summarize your work in a single paragraph
You are required to submit your codes and final report in the MLSys 2025 format (PDF) to the Autolab. Again, please make sure you mark your partner as a collaborator on Autolab and that all names are listed in the final report.
You will have 5 late days in total to use throughout the course. At most two can be used on any single assignment. You can get partial credit on most homeworks. Late days can only be used on the homeworks, and not on the final project proposal or final report.
If any situation comes up that you feel requires an additional extension, please get in touch with the instructors right away. We can grant extensions for extenuating circumstances, but it's important to contact us early to let us know the situation, rather than waiting until right before the deadline.
All submitted content (code and prose for homeworks and final project) should be your own content, written yourself (or written by the group members, for projects)
However, you may (in fact are encouraged to) discuss the homework with others in the class and on the piazza
- Use best judgement, discuss as you see fit, but don’t simply share answers
You may use code from generative AI tools (e.g., ChatGPT or Co-pilot), no need to cite or specify it was from these tools.
You are ultimately responsible for anything the tools generate, including any flaws this code may contain. Content generated by LLMs could be construed as plagiarism or scientific misconduct (e.g., fabrication of facts).
For our own information, we might conduct an (optional) poll on the extent to which students find such tools valuable for this course.
Do your best to maintain a healthy lifestyle this semester by eating well, exercising, avoiding drugs and alcohol, getting enough sleep and taking some time to relax. This will help you achieve your goals and cope with stress. All of us benefit from support during times of struggle. You are not alone. There are many helpful resources available on campus and an important part of the college experience is learning how to ask for help. Asking for support sooner rather than later is often helpful.
If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, we strongly encourage you to seek support. Counseling and Psychological Services (CaPS) is here to help: call 412-268-2922 and visit their website at www.cmu.edu/counseling. Consider reaching out to a friend, faculty or family member you trust for help getting connected to the support that can help.