By definition, Machine Learning provides software with a way to learn something that it was not explicitly programmed for. In practice, Machine Learning is often used to allow people to learn something they might not have been able to do otherwise (e.g. infer relationships from large scale high-dimensional data at potentially high speed) and allow computers to learn something that humans learn naturally (e.g.: speaking, hearing, seeing). These two broad application areas of Machine Learning not only have a large impact on human behavior, their success often depends on a nuanced understanding of human behavior and how people interact with technology (i.e.: sociotechnical behavior). Students of the Human-Centered Machine Learning course will help form a new way of understanding and practicing the application of machine learning through a series of readings, discussions, and a final project.
- At least one Human-Computer Interaction or Design Thinking course
- Specifically a familiarity of human factors and the emprical methods used to uncover them
- At least one Machine Learning, Artificial Intelligence, or Data Science course
- Specifically students should be comfortable applying methods for supervised and unsupervised learning in a software application of their design.
- Ability to program at a level appropriate for EECS 349 (Machine Learning)
- Specifically, you should be able to comfortably write code in Python without help from the TA or Professor
Students who complete this course satisfactorally will...
- ...be comfortable discussing machine learning and artificial intelligence as part of a broader socio-technical system
- ...have an understanding of how the behavior of artificial intelligence and machine learning algorithms as well as user task, intention, and understanding affect the overall user experience.
- ...understand how to identify design constraints and optimization criteria from both the user experience
and algorithm research in a domain.
- In both cases, these may be more implicit than explicit requiring that students develop an eye for:
-
- translating UX research into design principles that can be addressed with tweaks to the learning algorithm.
-
- identifying assumptions that are made in the design of the learning algorithm and how they might (or might not) be challenged.
-
- In both cases, these may be more implicit than explicit requiring that students develop an eye for:
Below are the requirements and expectations of the class with the respective grade proportions.
- Final Project (40%)
- Class Presentation and Leading Discussion (20%)
- Reading Response (20%)
- Attendance and Class Participation (20%)
Students will complete a final research paper that explores HCML in one of the following ways:
- researching a system of the students' creation which integrates user-centered design principles into the design of the machine learning components of the system to address a user experience challenge or a novel user task
- researching the design and implementation of an interactive machine learning system which might address some of the issues with automated learning systems discussed in class including (but not limited to) algorithmic bias, algorithmic accountability, and model transparency.
- makes explicit through proof or demonstration an assumption used in the design of a learning algorithms which can result in one of the issues with AI and ML algorithms discussed in class (e.g.: algorithmic bias, concept evolution)
Students may also propose an alternative to one of these research paper formats.
The schedule and ruberic for the HCML project is as follows:
- 5th week of class: Students submit an introduction and literature review and/or methods section by the
- This will be reviewed by the instructor as well as two other students in the class as part of a paper feedback exchange
- 5/5 points of the final grade for submitting a draft of reasonable enough quality to get helpful feedback
- 2/5 points for submitting a draft which is not of reasonable enough quality to get helpful feedback
- 0/5 points for not submitting
- 7th week of class: Students submit a methods section along with working code
- for an analytic project this generally means the jupyter notebooks or R Studio code describing the analytic process and working data pipeline.
- For a systems project this will mean a prototype that is working well enough that the idea can be demonstrated even if further iterations are needed to effectively study that which will be the contribution of the final paper.
- 5/5 points for a methods section which communicates the process well enough for the feedback to focus on the process and not the writing. For 5 points, the students will also have a data pipeline or system that is working well enough to begin providing good analytic or design feedback.
- 4/5 points for a methods section which still requires feedback on how the method is communicated. For 4 points, the data pipeline or system should be demonstrable.
- 3/5 points for submitting any methods section and code
- Project
- 9th week of class: Students submit a full draft of their project
- 5/5 points for a draft which can yield good feedback
- 3/5 points for including all complete sections
- 1/5 points for submissions which do not include all major sections (introduction, methods, results, discussion, conclusion)
- Final week: Complete submission
The HCML project will need to have a rough draft and a poster and/or demo completed by the 10th week of class for a poster/demo session that will be open to the public. The final draft will need to be completed at the beginning of finals week so that students can exchange and review each others' work.
Students will lead discussion with a presentation twice in the quarter:
- One presentation will be leading a 45 minute discussion and presentation on research that is already included in the schedule. This presentation will also need to synthesize and incorporate reading responses from the other students.
- One presentation will be leading a 20 minute discussion and presentation on research, found by the student, that is related to the students' final project and enriches the conversation in human-centered machine learning. The purpose of this presentation is to facilitate an on-going conversation about how the practice and research of machine learning can be more "human-centered".
In order to better digest the readings, students will write a response to each weekly discussion prompt (provided in the reading schedule) by making appropriate citations and connections to the current week's readings and those of previous weeks. Students should feel free to cite other sources, but these should not be a replacement for the required readings of the week. This response will need to be uploaded by the Monday (subject to change) before class so that students will have a chance to read each others' responses and the presenter can integrate them into the weekly presentation. This exercise will provide students with the opportunity to get more comfortable with the writing and reflecting component of the class.
In order to fully make the connections between the human-focused research and technology focused research in each week's readings it is important to participate in class discussion. Class discussion also helps students to practice communicating their understanding of the material to members of the class whose research focus and educational background skews toward human subjects and factors and those who skew toward computational research. Students will be required to attend each class and participate in discussion by asking thoughtful questions and communicating their opinions, ideas, and understanding on a topic clearly to everyone in the class.
- Mental Models, Conceptual Models, System Image,
- Human-Centered Machine Learning as a broad topic of research
- Common mistakes in machine learning
- What are the different ways that people envision using AI and how does machine learning fit into these ideas?
- How do you see users and their mental models relate to machine learning and AI?
- What are the common pitfalls of machine learning that Domingos' presents and how might a "user" address or remedy these challenges?
- Human-Centered Machine Learning (The Google Approach) (Josh Lovejoy, Jess Holbrook)
- Human-Centred Machine Learning (The Academic Approach) (Marco Gillies)
- Mental Models, Chapter 1, Some Observations On Mental Models (Don Norman)
- A Few Useful Things To Know About Machine Learning (Pedro Domingos)
- When Fitness Trackers Don'T 'Fit': End-user Difficulties in the Assessment of Personal Tracking Device Accuracy (Rayoung Yang, Eunice Shin, Mark Newman, Mark Ackerman)
- Human Computer Integration versus Powerful Tools (Umer Farooq, Jonathan Grudin, Ben Shneiderman, Patti Maes, Xiangshi Ren)
- (optional) Machine Bias: There’s software used across the country to predict future criminals. And it’s biased against blacks. (Julia Angwin, Jeff Larson, Surya, MattuLauren Kirchner)
- Interactive ML
- Machine Teaching
- What are some of the trade-offs that are made to make an ML model suitable for interactivity?
- Describe some of the user experiences for data labeling.
- Power to the People: The Role of Humans in Interactive ML (Saleema Amershi, Maya Cakmak, Bradley Knox, Todd Kulesza)
- Effective End-User Interaction with Machine Learning
- Designing Interactions for Robot Active Learners (Maya Cakmak, Crystal Chao, Andrea L. Thomaz)
- Machine Teaching: An Inverse Problem to Machine Learning and an Approach Toward Optimal Education (Xiaojin Zhu)
- Machine Teaching: A New Paradigm for Building Machine Learning Systems (Patrice Y. Simard, Saleema Amershi, David M. Chickering, Alicia Edelman Pelton, Soroush Ghorashi, Christopher Meek, Gonzalo Ramos, Jina Suh, Johan Verwey, Mo Wang, John Wernsing)
- Structured Labeling for Facilitating Concept Evolution in Machine Learning (Todd Kulesza, Saleema Amershi, Rich Caruana, Danyel Fisher,Denis Charles)
- Interactive Machine Learning (Jerry Alan Fails, Dan R. Olsen Jr.)
- Toward harnessing user feedback for machine learning
- Active Learning
- Machine Teaching
- Interactive Feature Selection / Model Selection
- What are some kinds of model feedback and how do they affect user interaction? Why does feedback affect user interaction?
- What are some ways in which current machine learning algorithms and methods have been modified for suitability in IML?
- What are some of the drawbacks to Active Learning and why might (or might not) they be addressed in the UI/UX design?
- Analysis of a Design Pattern for Teaching with Features and Labels (Christopher Meek, Patrice Simard, Xiaojin Zhu)
- What’s It Going to Cost You?: Predicting Effort vs. Informativeness for Multi-Label Image Annotations
- Designing Interactions for Robot Active Learners (Maya Cakmak, Crystal Chao, Andrea L. Thomaz)
- Interactive Optimization for Steering Machine Classification (Ashish Kapoor, Bongshin Lee, Desney Tan, Eric Horvitz)
- Active Learning with Real Annotation Costs (Burr Settles, Mark Craven, Lewis Friedland)
- CueFlik: interactive concept learning in image search (James Fogarty, Desney Tan, Ashish Kapoor, Simon Winder)
- Programming by Demonstration / Learning By Example / Apprenticeship Learning
- reinforcement learning
- inverse reinforcement learning
- From a user perspective, what makes apprenticeship learning so different from active learning?
- Describe the state and action space represent in each of these papers.
- A survey of robot learning from demonstration
- Towards Health Recommendation Systems: An Approach for Providing Automated Personalized Health Feedback from Mobile Data (Mashfiqui Rabbi, Min Hane Aung, Tanzeem Choudhury)
- Apprenticeship Learning via Inverse Reinforcement Learning (Pieter Abeel, Andrew Ng)
- Programming By Demonstration (Craig Nevill-Manning)
- Semi-supervised learning
- Community Similarity
- incremental and online learning
- What is incremental learning and what is online learning? Why do these areas of ML research aid the model personalization process?
- How might we decide to use either active learning, semi-supervised learning, or community similarity approaches for the purpose of model personalization? To help reason about this choose a specific application domain (many of these papers chose activity recognition) to reason about the decision.
- Personalized Spam Filtering with Semi-supervised Classifier Ensemble
- Improving activity classification for health applications on mobile devices using active and semi-supervised learning (Brent Longstaff, Sasank Reddy, Deborah Estrin)
- Enabling large-scale human activity inference on smartphones using community similarity networks (Nicholas Lane, Ye Xu, Hong Lu, Shaohan Hu, Tanzeem Choudhury, Andrew Campbell, Feng Zhao)
- Building Personalized Activity Recognition Models with Scarce Labeled Data Based on Class Similarities
- Potential for Personalization (Jaime Teevan, Susan T. Dumais, Eric Horvitz)
- Bootstrapping Personalised Human Activity Recognition Using Online Active Learning (Tudor Miu, Paolo Missier, Thomas Plotz)
- Model / Data Visualization
- Model Interpretabiity
- Designing for uncertainty
- What roles do interpretability and visualization play in helping a model to be truly "transparent"?
- How do multiple "views" help users to better understand data and models based on it.
- Interpretation and trust: designing model-driven visualizations for text analysis (Jason Chuang, Daniel Ramage, Christopher Manning, Jeffrey Heer)
- Statistical Modeling: The Two Cultures (Leo Breiman)
- Interpretable Decision Sets: A Joint Framework for Description and Prediction (Himabindu Lakkaraju, Stephen H. Bach, Jure Leskovec)
- Keeping Multiple Views Consistent: Constraints, Validations, and Exceptions in Visualization Authoring (Zening Qu, Jessica Hullman)
- It's not a bug its a feature
- Transparency and Socially Guided Machine Learning (Andrea L. Thomaz, Cynthia Breazal)
- Topic Model Diagnostics: Assessing Domain Relevance via Topical Alignment (Jason Chuang, Sonal Gupta, Christopher D. Manning, Jeffrey Heer)
- Algorithmic Bias,
- Algorithmic Accountability
- Algorithmic Auditing
- What is the difference between "user-centered" and "human-centered" and which best describes each of the papers for this week?
- What can we "audit" an algorithm for?
- What is a good description of how biases can manifest themselves in the implementation or design of an automated or algorithm driven system.
- Auditing Algorithms: Research Methods for Detecting Discrimination on Internet Platforms
- Algorithmic Accountability
- “Be careful; things can be worse than they appear”: Understanding Biased Algorithms and Users’ Behavior around Them in Rating Platforms (Motahhare Eslami, * Kristen Vaccaro*, Karrie Karahalios, Kevin Hamilton)
- It's not a bug, it's a feature: how misclassification impacts bug prediction (Kim Herzig, Sascha Just, Andreas Zeller)
- Community-guided Learning
- Citizen Science
- What are benefits to the user or the model that we derive from combining information from more than one user?
- What are the challenges?
- What (if anything) do the users get in exchange for their effort or privacy violation when giving up information?
- If some subset of the users in a crowd are providing incorrect or inadequate information (either because of malicious intent or misinformation), what kind of effect will this have on the system's ability to achieve it's purpose? First, think through the purpose of the system, then think through likely ways information could be incorrect or inadequate considering user intent, then think through the effect this will have on the model, finally how will the ultimate model effect the initial purpose.
- Local algorithms for interactive clustering (Pranjal Awasthi, Maria Florina Balcan, Konstantin Voevodski)
- Crowd Synthesis: Extracting Categories and Clusters from Complex Data (Paul Andre, Aniket Kittur, Steven P. Dow)
- Adaptively Learning the Crowd Kernel (Omer Tamuz, Ce Liu, Serge Belongie, Ohad Shamir, Adam Tauman Kalai)
- Community-Guided Learning: Exploiting Mobile Sensor Users to Model Human Behavior
- eBird: A Human/Computer Learning Network for Biodiversity Conservation and Research (Steve Kelling, Jeff Gerbracht, Daniel Fink, Carl Lagoze, Weng-Keen Wong, Jun Yu, Theodoros Damoulas, Carla Gomes)
- Crowd Work
- Grounded Theory
- Model Diagnostics
- Why is it important to make turk work salient in the automated systems that depend on crowd workers?
- How can human knowledge compliment automated knowledge discovery and vice versa.
- What are important design decisions that should be made when eliciting high quality information from the crowd for the purpose of training a model.
- Human Intelligence Needs Artificial Intelligence
- Turkopticon: Interrupting Worker Invisibility in Amazon Mechanical Turk (Lilly Irani, M. Six Silberman)
- Human-Computer Interaction and Knowledge Discovery (HCI-KDD): What Is the Benefit of Bringing Those Two Fields to Work Together (Andreas Holzinger)
- CrowdFlower: What I learned from labeling 1 million images
- Machine Learning and Grounded Theory Method: Convergence, Divergence, and Combination
- Topic Model Diagnostics: Assessing Domain Relevance via Topical Alignment
- Keyphrases
- User Feedback
- Explanatory Debugging
- What is an intelligent user interface and what effect does user feedback have on the system behavior?
- How could keyphrases be made practical in applications of text mining? Be explicit about what this work process might look like.
- How can the research process used to create design principles for explanatory debugging be applied to other domains we have discussed throughout this course?
- Integrating Rich User Feedback into Intelligent User Interfaces
- Descriptive Keyphrases for Text Visualization
- Principles of Explanatory Debugging to Personalize Interactive Machine Learning
- How Quantitative UX Research Differs from Data Analytics a blog post by Facebook employees.
- AlgorithmTips.org a website that Professor Nick Diakopolous started to keep tracking of where algorithms are used in government.
- Visual Explanation of Machine Learning Concepts
- A fairly good, quick, clean explanation of the Human-Centered Design Process
- Google's People + AI Research
- Interactive Machine Learning class taught at MIT
- Fairness In Machine Learning class taught by Moritz Hardt at UC Berkeley
- A Course on Fairness, Accountability and Transparency in Machine Learning curriculumn by the GIAN program of the Government of India
- Human-in-the-loop Systems class taught by Edith Law at University of Toronto
- University of Washington Interactive Data Lab
- IEEE article on Perceptual (Re)learning
- CrowdFlower's Image Annotation Software
- CrowdFlower's What We Learned Labeling 1 Million Images Book
- Domain Drive Data Mining (D3M)
- Motahhare Eslami's personal site containing a lot of work on algorithmic bias
- Algorithmic Authority (Catie Lustig)
- "Deep Teaching" i.e.: Machine Teaching + Deep Learnign
- [Concept Evolution, Drift, and Mismatch (http://ieeexplore.ieee.org/abstract/document/5694063/)
- Comparing Grounded Theory and Topic Modeling: Extreme Divergence or Unlikely Convergence? (Eric P.S. Baumer, David Mimno, Shion Guha, Emily Quan, Geri K. Gay)
- Curriculum Learning (Yoshua Bengio)
- FlowingData.com blog on Visualizing Uncertainty
- what if we asked a super-intelligent AI to make paperclips?