CIS 4190/5190: Applied Machine Learning (Spring 2026)
syllabus      schedule      resources


Logistics

Time: Mon/Wed 1:45-3:15pm

Location: AGH 106B

Instructors:
Prof. Mingmin Zhao
Prof. Jiatao Gu

Teaching assistants:
We have the following wonderful team of TAs this semester:

  • Daniel Alexander (alexdan@seas.upenn.edu)
  • Jessica Liang (jeliang@seas.upenn.edu)
  • Dominic Chang (domchang@seas.upenn.edu)
  • Zixun Huang (huang98@seas.upenn.edu)
  • Shivi Jain (shivij@seas.upenn.edu)
  • Qinhe Peng (pengqh20@seas.upenn.edu)
  • Yuanming Shao (shaoym@seas.upenn.edu)
  • Shenyi Tang (tshenyi@seas.upenn.edu)
  • Mutian Tong (mutiant@seas.upenn.edu)
  • Yue Wang (wayue@seas.upenn.edu)
  • Wanting Yao (wtyao@seas.upenn.edu)
  • jianing Yin (cathyyin@seas.upenn.edu)
  • Yici Zhang (yici0505@seas.upenn.edu)
  • Jiayi Xin (jiayixin@seas.upenn.edu)
  • Xinyu Lu (xinyulu@seas.upenn.edu)
You can get to know them through this introductory slide deck.

Links: We will use Ed Discussion for questions and communication, and GradeScope to submit assignments. Past exams and solutions, as well as lecture videos, will be posted on Canvas; all other materials will be posted on the course website. We encourage students to use Google Colab for coding assignments.

Waitlist: We have a very large amount of demand for just a few remaining slots in the class. As such, we are currently only considering students who are graduating this fall and who need to take the course this fall for credit to graduate. In addition, all prerequisites must be satisfied and all waitlist application questions must have been answered correctly, and all decisions are at the discretion of the instructors. Please only reach out to us if you believe you qualify and have not yet heard back.

Attendance: We expect students to attend classes regularly; weekly quizzes designed to make sure students are following course material.


Content

Description: Machine learning has been essential to the success of many recent technologies, including autonomous vehicles, search engines, genomics, automated medical diagnosis, image recognition, and social network analysis. This course will introduce the fundamental concepts and algorithms that enable computers to learn from experience, with an emphasis on their practical application. It will introduce supervised learning (linear and logistic regression, decision trees, neural networks and deep learning, and Bayesian networks), unsupervised learning (clustering and dimensionality reduction), and reinforcement learning.

CIS 4190 vs. 5190: This course has an undergraduate version (CIS 4190) and a graduate version (CIS 5190). The lectures are the same, but you will be evaluated differently on your homeworks and projects; in particular, some homeworks will have components that are mandatory for CIS 5190 but optional for CIS 4190. Importantly, since the two versions have different requirements, you cannot complete the course as CIS 4190 and petition afterwards to have it changed to CIS 5190 for graduate credit.

CIS 5190 vs. 5200: Penn CIS offers two different introductory machine learning courses: CIS 4190/5190 (Applied Machine Learning) and CIS 5200 (Machine Learning). While there is overlap, the former (this course!) emphasizes practical application of existing machine learning methods, whereas the latter emphasizes the statistical foundations and theory of ML. CIS 5190 is NOT a prerequisite for CIS 5200. It makes little sense to take both courses (though taking CIS 4190/5190 and later CIS 5200 is possible).

CIS 5190 vs. 5450: Penn CIS also offers CIS 5450, which offers a holistic view of the data science pipeline, including data wrangling, data visualization, machine learning, and scalable data processing. In contrast, this course focuses primarily on machine learning, covering machine learning algorithms in greater breadth and depth. The two courses can be taken in either order, but students should consider taking CIS 5450 first.

Prerequisites: Introductory probability and statistics, multivariable calculus, and linear algebra are required (HW 1 will test your knowledge of this material). In addition, you are expected to be able to program comfortably in some language. We will use Python throughout the course, and can help you pick it up (primer + office hours). If you are not confident of your coding skills in any language at all, the homework may be very difficult.

Textbook: There is no required textbook, but you can find useful resources here.


Policy

All policy will be documented in the slides presented on the first day of class, which will be updated if need be.