Course Home | Syllabus | Assignments | Schedule | Notes | Downloads | [print]
CS 4320: Machine Learning
Spring 2024 Syllabus
Course Description
For students pursuing degrees in Computer Science or related fields, with an interest in the theory and practice of machine learning. Covers an introduction to supervised and unsupervised learning, including decision trees, neural networks, naive Bayes classifiers and support vector machines. Students will be required to implement machine learning systems.
Prerequisites
CS 2420, CS 2810 and CS 3005 all with a C- or better.
Course fees
Course fee: $20, used to assist in maintaining department infrastructure.
Disability Statement
If you suspect or are aware that you have a disability that may affect your success in the course you are strongly encouraged to contact the Disability Resource Center (DRC) located in the North Plaza Building. The disability will be evaluated and eligible students will receive assistance in obtaining reasonable accommodations. Phone # 435-652-7516.
Sections
TR 9:00 - 10:15 pm in Smith 116
Final exam April 30 at 9:00 am - 10:50 am
Instructor
Instructor: Curtis Larsen
Email: curtis.larsen@utahtech.edu
Phone: 435-652-7972
Office: North Burns 233
Office Hours:
Office hours are a fantastic opportunity to receive personalized assistance with any questions or concerns you may have about course concepts, assignments, or anything else on your mind.
I’m here to support you throughout the week with regular office hours. No need to worry about telling me in advance to use the scheduled office hours, just drop by whenever it suits you! Whether you prefer a face-to-face chat in my office at North Burns 233 or joining me virtually via Zoom, the choice is yours. You can find the Zoom link conveniently posted in an announcement on Canvas.
For the Spring 2025 semester, I’ll be available during the following times:
- Mondays 10:00 am - 11:30 am
- Tuesdays 8:00 am - 9:30 am
- Wednesdays 10:00 am - 11:30 am
- Thursdays 8:00 am - 9:30 am
If these times don’t fit your schedule, don’t hesitate to reach out to me. Simply shoot me an email or a message through Canvas, and we can find a time that works better for you. When you message me, suggesting a few alternative times would be incredibly helpful.
Looking forward to connecting with you during office hours!
Student Learning Outcomes
The student will be able to discuss the principles of:
- supervised learning,
- unsupervised learning,
- decision trees,
- artificial neural networks,
- genetic algorithms,
- Bayesian learning,
- support vector machines.
The student will be able to:
- use supervised and unsupervised learning techniques,
- implement software learning systems,
- evaluate quality of learned systems,
- implement software utilizing the results of learning systems.
Resources
Textbook
There is no required textbook for this course. The following book is offered as an optional resource.
- Hands-on Machine Learning with Scikit-Learn, Keras, and TensorFlow, 2nd Edition: Concepts, Tools, and Techniques to Build Intelligent Systems by Aurélien Géron, ISBN-13: 978-1-492-03264-9
The following texts may be of interest as well.
Online References NumPy Matplotlib Matplotlib Tutorials Pandas Pandas Tutorials scikit-learn TensorFlow Keras
Artificial Intelligence: A Modern Approach 3rd Ed. by Russell and Norvig, ISBN: 978-0-13-604259-4 (optional)
Artificial Intelligence: Structures and Strategies for Complex Problem Solving (6th Edition) by George F. Luger ISBN: 978-0321545893 (optional)
Machine Learning by Tom M. Mitchell ISBN: 978-0070428072 (optional)
Artificial Intelligence Subsequent Edition by Elaine Rich and Kevin Knight ISBN: 978-0070522633 (optional)
Foundations of Machine Learning by Mohri, Rostamizadeh, Talwalkar ISBN: 978-0262018258 (optional)
Artificial Intelligence: Foundations of Computational Agents, 2nd Edition by David L. Poole and Alan K. Mackworth Read Online ISBN: 9781107195394 (optional)
Machine Learning: A Probabilistic Perspective by Kevin P. Murphy ISBN: 978-0262018029 (optional)
Artificial Intelligence in the 21st Century 2nd Edition by Stephen Lucci and Danny Kopec ISBN: 978-1942270003 (optional)
Bayesian Reasoning and Machine Learning by David Barber ISBN: 978-0521518147 (optional)
Other Resources
- You will need access to one or more computer systems with Python3, numpy, matplotlib, pandas, and tensorflow installed.
Computer Labs
You may use departmental computers and software in the Smith Computer Center. Some lab assistants may be able to help with assignments and pass off homework assignments for introductory courses.
Course Web Site
Assignment submissions and grades will be managed in the Canvas System.
Assignments and Exams
Reading
While there is no required text book. Students are expected to find and read relevant references.
Assignments
A series of assignments will be required. These assignments are due on the date and time listed in the schedule, or as stated by the instructor during class. It cannot be over emphasized that it is important to start early and get all of your assignments done before their due dates. Programs that do not run correctly will receive no credit. Most assignments will require a written report.
There will be a final project at the end of the semester.
Participation
You will be expected to give positive contributions to class discussions.
Presentations
There will be a required presentation at the end of the semester. You will present your project and its results for the rest of the class.
Grading
Letter grades will be assigned based on the percentage of total possible points attained. The point totals will be approximately: assignments and final project 150. The following chart will be used for letter grades.
Minimum Percentage | Letter Grade | Minimum Percentage | Letter Grade | Minimum Percentage | Letter Grade | Minimum Percentage | Letter Grade |
94 | A | 84 | B | 74 | C | 64 | D |
90 | A- | 80 | B- | 70 | C- | 60 | D- |
87 | B+ | 77 | C+ | 67 | D+ | 0 | F |
Course Policies
Attendance
Students are responsible for material covered and announcements made in class. School-related absences may be made up only if prior arrangements are made. The class schedule presented is approximate. The instructor reserves the right to modify the schedule according to class needs. Changes will be announced in class and posted to the website. Exams and quizzes cannot be made up unless arrangements are made prior to the scheduled time.
Occasional absences are acceptable as long as the student keeps up with assignment work. Students who miss more than two consecutive weeks of class or who miss more than 20% of scheduled classes during the semester without making prior arrangements will receive a failing grade. Students who miss any scheduled exam (including midterm exams and the final exam) or fail to complete a final project without making prior arrangements will receive a failing grade.
Time Commitment
Courses should require about 45 hours of work per credit hour of class. This class will require about 135 hours of work on the part of the student to achieve a passing grade, which is approximately 9 hours per week. If you do not have the time to spend on this course, you should probably rethink your schedule.
Late Policy
Each assignment has two due dates. The earliest due date is the required date. The second date is the absolute latest date to submit the assignment. Late work will not be accepted after the second date.
Collaboration
Limited collaboration with other students in the course is permitted. Students may seek help learning concepts and developing programming skills from whatever sources they have available, and are encouraged to do so. Collaboration on assignments, however, must be confined to course instructors, lab assistants, and other students in the course. Students are free to discuss strategies for solving programming assignments with each other, but this must not extend to the level of programming code. Each student must code his/her own solution to each assignment. See the section on cheating.
Cheating
Cheating will not be tolerated, and will result in a failing grade for the students involved as well as possible disciplinary action from the college. Cheating includes, but is not limited to, turning in homework assignments that are not the student’s own work. It is okay to seek help from others and from reference materials, but only if you learn the material. As a general rule, if you cannot delete your assignment, start over, and re-create it successfully without further help, then your homework is not considered your own work.
You are encouraged to work in groups while studying for tests, discussing class lectures, discussing algorithms for homework solutions, and helping each other identify errors in your homework solutions. If you are unsure if collaboration is appropriate, contact the instructor. Also, note exactly what you did. If your actions are determined to be inappropriate, the response will be much more favorable if you are honest and complete in your disclosure.
Where collaboration is permitted, each student must still create and type in his/her own solution. Any kind of copying and pasting is not okay. If you need help understanding concepts, get it from the instructor or fellow classmates, but never copy another’s code or written work, either electronically or visually. The line between collaborating and cheating is generally one of language: talking about solutions in English or other natural languages is usually okay, while discussions that take place in programming languages are usually not okay. It is a good idea to wait at least 30 minutes after any discussion to start your independent write-up. This will help you commit what you have learned to long-term memory as well as help to avoid crossing the line to cheating.
University Policies
Disability/Accessibility Resources
Utah Tech strives to make learning materials and experiences accessible for all students so if you are a student with a medical, psychological, or learning disability or anticipate physical or academic barriers based on disability, you are welcome to let me know so we can discuss options. Students with documented disabilities are required to contact the Disability Resource Center located in the North Plaza Building, next to the Testing Center (435-652-7516) to explore eligibility process and reasonable accommodations related to disability.
Title IX Statement
Utah Tech seeks to provide an environment that is free of bias, discrimination, and harassment. If you have been the victim of sexual harassment/misconduct/assault we encourage you to report this to the university’s Title IX Director, Cindy Cole, (435) 652-7731, cindy.cole@utahtech.edu. If you report to a faculty member, she or he must notify the Title IX Director about the basic facts of the incident.
Email Disclaimer
You are required to frequently check your campus email account. Important class and university information will be sent to your campus email account, including Utah Tech bills, financial aid/scholarship notices, notices of canceled classes, reminders of important dates and deadlines, and other information critical to your success at Utah Tech and in your courses. To access your campus email account, visit mail.utahtech.edu. Your username is your Digital ID (e.g. D00111111) If you have forgotten your PIN, visit my.utahtech.edu and click the “Forgot Pin” button.
Useful Resources
Important Dates Spring 2025
Click on this link:
Jan 6 - Classes begin
Jan 10 - Last day to add without instructor permission
Jan 15 - DROP/AUDI fee begins
Jan 17 - Late registration / payment fee
Jan 27 - Last day for refund
Jan 27 - Pell Grant census date
Jan 27 - Last day to drop without receiving a “W” grade
Feb 3 - Last day to add or audit classes
Feb 26 - Midterm grades due
Mar 3 - Last day to withdraw from individual classes
Apr 8 - Last day for complete withdrawal from all classes
Apr 24 - Last day of classes
Apr 25 - Reading day (no classes or exams)
Apr 28-May 1 - Final Exams
May 2- Commencement
May 5 - Final grades due
Last Updated 01/08/2024