CS 539 (002), Fall 2020
Data Visualization for Machine Learning

School of Electrical Engineering and Computer Science
Oregon State University

Tue & Thu at 4:00 - 5:20pm

Prof. Minsuk Kahng
Assistant Professor, School of Electrical Engineering and Computer Science
E-mail: [email protected]
Website: https://minsuk.com

(See Canvas or send me an email for password)

Course Description

This course will introduce advanced state-of-the-art research on interactive data visualization for machine learning (ML). Data visualization has recently been used as a powerful way to understand and interact with ML models and systems. Students will learn how to design and develop data visualization methods and tools for interpreting and interacting with complex ML models (e.g., deep learning models), for a variety of users (e.g., ML researchers, practitioners like ML engineers and data scientists, non-expert learners). Students will also discuss how data visualization can help address several critical human-side issues in artificial intelligence (e.g., explainability, inclusiveness).

Here are some examples of work which we will study this term:

Learning Objectives

At the completion of this course, students will be able to:

  1. Understand fundamental and practical challenges of human factors in machine learning
  2. Design visual representations and human interactions for exploring and interpreting machine learning models and systems
  3. Create interactive data visualization tools for supporting various machine learning tasks
  4. Evaluate the usability and utility of data visualization for machine learning

Prerequisite (Can I take this course?)

There is no requirement, but below are some guidelines:

  • It is recommended that you have taken an introductory AI/ML course from your undergrad or at OSU.
  • This course is less about advanced AI/ML algorithms, but more about how people use ML, so if you're looking for another AI/ML course with heavy math, you won't enjoy this course.
  • It would be great if you've taken HCI or Information Visualization courses, but not required.
  • We'll be using JavaScript for some assignments. It'd be ok if you are new to JavaScript, but you should have some programming experience (e.g., Python)

Course Schedule Tentative

Wk Date Topic Assignments
0 Thu, Sept 24 Course Intro
1 Tue, Sept 29 Introduction (1): ML Interpretation and Workflow
Thu, Oct 1 Introduction (2): Data Visualization * Project Team Formation
2 Tue, Oct 6 Analyzing Results (1): Summary to Indiv. Data: ModelTracker
Thu, Oct 8 Analyzing Results (2): Instances to Groups * G1: Proposal
3 Tue, Oct 13 Analyzing Results (3): Explanations: LIME
Thu, Oct 15 Analyzing Results (4): In-depth Analysis & Bias: What-If Tool * A1: Data Analysis
4 Tue, Oct 20 Model Visualization (1): High-dimensional data: t-SNE
Thu, Oct 22 Model Visualization (2): Graph Structure: TensorBoard Graph * G2: Mid-Report 1
5 Tue, Oct 27 VIS 2020 (either Tue or Thu)
Thu, Oct 29 Model Visualization (3): Image models (e.g., CNNs) * A2: D3.js Programming
6 Tue, Nov 4 Model Visualization (4): Text models (e.g., Seq2Seq)
Thu, Nov 6 Project Poster * G3: Mid-Report 2
7 Tue, Nov 11 Refinement and Interaction (1): Interactive ML
Thu, Nov 13 Refinement and Interaction (2): Model Steering * A3: D3.js Programming
8 Tue, Nov 18 Refinement and Interaction (3): Model Training or Debugging
Thu, Nov 20 Refinement and Interaction (4): Non-experts or Students * G4: Mid-Report 3
9 Tue, Nov 25 Refinement and Interaction (5): TBD
Thu, Nov 27 Thanksgiving
10 Tue, Dec 1 Project Final Presentation
Thu, Dec 3 Project Final Presentation * G5: Project Final Report
11   No Final Exam

How the course will be conducted

CS 539 is a hands-on course. You will be expected to actively participate in paper discussion, in-class presentations, and term projects. Because of this highly interactive nature, it is mandatory to attend classes.

The typical structure of every class will be as follow. You will read papers before class. At the beginning of the class, the instructor will give a short lecture (~5-10 min). Then we'll spend 30-40 minutes for paper discussion. A group of discussion leads (2-3 people) will present paper summary, example use cases, and then students will discuss the paper during breakout. For the rest of the class time, we'll have some time for term projects. A team will present a short status update or have a breakout session to work on their project.

Projects and Assignments

By the end of the term, you will likely develop a visualization tool, as a final product of your group project. Though it is not required, we suggest you implement a tool that runs on web browsers and written in JavaScript, which is the state-of-the-art way to implement interactive visualization tools. The individual assignments will involve programming exercises that help you learn how to implement a web-based interactive tool. It is not required to be familiar with JavaScript, but you should have some programming experience.

Your project does not have to involve implementing a new tool. I encourage you to develop your own research topic based on your research, especially if you are a PhD student. For example, your project Nov primarily involve human subject studies, algorithms for explainable AI, or scalable data systems. You can discuss project topics with the instructor.


Your performance will be evaluated via projects, individual assignments, nano-quizzes, readings and presentations, and participation. There will be no exams. The distribution of grading will be as follow (subject to change):

  • Team Project: 40%
  • Paper Presentation: 15% (1 time)
  • Paper Reading Summary: 15% (15 times)
  • Individual Assignments: 15% (3 times)
  • Participation: 15%


Required readings and papers will be provided. There is no required textbook.

Announcements and Questions

We use Canvas for all announcements and submissions.

We use Piazza for questions.

TA & Office Hours

Dayeon Oh (M.S. student in CS)

The instructor and TA will hold office hours starting Week 2.

Classroom Policies

This class is our community. Every student should feel safe and welcome to contribute in this course, and it is all of our jobs to make sure this is the case. I will try to establish this tone whenever possible, but ultimately the responsibility for cultivating a safe and welcoming community belongs to the students---that means you! Fortunately, forming a safe and welcoming community is not too hard. A good place to start is to recognize (and continually remind yourself) of the following facts:

  • Your classmates come from a variety of cultural, economic, and educational backgrounds. Something that is obvious to you Nov not be obvious to them, and vice versa.
  • Your classmates are human beings with intelligence and emotions. This applies even when one or the other of you is posting anonymously. Rudeness and disrespect are unprofessional, and have no place in this course or in your career.
  • Your classmates are here to learn. They have the right to pursue their education without being distracted by others' disruptive behavior, or made uncomfortable by inappropriate jokes or unwanted sexual interest.

In addition, the OSU Expectations for Student Conduct apply.

In short, treat your classmates as respected colleagues, support each other when needed, have fun without spoiling it for anyone else, and everybody wins.

Students with Disabilities

Accommodations for students with disabilities are determined and approved by Disability Access Services (DAS). If you, as a student, believe you are eligible for accommodations but have not obtained approval please contact DAS immediately at 541-737-4098 or at http://ds.oregonstate.edu. DAS notifies students and faculty members of approved academic accommodations and coordinates implementation of those accommodations. While not required, students and faculty members are encouraged to discuss details of the implementation of individual accommodations.

Reach out for Success

University students encounter setbacks from time to time. If you encounter difficulties and need assistance, it’s important to reach out. Consider discussing the situation with an instructor or academic advisor. Learn about resources that assist with wellness and academic success at oregonstate.edu/ReachOut. If you are in immediate crisis, please contact the Crisis Text Line by texting OREGON to 741-741 or call the National Suicide Prevention Lifeline at 1-800-273-TALK (8255).