CS 7641: Machine Learning

Course Creators

Charles Isbell
Charles Isbell
Creator, Instructor
Michael Littman
Michael Littman

Course Instructor (Fall 2015)

Charles Isbell
Charles Isbell
Creator, Instructor

Course Developer, Lead Teaching Assistant

Pushkar Kolhe, Developer
Pushkar Kolhe
Course Developer, Lead Teaching Assistant


This is a 3-course Machine Learning Series, taught as a dialogue between Professors Charles Isbell (Georgia Tech) and Michael Littman (Brown University).

Supervised Learning Supervised Learning is a machine learning task that makes it possible for your phone to recognize your voice, your email to filter spam, and for computers to learn a number of fascinating things. This sort of machine learning task is an important component in all kinds of technologies. From stopping credit card fraud; to finding faces in camera images; to recognizing spoken language -- our goal is to give students the skills they need to apply supervised learning to these technologies and interpret their output. This is especially important for solving a range of data science problems.  

Unsupervised Learning Ever wonder how Netflix can predict what movies you'll like? Or how Amazon knows what you want to buy, before you make a purchase? The answer can be found in Unsupervised Learning. Closely related to pattern recognition, Unsupervised Learning is about analyzing data and looking for patterns. It is an extremely powerful tool for identifying structure in data. This course focuses on how students can use Unsupervised Learning approaches -- including randomized optimization, clustering, and feature selection and transformation -- to find structure in unlabeled data.  

Reinforcement Learning Reinforcement Learning is the area of Machine Learning concerned with the actions that software agents ought to take in a particular environment in order to maximize rewards. You can apply Reinforcement Learning to robot control, chess, backgammon, checkers and other activities that a software agent can learn. Reinforcement Learning uses behaviorist psychology in order to achieve reward maximization.   To find more detail about this course, please download the CS 7641 Course Syllabus.


An introductory course in artificial intelligence is recommended but not required.   To discover whether you are ready to take CS 7641: Machine Learning, please review our Course Preparedness Questions, to determine whether another introductory course may be necessary prior to registration.

Course Preview

Lesson Preview


  • We will have 3 assignments and 2 exams. The final grade will weigh assignments and exams equally - 50% for all the assignments and the remaining 50% will be decided by exams.
  • Exams will be proctored by ProctorU.

Required Course Readings

Required text: Machine Learning, Tom Mitchell, 1997.

Optional Text: Richard Sutton and Andrew Barto, Reinforcement Learning: An Introduction, MIT Press, 1998.  

*Please see the course syllabus for supplemental reading list and coding resources.

Minimum Technical Requirements

  • Browser and connection speed: An up-to-date version of Chrome or Firefox is strongly recommended. We also support Internet Explorer 9 and the desktop versions of Internet Explorer 10 and above (not the metro versions). 2+ Mbps recommended; at minimum 0.768 Mbps download speed
  • Operating system: -PC: Windows XP or higher with latest updates installed -Mac: OS X 10.6 or higher with latest updates installed -Linux: Any recent distribution that has the supported browsers installed

Other Info

Additional Staff
  • Himanshu Sahni, Teaching Assistant
  • Vivek Nabhi, Teaching Assistant
Forums and Office Hours
Academic Honesty

All Georgia Tech students are expected to uphold the Georgia Tech Academic Honor Code.