Course Syllabus
Syllabus
CS 3960 Introduction to Practical Machine Learning
| Instructor: | Kenneth Marino | Credit Hours: | 3.0 | |
| Department: | Kahlert School of Computing | Semester: | Fall 2025 | |
| Office: | MEB 2178 | Type: | In Person | |
| Days / Times: | MoWe / 03:00PM - 04:20PM | Location: | WEB L103 | |
| Pre-requisites: |
CS 2420 AND CS 2100 OR MATH 2200 AND MATH 2270 |
|||
| Communication & Office Hours | Review the "Communication" section below for more information. | |||
Course Description
Overview
| Course | CS 3960 Introduction to Practical Machine Learning |
| Department | Kahlert School of Computing |
| Pre-Requisites | CS 2420 AND CS 2100 OR MATH 2200 AND MATH 2270 |
| Credit Hours | 3.0 |
| Semester | Fall 2025 |
| Days / Times | MoWe / 03:00PM - 04:20PM |
| Location: | WEB L103 |
| Description |
This course is designed to provide a groundwork for both machine learning and deep learning early on in undergraduate studies. Each lecture covers fundamental topics in Machine Learning interleaved with their practical application using Python and machine learning libraries such as PyTorch to implement and experiment with the discussed concepts. Topics include training paradigms, loss functions, optimization, evaluation, hyperparameter tuning, generalization, simple neural networks, CNNs and Transformers, backpropagation, featurization, and more. The course will also cover topics in probability and linear algebra which are fundamental to understanding machine learning basics. By the end of the course, students will be prepared to take more advanced courses to deepen their theoretical and applied knowledge of machine learning and deep learning. |
Goals & Objectives
This course covers the principles and practices of machine learning algorithms, including the basics, mathematical definitions, and implementation with Python. It begins with an introduction to the foundations of machine learning algorithms, such as linear regression, logistic regression, and perceptron. Later sections focus on modern machine learning algorithms, particularly deep learning models such as CNNs, RNNs, and Transformers. Hands-on coding assignments using popular ML libraries like PyTorch are included to provide students with practical experience. Additionally, the course aims to inspire exploration of advanced algorithms in the field by introducing recent generative models. By the end of the course, students will be equipped to mathematically analyze ML algorithms and implement them using Python.
At the end of this course, students will be able to:
- Apply basic machine learning concepts, including various training paradigms, loss functions, optimization techniques, and hyperparameter tuning.
- Utilize fundamental deep learning concepts, such as backpropagation, dropout, and feed-forward neural networks.
- Understand documentation for a deep learning framework such as PyTorch and use it to implement simple deep learning models, such as feed-forward neural networks.
- Build a neural classifier from scratch, as well as its training and evaluation, for a given classification or regression problem using Python and PyTorch.
Materials
There is no official textbook for the class. Slides will be provided and reading materials for each topic will be assigned from the following references:
Recommended Texts
- Machine Learning: A Probabilistic Perspective, Kevin P Murphy, MIT Press (2012)
- Deep Learning, Ian Goodfellow, Yoshua Bengio, and Aaron Courville, MIT press (2016)
Communication
Instructor
Kenneth Marino
Office: MEB 2178
Email: kenneth.marino@utah.edu
Office Hours: M 4:30PM-5:30PM
TA
Shih-Chieh Dao
Office: MEB 3145
Email: shihchieh.dai@utah.edu
Office Hours: W 1:00PM-3:00PM
Preferred Contact Methods
For questions about homework, post first on piazza (or see if your question has been asked already) and/or come to office hours.
For questions about grades on homework/quizzes/exams, please TAs during office hours.
Evaluation
Your performance in this course will be evaluated by:
- 10% Quizzes
- 40% Homework Assignments
- 25% Midterm Exam
- 25% Final Exam
Schedule
| Week | Date | Topic | Homework |
|
1
|
Mon, Aug 18 | Course Overview, Logistics, and Introduction | Assign HW 1 |
| Wed, Aug 20 |
Supervised Learning
|
||
|
2
|
Mon, Aug 25 |
Basics of Python, Numpy, and Colab
|
|
| Wed, Aug 27 | K-Nearest Neighbors (kNN) | HW1 Due Aug 29 | |
|
3
|
Mon, Sept 1 | Labor Day (No Class) | Assign HW 2 |
| Wed, Sept 3 |
Linear Regression/Optimization
|
||
|
4
|
Mon, Sept 8 | Optimization/Regularization | |
| Wed, Sept 10 | PyTorch | HW2 Due Sept 12 | |
|
5
|
Mon, Sept 15 | Logistic Regression | Assign HW 3 |
| Wed, Sept 17 |
Logistic Regression (Cont.)
|
||
|
6
|
Mon, Sept 22 | Perceptron | |
| Wed, Sept 24 | Neural Networks | HW 3 Due Sept 26 | |
|
7
|
Mon, Sept 29 | Backpropagation | Assign HW 4 |
| Wed, Oct 1 |
Training Neural Networks
|
||
|
8
|
Mon, Oct 6 |
Fall Break (No Class)
|
|
| Wed, Oct 8 | |||
|
9
|
Mon, Oct 13 |
Training Neural Networks (Cont.)
|
|
| Wed, Oct 15 | Midterm Review | HW 4 Due Oct 17 | |
|
10
|
Mon, Oct 20 | Midterm Exam (In Class) | HW 5 Assigned |
| Wed, Oct 22 |
Convolutional Neural Networks (CNNs)
|
||
|
11
|
Mon, Oct 27 |
CNN Architectures
|
|
| Wed, Oct 29 | Recurrent Neural Networks (RNNs) | HW 5 Due Oct 31 | |
|
12
|
Mon, Nov 3 | Long Short-Term Memory (LSTM) | HW 6 Assigned |
| Wed, Nov 5 |
Word Embeddings
|
||
|
13
|
Mon, Nov 10 |
Attention-based Transformers
|
|
| Wed, Nov 12 | Attention-based Transformers (Cont.) | HW 6 Due Nov 14 | |
|
14
|
Mon, Nov 17 | Auto-regressive Models | HW 7 Assigned |
| Wed, Nov 19 | Self-Supervised Learning | ||
|
15
|
Mon, Nov 24 | Datasets | |
| Wed, Nov 26 | NO CLASS | ||
|
16
|
Mon, Dec 1 | AI Ethics | HW 7 Due Dec 1 |
| Wed, Dec 3 | Final Review | ||
|
FINAL
|
Fri, Dec 12 | Final: 3:30-5:30 |
Course Policies
Submitting Assignments
Formating
Each homework write-up must be neatly typeset as a PDF document. You can use LaTeX or any other system that produces typesetting of equal quality and legibility (especially for mathematical symbols and expressions). Please write your solutions as succinctly as possible while including all the necessary details. Ensure that the following appear at the top of the first page of the write-up: your name, your UID, and the ID’s of any students with whom you discussed the assignment. Submit your write-up as a single PDF file and corresponding code implementations (if any) on Canvas by 11:59 PM of the due date. It is your responsibility to ensure that the submission is successfully received by Canvas.
All assignments, unless otherwise announced, must be submitted to the designated area of
Canvas. Do not submit assignments via email.
Due Date Time
Assignments will be accepted up until 11:59 PM on the due date. The score for late homework is 0. Exceptions will be made in case of serious illness or bereavement. If a student has a planned absence from a class when an exam will be given, the student should make arrangements before the planned absence to take the exam early or take a makeup exam after returning to campus.
Grade Disputes
Feedback on graded material will be posted on Canvas in as timely a manner as possible. Once feedback for a graded assignment is posted, you will have 1 week from the posting date to dispute a grade. No re-grade requests will be honored after 1 week from posting feedback. Grade changes will not be made at the end of the semester.
Collaboration Policy
You are encouraged to discuss course materials and reading assignments, and homework assignments with each other in small groups (two to three people). You must list all discussants in your homework write-up. Discussion about homework assignments may include brainstorming and verbally discussing possible solution approaches, but must not go as far as one person telling others how to solve a problem. In addition, you must write-up your solutions by yourself, and you may not look at another student’s homework write-up/solutions (whether partial or complete).
AI Policy
AI use is allowed and encouraged as a study tool: generating practice problems, asking to explain concepts. However, it is not allowed to be used to complete homework assignments. Any use of AI to generate homework solutions will results in a 0 for the assignment.
Late Assignments
There is a total of 6 days of grace period available for late submissions across all assignments. You may use this grace period for any assignment. However, please note that the grace period is cumulative. Once the 6-day grace period has been fully used, any further late submissions will receive a score of 0, in accordance with the assignment policy.
Grading
Grades will be determined based on correctness and relevance to the assignments and questions. Pay close attention to the instructions and rubrics provided for each assignment/task.
Extra credit opportunities may be available throughout the course. These will be clearly communicated and typically involve additional research, attending relevant events, or completing supplementary assignments. Extra credit can contribute up to 5% additional points to the final grade.
Grading scale
| Letter | Scoring |
|---|---|
| A | 100% - 93% |
| A- | 92.9% - 90% |
| B+ | 89.9% - 87% |
| B | 86.9% - 83% |
| B- | 82.9% - 80% |
| C+ | 79.9% - 77% |
| C | 76.9% - 73% |
| C- | 72.9% - 70% |
| D | 69.9% - 60% |
| E | 59.9% - 0% |
Accommodations
Disclaimer
Accommodations will be considered on an individual basis and may require documentation.
Please contact your instructor as soon as possible (preferably shortly before the semester begins) to request accommodations of any kind.
Content Warnings
Please be aware that some materials and discussions within this course may contain challenging content. Your instructor may choose to notify students of potentially difficult content (e.g. explicit language, graphic images, violent themes, etc.) throughout the course.
If there are specific subjects that you need advanced notice for, please contact your instructor at the beginning of the semester.
Extreme personal circumstances
Please contact your instructor as soon as possible if an extreme personal circumstance
(hospitalization, death of a close relative, natural disaster, etc.) is interfering with your ability to
complete your work.
Religious Practice
To request an accommodation for religious practices, contact your instructor at the beginning of the semester.
Active Duty Military
If you are a student on active duty with the military and experience issues that prevent you from participating in the course because of deployment or service responsibilities, contact your instructor as soon as possible to discuss appropriate accommodations.
Disability Access
All written information in this course can be made available in an alternative format with prior notification to the Center for Disability Services (CDS). CDS will work with you and the instructor to make arrangements for accommodations. Prior notice is appreciated. To read the full accommodations policy for the University of Utah, please see Section Q of the Instruction & Evaluation regulations.
If you will need accommodations in this class, contact:
Center for Disability Services
801-581-5020
disability.utah.edu
162 Union Building
200 S. Central Campus Dr.
Salt Lake City, UT 84112
Changes to the Syllabus
This syllabus is not a contract. It is meant to serve as an outline and guide for your course. Please note that your instructor may modify it to accommodate the needs of your class.
You will be notified of any changes to the Syllabus.
University Policies
Americans with Disabilities Act (ADA)
The University of Utah seeks to provide equal access to its programs, services, and activities for people with disabilities.
All written information in this course can be made available in an alternative format with prior notification to the Center for Disability & Access (CDA). CDA will work with you and the instructor to make arrangements for accommodations. Prior notice is appreciated. To read the full accommodations policy for the University of Utah, please see Section Q of the Instruction & Evaluation regulations.
In compliance with ADA requirements, some students may need to record course content. Any recordings of course content are for personal use only, should not be shared, and should never be made publicly available. In addition, recordings must be destroyed at the conclusion of the course.
If you will need accommodations in this class, or for more information about what support they provide, contact:
Center for Disability & Access
801-581-5020
disability.utah.eduLinks to an external site.
Third Floor, Room 350
Student Services Building
201 S 1460 E
Salt Lake City, UT 84112
Safety at the U
The University of Utah values the safety of all campus community members. You will receive important emergency alerts and safety messages regarding campus safety via text message. For more safety information and to view available training resources, including helpful videos, visit safeu.utah.edu.
To report suspicious activity or to request a courtesy escort, contact:
Campus Police & Department of Public Safety
801-585-COPS (801-585-2677)
dps.utah.edu
1735 E. S. Campus Dr.
Salt Lake City, UT 84112
Addressing Sexual Misconduct
Title IX makes it clear that violence and harassment based on sex and gender (which includes sexual orientation and gender identity/expression) is a civil rights offense subject to the same kinds of accountability and the same kinds of support applied to offenses against other protected categories such as race, national origin, color, religion, age, status as a person with a disability, veteran’s status, or genetic information.
If you or someone you know has been harassed or assaulted, you are encouraged to report it to university officials:
Title IX Coordinator & Office of Equal Opportunity and Affirmative Action
801-581-8365
oeo.utah.edu
135 Park Building
201 Presidents' Cir.
Salt Lake City, UT 84112
Office of the Dean of Students
801-581-7066
deanofstudents.utah.edu
270 Union Building
200 S. Central Campus Dr.
Salt Lake City, UT 84112
To file a police report, contact:
Campus Police & Department of Public Safety
801-585-COPS (801-585-2677)
dps.utah.edu
1735 E. S. Campus Dr.
Salt Lake City, UT 84112
If you do not feel comfortable reporting to authorities, the U's Victim-Survivor Advocates provide free, confidential, and trauma-informed support services to students, faculty, and staff who have experienced interpersonal violence.
To privately explore options and resources available to you with an advocate, contact:
Center for Student Wellness
801-581-7776
wellness.utah.edu
350 Student Services Building
201 S. 1460 E.
Salt Lake City, UT 84112
Academic Misconduct
It is expected that students comply with University of Utah policies regarding academic honesty, including but not limited to refraining from cheating, plagiarizing, misrepresenting one’s work, and/or inappropriately collaborating. This includes the use of generative artificial intelligence (AI) tools without citation, documentation, or authorization. Students are expected to adhere to the prescribed professional and ethical standards of the profession/discipline for which they are preparing. Any student who engages in academic dishonesty or who violates the professional and ethical standards for their profession/discipline may be subject to academic sanctions as per the University of Utah’s Student Code: Policy 6-410: Student Academic Performance, Academic Conduct, and Professional and Ethical Conduct.
Plagiarism and cheating are serious offenses and may be punished by failure on an individual assignment, and/or failure in the course. Academic misconduct, according to the University of Utah Student Code:
“...Includes, but is not limited to, cheating, misrepresenting one’s work, inappropriately collaborating, plagiarism, and fabrication or falsification of information…It also includes facilitating academic misconduct by intentionally helping or attempting to help another to commit an act of academic misconduct.”
For details on plagiarism and other important course conduct issues, see the U's Code of Student Rights and Responsibilities.
The syllabus page shows a table-oriented view of the course schedule, and the basics of course grading. You can add any other comments, notes, or thoughts you have about the course structure, course policies or anything else.
To add some comments, click the "Edit" link at the top.