oxu*_*xuf 5 requirements artificial-intelligence machine-learning safety-critical
首先,我读了这个.但我想扩大.总结一下:
在设计安全关键系统时,设计人员必须评估一些指标,以确保系统按预期工作.它是一种数学证明,具有足够低的复杂性,可供人类使用.它与问责制,可靠性,可审计性等有关......
在另一方面,在这一点上,AI是,似乎工作得很好,但大多数时候,我们做一个黑盒不具有证明其正确性的(主要是因为在框中正在进行的事情太复杂,是分析),它更像是一个统计确定性: 我们训练了系统,系统在所有测试中都表现良好.
那么,有些问题吗?
Q1.这两个模糊的想法现在有意义吗?
Q2.是否可以将AI用于安全关键系统并确保其性能?我们能否确定AI的确定性行为?任何参考?
Q3.我想已经有一些公司在汽车领域销售基于AI的安全关键系统.他们如何设法为这样一个限制性市场认证他们的产品?
编辑
关于Q1:感谢Peter,我意识到,例如,对于汽车示例,没有关于完全确定性的要求.ASIL D水平是汽车系统最严格的水平,只需要一个失效概率的上限.其他ISO26262标准和级别也是如此.我会改进这个问题:
Q1.系统设计中是否有任何安全标准,在任何级别/子组件,任何领域/领域,是否需要完全确定性?
关于Q2:即使不需要完全确定性,问题仍然存在.特别是,我现在正在阅读有关AI的可能攻击:我将在此处发布链接(此时我无法访问它们).
关于Q3:现在我了解他们将如何获得认证.无论如何,任何参考都会非常受欢迎.
没有任何解决方案或技术类别实际上获得了安全关键系统的认证。在指定系统时,识别危险,定义要求以避免或减轻这些危险到适当的置信水平,并提供设计和实施满足这些要求的证据。认证只是签署,在特定系统的背景下,已提供适当的证据来证明风险(某些事件发生的可能性的产物,以及如果该事件发生时的不利影响)是可接受的低的。最多,为特定产品(在您的情况下为 AI 引擎)提供或开发了一组证据,这些证据将在其他系统组件(也需要获取或提供证据)的上下文中进行分析,以及组装这些组件的方法进入工作系统。获得认证的是系统,而不是用于构建它的技术。特定技术或子系统提供的证据很可能会被重用,但将在使用该技术或子系统的每个完整系统的需求上下文中进行分析。
这就是为什么有些技术被描述为“可认证”而不是“已认证”的原因。例如,某些实时操作系统 (RTOS) 的版本随附了一组证据,可用于支持对其所使用系统的接受。但是,这些操作系统未经过认证可用于安全关键系统,因为证据必须在使用 RTOS 的每个总系统的总体要求的背景下进行评估。
提倡形式证明为某些类型的系统或子系统提供所需的证据。一般来说,形式证明方法不能很好地扩展(证明的复杂性增长至少与系统或子系统的复杂性一样快),因此经常使用证明以外的方法。无论如何提供证据,都必须根据正在构建的整个系统的要求进行评估。
现在,人工智能在哪里适合这个?如果要使用 AI 来满足与减轻或避免危险相关的要求,则有必要提供证据证明它们在整个系统的背景下适当地这样做。如果 AI 未能满足这些要求,则整个系统(或受 AI 未能满足要求影响的其他子系统)有必要遏制或减轻影响,因此系统作为一个整体满足其完整的一套要求。
如果 AI 的存在阻止提供足够的证据证明整个系统满足其要求,则不能使用 AI。无论在技术上无法提供此类证据,还是现实世界的限制阻止在正在开发的系统的上下文中提供该证据(例如,对可用人力、时间和其他影响交付系统能力的资源的限制),这同样适用并提供其符合要求的证据)。
对于具有非确定性行为的子系统,例如 AI 的学习,任何无法随着时间的推移重复给出结果的情况都会使提供所需证据变得更加困难。提供的证据中存在的差距越多,就越有必要提供证据证明系统的其他部分减轻了已识别的危害。
一般来说,单独测试被认为是提供证据的一种糟糕方式。基本原因是测试只能根据需求确定存在缺陷(如果测试结果证明),但不能提供不存在缺陷的证据(即通过所有测试用例的系统不提供任何未测试的证据为了)。困难在于证明测试提供了足够的需求覆盖。这为在具有安全相关要求的系统中使用 AI 引入了主要障碍——系统级的工作必须提供满足要求的证据,因为提供足够的基于测试的证据与人工智能。
在系统级别使用的一种策略是分区。AI 与其他子系统的交互将受到显着限制。例如,人工智能可能不会直接与可能导致危险的执行器交互,而是会向其他子系统发出请求。然后,证据的负担就放在其他子系统满足要求的程度上,包括它们与执行器交互的方式。作为提供该证据的一部分,其他子系统可能会检查来自 AI 的所有数据或请求,并忽略任何会导致不当驱动(或任何其他违反整体系统要求的行为)。因此,人工智能本身实际上可能根本不满足任何与安全相关的要求——它可能只是简单地获取信息或向其他子系统提供信息,而那些其他子系统实际上更直接地有助于满足整体系统要求。鉴于 AI 的开发人员可能无法提供所有需要的证据,可以公平地打赌,系统开发人员会尝试限制 AI(如果使用)可能对整个系统的行为产生的影响。
另一个策略是限制人工智能的学习机会。例如,每个训练集都会提供证据——在人工智能本身的背景下——人工智能以可预测的方式运行。每次更新训练集时都需要提供全部证据,然后需要重新对整个系统进行分析。这可能是一项重大任务(即一个漫长而昂贵的过程),因此 AI 或其训练集可能不会以特别高的速度更新。