From Hazard Identification to Controller Design: Proactive and LLM-Supported Safety Engineering for ML-Powered Systems

📄 arXiv: 2502.07974v1 📥 PDF

作者: Yining Hong, Christopher S. Timperley, Christian Kästner

分类: cs.SE, cs.AI, cs.LG

发布日期: 2025-02-11

备注: Accepted for publication at the International Conference on AI Engineering (CAIN) 2025

DOI: 10.1109/CAIN66642.2025.00021


💡 一句话要点

提出LLM辅助的主动安全工程方法,解决ML系统潜在风险识别与控制问题

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 机器学习安全 风险分析 大型语言模型 安全工程 系统理论过程分析 LLM辅助 主动安全

📋 核心要点

  1. ML系统复杂性和不确定性导致潜在风险,但现有安全工程方法因依赖专家和耗时而难以应用。
  2. 利用LLM自动化STPA过程,结合人工监督,降低专家依赖,提高风险分析效率。
  3. 通过案例研究,验证了该方法能够有效预测和识别ML系统中的潜在风险。

📝 摘要(中文)

机器学习(ML)组件越来越多地集成到软件产品中,但它们的复杂性和固有的不确定性常常导致对个人和社会产生意想不到的危险后果。尽管存在这些风险,从业者很少采用主动方法来预测和减轻风险。传统的安全工程方法,如失效模式与影响分析(FMEA)和系统理论过程分析(STPA),为早期风险识别提供了系统的框架,但很少被采用。本文倡导将风险分析整合到任何ML驱动的软件产品的开发中,并呼吁提供更多支持,使开发人员能够更容易地进行此过程。通过使用大型语言模型(LLM)部分自动化修改后的STPA过程,并在关键步骤中进行人工监督,我们期望解决两个关键挑战:对经验丰富的安全工程专家的严重依赖,以及传统风险分析耗时、劳动密集型的性质,这常常阻碍了其集成到实际开发工作流程中。我们用一个运行示例来说明我们的方法,证明许多看似无法预料的问题实际上是可以预料的。

🔬 方法详解

问题定义:论文旨在解决机器学习驱动的系统中,由于ML组件的复杂性和不确定性带来的潜在风险难以被有效识别和控制的问题。现有安全工程方法,如FMEA和STPA,虽然系统化,但高度依赖经验丰富的专家,且过程耗时费力,难以集成到实际的ML系统开发流程中。这导致许多潜在的风险在早期阶段未被发现,最终可能造成严重的后果。

核心思路:论文的核心思路是利用大型语言模型(LLM)的能力,部分自动化传统的STPA(System-Theoretic Process Analysis)过程。通过LLM的辅助,可以降低对安全工程专家的依赖,并显著减少风险分析所需的时间和人力成本。同时,在关键步骤中保留人工监督,以确保分析的准确性和完整性。这样,可以将风险分析更有效地集成到ML系统的开发流程中,从而更早地发现和缓解潜在的风险。

技术框架:该方法采用一种修改后的STPA流程,并将其与LLM相结合。整体框架包含以下几个主要阶段:1) 系统定义:明确ML系统的目标、组件和边界;2) 危害识别:利用LLM生成潜在的危害场景;3) 控制结构分析:分析系统中存在的控制措施及其有效性;4) 不安全控制行为识别:利用LLM识别可能导致危害的不安全控制行为;5) 风险缓解:制定相应的风险缓解措施。在每个阶段,LLM提供初步的分析结果,然后由人工专家进行审核和修正。

关键创新:该方法最重要的创新点在于将LLM引入到传统的安全工程流程中,实现了风险分析的部分自动化。这与传统方法完全依赖人工专家进行分析形成了鲜明对比。通过LLM的辅助,可以显著提高风险分析的效率和可扩展性,使其更容易被集成到实际的ML系统开发流程中。此外,该方法还强调在关键步骤中保留人工监督,以确保分析的准确性和可靠性。

关键设计:论文中并未详细描述LLM的具体选择和训练细节,以及prompt的设计。但是,可以推断,prompt的设计至关重要,需要针对STPA的每个阶段,设计合适的prompt,引导LLM生成有用的分析结果。此外,人工监督的环节也需要精心设计,需要明确人工专家需要关注的重点和审核的标准。

🖼️ 关键图片

fig_0
fig_1

📊 实验亮点

论文通过一个运行示例展示了该方法在识别潜在风险方面的有效性。虽然没有提供具体的性能数据或对比基线,但该示例表明,许多看似无法预料的问题实际上是可以被预测和避免的。这验证了该方法在提高ML系统安全性方面的潜力。

🎯 应用场景

该研究成果可广泛应用于各种ML驱动的软件系统,尤其是在安全攸关的领域,如自动驾驶、医疗诊断、金融风控等。通过更早地识别和缓解潜在风险,可以提高ML系统的安全性、可靠性和可信度,从而减少事故和损失,并促进ML技术的更广泛应用。

📄 摘要(原文)

Machine learning (ML) components are increasingly integrated into software products, yet their complexity and inherent uncertainty often lead to unintended and hazardous consequences, both for individuals and society at large. Despite these risks, practitioners seldom adopt proactive approaches to anticipate and mitigate hazards before they occur. Traditional safety engineering approaches, such as Failure Mode and Effects Analysis (FMEA) and System Theoretic Process Analysis (STPA), offer systematic frameworks for early risk identification but are rarely adopted. This position paper advocates for integrating hazard analysis into the development of any ML-powered software product and calls for greater support to make this process accessible to developers. By using large language models (LLMs) to partially automate a modified STPA process with human oversight at critical steps, we expect to address two key challenges: the heavy dependency on highly experienced safety engineering experts, and the time-consuming, labor-intensive nature of traditional hazard analysis, which often impedes its integration into real-world development workflows. We illustrate our approach with a running example, demonstrating that many seemingly unanticipated issues can, in fact, be anticipated.