关于人工智能(AI)这个相当过时的概念,最近引起了大量的讨论。人工智能充斥着我们的生活,涉及了无数的应用程序,从谷歌搜索,到Uber或Lyft打车软件,到机票价格,到智能助手Alexa或Siri。对一些人来说,人工智能是一种拯救,它会提高生活质量,同时在众多成熟的行业中注入创新元素。然而,另一些人则发出了可怕的警告:我们很快就会完全被高超的机器智能所征服。人工智能是典型的软件主导,而软件是容易出现漏洞的。考虑到这一点,我们如何知道人工智能本身是足够可靠去完成工作的?或者更确切地说,我们对于人工智能的成果能够信任到什么程度?
盲目信任的风险
我们来讨论一下自动驾驶汽车。汽车自动驾驶系统的发展中,人工智能的元素发挥了很大的作用。现在制造出了大部分时间都遵守道路规则的车辆。这里有一个案例,一辆自动驾驶汽车在佛罗里达州侧面撞上一辆转弯的卡车,导致“司机”死亡。这起事故最终被归咎于“司机”的失误,因为自动控制装置被认为是在他们的设计范围内运行的。当时的躲避系统设计要求雷达和视觉系统的结果达成一致后做出闪避的动作。
然而,有证据表明,白色卡车在明亮的阳光下转弯时造成眩光晃到了这辆车的视觉系统。于是这个系统既没有察觉到,也没有对即将到来的危险做出反应。并且,在这次事故中,还有其他证据表明,当时“司机”正在看《哈利波特》电影。这名“司机”显然对自动驾驶系统过于自信,并没有对其行为进行积极的监控,也没能发现它的漏洞,尽管估计有7秒钟的可以让他预见到风险的时间。
设计的保护等级已经确定,但司机没有意识到他的自动驾驶仪仍然需要他全神贯注的注意力。在这种罕见的情况下,对于人工智能系统的错误信任引发了致命的结果。
建立信任的门槛
人工智能的发展确实令人印象深刻。美国国防部高级研究计划局(DARPA)在2016年年底完成了“网络大挑战”(CGC)竞赛。CGC上,机器可以独立地玩一种被称为“夺旗必死”的实时黑客游戏。在这里,“旗帜”隐藏在代码中,黑客的工作就是利用漏洞攻击对手的“旗帜”。CGC为最成功的球队提供了200万美元的奖金。CGC最后一轮在一个普通的封闭网络上,在没有人为干预的情况下,七台机器相互竞争。这些机器必须识别对手系统中的漏洞,在自己的系统上进行修复,并在对手的系统中利用这些漏洞来夺旗。卡内基梅隆大学的Mayhem团队获得胜利。
美国国防部高级研究规划局信息创新办公室主任John Launchbury将与CGC有关的人工智能的特征描述为手工制造的知识。这项技术从早期的专业系统中脱颖而出,对于现代人工智能的发展至关重要。在手工制造的知识中,系统根据复杂的、手动定义的规则集进行推理。这种人工智能具有推理能力,但在感知方面是有限的,它没有学习和进行抽象的能力。
在对于未来的推理型人工智能可以快速诊断和修复软件漏洞这方面建立信心的同时,需要指出CGC是有范围限制的。出于竞赛的目的,开源操作系统的扩展被简化了,被植入的恶意软件版本,相对于真实生活中的恶意软件来说,是大打折扣的。这就有意地减轻了开发负担,为竞争评估建立了统一的基础,并降低了将竞争对手的软件不经重大修改就发布到更大的联网世界的风险。
在游戏中使用“卑鄙的手段”来击败对手,是一个更黑暗的维度。尽管重新设计代码以快速隔离和修复漏洞是好的,但将这些漏洞转化为有效利用其他代码的机会是另一回事。一些人担心,如果这种能力得到释放并失去控制,它可能会变成一种“超级代码”——既规避了常见的漏洞,也能利用同样的漏洞来控制他人的网络,包括日益增长和可能还很脆弱的物联网。这种担忧促使电子前沿基金会呼吁人工智能开发者“道德规范”,以限制推理系统在可信赖的状态下执行。
机器学习增加了信任的赌注
Launchbury把统计学习这个词归于他认为的第二次浪潮。在这里,感知和学习能力很强,但这项技术缺乏执行推理和抽象的能力。虽然统计数据令人印象深刻,但机器学习会周期性地产生不可靠的结果,通常表现为奇怪的异常值。随着时间的推移,机器学习也会因受到污染的训练数据而出现偏差。考虑到并非所有的人工智能学习都能产生可预测的结果,这导致了人工智能系统可能会以意想不到的方式出错。那么,有效地定义人工智能工具的信任等级就是个很大的障碍。
从本质上讲,人工智能是一种高阶结构。在实践中,大量松散联合的实践和算法似乎构成了大多数人工智能的组成部分——通常跨越许多局部领域。事实上,人工智能已经远远超出了计算机科学的范畴,涵盖了神经科学、语言学、数学、统计学、物理学、心理学、生理学、网络科学、伦理学等领域。下图描绘了一组不完全统计的算法,这些算法是第二波人工智能现象的基础,通常被统称为机器学习。
为了实现机器学习的某种状态,有大量的潜在算法和方法存在,这就带来了一些严重的信任问题,特别是对于那些为了确保信任等级而参与软件测试的人来说。当人工智能与任务临界状态相关时,就像越来越多的情况一样,测试人员必须为多个因素建立基础,例如程序一致性、可重复性、穿透性、应用路径跟踪,或可识别的系统故障模式。
关于什么是最合适的人工智能算法这个关键问题的历史,可以追溯到1976年。人工智能从业者都面临着一个复杂的问题,那就是如何使用合适的算法来适应所需的人工智能设计。给定一个预期结果,那么,哪种算法最准确?哪一种效率最高?在预期的环境中,哪一种最容易实现?哪一种随时间拥有最大的潜力?哪些是最熟悉、最有可能让用户参与其中的?设计是基于某种集中式还是分布式代理、或者是集群软件代理?这一切要怎么进行测试呢?
这些问题表明,在各种与人工智能相关的算法和技术之间存在必要的设计权衡。这么多人工智能可替代方法的存在表明,大多数人工智能架构都远非那么一致或有凝聚力。更糟糕的是,对于推理和学习系统来说哦,它们都需要高度的基于上下文的个性化。当然,这也是在说人工智能测试,因为每一种算法和它的个性化实现都会带来独特的深度测试的挑战,即使是在单元级别。
一个高级人工智能测试评估了正确识别和分类图像的能力。在某些情况下,这项测试已经超越了人类做出此类评估的能力。例如,在人面数据库(LFW)中的数据集用13000张图片支持人脸识别技术的训练,并使用用神经网络或深度学习来校准面部识别机器学习工具。新的自动化人工智能图像识别工具可以使用这个数据表在统计学上超越人类的面部识别能力。然而,眼前的任务本质上是感性的。这些任务通过数学上相关的几何图形来区分,但没有任何形式的高阶认知推理。此外,尽管它将选择性识别的准确率与人类能力进行了比较,但在这个测试中,底层代码基础的其他关键任务方面仍未得到检测。
代码之外
机器学习的测试变得更加复杂,因为在学习环境中需要大量的数据集来“训练”人工智能。不仅人工智能应该被证明是无懈可击的,在训练中使用的数据理论上也应该具有最高的质量。然而,在现实世界中,数据集往往是不平衡的、稀少的、不连贯的,而且往往是不准确的。下面的图片表明,信息经常是由解决歧义得到的。即使在受控条件下,使用单个或多个经过验证的数据集来训练和测试分类器也会产生显着的差异。因此,即使是对分类器的受控测试也会变得非常复杂,必须仔细研究。
其他与信任相关的因素远远超出了代码的范围。因为编程既是一种创造性行为,又是一种句法科学,因此它需要一定程度的翻译解释。程序员可以将有意的或无意的文化或个人偏见注入到产生的人工智能代码中。考虑一下程序员的情况,他们创造了一种非常精确的面部识别程序,但忽略了皮肤色素沉着是识别标准中的一个决定性因素。这一动作会使结果偏离原本由皮肤颜色强化的功能。相反,罪犯的再犯率扭曲了一些以美国为基地的监狱释放决定。这意味着,一些在押人员比其他人更有机会得到提前释放的数据——而无视了普遍的情况。语义上的不一致性可能会进一步危害人工智能代码的中立性,尤其是在涉及自然语言处理或惯用语音识别的情况下。
一些人认为,所有的IT从业者都是网络安全从业者。这也对人工智能的发展和实施产生了巨大的影响。从网络安全的角度来看,“谁知道机器知道什么、机器是什么时候知道的?”的问题就变得尤为重要。机器学习的东西往往不是很容易被观察到的,而是被深度编码的。这不仅会影响新入网的数据,而且——在物联网中——这些数据会让执行器触发激活器,从而将“学习”转化为某种行为。由于缺乏具体的刺激身份和出身,整个人工智能引发的物联网刺激反应机制也变得同样不确定。在任务关键型系统中产生的行为需要严格的验证。
第三次浪潮
Launchbury预言了一个尚未完善的人工智能第三次浪潮,他将其命名为“语境适应”。这项技术需要更多的工作,将感知、学习和推理的优势集中在一起,并支持跨领域抽象的更高水平。
2017年5月,年度本体峰会被命名为“人工智能、学习、推理和本体”。印证了Launchbury的观察,峰会公报草案得出结论说,到目前为止,大多数人工智能方法,包括机器学习工具和使用的计算技术都是在运用计算技术的亚符号水平上运行,是不接近人类思维的。尽管在许多形式的人工智能中已经取得了巨大的进步,但在象征层面上对知识表现的全面处理还有待于成熟。相应地,本体作为正式的语义组织工具的实用性,对人工智能及其最终测试环境的优势有限。
语义网络涉及到以节点和弧的图形形式来表现知识。它提供了一种理解和视觉化符号之间关系的方式,通常用积极的词语来表示。在不同的上下文语境中,这些词表达不同的意思。人工智能在很大程度上是象征性的,它需要以一种更加正式的方式来处理应用语义,以实现第三浪潮的状态。在这种情况下,人工智能就变成了非线性的,因果关系通过多个执行线程逐渐解耦。这就导致了复杂的自适应系统(CAS)的建立,这种系统往往会受到非线性网络行为的影响。
在CAS中,随着时间的推移,新的行为会基于环境的情况出现。在这里,可以有多个自组织的路径通向成功或失败,所有这些路径都是由高度多样化的节点和弧线所触发的,这些节点和弧线可以随着时间的推移而变化、增长、收缩和消失。这种网络在使用嵌入式软件时,违背了传统的递归单元测试,而这与数据是相关联的。这是因为,在CAS中,整体往往不仅仅是各部分的总和。相反,从应用网络科学出现的新方法,提供了一种更好的方法来评估随时间推移而出现的动态人工智能行为。与图论相关的时间指标逐渐被更好地理解为一种描述动态行为的方法,这些动态行为是一些未能遵循线性路径来达到预期效果的行为。
除非采用可靠的方法来评估人工智能的信任程度,不然喊口号就必须谨慎。对于尚不那么可靠的技术,如果盲目信任则有可能会造成误导,有时甚至会导致危险的结果。