Introduction to Machine Learning (CSE 5/474) / Spring 2022
Updates
- New Assignment released: [Programming Assignment #3 - Manual Data Annotation]
Course Description
This course is an introductory course to the field of machine learning. It covers basic concepts, including mathematical underpinnings of standard models as well as the basic skills one needs to begin designing and using ethical machine learning approaches.
Syllabus
This document is subject to slight to moderate changes based on feedback from the class.
Please read this document! Or at least use it as a reference. I have tried to make it concise, informative, and clear, but please let me know with your questions so that I can improve it.
tldr;
- Be nice - to yourself, to your TAs, to your fellow classmates, and ideally to me as well
- Be aware of campus and course resources that exist to help you succeed
- Late submissions don’t count (BUT! the grading policy is built to have considerable flexibility for unexpected life events)
- Don’t Cheat. This is about learning, not grades. If you learn, I have tried my best to make sure your grade will reflect that.
Times and Locations, Physical and Virtual
Class
Tuesdays and Thursdays, 5:00-6:20PM, in NSC 201
Office Hours
Who? | When? | Where? |
---|---|---|
Kenny | On Piazza | Virtually, on Zoom (For the beginning of the semester, at least) |
Navid | Tuesday, Thursday, 11:00AM-12:30PM | Virtually, on Zoom (For the beginning of the semester, at least) |
Yincheng | Wednesday, 10:00AM-12:30PM | Virtually, on Zoom (For the beginning of the semester, at least). Link On UBLearns |
Exams
- Mid-term Exam: In class, March 17th
- Final Exam: Tuesday, May 17th. 7:15PM, in NSC 201
No makeup exams will be given except in provably extreme circumstances. Please note the following additional policies/suggestions with respect to makeup exams:
- Notify the instructor 24 hours prior to the exam via e-mail if you are going to miss an exam. If it is medically impossible for you to give prior notice, please obtain a note from a physician detailing the period (and the reason) you were medically incapable of communicating with the instructor.
- If you miss an examination because of sickness or similar reasons, visit a physician and obtain a note detailing the period and the reason you were medically incapable of taking the exam.
- Please plan your travel and other activities accordingly.
- Exam times are stressful and one could forget about the exam time. Please make sure you arrange for multiple reminders so that you do not forget about the exam(s). This is another reason to religiously follow Piazza as there will be numerous reminders about the exam when it gets close to the actual exam date.
Piazza
We will be using Piazza for all CSE 574/474 related announcements. If you are attending the course, you must check Piazza regularly. I would strongly urge you to enable email notifications on Piazza (it is on by default). These announcements will include the ones that inform if and when classes/office hours are re-scheduled etc.
There will be an entry for each homework. Sometimes, the entries may include side comments or stories that I feel are relevant to the course (but are not directly related to the lectures).
Rather than emailing questions to the teaching staff, I encourage you to post your questions on Piazza. If you have any problems or feedback for the developers, email team@piazza.com.
Find our class signup link here.
You will need to sign up for Piazza. To do so, go to the sign up page.
Some notes on Piazza use:
- You can post anonymously but note that you will be anonymous to students only. Your identity will be known to me and the TAs.
- Please do NOT use nicknames in your account. As said above, we already know your identity and we want everyone to see the poster’s name in their public posts.
- Please make sure that you use your UB email to sign up– this is to make sure that I can verify your identity if necessary.
- You can write posts that are private to just the instructors but if we feel that the answer would be relevant to the class then we reserve the right to make the post public. (If you would like not to have your name in the public version of your private post, please mention this in your post. Note by the first point, we will still know your identity.)
Other
- UBLearns will be used to manage assignment submissions and grades.
- Class Github - link forthcoming
- Schedule
Prerequisites
For 474, CSE 250 and (EAS 305 or MTH 411 or STA 301 or MTH 309).
In general, this course will require knowledge of 1) python programming, 2) probability and statistics, and 3) linear algebra (a la the prerequisites). I will review major point from each of them in the first two weeks of class. However, please head over to Materials if you feel like you will want/need more practice.
Grading
Components
- Weekly quizzes using UBLearns (12, 1.5% each) – 15%; most quizzes will be multiple choice. Quizzes are released on Tuesday at 12:00am and due on Monday at 11:59PM the following week. Weekly Quiz 0 is a separate quiz, worth 1% of your grade.
- Programming Assignments (4, 10% each) – 40%; all assignments will be assigned and submitted as jupyter notebooks.
- Annotation Assignment (1) - 10%; manual annotation of data and an assessment of those manual annotations.
- Mid-term Exam (open book/notes) – 15%
- Final Exam (open book/notes) – 19%
- Programming assignment grades are subject to a 75% multiplier based on an end-of-the-semester peer review process. Thus, if for example, your group scores 100% on all assignments, but your teammates rate you as doing 0% of the work, you will receive 10 out of the 40 points.s
Scores (Tentative)
Grade | Score | Grade | Score |
---|---|---|---|
A | [92.5,100] | A- | [87.5,92.5) |
B+ | [82.5,87.5) | B | [77.5,82.5) |
B- | [72.5,77.5) | C+ | [67.5,72.5) |
C | [62.5,67.5) | C- | [57.5,62.5) |
I reserve the right to change the cutoffs depending on overall class performance (and the cutoff changes could be different for the two sections. However, I will only move the cutoffs down. In other words, in case you are in a certain percentage range in the last column in the table above, then the letter grade in the corresponding first column is the minimum letter grade you will receive.
Incompletes
Incompletes (the grade of “I”) will not in general be given. This is reserved for the rare circumstance that prevents a student from completing the work in the course. University and Department policy dictates that an “I” can be given only if both of the following conditions are met: (i) only a small amount of work remains, such as the final exam and one or two assignments, and (ii) the student has a passing average in the work completed. In such a circumstance, the student will be given instructions and a deadline for completing the work, which is usually no more than 30 days past the end of the semester. Please see the UB catalog link for more.
Late Work Policy
- For UBLearns quizzes, you are allowed to miss any two quizzes without penalty.
- You are allowed 5 total late days across all programming assignments (including the annotation assignment), without penalty. After those five late days, you will be penalized 25% for each day that your submission is late.
574 vs 474
Students in 574 will have additional questions on their programming assignments. These will usually target a deeper understanding of the mathematical concepts underpinning the assignments. Students in 474 will be able to answer these questions for a small amount of extra credit.
Critical Campus Resources
Sexual Violence
UB is committed to providing a safe learning environment free of all forms of discrimination and sexual harassment, including sexual assault, domestic and dating violence and stalking. If you have experienced gender-based violence (intimate partner violence, attempted or completed sexual assault, harassment, coercion, stalking, etc.), UB has resources to help. This includes academic accommodations, health and counseling services, housing accommodations, helping with legal protective orders, and assistance with reporting the incident to police or other UB officials if you so choose. Please contact UB’s Title IX Coordinator at 716-645-2266 for more information. For confidential assistance, you may also contact a Crisis Services Campus Advocate at 716-796-4399.
Mental Health
As a student you may experience a range of issues that can cause barriers to learning or reduce your ability to participate in daily activities. These might include strained relationships, anxiety, high levels of stress, alcohol/drug problems, feeling down, health concerns, or unwanted sexual experiences. Counseling, Health Services, and Health Promotion are here to help with these or other issues you may experience. You can learn more about these programs and services by contacting:
Counseling Services
120 Richmond Quad (North Campus), 716-645-2720 202 Michael Hall (South Campus), 716-829-5800
Health Services
Michael Hall (South Campus), 716-829-3316
Health Promotion
114 Student Union (North Campus), 716-645-2837
Names
Preferred names
If you would like to be addressed by a name that is different from the one in UB records, please let me know and we will use your preferred name in our communications with you. Further, you will be able to use your preferred name in all of your submissions.
Mispronouncing your name
I will try to pronounce your name as it should be pronounced. If I try to pronounce your name, and do so incorrectly, please tell me, and I will try to do better. My policy is also to give out candy for failures of pronounciation for extra incentives to correct me.
Diversity
The UB School of Engineering and Applied Sciences considers the diversity of its students, faculty, and staff to be a strength, critical to our success. We are committed to providing a safe space and a culture of mutual respect and inclusiveness for all. We believe a community of faculty, students, and staff who bring diverse life experiences and perspectives leads to a superior working environment, and we welcome differences in race, ethnicity, gender, age, religion, language, intellectual and physical ability, sexual orientation, gender identity, socioeconomic status, and veteran status.
Accessibility Services and Special Needs
If you have a disability and may require some type of instructional and/or examination accommodation, please inform me early in the semester so that we can coordinate the accommodations you may need. If you have not already done so, please contact the Office of Accessibility Services (formerly the Office of Disability Services):
University at Buffalo,
25 Capen Hall,
Buffalo, NY 14260-1632;
email: stu-accessibility@buffalo.edu
Phone: 716-645-2608 (voice);
716-645-2616 (TTY);
Fax: 716-645-3116
All information and documentation is confidential. The University at Buffalo and the School of Engineering and Applied Sciences are committed to ensuring equal opportunity for persons with special needs to participate in and benefit from all of its programs, services and activities.
Academic Integrity
This course will operate with a zero-tolerance policy regarding cheating and other forms of academic dishonesty. Any act of academic dishonesty will subject the student to penalty, including the high probability of failure of the course (i.e., assignment of a grade of “F”). It is expected that you will behave in an honorable and respectful way as you learn and share ideas. Therefore, recycled papers, work submitted to other courses, and major assistance in preparation of assignments without identifying and acknowledging such assistance are not acceptable. All work for this course must be original for this course. Additionally, you are not allowed to post course homeworks, exams, solutions, etc., on a public forum. Please be familiar with the University and the School policies regarding plagiarism. Read the Academic Integrity Policy and Procedure for more information: http://undergrad-catalog.buffalo.edu/policies/course/integrity.shtml. Visit the Senior Vice Provost for Academic Affairs web page for the latest information at http://vpue.buffalo.edu/policies/
Machine Learning Honor Code
It is against the ML honor code to:
- Collaborate on UBLearns quizzes
- Collaborate or cheat during exams
- Submit someone else’s work, including from the Internet, as one’s own for any submission