1.人工智能与智能安全
1.1人工智能发展轨迹
人工智能(Aritificial Intelligene)的概念在1956年,约翰·麦卡锡在达茅斯学院夏季学术研讨会上首次提出之前,人类已经在机器替代人类从事繁重、重复劳动的道路上不断地探索。
1882年2月,尼古拉·特斯拉完成了困扰其5年的交流电发电机设想,欣喜若狂地感叹道“从此之后人类不再是重体力劳动的奴役,我的机器将解放他们,全世界都将如此”。1936年,为证明数学中存在不可判定命题,艾伦·图灵提出“图灵机”的设想,1948年在论文《 INTELLIGENT MACHINERY》中描绘了联结主义的大部分内容,紧接着在1950年发表《COMPUTING MACHINERY AND INTELLIGENCE》,提出了著名的“图灵测试”。同年,马文·明斯基与其同学邓恩·埃德蒙建造了世界上第一台神经网络计算机。1955年冯·诺伊曼接受了耶鲁大学西里曼讲座的邀请,讲稿内容后来汇总成书《THE COMPUTER AND THE BRAIN》。
人工智能自1956年提出到今天,经历了三次发展高潮。
第一次发展高潮:1956年~1980年,以专家系统、经典机器学习为代表的符号主义(Symbolism)占据统治地位。也被称之为第一代人工智能,符号主义提出基于知识和经验的推理模型来模拟人类的理性智能行为,像推理、规划、决策等。因此在机器里建立知识库和推理机制来模拟人类的推理和思考行为。
符号主义最具有代表性的成果是1997年5月IBM国际象棋程序深蓝打败世界冠军卡斯帕罗夫,成功要素有三个:第一个要素是知识和经验,深蓝分析700000盘人类大师下过的棋局及全部的5-6只残局,总结成为下棋的规则。然后通过大师和机器之间的对弈,调试评价函数中的参数,把充分吸收大师的经验。第二个要素是算法,深蓝使用阿尔法-贝塔剪枝算法,速度很快。第三个要素是算力,IBM当时用RS/6000SP2机器,每秒能够分析2亿步,平均每秒钟能够往前预测8-12步。
符号主义的优势是能够模仿人类的推理和思考的过程,与人类思考问题过程一致,且可以举一反三,因此具有可解释性。但符号主义也存在着非常严重的缺陷,一是专家知识十分稀缺和昂贵,二是专家知识需要通过人工编程输入到机器里面,费时费力,三是有很多知识是很难表达,比如中医专家号脉等经验很难表达,因此符号主义的应用范围非常有限。
第二次发展高潮:1980年~1993年,以符号主义和连接主义(Connectionism)为代表;
第三次发展高潮:1993年~1996年,深度学习借助算力和数据大获成功,连接主义变得炙手可热;
深度学习通过深度神经网络的模型模拟人类的感知,如视觉、听觉、触觉等。深度学习有两个优点:第一个优点是不需要领域专家知识,技术门槛低;第二个优点是升级网络规模越大,能够处理的数据越大。
深度学习一个最典型的例子是围棋程序。在2015年10月之前,用符号主义的方法即知识驱动的方法做出来的围棋程序,最高达到业余5段的水平。到了2015年10月份,围棋程序打败了欧洲的冠军,到2016年3月份打败了世界冠军。到2017年10月份,AlphaGo元打败了AlphaGo,AlphaGo元利用了深度学习,使得围棋程序的水平实现了三级跳,从业余跳到专业水平,又从专业水平到世界冠军,又从世界冠军到超过世界冠军。AlphaGo两年实现了三级跳,成功主要来自于三个方面:大数据,算法,算力。AlphaGo学习了3000万盘已有的棋局,自己与自己又下了3000万盘,一共6000万盘棋局,采用蒙特卡罗树搜索、强化学习、深度学习等算法,一共用了1202个CPU和280个GPU来计算。
深度学习也有很大的局限性,如不可解释、不安全、不易泛化、需要大量的样本等。比如一张人脸的图片加一点修改后可能被识别成狗,为什么会出现这种情况,人类无法理解,这就是不可解释性。
2016年,以强化学习为代表的行为主义(Actionism)在AlphaZero横空出世之后大获关注,更是被誉为通向通用人工智能的必经之路。
以逻辑推理为代表的符号主义以知识驱动智能,以深度学习为代表的连接主义以数据驱动智能,都存在很大的缺陷,应用范围受限。
以强化学习为代表的行为主义综合利用知识、数据、算法和算力四个要素,将人脑的反愧横向连接、稀疏放电、注意力机制、多模态、记忆等机制引入,有望克服前两代人工智能的缺陷,获得更广泛的应用。
1.2人脑工作的几个机制
【预测与反馈机制】
大脑通过一段时间的生活,观察世界并建立记忆模型;日常生活中,大脑都会自动的在潜意识中对照之前的记忆模型并且预测下一步将发生什么。当察觉到了一个和预测的情况不符合的时候就会引起大脑的反溃
脑细胞之所以能够进行信息传递,是因为它们拥有神奇的触手——树突和轴突。凭借着短短的树突,脑细胞可以接受由其他脑细胞传递过来的信息,而凭借着长长的轴突,脑细胞又会把信息传递给其他脑细胞[10](如下图所示)。
信息在脑细胞之间不断地传递,便形成了人类的感觉和想法。而整个大脑,就是由脑细胞相互连接而成的一张大网,如下图所示:
在机器学习领域中,为了得到这样一个人工神经网络,首先,要规定一个神经网络的结构,该网络中有多少个神经元,神经元之间如何连接。接下来,需要定义一个误差函数(error function)。误差函数用来评估这个网络目前表现如何以及应该如何调整其中的神经元连接来减少误差。突触强度决定神经活动,神经活动决定网络输出,网络输出决定网络误差。
当前,“反向传播”(back propagation)是机器学习领域最常用、最成功的深度神经网络训练算法。用反向传播训练的网络在最近的机器学习浪潮中占据着中流砥柱的地位,在语音和图像识别、语言翻译等方面取得不错的效果。同时也推动了无监督学习(unsupervised learning)的进步,在图像和语音生成、语言建模和一些高阶预测任务中已不可或缺。与强化学习互相配合,反向传播能完成许多诸如精通雅达利游戏,在围棋和扑克牌上战胜人类顶尖选手等控制任务(control problems)。
反向传播算法将误差信号(error signals)送入反馈连接(feedback connections),帮助神经网络调节突触强度,在监督学习(supervised learning)领域用得非常普遍。但大脑中的反馈连接似乎有着不同的作用,且大脑的学习大部分都是无监督学习。因此,反向传播算法能否解释大脑的反馈机制?当前还没有确定性答案。
【脑内连接】
人脑神经元间特殊的连接方式是研究人脑与众不同的重要方向。核磁共振成象是这个研究的一种关键的工具,这种技术可以在不开颅骨的前提下,将神经元延伸出的连接不同脑区的长纤维可视化。这些连接像电线一样在神经元间传递电信号。所有这些连接合在一起被称为连接组,它能为我们研究大脑如何处理信息这个问题提供线索。
假设每个神经细胞与其他所有神经细胞相连,这种一对多的方式构成的连接组是最高效的。但这种模式需要大量的空间和能量来容纳所有的连接并维持其正常运转,因此是肯定行不通的。另一种模式为一对一的连接,即每个神经元仅与其它单个神经元相连。这种连接难度更小,但同时效率也更低:信息必须像踩着一块一块的垫脚石一样穿过大量的神经细胞才能从A点到达B点。“现实中的生命处于二者之间,”特拉维夫大学的Yaniv Assaf说道,他在《自然·神经科学》上发表了一项关于123种哺乳动物连接组的调查。此团队发现不同物种的大脑中,信息从一个位置到达另一个位置所需要的垫脚石的数量是大致相等的,而且采用的连接方式是相似的。但不同物种间脑内连接布局实现的方式却存在差异。对于有着少数连通大脑两个半球的长距离连接的物种,每一个脑半球中往往会有更多较短的连接,脑半球中邻近的脑区会频繁交流。
【记忆】
人类大脑内在数十亿个神经细胞,它们相互之间通过神经突触相互影响,形成极其复杂的相互联系。记忆就是脑神经细胞之间的相互呼叫作用,其中有些相互呼叫作用所维持时间是短暂的,有些是持久的,而还有一些介于两者之间。
脑神经元之间存在四种基本相互作用形式:
●单纯激发:一个神经元兴奋,激发相接的另一神经元兴奋。
●单纯抑制:一个神经元兴奋,提高相接的另一神经元的感受阈。
●正反馈:一个神经元兴奋,激发相接的另一神经元兴奋,后者反过来直接或间接地降低前者的兴奋阈,或回输信号给前者的感受突触。
●负反馈:一个神经元兴奋,激发相接的另一神经元兴奋,后者反过来直接或间接地提高前者的兴奋阈,使前者兴奋度下降。
人脑内存在多种不同活性的神经元细胞,分别负责短期、中期、长期记忆。
活泼神经元细胞负责短期记忆,数量较少,决定人的短期反应能力 。这种细胞在受到神经信号刺激时,会短暂地出现感应阈下降的现象,但其突触一般不会发生增生,而且感应阈下降只能维持数秒至数分钟,然后就会回复到正常水平。
中性神经元细胞负责中期记忆,数量居中,决定人的学习适应能力 。这种细胞在受到适量的神经信号刺激时,就会发生突触增生,但这种突触增生较缓慢,需要多次刺激才能形成显著的改变,而且增生状态只能维持数天至数周,较容易发生退化。
惰性神经元细胞负责长期记忆,数量较多,决定人的知识积累能力。 这种细胞在受到大量反复的神经信号刺激时,才会发生突触增生,这种突触增生极缓慢,需要很多次反复刺激才能形成显著的改变,但增生状态能维持数月至数十年,不易退化。
当一个脑神经元细胞受到刺激发生兴奋时,它的突触就会发生增生或感应阈下降,经常受到刺激而反复兴奋的脑神经元细胞,它的突触会比其它较少受到刺激和兴奋的脑神经元细胞具有更强的信号发放和信号接受能力。当两个相互间有突触邻接的神经元细胞同时受到刺激而同时发生兴奋时,两个神经元细胞的突触就会同时发生增生,以至它们之间邻接的突触对的相互作用得到增强,当这种同步刺激反复多次后,两个神经元细胞的邻接突触对的相互作用达到一定的强度(达到或超过一定的阈值),则它们之间就会发生兴奋的传播现象,就是当其中任何一个神经元细胞受到刺激发生兴奋时,都会引起另一个神经元细胞发生兴奋,从而形成神经元细胞之间的相互呼应联系,这就是即记忆联系。因此记忆指可回忆,可回忆决定于神经元细胞之间联系的通畅程度,即神经元细胞之间的联系强度大于感应阈,形成神经元细胞之间的显性联系,这就是大脑记忆的本质。
【注意力机制】
人脑在进行阅读时,并不是严格的解码过程,而是接近于一种模式识别。大脑会自动忽略低可能、低价值的信息,也会自动的基于上下文的信息,将阅读的内容更正为“大脑认为正确的版本”,这就是所谓的人脑注意力。
“注意力机制”(Attention Mechanism)是机器学习中仿生人脑注意力的一种数据处理方法,广泛应用在自然语言处理、图像识别及语音识别等各种不同类型的机器学习任务中。比如机器翻译经常采用“LSTM+注意力”模型,LSTM(Long Short Term Memory)是RNN(循环神经网络)的一种应用。可以简单理解为,每一个神经元都具有输入门、输出门、遗忘门。输入门、输出门将LSTM神经元首尾连接在一起,而遗忘门将无意义内容弱化或遗忘。“注意力机制”就应用在LSTM的遗忘门,使得机器阅读更加贴近于人类阅读的习惯,也使得翻译结果具有上下文联系。
【多模态神经元】
十五年前,Quiroga等人发现人类大脑中拥有多模态神经元。这些神经元会对围绕着一个高级主题的抽象概念(而不是对特定视觉特征的抽象概念)做出反应。其中,最著名的当属“Halle Berry”神经元,只对美国女演员“Halle Berry”的相片、草图、文字做出反应,在《科学美国人》和《纽约时报》都使用过此例子[11]。
OpenAI发布的CLIP,采用多模态神经元,达到了可与ResNet-50表现力相比肩的通用视觉系统,在一些具有挑战性的数据集上,CLIP的表现超过了现有的视觉系统。
机器学习引入多模态神经元,指对文字、声音、图片、视频等多模态的数据和信息进行深层次多维度的语义理解,包括数据语义、知识语义、视觉语义、语音语义一体化和自然语言语义等多方面的语义理解技术。比如视觉语义化可以让机器从看清到看懂视频,并提炼出结构化语义知识。
1.3智能系统的基本构成
自动驾驶系统是一个典型的智能系统,美国SAE自动驾驶分级标准将自动驾驶系统按照自动化程度分为五个等级:
我们从车辆自动驾驶系统的分级可以看出,智能系统L0级完全是人类决策,L1~L2级是机器基于全量数据做数据整理与分析,人类做推理判断和决策,即所谓的数据驱动模式,L3~L4是机器基于全量数据做数据整理、分析、逻辑推理、判断与决策,但需要人类在适当的时候干预,L5是完全的智能机器,无需人类干预,即所谓的智能驱动模式。
机器要具有智能,也就是让机器成为一个智能系统,至少需要具备如下图所示的组成部分:感知、认知、理解、决策、行动。
感知组件的作用是对环境进行数据监测与采集,产出的是数据。本质是将物理空间数据化,将物理空间完全映射到数据空间。
认知组件的作用是对数据进行整理与总结归纳,提炼出有用的信息。
理解组件的作用是对提炼出来的信息进一步提炼与总结归纳,得到知识。人类理解的知识是用自然语言表达,对于机器来说,用基于代表问题空间的数据集进行训练而得到的“模型”来表达。
决策组件的作用是基于知识进行推理与判断。对于机器来说,就是用训练好的模型来在新的数据空间中进行推理与判断,生成对目标任务的策略。
行动组件的作用是基于策略对环境进行互动,对环境产生影响。
反馈组件的作用是动作作用于环境后形成反馈,反馈又促进感知体系感知更多的数据,进而持续获取更多的知识,对目标任务作出更好的决策,形成闭环持续迭代进化。
1.4智能安全
人工智能与网络安全的结合总有两个维度,四个象限[9]:纵向上,一端是给智能以安全,一端是给安全以智能;横向上,一端是攻击视角,一端是防御视角。如下图所示,四个象限代表了两者结合的四个作用:
智能自身安全包括智能技术本身引入可被利用的脆弱性和智能技术本身脆弱性引入的安全问题。主要有采用人工智能的业务安全、算法模型安全、数据安全、平台安全等。
算法模型的安全性问题主要包括模型训练完整性威胁、测试完整性威胁、模型鲁棒性缺乏、模型偏见威胁等,比如绕过攻击(通过对抗性样本操纵模型决策和结果)、毒化攻击(注入恶意数据降低模型可靠性和精确度)、推断攻击(推断特定数据是否被用于模型训练)、模型抽取攻击(通过恶意查询命令暴露算法细节)、模型逆转攻击(通过输出数据推断输入数据)、重编程攻击(改变AI模型用于非法用途)、归因推断攻击、木马攻击、后门攻击等。数据安全主要包括基于模型输出的数据泄露和基于梯度更新的数据泄露;平台安全包括硬件设备安全问题和系统及软件安全问题。
针对人工智能的这些不安全性问题的防御技术主要有算法模型自身安全性增强、AI数据安全与隐私泄露防御和AI系统安全防御。算法模型自身安全性增强技术包括面向训练数据的防御(比如对抗训练、梯度隐藏、阻断可转移性、数据压缩、数据随机化等)、面向模型的防御(比如正则化、防御蒸馏、特征挤压、深度收缩网络、掩藏防御等)、特异性防御、鲁棒性增强、可解释性增强等;AI数据安全与隐私泄露防御技术主要有模型结构防御、信息混淆防御和查询控制防御等[12]。
给智能以安全,指智能技术本身所带来的新的脆弱性,对于攻击者来说可以利用,对于防护者来说可能引入新的安全隐患。
给安全以智能,指攻击者可以利用智能技术实施攻击,防护者利用智能技术提升安全防护能力。主要体现在安全响应自动化和安全决策自主化。提高安全响应自动化当前主要有两种主流方法:
●SOAR,Security Orchestration, Automation and Response,安全编排、自动化和响应;
● OODA,Obeserve-Orient-Decide-Act,观察-调整-决策-行动,IACD(集成自适应网络防御框架)就是以OODA为框架。
下图是一个以SOAR为中心的自动响应工作流的示意图:
1994年,认知科学家Steven Pinker在《The Language Instinct》中写道“对人工智能而言,困难的问题是易解的,简单的问题是难解的”。“简单的复杂问题”指的是问题空间是闭合的,但是问题本身却又有较高的复杂度,比如下围棋属于简单的复杂问题。“复杂的简单问题”指的是问题空间是是无限开放式的,但问题本身却并没有很高的复杂度。比如网络安全问题就属于复杂的简单问题,因为安全攻击的技术与方式时刻处于变化,也无法穷举的,但具体到某个具体的网络攻击,则往往是有迹可循的。
今天智能技术在“简单的复杂问题”的领域,往往都比人类会更强,但对于“复杂的简单问题”,泛化界限引起的空间爆炸,人工智能往往都会失效。
不幸的是,网络安全问题属于复杂的简单问题,人工智能在网络安全问题空间的应用面临挑战。特别是莫拉维克悖论(由人工智能和机器人学者所发现的一个和常识相佐的现象。和传统假设不同,人类所独有的高阶智慧能力只需要非常少的计算能力,例如推理,但是无意识的技能和直觉却需要极大的运算能力。)在网络安全领域表现更为明显。
人工智能技术应用到网络安全存在下面的挑战:问题空间不闭合、样本空间不对称、推理结果要么不准确要么不可解释、模型泛化能力衰退、跨领域思维融合挑战。
一、问题空间不闭合
如上图所示,网络安全的问题空间包括已知和未知。而已知又包括已知的已知,如某个已知的漏洞,未知的已知,如某个还未被发现的已知被曝光的安全漏洞;未知包括已知的未知,如软件系统必然存在某个安全漏洞,未知的未知,如根本就不知道会有什么风险或威胁。
二、样本空间不对称
未知的未知是网络安全无法避免的困境,使得网络安全问题空间不闭合,也就导致负向数据(如攻击数据、风险数据等)的严重缺乏导致特征空间的不对称,进而导致特征空间无法真正表征问题空间。模型是已有数据空间下关于世界的假设,并且用于在新的数据空间下进行推理。今天人工智能技术已经能很好的解决表示输入和输出之间的非线性复杂关系,但对于样本空间相对开放的问题空间来说严重不对称。
三、推理结果不可解释性
人工智能应用以输出决策判断为目标。可解释性是指人类能够理解决策原因的程度。人工智能模型的可解释性越高,人们就越容易理解为什么做出某些决定或预测。模型可解释性指对模型内部机制的理解以及对模型结果的理解。建模阶段,辅助开发人员理解模型,进行模型的对比选择,必要时优化调整模型;在投入运行阶段,向决策方解释模型的内部机制,对模型结果进行解释。
在建模阶段,人工智能技术存在决策准确性与决策可解释性的矛盾,神经网络的决策准确性高,但可解释性差,决策树的可解释性强,但准确性不高。当然现在已经有两者结合的方法,一定程度上在两者之间取得平衡。
在投入运行阶段,向决策防解释模型的内部机制以及决策结果的解释,涉及到数据隐私、模型安全等方面的道德困境。
四、泛化能力衰退
20世纪六十年代,贝尔-拉帕杜拉安全模型(Bell-LaPadula)指出“当仅当系统开始于安全的状态,且一直不会落入非安全状态,它才是安全的”。
人工智能技术用模型来表征问题空间,但由于安全的本质是资源与智力的对抗,因此安全问题空间永远都不是闭合的,在训练集上表现良好的模型,对于大规模的现实环境,一上线就存在不断的对抗,进而不断跌入失效的状态,模型泛化能力衰退。
1.5智能安全自主度模型
知识与推理是人类智能的基础,计算机要实现推理与决策,则需要解决三个问题:知识表示与推理形式、不确定性知识表示与推理、常识表示与推理。
牌类是不完全信息博弈,计算机打牌要比下棋困难得多。2017年人工智能才在6人无限注德州扑克牌上战胜了人类。牌类是概率确定性问题,而现实环境是完全不确定的,甚至是对抗环境,因此复杂环境下的自主决策具有很大的挑战性。
对抗场景下的自主决策的挑战主要有两个方面:环境的动态性和任务的复杂性。环境的动态性包括不确定条件、不完全信息、形势动态变化、实时博弈;任务复杂性包括信息采集、进攻、防守、侦察、骚扰等。
对抗场景下的自主决策通常利用常识和逻辑演绎弥补信息的不完全性,进而通过融合人类领域知识和强化学习结果生成预案,协助做出正确决策。
复杂环境下的自主决策还需要解决如何适应环境变化而相应的做出决策变化的问题。比如自动驾驶将物体识别出来后建立模型,在此基础上做实时的驾驶规划,但难以应对突发事件。因此自动驾驶还需要驾驶的知识和经验,需要在于环境的不断交互过程中学习这些经验知识,即强化学习。
因此智能赋能的安全系统的威胁检测与防护的自主决策能力是衡量其智能程度的关键指标之一。参考自动驾驶系统的分级,可构建一个智能安全自主度模型。