Fall 2025
  • Discord
  • Gradescope
  • Syllabus

CSCI 145: Data Mining

A course on the mathematical foundations of machine learning.


Instructor: R. Teal Witter. Please call me Teal.

Class Times: We meet Tuesdays and Thursdays; Sec. 1 is scheduled from 2:45 to 4:00pm in Kravis 164, and Sec. 2 from 4:15 to 5:30pm in Kravis 165.

Office Hours: Tuesday, Wednesday and Thursday from 12:30 to 1:30pm in Adams 213.

Participation: I expect you to engage in class, ask questions, and make connections. To receive credit, please fill out this form after every lecture.

Quizzes: There will be short quizzes at the beginning of our Tuesday classes. These quizzes will test your understanding of the problem sets and the concepts from the prior week.

Exams: The two exams are the primary method of assessing your understanding of the material. The first exam will cover the content from the first half of the course, while the second exam will cover the content from the second half.

Problem Sets: Your primary opportunity to learn the material will be on problem sets. You may work with others to solve the problems, but you must write your solutions by yourself, and explicitly acknowledge any outside help (websites, people, LLMs).

Project: The project offers a chance to explore an area that interests you, practice writing high quality code, and develop your ability to communicate technical ideas to an audience. In addition to your codebase, you will write a report and give a short presentation at the end of the semester.

Assignment Due
Problem Set 1 (LaTeX) Friday 9/19
Problem Set 2 Friday 10/17
Problem Set 3 Friday 11/7
Problem Set 4 Friday 11/21
Project Proposal Monday 12/1
Project Friday 12/12

Resources: Most of the material we cover comes from either Chris Musco’s phenomenal machine learning course, or Chinmay Hegde’s fantastic deep learning course. While we do not have a textbook, we do have typed notes; I highly recommend you read the notes before each class.

Week Tuesday Thursday Slides Assignments
Warmup
Week 1 (8/27 and 8/29) Linear Algebra PageRank Slides
Supervised Learning
Week 2 (9/2 and 9/4) Linear Regression Optimization
Week 3 (9/9 and 9/11) Gradient Descent Polynomial Regression
Week 4 (9/16 and 9/18) Probability Logistic Regression
Week 5 (9/23 and 9/25) Support Vector Machines Constrained Optimization
Week 6 (9/30 and 10/2) Kernel Methods Neural Networks
Week 7 (10/7 and 10/9) Convolutional Networks Transformers
Week 8 (10/14 and 10/16) Fall Break (No Class) Decision Trees
Week 9 (10/21 and 10/23) Midterm Exam Boosting
Beyond Supervised Learning
Week 10 (10/28 and 10/30) Autoencoders Principal Component Analysis
Week 11 (11/4 and 11/6) Reinforcement Learning Q Learning
Week 12 (11/11 and 11/13) Concentration Inequalities Multi-Armed Bandits
Week 13 (11/18 and 11/20) Explainable AI Active Learning
Week 14 (11/25 and 11/27) Midterm Exam Thanksgiving (No Class)
Week 15 (12/2 and 12/4) Project Preparation Project Preparation (No Class)
Week 16 (12/9 and 12/11) Sec. 2 Presents 7–10pm Sec. 1 Presents 2–5pm