CS 480/680 - Introduction to Machine Learning - Winter 2021
This course has a Piazza (for discussion) and a Microsoft Teams (for office hours). Please contact the instructor if you are not in both of these.
- Instructor: Gautam Kamath
- Piazza: Link here.
- Lecture: Recorded videos should be released twice a week, on LEARN and Youtube.
- Office Hours: Tuesdays and Friday, 2-3 PM Waterloo Time, or by email appointment.
- Hu, Theo (z97hu)
- Ivashkevich, Stan (sivashke)
- Sethi, Udhav (u2sethi)
- Turnbull, Augustus (a2turnbu)
- Zhang, Ruixue (r267zhan)
- Syllabus: here.
There will be two lectures posted each week, on Tuesday and Thursday.
There will also be one assignment posted (roughly) every other week, for a total of five.
There will be one final project at the end of the course.
All deliverables are due at 11:59 PM Waterloo time on the stated date.
||Logistics and Intro
There will be five assignments, roughly every other week.
- Assignment 1 (tex). Posted on January 14, due January 28. Coverage: Lectures 1 to 4. Relevant files are available in this zip. You might also find documentation for the Boston housing dataset relevant (here and here).
- Assignment 2: To be posted on January 28, due February 11 (tentative). Coverage: TBD.
- Assignment 3: To be posted on February 23, due March 9 (tentative). Coverage: TBD.
- Assignment 4: To be posted on March 9, due March 23 (tentative). Coverage: TBD.
- Assignment 5: To be posted on March 23, due April 6 (tentative). Coverage: TBD.
The project for this course will differ depending on whether you are in CS 480 or 680.
CS 480 students
There will be a Kaggle competition. Details forthcoming.
CS 680 students
You need to conduct a research project, which could be an attempt to beat the state-of-the-art performance on an interesting dataset, or an unexpected application of machine learning algorithms to a different field, or designing a novel algorithm to address a need in machine learning, or theoretically analyzing the performance of a machine learning algorithm (new or old).
A literature survey on a new hot topic in ML is also possible.
You may work in pairs for this project.
You project should
The project proposal will be due on February 23, and worth 5% of the final grade.
Please concisely describe what your project is about, some related works (no need to be thorough yet), what is your execution plan, what do you expect to learn/contribute, and how are you going to evaluate your results.
We expect the proposal to be 2 to 4 pages (excluding references).
We will assign a TA or instructor for your project. You are strongly suggested to remain contact with this TA or instructor throughout the term in order to make sufficient progress.
- relate to machine learning (obviously)
- allow you to learn something new and interesting
- be significant and publishable in a top machine learning conference
The project report will be due on April 19, and worth 15% of the final grade.
Please summarize all your findings (empirical, algorithmic, theoretical) in a scientific report.
We expect there is an introduction section, a background section, a main result section, and a conclusion section.
Depending on your project, you may include an experimental section and/or discussion section.
Please always give proper citations to prior work or results.
Be precise and concise. We expect the report to be at most 8 pages (excluding references).
Your project report will be evaluated on its clarity, significance, rigor, presentation, and completeness.
Books and References
Notes will be provided. Additionally, the following are excellent resources.
Grades for this course will be determined with the following breakdown:
- Assignments: 80%. There are five total assignments, your lowest score will be dropped.
- Project: 20%. Either a Kaggle competition (CS 480) or a research project (CS 680).
Here are some top conferences and journals in machine learning. They may be good places to look for project ideas.
I believe all of them should be open access. More generally, you should never have to pay to access an academic article, especially when you are affiliated with a university.
Contact me if you run into any issues accessing any academic article and I'll write up some directions.
Academic Integrity: In order to maintain a culture of academic integrity, members of the University of Waterloo community are expected to promote honesty, trust, fairness, respect and responsibility. Check the university website for more information.
Grievance: A student who believes that a decision affecting some aspect of his/her university life has been unfair or unreasonable may have grounds for initiating a grievance. Read Policy 70, Student Petitions and Grievances, Section 4. When in doubt please be certain to contact the department's administrative assistant who will provide further assistance.
Discipline: A student is expected to know what constitutes academic integrity to avoid committing an academic offence, and to take responsibility for his/her actions. A student who is unsure whether an action constitutes an offence, or who needs help in learning how to avoid offences (e.g., plagiarism, cheating) or about "rules" for group work/collaboration should seek guidance from the course instructor, academic advisor, or the undergraduate Associate Dean. For information on categories of offences and types of penalties, students should refer to Policy 71, Student Discipline. For typical penalties check Guidelines for the Assessment of Penalties.
Appeals: A decision made or penalty imposed under Policy 70 (Student Petitions and Grievances) (other than a petition) or Policy 71 (Student Discipline) may be appealed if there is a ground. A student who believes he/she has a ground for an appeal should refer to Policy 72 (Student Appeals).
Note for Students with Disabilities: The Office for Persons with Disabilities (OPD), located in Needles Hall, Room 1132, collaborates with all academic departments to arrange appropriate accommodations for students with disabilities without compromising the academic integrity of the curriculum. If you require academic accommodations to lessen the impact of your disability, please register with the OPD at the beginning of each academic term.
Mental Health: 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.
- Campus Wellness https://uwaterloo.ca/campus-wellness
- Counselling Services: firstname.lastname@example.org 519-888-4567 ext 32655 Needles Hall North 2nd floor, (NH 2401)
- MATES: one-to-one peer support program offered by Federation of Students (FEDS) and Counselling Services: email@example.com
- Health Services service: located across the creek from Student Life Centre, 519-888-4096
Diversity: It is our intent that students from all diverse backgrounds and perspectives be well served by this course, and that students' learning needs be addressed both in and out of class. We recognize the immense value of the diversity in identities, perspectives, and contributions that students bring, and the benefit it has on our educational environment. Your suggestions are encouraged and appreciated. Please let us know ways to improve the effectiveness of the course for you personally or for other students or student groups. In particular:
- Good2Talk (24/7): Free confidential help line for post-secondary students. Phone: 1-866-925-5454
- Here 24/7: Mental Health and Crisis Service Team. Phone: 1-844-437-3247
- OK2BME: set of support services for lesbian, gay, bisexual, transgender or questioning teens in Waterloo. Phone: 519-884-0000 extension 213
- We will gladly honour your request to address you by an alternate/preferred name or gender pronoun. Please advise us of this preference early in the semester so we may make appropriate changes to our records.
- We will honour your religious holidays and celebrations. Please inform of us these at the start of the course.
- We will follow AccessAbility Services guidelines and protocols on how to best support students with different learning needs.
This course relies instrumentally upon content created by Yaoliang Yu.