[论文解读] Teaching Software Engineering for AI-Enabled Systems
本文介绍了一门新的研究生课程,旨在向机器学习学生传授构建稳健、可扩展且具备伦理意识的AI系统所需的软件工程原则,重点涵盖模型版本控制、数据流水线工程和公平性等现实世界关切问题。课程通过自定义模拟器开展实践性作业,并将所有教学材料以知识共享许可公开共享。
Software engineers have significant expertise to offer when building intelligent systems, drawing on decades of experience and methods for building systems that are scalable, responsive and robust, even when built on unreliable components. Systems with artificial-intelligence or machine-learning (ML) components raise new challenges and require careful engineering. We designed a new course to teach software-engineering skills to students with a background in ML. We specifically go beyond traditional ML courses that teach modeling techniques under artificial conditions and focus, in lecture and assignments, on realism with large and changing datasets, robust and evolvable infrastructure, and purposeful requirements engineering that considers ethics and fairness as well. We describe the course and our infrastructure and share experience and all material from teaching the course for the first time.
研究动机与目标
- 弥合AI教育中过度关注模型准确率而忽视真实世界部署所需软件工程实践的空白。
- 为接受过机器学习训练但缺乏系统经验的学生提供关键的软件工程技能(如版本控制、持续集成和系统架构),以构建可靠的AI系统。
- 弥合专注于模型性能的数据科学家与重视可扩展性、可维护性和风险管理的软件工程师之间的鸿沟。
- 引入真实、现实的系统挑战,如数据质量、模型更新和伦理考量(例如公平性),超越教科书中的机器学习场景。
- 提供可复用的开源课程内容与仿真基础设施,支持其他AI与软件工程教育者采用。
提出的方法
- 设计了一门以软件工程视角为核心的研究生课程,聚焦AI系统开发,目标对象为系统经验有限的机器学习学生。
- 开发了一个自定义仿真环境(模拟器),用于模拟具有真实用户行为、数据流和模型更新的电影推荐系统。
- 整合核心软件工程实践:模型与数据的版本控制、CI/CD流水线、A/B测试以及AI系统的威胁建模。
- 围绕真实世界场景设计作业:构建可扩展的推荐流水线、在生产环境中部署模型、评估信贷评分中的公平性,以及分析安全风险。
- 以Hulten的《Building Intelligent Systems》作为基础教材,并辅以客座讲座和实用工具。
- 将所有课程材料——包括幻灯片、作业和模拟器代码——以知识共享许可发布,供他人复用与改编。
实验结果
研究问题
- RQ1如何有效地向具有机器学习背景但系统经验有限的学生传授软件工程原则?
- RQ2在真实系统中部署和维护AI组件时,除模型准确率外,关键的工程挑战是什么?
- RQ3如何设计真实、可扩展且可扩展的仿真环境,以在教育场景中教授AI系统工程?
- RQ4伦理考量(如公平性和可解释性)在系统设计中扮演什么角色,如何将其整合进软件工程工作流程?
- RQ5支持AI系统中的数据版本控制、模型质量监控和持续部署,需要哪些工具和实践?
主要发现
- 课程成功吸引了12名研究生参与AI系统中的软件工程实践,学生对模型版本控制和公平性评估等主题的相关性反馈积极。
- 自定义模拟器虽功能完整,但工程投入较大,且规模不足(160,000名用户,70个事件/秒),限制了对真实性能与成本权衡的讨论。
- 学生在基础软件工程知识方面存在明显短板,表明需为机器学习与软件工程学生分别设置独立课程路径。
- 现有公平性、可解释性和数据版本控制工具被认为尚不成熟或难以使用,凸显AI系统工程中亟需更优工具支持。
- 课程表明,将伦理与运维关注点(如A/B测试、风险管理)融入AI教育,能显著拓宽学生的系统设计思维。
- 所有课程材料,包括模拟器和作业,均已按知识共享许可发布,可供其他教育者复用与改编。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。