Spring 2024 Teaching
CS 460G – Machine Learning
https://aaz-imran.github.io/teaching/2024-spring-cs460g
Syllabus
Time: TR 9:30 am – 10:45 am
Location: Register course to know
Course Instructor: Dr. Abdullah-Al-Zubaer Imran
Office: 319 Marksbury
Office Hours: TR 11 am – 12 pm, and by appointment.
Teaching Assistant: Matthew Wise
Location: Engineering Annex 2nd Floor
Office Hours: Wednesdays 11:30 am – 12:30 pm
Course Description:
Study of computational principles and techniques that enable software systems to improve their performance by learning from data. Focus on fundamental algorithms, mathematical models and programming techniques used in Machine Learning. Topics include: different learning settings (such as supervised, unsupervised and reinforcement learning), various learning algorithms (such as decision trees, neural networks, k-NN, boosting, SVM, k-means) and crosscutting issues of generalization, data representation, feature selection, model fitting and optimization. The course covers both theory and practice, including programming and written assignments that utilize concepts covered in lectures.
Course Outcomes
This course will help students achieve the following educational objectives:
- Understand the principal techniques and computational principles for enabling computers to learn from data
- Develop computer programs that manipulate different types of data (such as images, texts, videos, etc.)
- Analyze complex machine learning problems and apply principles of computing to identify appropriate solutions
- Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of a machine learning problem
- Apply computer science theory, machine learning fundamentals, and software development fundamentals to produce computing-based solutions
- Effectively communicate about machine learning models or concepts in a variety of professional contexts
Prereqs:
- Strong programming ability (CS 315)
- Basic probability and statistics (STA 281)
- Basic concepts of linear algebra (MA/CS 321 or MA/CS 322)
Required books
There is no required textbook for CS 460G.
Recommended books
- Pattern Recognition and Machine Learning
Christopher M. Bishop, Springer, 2006 - Deep Learning: Foundations and Concepts
Christopher M. Bishop, Springer, 2024 - Machine Learning
Tom M. Mitchell, McGraw-Hill, 1997 - Python Machine Learning
Sebastian Raschka, Packt, 2015 - Machine Learning: A Probabilistic Perspective
Kevin P. Murphy, MIT Press, 2012 - Deep Learning
Ian Goodfellow, MIT Press, 2016
Course Schedule/Outline (Tentative):
Week | Topics | Suggested Reading | Note |
---|---|---|---|
1. | Jan 9: Course Introduction Jan 11: Python for Machine Learning | ||
2. | Jan 16: Learning Theory Jan 18: Linear Classification | release of hw1 | |
3. | Jan 23: Linear Regression Jan 25: k-NN and Decision Trees | hw1 due | |
4. | Jan 30: SVM Feb 1: Validation and Evaluation | release of hw2 | |
5. | Feb 6: Neural Networks Feb 8: Optimization | hw2 due | |
6. | Feb 13: Overfitting and Regularization Feb 15: Clustering | project proposal due | |
7. | Feb 20: Dimensionality Reduction Feb 22: Ensemble Methods | release of hw3 | |
8. | Feb 27: Convolutional Neural Networks I Feb 29: Convolutional Neural Networks II | hw3 due | |
9. | Mar 5: Midterm Review Mar 7: Midterm Exam | release of hw4 | |
10. | Mar 12: No Lecture – Spring Break Mar 14: No Lecture – Spring Break | ||
11. | Mar 19: Recurrent Neural Networks Mar 21: Transformers I | Project milestones hw4 due | |
12. | Mar 26: Transformers II Mar 28: Generative Machine Learning I | release of hw5 | |
13. | Apr 2: Generative Machine Learning II Apr 4: Self-Supervised Learning | hw5 due | |
14. | Apr 9: Reinforcement Learning I Apr 11: Reinforcement Learning II | release of hw6 | |
15. | Apr 16: Semi-Supervised Learning Apr 18: Fairness and Explainability | hw6 due | |
16. | Apr 23: Prep Day – Final Discussion Apr 25: Reading Day – No Lecture | ||
17. | Apr 30: Final | project demo, code, and report due |
Course Activities:
- Class participation (10%) – lecture quizzes, in-class and canvas activities
- Assignments (40%) – Six programming and written assignments (only the top 5 will count)
- Project (30%) – Final group project (demo presentation, code, and report)
- Assessments (20%) – In-class Exam
Grading Scale:
After the final percentage grade is calculated, the following scale will be used to determine the final letter grade.
For undergraduate students:
- 90–100% (A)
- 80–89% (B)
- 70–79% (C)
- 60–69% (D)
- 0–59% (E)
For graduate students:
- 90–100% (A)
- 80–89% (B)
- 70–79% (C)
- 0–69% (E)
READ THIS:
Attendance Policy: Students are required to attend every lecture. Students only present in the class can take the associated quiz and get the available points. Missing a maximum of 2 lectures will be excused. Any student missing more than 2 lectures without any reasonable excuses will start losing 10 points for every miss.
Academic Integrity: Please strictly follow the Academic Offenses Rules (plagiarism, cheating, and falsification or misuse of academic records). Also, keep in mind that any copyrighted materials (e.g., images and other media), and published contents (e.g., academic papers, books, web sources, online tools) used in your submissions and project should be properly cited. Ideas from people other than your own (for the project—ideas from outside your group) should be acknowledged.
Late Policy: Late submissions (assignment, project proposal, code, project final report) will be subject to a 50% score penalty if you submit within 2 days after the deadline. A score of 0 will be given for any submissions after that. Late submissions will be accepted only for certain circumstances (e.g., medical) with proper evidence.
Exceptions to this rule may be requested by providing appropriate documentation (e.g., medical) which will be considered at the discretion of the instructor.
Generative AI Policy: GenAI tools such as ChatGPT may be used in this course for the purposes of pre-submission activities. However, students are responsible for submitting work that meets the assignment standards for quality and factual accuracy. Check Canvas page for more detailed instructions on this. If you have any questions or concerns about the policy, contact the instructor before submitting any assignments.
Disability and Special Accommodation: Please let the instructor know of any needed accommodation in the first two weeks. Please also see Academic Accommodation for further assistance.
Academic Policy Statements, DEI, Resources Available to Students
Useful Resources: