There is no strict pre-requisite, but it would be helpful to take a class on introduction of machine learning. Checkout materials for some materials to get your started.
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 class participation and the final project.
The course project will be completed by groups of 1-3 students. We have potential candidate project ideas in the area of machine learning and system (link). 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:
For one-page proposal, The team is expected to write the following components:
Each team will submit a one-page proposal in PDF. 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, each team will come to an office hour to discuss your course project or alternatively send us a short update note. The intermediate updates won’t be graded. The goal is to help you resolve any issues you will face in your project and make sure the progress is on track.
Every team will present the final course project in class. Please submit your slides to the Gradescope until the deadline. For the format and rubric, please refer to the following.
Note that the deadline depends on the day (April 20th, 25th, or 27th) your team is assigned to. For example, if your team is assigned to April 20th, then the deadline is April 20th, 3pm EST.
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:
You are required to submit your codes and final report in the MLSys 2021 format (PDF) to the Gradescope. Again, please make sure you mark your partner as a collaborator on Gradescope and that all names are listed in the final report.
(Adapted from David Held’s 16-881 Spring 2021)
Starting from the third week, we will be reading and discussing two to three papers during each class. Every paper review deadline will be the time when our class for the corresponding paper discussion begins. For example, the deadline of the first paper review is Jan 31 3:00 pm EST. Your paper reviews should consist of at least the following three paragraphs:
[UPDATE] You do not need to write long paragraphs as long as you have the key points. Here is the example of good paper review that would get full score.
TensorFlow: The key idea in Tensorflow is the ability to use the computational graph as abstraction with state support. The optimizations can scale to multiple machines with automatic device placement.
JANUS: JANUS combines the symbolic and static execution. The system speculatively generates a graph with assertions(fast path). When an assertion fails, the system fallbacks to imperative executions.
Discussions: Weakness of Tensorflow, declarative(symbolic) form of the program makes it harder to debug. JANUS generates a fast path of symbolic programs via speculative execution. However, it would require a python interpreter to be available. We could possible use speculative execution techniques to speedup execution of JIT compilation of torchscript.
For each paper review, you will receive 0, 1, or 2 points for each paragraph (full score: 6 points), based on the following rubric:
(Adapted from David Held’s 16-881 Spring 2021)
You will present one paper in the paper discussion class once a semester. You should submit your presentation slides (in PDF) to the “Paper Presentation” assignment in the Gradescope until the time when our class for your paper presentation begins (e.g., Feb 9 10:40 am EST). Don’t be confused by the deadline shown in the Gradescope. We set the deadline of the Gradescope assignment to our last class to accept every presentation slide this semester. Late submission will deduct your presentation score. Here are the detailed rubrics for paper presentation. Further explanation is available in the slide of our first class.
Paper discussion post in Piazza after our class: Every presenter will be required to upload a summary of group and class discussion regarding your discussion questions after the discussion class. You can add them as followup discussions to our Piazza discussion post. TAs will create that post after collecting your discussion questions in class. You can check the example Piazza post from our first discussion class. Note that you are more encouraged to participate in discussion than scribing every single sentence of discussion. Just a few key sentences would suffice as in the example post. Our hope is that your summary will guide people other than presenters to join the further discussion in the Piazza if they want.
Each student has a total of 7 grace days that may be applied to the assignments EXCEPT FOR the final course project report and presentation in order to make sure grading is done by the school-wide deadline. No more than 3 grace days may be used on any single assignment.
Any assignment submitted more than 3 days past the deadline (or the date the student no longer has late day credit) will get zero credit.
Grace days will be subtracted from all students in the team. E.g. an assignment submitted 1 day late by a team of 2 people will result in both team members losing 1 grace day from their total allotment.
If you feel that we have made a mistake in grading your report, please request a regrade on Gradescope and we will consider your request.
Please note that regrading may cause your grade to go either up or down.
(Adapted from Pat Virtue’s 10-601 Fall 2020 Course Policies.)
We encourage you to discuss course content and assignments with your classmates. However, these discussions must be kept at a conceptual level only.
Violations of these policies will be reported as an academic integrity violation. Information about academic integrity at CMU may be found at this link. Please contact the instructor if you ever have any questions regarding academic integrity or these collaboration policies.
Some of the homework 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. You must solve the homework assignments completely on your own. We will be actively monitoring your compliance.
Collaboration with other students who are currently taking the class is allowed, but only under the conditions stated above.
You are encouraged to read books and other instructional materials, both online and offline, to help you understand the concepts and algorithms taught in class. These materials may contain example code or pseudo code, which may help you better understand an algorithm or an implementation detail.
However, when you implement your own solution to an assignment, you must put all materials aside, and write your code completely on your own, starting from scratch. Specifically, you may not use any code you found or came across.
If you find or come across code that implements any part of your assignment, you must disclose this fact in your collaboration statement.
Students are responsible for pro-actively protecting their work from copying and misuse by other students. If a student’s work is copied by another student, the original author is also considered to be at fault and in gross violation of the course policies. It does not matter whether the author allowed the work to be copied or was merely negligent in preventing it from being copied. When overlapping work is submitted by different students, both students will be punished.
To protect future students, do not post your solutions publicly, neither during the course nor afterwards.
All violations (even the first violation) of the academic integrity or collaboration policy will always be reported to the university authorities (your Department Head, Associate Dean, Dean of Student Affairs, etc.) as an official Academic Integrity Violation and will carry severe penalties.
The penalty for the first violation is a one-and-a-half letter grade reduction. For example, if your final letter grade for the course was to be an A-, it would become a C+.
The penalty for the second violation is failure in the course, and can even lead to dismissal from the university.
In general, we do not grant extensions on assignments. There are several exceptions:
Medical Emergencies: If you are sick and unable to complete an assignment or attend class, please go to University Health Services. For minor illnesses, we expect grace days or our late penalties to provide sufficient accommodation. For medical emergencies (e.g. prolonged hospitalization), students may request an extension afterwards and should include a note from University Health Services.
Family/Personal Emergencies: If you have a family emergency (e.g. death in the family) or a personal emergency (e.g. mental health crisis), please contact your academic adviser or Counseling and Psychological Services (CaPS). In addition to offering support, they will reach out to the instructors for all your courses on your behalf to request an extension.
University-Approved Absences: If you are attending an out-of-town university approved event (e.g. multi-day athletic/academic trip organized by the university), you may request an extension for the duration of the trip. You must provide confirmation of your attendance, usually from a faculty or staff organizer of the event.
For any of the above situations, you may request an extension by posting a private post in Piazza. Posting should be done 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.
We allow you take the course as Pass/Fail. Instructor permission is not required. You must complete all aspects of the course (all homeworks) if you take the course as Pass/Fail.
What grade is the cutoff for Pass will depend on your program. Be sure to check with your program / department as to whether you can count a Pass/Fail course towards your degree requirements, notify us that you want to take the course Pass/Fail, and notify us of the Pass threshold your department uses (i.e., does it correspond to a grade of A, B, C, or D?)
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, but not turning in homeworks to grade) is welcome and permitted without prior approval. We give priority to students who are officially registered for the course, so informal auditors may only take a seat in the classroom if there is one available 10 minutes after the start of class. Unofficial auditors will not be given access to course materials such as homework assignments and exams.
Students with timing conflicts (i.e., who have another class offered at the same time) will be permitted to take this course.
However, there may be occasional days when we need you to arrive in person during class time (e.g. for student presentations). We will let you know of any dates we require you to be available, as soon as we know them.
If you have a disability and have an accommodations letter from the Disability Resources office, please discuss your accommodation needs with Ganesh or one of the instructors as early in the semester as possible. We 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, we encourage you to contact them at access@andrew.cmu.edu.
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.
Please feel free to reuse any of these course materials that you find of use in your own courses.
We ask that you retain any copyright notices, and include a written notice indicating the source of any materials you use.