目前,软件开发与管理的典型范式以敏捷开发过程和开发运维过程 DevOps 为代表。作为数据驱动开发范式的早期里程碑,跨行业数据挖掘标准流程(CRISP-DM)将数据驱动的研发活动组织为 6 个阶段:业务理解、数据理解、数据准备、建模、评估和部署。CRISP-DM 提出了一个规范的工作步骤,建立了数据准备、模型设计和评估的需求分析周期,形成了闭环迭代周期。CRISP-ML(Q)扩展了 CRISP-DM 以支持机器学习应用程序的开发,其特别关注机器学习模型的质量评估,包括鲁棒性、可扩展性、可解释性、模型复杂性和资源需求[28]。

Vogelsang 等人[14]尝试从数据科学家的视角定义机器学习系统的需求工程特征和挑战。他们指出了开发范式中的主要变化,包括新的机器学习的性能指标和质量要求等,如可解释性、公平性和法律法规要求。Amershi 等人[15]研究了微软的几个典型机器学习项目,总结了 AI 应用的重要挑战和成功要素包括:可持续的端到端通路;数据收集、清洗整理和可访问性;模型评估、进化和部署等。然后,提出了一个 9 阶段的过程模型,以解决上述数据相关的问题,如数据收集、清洗和标记等,以及模型相关的问题,如模型需求、特征工程、训练、评估、部署和监控。其中,从模型评估和监控可以向后反馈到最初的步骤,从模型训练也可以反馈到特征工程步骤,如在表示学习中构建反馈回路Nalchigar 等人[29]提出了一种目标驱动的需求建模方法,将典型机器学习目标与任务的匹配过程表示为业务分析的解决方案模式。该方法将业务决策目标映射为几个不同抽象层次的问题,然后通过将机器学习算法应用于给定的数据集获得洞察来回答这些问题。Washizaki 等人[110]回顾了机器学习系统的常用架构模式和设计模式,内容涵盖多个机器学习子任务,例如用于数据存储的'数据湖模式'、用于数据分析的'原始数据提取模式''业务逻辑与机器学习工作流的解耦模式''事件驱动的微服务架构模式''机器学习模型的版本管理模式'等,是针对机器学习应用程序设计过程中特定问题的可复用的局部解决方案。例如,机器学习应用需要依从特定法律法规、特定领域的物理定律和化学反应等。因此,模型可解释性、科学伦理、公平性、领域定律的依从性设定与评估已成为机器学习应用需求分析的重点。

有研究者提出将科学知识与端到端机器学习相结合用于工程和环境相关研究,以及将机器学习与仿真相结合的混合建模方法[92]。知识与机器学习的整合可以双向进行,可以用机器学习增强因果关系不明显的领域模型,也可以使用常识知识、常识和领域知识模型改善特定领域的学习模型[124]。该方向也被称为物理感知机器学习(physical-aware machine learning)[90]或者具有先验知识的机器学习(informed machine learning)[91]。

软件开发范式演化涉及系列相关研究工作,我们将调研文献梳理分为 11 个大类,如表 1 所示。其中,数量占比超过 10%的有 4 类,分别是非功能性指标、数据与知识融合、可解释性、智能化应用。非功能性指标、数据与知识融合这 2 个主题中也包含大量可解释性相关的具体研究议题。所以综合来看,可解释性是机器学习需求工程中非常重要的议题之一。

机器学习需求工程:可解释性的重要性和需求分析

原文地址: https://www.cveoy.top/t/topic/FQz 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录