Responsible AI Engineering (CS 594)---Spring 2025
Course Description
The objective of this course is to familiarize students with the state-of-the-art artificial intelligence engineering techniques that incorporate deep neural network (DNN) and Large Language Models (LLMs) as well as their safety, security, and accountability implications. The course first overviews the fundamentals of engineering AI systems that includes requirements, architecture design, val- idation, and operation of AI-enabled software. Then, the course covers responsible AI-Software development that include topics such as security, privacy, fairness, interpretability, explainability, transparency, and trust, etc.
Course Objectives
Upon completion of this course, students will be able to:
- How to reliably deploy and update AI models in production? How can we test the entire machine learning pipeline? How can MLOps tools help to automate and scale the deployment process?
- How do we scale production ML systems? How do we design a system to process huge amounts of training data, telemetry data, and user requests? Should we use stream processing, batch processing, lambda architecture, or data lakes?
- How to test, debug, and repair production ML systems? How can we evaluate the quality of a model's predictions in production? How can we test the entire AI-enabled system, not just the model? What lessons can we learn from software testing, automated test case generation, simulation, and continuous integration for testing for production machine learning?
- Which qualities matter beyond a model’s prediction accuracy? How can we identify and measure important quality requirements, including learning and inference latency, operating cost, scalability, explainablity, fairness, privacy, robustness, and safety?
- What does it take to build responsible products? How to think about fairness of a production system at the model and system level? How to mitigate safety and security concerns? How can we communicate the reasons of an automated decision or explain uncertainty to users?
Course Topics
- From Models to AI-Enabled Systems (weeks 1-2)
- Requirements, Model Quality, and Unit Testing (weeks 3-4)
- Architectural Design for AI-enabled Systems (week 5)
- Data and Infrastructure Quality (weeks 6-7)
- Safety and Security Concerns (weeks 8-10)
- Ethics and Fairness (weeks 11-12)
- Explainability, Interpretability, Transparency, and Accountability (week 13)
- Emerging Topics (weeks 14-15)
- Project demo and presentations (week 16)
Acknowledgment: This course is adapted from the fantastic Machine Learning in Production course at CMU by Dr. Christian Kästner. Special thanks to Christian for the advice and assistance in presenting this course at UIC.