CS 7641: Machine Learning

Instructional Team

Mahdi Roozbahani
Mahdi Roozbahani
Creator, Instructor
Alexander J. Ford
Alexander J. Ford
Head TA
John Mansfield
John Mansfield
Head TA

Overview

Created and taught by Max Mahdi Roozbahani, this offering of CS 7641 begins with the mathematics and concepts behind machine learning algorithms. We want students to understand how and why the methods work so they can connect theory with applied problem-solving.

We focus on using that understanding to apply machine learning appropriately, reason through unfamiliar problems, and develop new algorithms. The course deliverables help students translate these concepts into solutions for real-world problems. These foundations significantly support a deeper understanding of modern AI, including generative AI.

The course progresses through three areas:

  • Mathematical foundations: linear algebra, probability and statistics, information theory, and optimization.
  • Unsupervised learning: k-means, Gaussian mixture models, hierarchical and density-based clustering, kernel density estimation, and dimensionality reduction.
  • Supervised learning: linear and regularized regression, logistic regression, neural and convolutional neural networks, decision trees, random forests, and support vector machines with kernels.

Preview

Course Overview

Sample Lesson

Sample Syllabus

Fall 2026 syllabus (PDF)
Fall 2025 syllabus (PDF)
Summer 2025 syllabus (PDF)

Note: Sample syllabi are provided for informational purposes only. For the most up-to-date information, consult the official course documentation.

Course Content

To access the public version of this course's content, click here, then log into your Ed Lessons account. If you have not already created an Ed Lessons account, enter your name and email address, then click the activation link sent to your email, then revisit that link.

Before Taking This Class...

Suggested Background Knowledge

Familiarity with Python programming and basic linear algebra is recommended. Prior knowledge of probability, statistics, calculus, and optimization is helpful, and we cover the mathematical concepts needed for the algorithms we study.

Reference book: Christopher M. Bishop, Pattern Recognition and Machine Learning. Springer, 2006. Book information and resources.

Technical Requirements and Software
  • Computer: you can begin with the laptop or desktop you already have. For smaller datasets and lighter experiments, 6 to 8 GB of RAM may be manageable; 16 GB is a good starting point for more flexibility. A faster CPU and more memory can help with larger workloads. Choose datasets and experiment sizes that fit your available resources.
  • Storage: needs depend on the dataset and project scope. Larger projects may use approximately 50 GB of working storage; smaller projects can need much less.
  • GPU: a GPU can be helpful for deep learning and image-based projects, but it is not required for every project.
  • Software and connectivity: use a currently supported version of Windows, macOS, or Linux that can run the course Python tools, an up-to-date browser, and a reliable internet connection. Your device must also meet the current requirements of any required exam-proctoring software.
  • Timing: computing needs arise throughout the semester and may increase near project deadlines.

Academic Integrity

All Georgia Tech students are expected to uphold the Georgia Tech Academic Honor Code. This course may impose additional academic integrity stipulations; consult the official course documentation for more information.