最近有关时下流行的人工智能(AI)的言论正不绝于耳。AI充斥着我们的日常生活,从Google搜索到Uber、Lyft打车、再到航班定价、以及Alexa和Siri等众多应用中都有它的身影。对于一部分人来说,人工智能确实解决了他们的困难,它大大提高了人们的生活质量,同时也为各行各业创造了大量产业上的革新。然而,另一部分人则提出可怕的警告说,我们很快就会完全被卓越的机器智能所征服。AI中通常,但也并非一定,由软件主导控制,然而软件很容易出现漏洞。鉴于这点,我们该如何确定AI本身是否足够可靠以完成其任务,或简单来说,我们可以有多信任AI所产生的结果?
信任错位的风险
就自动驾驶而言,AI被应用于众多萌发的自动驾驶系统中。这样可以使车辆遵守交通规则,当然算法首先自身得遵守。在佛罗里达州,有一个案例,一辆自动驾驶的汽车侧面撞击了一侧的卡车,造成驾驶座上“司机”的死亡。该起事故最终归因于驾驶员的失误,因为自动驾驶仍被认为是其驾驶座上司机的操作。当时的回避系统在设计上需要雷达和视觉系统在达成一致后才采取回避行为。然而有证据表明,视觉系统遇到来自白色卡车反射阳光所产生的眩光,该系统既未察觉也没有对即将出现的危险作出回应。然而,重要的是,有其他证据表明,当时“司机”正在观看 哈利波特 电影。驾驶员显然过度信任了自动驾驶系统,尽管估计在碰撞前有七秒钟的反映时间 1 ,但他并没有主动监控自动驾驶行为,也没有对其进行操控,酿成了悲剧。在设计保证书上已明确在使用自动驾驶时仍然需要司机全身心的关注,但司机未能履行。在这起少数案例中,对基于AI的系统的信任错位产生了致命的后果。
建立信任区间
AI的进步着实令人印象深刻。DARPA是早期成功举办了自动驾驶竞赛的赞助商,其于2016年底举办了信息技术大挑战赛(CGC)。CGC建立了一个独立的机器,可以进行一个被称为“抢旗帜”的黑客实时游戏。在游戏的代码中,隐藏着一个“旗帜”,黑客的任务就是利用漏洞来找到并获取对方的旗帜。CGC向获胜的团队提供了200万美元的奖金。在最终的CGC比赛轮次中,在一个普通的封闭式网络上相对放着七对机器。在没有人工干预的情况下,这些机器需要识别对方系统中的漏洞,并在自己的系统上修复它们,再利用这些漏洞来攻破对方系统抢到旗帜。最终,来自卡内基梅隆大学的队伍Mayhem赢得了比赛的胜利 2 。
DARPA的信息创新办公室主任John Launchbury将与CGC类似的AI类型称为 手工知识 。它们是从早期的专家系统发展而来,这种技术对于现代AI的发展仍然至关重要。在这些手工知识中,系统的决策是基于精心设计、手动定义的规则集而来的。这种类型的人工智能善于推理,但在感知上是有局限性的。况且,它不具备学习或抽象的能力 3 。
虽然我们越来越相信,在未来,推理AI可以快速诊断和修复软件漏洞。但需要注意的是在CGC比赛中,范围是有意被限制了的,而放到开源操作系统层面这就会被简化为互相之间的竞争 4 ,已知的恶意软件会被植入真实的注水版本中 5 。这可以减轻开发的负担,对竞争评估产生统一的基础。无需重大修改,就可以限制竞争对手把软件发布到更大范围的网络中。
使用这类“肮脏的技巧”来在竞争中打败对手增加了行业中一个新的阴暗面。虽然其重新编写代码以快速隔离并修复漏洞的能力非常好,但将这些漏洞转化为用于攻击他人代码的行为就另当别论了。有人担心,如果这样的能力被释放并失去控制,它就可能成为一种“超级代码”,这样可以避免常见的漏洞,同时能够利用相同的漏洞来控制他人的网络,影响面还会包括正蓬勃增长但可能较为脆弱的物联网(IoT)。这一担忧促使电子前线基金会(Electronic Frontier Foundation)在AI开发者中呼吁采用“道德准则”来限制推理系统以可靠的方式来运行 4 。
机器学习引发信任博弈
Launchbury将 统计学习(statistical learning) 归类为他称为的第二次AI浪潮。在这次浪潮中,强调的是感知和学习的过程,但是这项技术缺少推理和抽象化的能力。令人印象深刻的是,根据统计数据,机器学习时常产生不可靠的结果,通常表现为奇怪的异常值。机器学习模型也可能随着时间的推移受到污染的训练数据的影响而产生扭曲 3 。鉴于并不是所有的AI学习都能产生可预测的结果,这就导致AI系统可能以意想不到的方式出现问题。有效地定义基于AI的工具的可信水平成为一个巨大难题 6 。
AI的核心是一个高度有序的结构。在实践中,大部分AI实例是由无数的松散的实现和算法结合而成的,并且它们通常会跨越多个领域。事实上,AI远远超出了计算机科学的范围,它包括神经科学、语言学、数学、统计学、物理学、心理学、生理学、网络科学、伦理学等诸多领域。在图1中列出了一个不太完全的算法列表,这些算法是第二次AI浪潮的基础,通常统称它们为机器学习。
图1:一些流行的AI机器学习算法
潜存在机器学习底层的大量算法也带来了巨大的信任问题,尤其对于确保程序可信的软件测试人员来说。当AI与任务关键性相关联时,案例越多,测试人员必须基于多个因素来建立测试的基础,如程序一致性、可重复性、透彻性、被使用的路径跟踪或可识别的系统故障模式等。
找到最为合适的AI算法这一重要问题最早可追溯到1976年 3 。日常的AI从业者面临着这一令人困惑的问题,即使用哪种算法来应对所需的AI设计。假定一个预期的结果,哪种算法最为精确?哪个最高效?在预期的环境中哪种实现最为直接?随着时间的推移,哪个崩溃的可能性最小?哪些是最熟悉的,也最有可能被使用的?系统设计是否基于某种形式的中心节点、分布式代理、甚至软件代理商?所有这些能怎样被测试?
这些问题表明,在广泛可被替代的AI相关算法和技术的选择上,需要在设计上做出一定的权衡。事实上,AI的这种可替代性的存在本身就表明,大多数AI架构远非一致及内聚的。更糟糕的是,推理和学习系统需要高度的基于上下文的定制。这当然会扩展到AI的测试阶段,因为每个算法和它的定制实现都带来了自己独特的深层次测试挑战,即便是在单元测试层面也是如此。
一个上层的AI测试能评估正确图像识别和分类的能力。在某些情况下,这种测试已经超越了人类进行此类判断的能力。例如,Wild(LFW)数据集中的标记面部数据有大约13,000张图像,可用于进行面部识别,通过使用神经网络或深度学习来训练和校准识别面部的机器学习工具。新的自动AI图像识别工具可以通过使用该数据集在整体上胜过人类的脸部识别能力 7 。然而,该任务本质上就是感性的。这些任务通过数学相关的几何模式进行区分,但是没有任何形式的高阶认知推理。此外,虽然将其选择性识别的准确性与人类的能力进行比较,但在测试中,底层代码库的其他任务的关键点并未被检查。
代码之外
图2:信息的来源可能往往不是明确的
其他信任相关的因素更远远超出了代码的范围。编码是一种创造性的行为,同时也是有语法规范的,所以它需要进行一定程度的解释过程。编码者可能会有意无意地将文化或个人偏见注入到最终的AI代码中。想象一个编码人员创建了一个高度精确的面部识别程序,但在识别过程中没有考虑皮肤色素沉着因素。这种行为可能会产生和对肤色有增强处理的算法不一样的结果。相反,罪犯的重复犯罪率则会使一些基于AI的监狱释放判决在种族上产生偏见。这就意味着某些罪犯比其他人更有可能获得提前释放的机会,而无关其日常表现 9 。语义的不一致性可能更进一步危及AI代码的中立性,特别是在涉及到自然语言处理或习惯用语识别的情况下更是如此。
有人提出如今所有的IT职业都是网络安全相关职业 10 。这也对AI的开发及其实现领域产生了巨大的影响。从网络安全的角度来看,“谁知道机器知道什么,以及机器是何时知道这些的”这个问题变得很重要。机器学到的东西通常不容易被看到,这是深藏在其编码中的。这不仅影响到新的内部化的数据,而且在IoT中,这些数据可以跳过决策触发器,并激活执行器来转化“学习”的结果成为某个实际行为。缺乏了具体的标识和准确性,所有基于AI的物联网刺激反馈机制就变得同样不可确定。无论如何,在关键任务系统中所产生的操作都需要进行严格的校验。
第三次浪潮
Launchbury预见到我们需要一个尚未完成的AI第三次浪潮,并称其为 语境适应 。这项技术需要更多的工作,将感知、学习和推理的优势融合在一起,并支持极高水准跨领域的抽象 3 。
于2017年5月结束的 2017本体(Ontology)峰会 巧妙地将主题命名为“AI、学习、推理和本体论”。峰会公报草案得出结论认为,迄今为止,大多数人工智能的方法,包括机器学习工具,都是以次级象征(subsymbolic)方式来运行的,使用的是与人类思维大相径庭的运算技术,这印证了Launchbury的观点。虽然许多形式的人工智能都取得了很大的进展,但从象征层面充分表现知识还尚未成熟。相应地,本体论作为一种正规的语义组织工具的作用仅仅在对AI及其最终测试环境上具有有限的优势。
语义网络包含以节点和连接来表示知识的图。它提供了一种表示符号之间关系的可理解和可视化的方式,通常使用多义词来表示,即在不同上下文中传达不同的含义。今天大部分的AI都是以次级象征的形式存在的,将来需要处理更为真正意义上的应用语义来实现第三次浪潮。在这种情况下,AI将变为非线性的,其中因果关系通过多个执行线程逐渐解耦。这需要建立 复杂的自适应系统 (CAS),它会持续受非线性网络行为的影响。
在CAS中,随着时间的推移,基于环境的状况会出现新的行为。其内部可以有多个自行组织的路径产生成功或失败的结果,这些路径都是由高度多样化的节点和连接触发的,这些节点和连接可以随着时间的推移而增加、变化或缩小。在与数据相关的嵌入式软件结合使用时,这样的网络会对传统的递归式单元测试产生冲击。这是因为在CAS中,整体往往远不单单是各部分的加和 11。相应地,应用网络科学中提供了一些较好的方法来评估那些随着时间的推移出现的动态AI行为。通过图论和时间维度来描述没有按线性路径达到预期效果的动态行为也更容易被理解 12 。
在采用一些可靠的方法来评估AI可信度之前,我们必须保持谨慎。如果盲目倾向于信任那些还未被大规模信任的技术,可能会导致被误导,甚至还会产生危险的结论。
CIO之家 www.ciozj.com 公众号:imciow