Description
This course provides a broad introduction to machine learning and statistical pattern recognition. Topics include: supervised learning (linear regression, logistic regression, neural networks, support vector machines, decision tree, ensemble models, random forest); unsupervised learning (clustering, dimensionality reduction, kernel methods); The course will also introduce deep learning such as convolutional neural networks and discuss recent applications of machine learning in addition to advice on applying machine learning algorithms.
Objectives
Learn the basic concepts of machine learning theory and its applications. Learn open-source machine learning tools such as scikit-learn and TensorFlow.
Lab Assignments
There will be 7 lab assignments. Most of the assignments will require you to code various learning algorithms. Note: The adopted language for this course is python, we are not going to use other languages else in your class project if needed.
Course Project
The purpose of the class project is to learn hands-on experience of identification data problems and apply machine learning techniques to solve them. Students are asked to identify unique applications for machine learning and develop novel approaches; This is a team project consisting of TWO to THREE students (No permissions for less number of students). Refer to Project Module and ”Project Road Map” on the blackboard for the detailed plan on how to work on the project and how to submit reports. You need to submit project presentation videos, one for the project proposal and live one for the final project presentation.
Grading breakdown of the course project: Project topic and teammates selection (5%), Project Short Proposal Report (5%), Project Proposal Report (15%), Project Final Report (40%), Project Final Presentation (35%).
Late Lab Assignments: 5 TOTAL days of “slip-time” (for all lab assignments (No project reports extensions) to be used on lab assignments for unforeseen circumstances (e.g., get sick or deadline conflicts), After you have used your slip-time budget 10% per day for each late day. (Note: this includes Saturdays and Sundays, no slip time for projects related submissions.) You don’t have to let us know your slip days, we can calculate this automatically.
Exams: All exams will be timed, delivered in class and will be proctored remotely. Make-up exams will be given at the discretion of the instructor, and appropriate documentation of absence will be required for consideration of a make-up exam. It is strongly encouraged to obtain prier permission from the instructor. Additional instructions will be posted on Bb a week prior to the exam date.
ML in the era of LLMs: In this course, we will engage in hands-on exercises and discussions that demonstrate how to design and implement a machine learning project using recent large language model (LLM) tools. You will learn how to leverage these tools to generate code, test it, validate its functionality, and explore strategies for improving model performance. Through interactive use of LLM-based assistants, you will also gain experience in iteratively refining your workflow and problem-solving approach. For the final project, however, you are expected to work independently, without relying on LLM tools to generate or modify your work. Once your project is complete, you may include a reflection on how AI/LLM tools could have supported your project, what benefits they might provide, and how you addressed their potential role in your workflow.
Collaboration and Academic Integrity: You are encouraged to share your knowledge with other students, including ideas that might be relevant to assigned lab assignments. However, once you start writing your solutions or code, no further collaboration on that assignment is allowed. The paper and/or the code that you turn in should consist of your individual effort. Although true research into course topics is encouraged, the recommended text books and class notes are the only sanctioned sources of information for lab assignments and project. In particular, solution sets obtained via unsanctioned means– from friends, from online, or from taking the course previously– are not sanctioned and any discovered use of them will be considered a violation of academic integrity” Every phrase that is not your own should appear be-
tween quotation marks (or be typeset as an indented, single-spaced, quotation) with a footnote or end-note that indicates the source. refer to UVM’s Code of Academic Integrity posted at www.uvm.edu/policies/student/acadintegrity.pdf.
Course Topics
The following sequence of topics may be modified during the course of the semester, and will mostly be covered. The reference for each topic will be added before or during the covered topic.
| First half of semester | Second half of semester |
|---|---|
| Introduction to Machine Learning | Neural networks basics |
| Linear Regression | Backpropagation |
| Logistic Regression | Activation functions, regularization |
| Support vector machines | Data augmentation, dropout, GD updates. |
| Decision trees, ensemble methods, and random forest | Convolutional neural networks |
| Learning theory | Transfer learning |
| Unsupervised learning (clustering, dimensionality reduction, kernel methods) | Machine learning applications and advice |