AI 技术与安全模型
人工智能是一种通过预先设计好的理论模型模拟人类感知、学习和决策过程的技术。完整的AI技术涉及到AI模型、训练模型的数据以及运行模型的计算机系统,AI技术在应用过程中依赖于模型、数据以及承载系统的共同作用。

AI 模型
模型是AI技术的核心,用于实现AI技术的预测、识别等功能,也是 AI 技术不同于其它计算机技术的地方。AI 模型具有数据驱动、自主学习的特点,负责实现机器学习理论和对应算法,能够自动分析输入数据的规律和特征,根据训练反馈自主优化模型参数,最终实现预测输入样本的功能。AI模型通常结合数据挖掘、深度神经网络、数值优化等算法层面的技术来实现其主要功能。以手写数字分类任务为例,AI模型需要判断输入图像是0-9中的哪个数字。为了学习手写数字分类模型,研究者构建训练数据集(例如:MNIST数据集){xi,yi},i=1,2,...,N,其中xi,yi代表某张图像与其对应的数字。模型可以选取卷积神经网络y=fθ(x),其中θ为卷积神经网络的参数。在训练过程中,AI模型使用优化算法不断调整卷积神经网络参数,使模型在训练集上的输出预测结果尽可能接近正确的分类结果。
AI 数据
数据是AI技术的核心驱动力,是AI模型取得出色性能的重要支撑。AI模型需要根据种类多样的训练数据,自动学习数据特征,对模型进行优化调整。海量的高质量数据是AI模型学习数据特征,取得数据内在联系的基本要求和重要保障。尽管AI技术所使用的算法大多在20年前就已经被提出来了,但是直到近些年来,随着互联网的成熟、大规模数据的收集和大数据处理技术的提升才得到了迅猛的发展。大规模数据是AI技术发展的重要支撑,具有以下几个特点:(1)数据体量大,AI模型主要学习知识和经验,而这些知识和经验来源于数据,然而单个数据价值密度较低,大体量的数据有助于模型全面学习隐含的高价值特征和规律;(2)数据多样性强,从各种各样类型的海量数据中,模型可以学习到多样的特征,从而增强模型的鲁棒性与泛化能力。
AI 承载系统
应用系统是 AI 技术的根基,AI 技术从模型构建到投入使用所需要的全部计算机基础功能都属于这一部分。一般的AI应用部署的流程大致如下:收集应用所需要的大规模数据,使用相关人工智能算法训练模型,将训练完成的模型部署到应用设备上。AI承载系统为AI技术提供重要的运行环境,例如:储存大规模数据需要可靠的数据库技术、训练大型AI模型需要巨大的计算机算力、模型算法的具体实现需要AI软件框架和第三方工具库提供稳定的接口,数据收集与多方信息交互需要成熟稳定的互联网通信技术。目前构建AI应用常使用的主流框架有Tensorflow、PyTorch等,框架高效实现了AI模型运行中所需要的各种操作,例如:卷积、池化以及优化等。这些框架提供了AI技术执行接口供研发人员调用,使其能够通过调用接口快速搭建自定义的AI模型,从而不需要花费太多精力关注底层的实现细节,简化了AI应用的开发难度,使开发人员能够更深入地关注业务逻辑与创新方法。这些优点使得AI技术快速发展,极大地促进了AI应用的落地和普及。

安全技术
学术界与工业界的研究工作表明AI技术在应用过程中存在不可估量的安全威胁,这些威胁可能会导致严重的生命和财产损失。投毒攻击[1]毒害AI模型,使得AI模型的决策过程受攻击者控制;对抗样本攻击[3]导致模型在攻击者的恶意扰动下输出攻击者指定的错误预测;模型窃取攻击[8]导致模型的参数信息泄漏。此外,模型逆向工程[6]、成员推断攻击[12]、后门攻击[13]、伪造攻击[14]以及软件框架漏洞[15]等多种安全威胁都会导致严重的后果。这些潜在的威胁使模型违背了AI安全的基本要求。在本小节中,我们立足于AI技术在应用中面临的威胁,借鉴传统信息安全与网络空间安全的标准规范,讨论适用于AI技术的安全模型。

AI技术的崛起不仅依赖于以深度学习为代表的建模技术的突破,更加依赖于大数据技术与AI开源系统的不断成熟。因此,我们在定义AI安全模型的时候,需要系统性地考虑AI模型、AI数据以及AI承载系统这三者对安全性的要求。在AI模型层面,AI安全性要求模型能够按照开发人员的设计准确、高效地执行,同时保留应用功能的完整性,保持模型输出的准确性,以及面对复杂的应用场景和恶意样本的场景中具有较强鲁棒性;在AI数据层面,要求数据不会被未授权的人员窃取和使用,同时在AI技术的生命周期中产生的信息不会泄露个人隐私数据;在AI承载系统层面,要求承载AI技术的各个组成部分能够满足计算机安全的基本要素,包括物理设备、操作系统、软件框架和计算机网络等。综合考虑AI技术在模型、数据、承载系统上对安全性的要求,我们用保密性、完整性、鲁棒性、隐私性定义AI技术的安全模型,如下:

• 保密性 (Confidentiality)要求AI技术生命周期内所涉及的数据与模型信息不会泄露给未授权用户。

• 完整性 (Integrity) 要求 AI 技术在生命周期中,算法模型、数据、基础设施 和产品不被恶意植入、篡改、替换和伪造。

• 鲁棒性 (Robustness) 要求 AI技术在面对多变复杂的实际应用场景的时候具有较强的稳定性,同时能够抵御复杂的环境条件和非正常的恶意干扰。例如:自动驾驶系统在面对复杂路况时不会产生意外行为,在不同光照和清晰度等环境因素下仍可获得稳定结果。

• 隐私性 (Privacy) 要求AI技术在正常构建使用的过程中,能够保护数据主体的数据隐私。与保密性有所区别的是,隐私性是AI模型需要特别考虑的属性,是指在数据原始信息没有发生直接泄露的情况下,AI模型计算产生的信息不会间接暴露用户数据。

•AI模型安全问题

AI模型安全是指AI模型面临的所有安全威胁,包括AI模型在训练与运行阶段遭受到来自攻击者的功能破坏威胁,以及由于AI模型自身鲁棒性欠缺所引起的安全威胁。我们进一步将AI模型安全分为三个子类,分别为:1)训练完整性威胁,攻击者通过对训练数据进行修改,对模型注入隐藏的恶意行为。训练完整性威胁破坏了AI模型的完整性,该威胁主要包括传统投毒攻击和后门攻击;2)测试完整性威胁,攻击者通过对输入的测试样本进行恶意修改,从而达到欺骗AI模型的目的,测试完整性威胁主要为对抗样本攻击;3)鲁棒性欠缺威胁,该问题并非来自于恶意攻击,而是来源于AI模型结构复杂、缺乏可解释性,在面对复杂的现实场景时可能会产生不可预计的输出。上述安全隐患如果解决不当,将很难保证AI模型自身行为的安全可靠,阻碍AI技术在实际应用场景中的推广落地。我们将在3.1小节中具体介绍这些安全威胁。

•AI数据安全问题

数据是AI技术的核心驱动力,主要包括模型的参数数据和训练数据。数据安全问题是指AI技术所使用的训练、测试数据和模型参数数据被攻击者窃取。这些数据是模型拥有者花费大量的时间和财力收集得到的,涉及用户隐私信息,因此具有巨大的价值。一旦这些数据泄露,将会侵犯用户的个人隐私,造成巨大的经济利益损失。针对AI技术使用的数据,攻击者可以通过AI模型构建和使用过程中产生的信息在一定程度上窃取AI模型的数据,主要通过两种方式来进行攻击:1)基于模型的输出结果,模型的输出结果隐含着训练/测试数据的相关属性。以脸部表情识别为例,对于每张查询的输入图片,模型会返回一个结果向量,这个结果向量可能包含关于脸部内容的信息,例如微笑、悲伤、惊讶等不同表情的分类概率,而攻击者则可以利用这些返回的结果信息,构建生成模型,进而恢复原始输入数据,窃取用户隐私[16];2)基于模型训练产生的梯度,该问题主要存在于模型的分布式训练中,多个模型训练方之间交换的模型参数的梯度也可被用于窃取训练数据。

•AI承载系统安全问题

承载AI技术的应用系统主要包括AI技术使用的基础物理设备和软件架构,是AI模型中数据收集存储、执行算法、上线运行等所有功能的基础。应用系统所面临的安全威胁与传统的计算机安全威胁相似,会导致AI技术出现数据泄露、信息篡改、服务拒绝等安全问题。这些问题可以归纳为两个层面:1)软件框架层面,包含主流的AI算法模型的工程框架、实现AI技术相关算法的开源软件包和第三方库、部署AI软件的操作系统,这些软件可能会存在重大的安全漏洞;2)硬件设施层面,包含数据采集设备、GPU服务器、端侧设备等,某些基础设备缺乏安全防护容易被攻击者侵入和操纵,进而可被利用施展恶意行为。