Blog | 大科学领域

AI软件和机器学习的质量保证

Marcos E. Mehle

人工智能(AI)仅限于实验室和研究团队的时代已经一去不复返了。
它在互联网相关行业(搜索引擎、社交网络、电子商务)的广泛存在对几乎每个人来说都是显而易见的,我们再也无法想象没有它的IT世界。
如今,人工智能的应用已经扩散到各个行业,包括那些可靠性和安全性非常重要的行业,以及那些有严格监管的行业。
由于质量保证(QA)是安全的重要贡献者,因此有必要为高风险的AI应用开发质量保证和监管框架。

 图片来自 Unsplash – Kolar.io 

人工智能和机器学习

尽管术语“人工智能”和“机器学习”(ML)有时可以互换使用,但它们之间存在着实质性的区别。
我们通常把人工智能称为“制造智能机器,尤其是智能计算机程序的科学和工程”[1],而我们把机器学习看作是AI的一个子集。
在ML中,模型是由一种能够从一组通常相当大的数据中推断模式和相关性的算法构建的。

虽然AI的一部分处理的算法是由人类可以理解的程序化规则集定义的,但在ML中,算法运行所依据的“规则”可能不容易解释,也可能根本无法解释。 这是因为在数学运算的各个层次中都存在很大程度的复杂性,而这些复杂性无法用“做到”来理解。 机器学习模型有很多类型。 其中一些不那么复杂且更易于解释,例如线性回归,逻辑回归或简单决策树,而其他一些例如深度学习算法和随机森林则是虚拟的黑匣子,其可解释性是研究的活跃领域,其中一些方法可以使 我们至少部分地了解所学到的东西。

透明度问题

“我认为我们不应该把它用在真人身上。那是因为它是一个黑匣子。
我们不知道它在做什么。[2]“从前,微软研究院的研究人员之一Rich Caruana博士在肺炎病例数据集上训练了一个神经网络,他发现它在识别肺炎出现的时间方面极其准确。但当他被要求在真正的病人身上使用它时,他并不热心。一种算法被证明能够有效预测疾病发生的可能性,但这并不意味着它可以安全使用。即使算法通过交叉验证等方法进行测试,并测试其重复性和稳定性,它仍可能在某些输入中受到故障的影响。

图片来自 Unsplash – Adrien Milcent 

为了将这种失败的可能性降到最低,可以测试ML模型,特别是在敏感领域。一般来说,ML模型的结果是一种预测,很难与某种期望值进行比较或验证。然而,开发人员可以通过比较预测值和模型输出值来测试机器学习模型的性能,这不同于对ML模型进行任何输入的测试,因为期望值的范围是有限的。所谓的ML模型的黑匣子测试可以使用多种技术,如变形测试、模型性能、双重编码、与线性模型的比较、覆盖引导的模糊和使用变化的数据片进行测试。还有因果关系的问题。机器学习算法不知道在输入数据上发现的规律是否真的是预测的原因,还是仅仅是一种相关性。

质量标准

目前针对不同类型软件的监管框架依赖于一种软件和系统工程范例,这种范例在设计时显然没有考虑到机器学习。
广泛使用的标准的软件开发生命周期过程,像IEC62304医疗设备软件,ISO26262[3]为通用汽车或IEC14207软件,基于定义需求,定义体系结构,将系统分解成更小的单位,整合,核查和验证结果——被称为v模型。

图片来自 Franck V.Unsplash

所有这些活动都是基于所有软件错误都是系统的,而不是随机的,但是由于实际上不可能测试一个软件的所有可能的“内部状态”,所以最好从更小、更可测试的单元构建复杂的软件。
那么,您如何有效地将这些概念应用到软件中呢?这些软件是通过在数据集上运行自动化的训练过程而以非确定性的方式开发的,并且在软件工程的“单元级”似乎不存在的地方?
幸运的是,对于这类问题有一些短期的解决方案,比如将ML算法视为一个黑盒子或“来历不明的软件”,然后通过外部风险缓解来降低与此相关的风险。
但这种方法更多的是一种变通方法,而不是实际的解决方案。

目前至少有两个正在开发的国际标准可能会解决这些问题:ISO/IEC CD 23053(“使用机器学习的人工智能系统框架”)和ISO/AWI TR 23348(“统计—大数据分析—模型验证”)。
这些标准有望为评估人工智能软件的合规性提供一个共同的方法,尤其对为受管制行业开发高风险的人工智能应用程序有用。

监管框架

考虑到人工智能和ML应用的巨大进步,标准和监管框架明显滞后。目前还没有监管文档来解决ML和其他软件之间存在的实质性差异所带来的具体挑战。最近,欧盟发表了一份白皮书,讨论了AI[4]高水平的监管合规方法。

图片来自 National Cancer InstituteUnsplash

白皮书提出了一种侧重以下关键方面的方法:

对培训数据的要求;
记录数据和方法的要求;
应用规范、特性的要求;
对健壮性和准确性的要求;
人类监督的需求和特定AI应用的特定需求。很明显,一旦可用,欧盟法规将不再允许“黑匣子”方法(至少对于高风险的应用),它将需要基于流程的方法,包括数据的收集、模型的设计/选择和人工监督的需求。

医疗保健行业

在这方面,美国食品和药物管理局(FDA)可能走得最远,它提出了修改人工智能机器学习软件[5]的监管框架,以及批准使用机器学习的医疗设备的具体方法和步骤。ML在医疗保健行业的应用潜力是巨大的,市场上已经有几个应用获得了FDA[6]的批准。
相反,在欧盟,由于过渡到新的MDR和新的医疗软件分类规则而产生的混乱,似乎加剧了对医疗AI主题缺乏具体指导的情况。

结论

即使在受监管的行业和高风险应用领域,机器学习也有巨大的潜力。然而,质量保证(QA)管理框架似乎还没有为此做好充分准备。主要的挑战来自于为关键应用程序开发和认证软件的方法,而这些软件的设计并不能适应来自机器学习的挑战。
不同的监管机构正在制定新的监管规定,以应对这些挑战。标准化组织正在为机器学习应用程序制定新标准,并为此提供支持。

关于作者

Marcos E. Mehle是医疗和其他复杂领域产品质量保证领域的专家。他于2011年加入Cosylab,曾担任硬件工程师、项目经理、集团经理和质量管理主管。Marcos拥有电子电气工程学士学位。

[1]   John McCarthy, “What is artificial intelligence?” (http://jmc.stanford.edu/articles/whatisai/whatisai.pdf)

[2]   https://www.microsoft.com/en-us/research/blog/making-intelligence-intelligible-dr-rich-caruana

[3] https://arxiv.org/pdf/1709.02435.pdf

[4] https://ec.europa.eu/info/sites/info/files/commission-white-paper-artificial-intelligence-feb2020_en.pdf?utm_source=CleverReach&utm_medium=email&utm_campaign=23-02-2020+Instituts-Journal+07%2F20%3A+Wo+waren+Sie%3F+Es+ging+um+Sie%21&utm_content=Mailing_11823061

[5] https://www.fda.gov/files/medical%20devices/published/US-FDA-Artificial-Intelligence-and-Machine-Learning-Discussion-Paper.pdf

[6] https://news.bloomberglaw.com/tech-and-telecom-law/fda-signals-fast-track-approval-for-ai-based-medical-devices-1

Others Also Read