AI Design Guidelines I learned from grad school and online resources
Back in 2018 and 2019, I took some AI design classes during my master’s program at Carnegie Mellon University (MHCI). I also studied Google and IBM’s AI design guidelines, after which I summarized all the key learnings I got from these experiences, and here they are:
1. Methodology: how to discover AI solutions?
Machine learning runs on data. When designing what we want the AI to do, we also need to think about data and the technology. One method I learned from CMU is called MatchMaking created by Elizabeth Churchill back in 1999. After trying it in a school project, my understanding of it is basically to match user needs and AI solutions through identifying user behavior and data you have access to.
For instance, you can first list out identified user needs and user behaviors in the scenario. Then you can translate them into potential data you can capture, and see what data can be used as input of the AI and what will come out of it.
Or you can start from data you have access to, and see what user behavior they indicate and what user needs can be fullfilled.
2. Mindset: AI is not necessarily better solutions than heuristic ones
For many problems, AI is not a better solution than heuristic ones. We should always develop a heuristic solution and compare the two not only on typical metrics like user value, ease of development, business impact, but also on risk of error.
3. Designers can do more than flows and screens
Developing AI model doesn’t have to be solely on engineers. There are non-coding things UX designers / researches can help with.
For instance:
- Designers can help identify good loss function through finding better indicators of user behavior.
- Designers can help understand user’s expectation and help identify appropriate threshold of metrics.
- Designers can help identify potential bias in data to get higher-quality data.
- Designers can develop better ways to gather labeled data.
4. 6 Things to keep in mind when designing with AI
👥 Relationship
Understand the desired relationship of the user and the product. Do user want automation or augmentation? Should it be a consultant who give you advices? a colleague who does part of the work? An extra pair of hand when you need it? Do user expect it to learn from them and grow fast?
❤️ Ethics
Pay close attention, could it break social norm or harm user’s benefit in edge cases?
📊 Explanation
Explain and help users make decisions, identify errors, and build trust for the product. We can explain the result by showing data source, rationales, examples, confidence level, or an interactive tools to see different results.
👐 Control
User should always be able to opt out, or have full control over the result. As designers, we need to keep in mind that efficiency is not always the design goal, user satisfaction is, which sometimes can conflict with automation.
❗️Errors
Errors can happen even if all the code is running correctly. Typical type of errors include user error, system error, context error, and bias. For instance, users may intentionally repeat an error if they find it amusing. In this case, we may not want the algorithm to learn from it. Designers should design to prevent and recover from errors, making sure the experience is still good and trustworthy.
✍️ Feedback
Users’ feedback, either implicit or explicit, is crucial to help AI systems evolve. Designers should design a feedback mechanism.