Special Topics MAS.S62
Interactive Machine Learning
H-Level  0-12-0
Instructor: Dr. Brad Knox (principal), with Prof. Cynthia Breazeal
Meeting: W 1-2, F 11-1 (E14-493)
Office hours: W 2-3 (E15-450)

Many applications of machine learning involve interactions with humans. Humans may provide input to a learning algorithm, including input in the form of labels, demonstrations, corrections, rankings, or evaluations. And they could give such input while observing the algorithm’s outputs, potentially in the form of feedback, predictions, or demonstrations. Although humans are an integral part of the learning process, traditional machine learning systems used in these applications are agnostic to the fact that inputs/outputs are from/for humans. However, a growing community of researchers at the intersection of machine learning and human-computer interaction are making interaction with humans a central part of developing machine learning systems. These efforts include applying interaction design principles to machine learning systems, using human-subject testing to evaluate machine learning systems and inspire new methods, and changing the input and output channels of machine learning systems to better leverage human capabilities. This course focuses on interactive machine learning (IML), which I define to be machine learning with a human in the learning loop, observing the result of learning and providing input meant to improve the learning outcome.

In this research-focused course, we will explore the motivation for interactive machine learning, create and analyze a range of simple interactive machine learning systems, and cover a breadth of specific interactive machine learning problems and approaches. Much of the course will be focused on building towards and executing a final research project that involves a machine-learning algorithm with a human in the loop.

Course email list: iml <<at>>

Course website

Instructor email: bradknox <<at>>

Course format: The course will consist of small hands-on projects and a final research project; guest lectures by researchers of interactive machine learning and related areas; student-written reviews and discussions on readings, some of which the class will choose; flipped classroom content and lecture when necessary; student presentations on explorations of available toolkits for machine learning, visualization, etc.

Progression of topics:
1. Supervised learning
2. Evaluation by techniques/standards of
– Human-computer interaction
– Machine learning
3. Sequential decision making
– Learning from demonstration
– Reinforcement learning
4. (Maybe) unsupervised learning (e.g. clustering)

21% Class participation
22% Reading responses
23% Assignments
34% Final project and presentation

Class participation: Participation grade is based on

  • Actively participating in reading discussions
  • Regularly sharing questions and comments in course meetings
  • Attending course meetings
  • Self-initiated usage of Piazza (not required, but can improve the participation grade)

Attendance: You are expected to attend every course meeting. Failure to do so will lower a student’s participation grade in accordance with how many meetings are missed. There are three exceptions: (1) academic travel – to have absence excused for academic travel, let me know before the absence and provide documentation of the academic nature of the trip; (2) illness, family emergencies, and other serious personal matters – prior notification of absence is needed unless I am persuaded that the situation makes such notification especially difficult; and (3) one absence not covered by the other two exceptions will be forgiven. Missing a meeting does change the due dates for assignments; special considerations may be made if you contact me to ask for an extension.

Reading responses: Readings will be assigned to cover both background and specific research in IML. You will respond in writing to each readings, and readings will usually then be discussed during the class period at which the responses are due. 

Preliminary research assignments, building towards your final project:
1) Toolkit presentations: Once or twice during the semester, you will give a 20-30 minute overview of a toolkit that somehow facilitates interactive machine learning. Such toolkits include libraries of machine learning algorithms, visualization software, and sensing libraries (such as the Kinect SDK).
2) Analyze an existing IML system
3) Develop a simple IML system
4) Dissect an ML algorithm for potential forms of interactivity
5) Join a COUHES protocol to permit user studies for your final project

Final project: The course will culminate in a final project that consists of (a) an implementation of either a new interactive machine learning algorithm or an existing IML algorithm to a novel application and (b) evaluation of the implemented IML system through user interaction. You can either work alone or with a partner. At then end of the course, you will present your project to the class. Final projects will be written in a conference proceedings format. Students are encouraged to submit their work as short papers, workshop papers, or full conference papers.

All assignments are to be turned in before the course meeting on the day they are due unless otherwise specified. More information about the reading responses, preliminary research assignments, and final project will be given as they are assigned. Penalties for late work:  10 points off any assignment turned in late but less than 24 hours after the deadline and 10 additional points off for anything turned in more than 24 hours after the deadline


  • A familiarity with machine learning. We will review many machine learning concepts, but this course is unlikely to teach the fundamentals of machine learning to someone who is unacquainted.
  • Strong programming skills

Course goals:

  • Understand the current literature on IML
  • Identify unexplored research topics
  • Practice finding and choosing research problems
  • Become acquainted with sequential decision-making and research methods in ML and HCI
  • Identify common themes and goals within IML research
    • especially those unique to the intersection of HCI and ML
  • Hands-on experience creating interactive machine learning systems
  • Conduct novel research on IML!

I appreciate feedback on how you are progressing towards these goals and on the course in general.

Suggested references:
For general machine learning, Artificial Intelligence: A Modern Approach by Russell and Norvig or any version of Andrew Ng’s Machine Learning course on Coursera
For general machine learning in more depth, Machine Learning by Murphy

Sitting in: People are welcome to sit in, but they must keep up with the reading and submit reading responses to be able join us on reading discussion days. This requirement is intended to ensure that everyone is actively engaged in and prepared for the discussion. To join for lectures, student presentations, and guest lectures, no preparation is required.