This graduate course gives a broad overview of various models for combining human and machine intelligence to solve computational problems. Through weekly seminars and a class project, we will examine three roles that humans play in computational systems -- humans as computers, humans as teachers, and humans as collaborators. This course covers both literature from HCI and AI, and the topics include human computation and crowdsourcing, learning by demonstration, mixed initiative systems, active learning from human teachers, and interactive machine learning.
This course provides an introduction to contemporary user interfaces, including the basics of human-computer interaction, the user interface design/evaluation process, and the architectures within which user interfaces are developed.
AI and machine learning technologies has become increasingly integrated with our everyday lives. Yet, such systems are often complex, unpredictable and unfamiliar to users, making it difficult for them to understand, trust and adopt them. This graduate course will involve a survey of existing literature on Human-AI interaction, on topics such as safety, fairness, interpretibility, ethics, trust, and human-in-the-loop computation. The course is also in part a methodology course---we will study different HCI methodologies (e.g., experiments, diary studies, interviews, etc) and analysis techniques (e.g., statistical modeling, grounded theory analysis) and apply them to research questions related to Human-AI interaction. There will be a weekly (2.5 hour) seminar as well as a course project.
Human-Computer Interaction teaches the fundamental issues that underlie the creation and evaluation of usable and useful computational artifacts. Over the term, students will learn how to design novel computational artifacts that enable a well-defined user group to achieve specific goals more effectively. More specifically, students will learn and directly apply: (1) Rapid ethnography, which includes learning how to perform interviews and in situ observations, (2) User-centered design techniques, including contextual design and low-fidelity, high-iteration prototyping practices (e.g., paper-based prototyping and Wizard-of-Oz studies), (3) Evaluation methods for measuring how a design compares to existing methods of accomplishing a task. The course will involve lectures, in-class activities, assigned readings and group project performed throughout the term in groups of 3-4 students.
The course introduces students to the design of algorithms that enable machines to "learn". In contrast to the classic paradigm where machines are programmed by specifying a set of instructions that dictate what exactly a machine should do, a new paradigm is developed whereby machines are presented with examples from which they learn what to do. This is especially useful in complex tasks such as natural language processing, information retrieval, data mining, computer vision and robotics where it is not practical for a programmer to enumerate all possible situations in order to specify suitable instructions for all situations. Instead, a machine is fed with large datasets of examples from which it automatically learns suitable rules to follow. The course will introduce the basics of machine learning and data analysis.