首页 / 专利库 / 人工智能 / 机器学习 / 人工神经网络 / 递归神经网络 / 一种面向深度强化学习模型对抗攻击的防御方法

一种面向深度强化学习模型对抗攻击的防御方法

阅读:969发布:2020-05-15

专利汇可以提供一种面向深度强化学习模型对抗攻击的防御方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种面向深度 强化学习 模型对抗攻击的防御方法及应用,包括:利用视觉 预测模型 对输入的前一时刻环境状态进行预测输出预测当前环境状态,并获得预测当前环境状态在深度强化学习策略下的下一 帧 预测环境状态值;获取深度强化学习模型输出的实际当前环境状态,并获得实际当前环境状态在深度强化学习策略下添加扰动的环境状态值;利用判别模型对预测环境状态值和添加扰动的环境状态值进行判别,根据判别结果获得深度强化学习模型是否被攻击;在深度强化学习模型被攻击时,提取实际当前环境状态,利用两个防御模型对实际当前环境状态进行防御;深度强化学习模型利用防御后的实际当前环境状态进行学习预测输出。,下面是一种面向深度强化学习模型对抗攻击的防御方法专利的具体信息内容。

1.一种面向深度强化学习模型对抗攻击的防御方法,其特征在于,所述防御方法包括以下步骤:
利用基于生成式对抗网络构建的视觉预测模型对输入的前一时刻环境状态进行预测输出预测当前环境状态,并获得预测当前环境状态在深度强化学习策略下的下一预测环境状态值;
获取深度强化学习模型输出的实际当前环境状态,并获得实际当前环境状态在深度强化学习策略下添加扰动的环境状态值;
利用基于生成式对抗网络构建的判别模型对预测环境状态值和添加扰动的环境状态值进行判别,根据判别结果获得深度强化学习模型是否被攻击;
在深度强化学习模型被攻击时,提取实际当前环境状态,利用基于SqueezeNet的第一防御模型对实际当前环境状态进行第一层防御,利用基于DenseNet的第二防御模型对第一层防御结果进行第二层防御,获得防御后的实际当前环境状态;
深度强化学习模型利用防御后的实际当前环境状态进行学习预测输出。
2.如权利要求1所述的面向深度强化学习模型对抗攻击的防御方法,其特征在于,所述视觉预测模型和判别模型的构建过程为:
所述视觉预测模型包括递归编码单元、转换行为单元以及解码单元,其中,所述递归编码单元包括依次连接的至少2个卷积层、至少2个全连接层,用于对输入的环境状态进行特征提取,输出环境状态特征;
所述转换行为单元包括LSTM和融合操作,用于提取输入行为的隐含特征,并对行为的隐含特征和环境状态特征进行融合输出融合特征;
所述解码单元包括至少2个全连接层和至少2个反卷积层,用于对融合特征进行解码,输出下一时刻的预测环境状态;
所述判别模型包括神经网络,其用于对所述视觉预测模型输出的预测环境状态与实际环境状态进行特征提取,基于提取的特征计算预测环境状态与实际环境状态的差距大小以判别实际环境状态是否含有扰动;
利用训练样本对由所述视觉预测模型和所述判别模型组成的生成式对抗网络进行对抗训练,获得训练好的视觉预测模型和判别模型。
3.如权利要求2所述的面向深度强化学习模型对抗攻击的防御方法,其特征在于,在LSTM中,在时间t处编码的特征向量 为:
其中,ct∈Rn是一个内存单元,它保留来自输入的历史的信息,CNN(xt)作为LSTM的输入,使LSTM能够从空间特征中获取时间相关性信息。
4.如权利要求2所述的面向深度强化学习模型对抗攻击的防御方法,其特征在于,所述训练样本的构建过程为:
利用训练好DQN产生每一时刻的奖励值、行为以及下一环境状态,每个时刻的环境状态、行为、奖励值以及下一状态组成的四元组作为一个正常样本;
对正常样本中的环境状态添加扰动后形成一个对抗样本,在对抗训练阶段,对抗样本作为实际环境状态对判别模型和视觉预测模型进行训练。
5.如权利要求1所述的面向深度强化学习模型对抗攻击的防御方法,其特征在于,判别模型计算预测环境状态值和添加扰动环境状态值的差距值,根据差距值与阈值的大小关系确定深度强化学习模型是否被攻击,计算公式为:
其中, 为DQN的策略网络,为预测环境状态, 为受攻击状态。
6.如权利要求1所述的面向深度强化学习模型对抗攻击的防御方法,其特征在于,所述第一防御模型包括两个卷积层、三个最大池化层、一个平均池化层以及八个Fire Module。

说明书全文

一种面向深度强化学习模型对抗攻击的防御方法

技术领域

[0001] 本发明属于安全防御领域,具体涉及一种面向深度强化学习模型对抗攻击的防御方法。

背景技术

[0002] 随着人工智能技术的迅速发展,越来越多的领域都开始使用AI技术。自1956年“人工智能”概念的首度提出以来,AI的受关注度就越来越高。其研究领域包括知识表示、机器感知、机器思维、机器学习、机器行为,各种领域都取得了一定成就。比如2014年Google DeepMind开发的人工智能围棋软件——阿尔法围棋(AlphaGo),就利用了深度学习和强化学习,并于2016年战胜世界顶级围棋选手之一李世石。强化学习也是一种多学科交叉的产物,它本身是一种决策科学,所以在许多学科分支中都可以找到它的身影。强化学习应用广泛,比如:直升机特技飞行、游戏AI、投资管理、发电站控制、让机器人模仿人类行走等。
[0003] 在游戏领域,为了提高用户体验,在很多场景下需要训练AI自动玩游戏,目前,游戏训练场景接受度最高的是深度强化学习(Deep Reinforcement Learning),一般情况下使用DQN来训练游戏AI自动玩游戏。DRL网络充分利用了卷积神经网络处理大数据的能,将游戏画面作为输入,同时融合更多的游戏数据作为输入。然而神经网络极易受到对抗性攻击,专家学者们也提出了很多攻击方法和防御方法,但是,针对深度强化学习的防御方法并没有成型的专利提出。随着深度强化学习的应用越来越广泛,安全性必然成为其发展的重要隐患因素之一。
[0004] 强化学习就是学习如何根据一个环境环境状态去决定如何行动,使得最后的奖励最大。强化学习中两个最重要的特征就是试错(trial-and-error)和滞后奖励(delayed reward)。观察过程的环境状态容易被攻击者添加对抗扰动,攻击者也可直接攻击行动或奖励值以达到攻击目的。

发明内容

[0005] 本发明的目的是提供一种面向深度强化学习模型对抗攻击的防御方法,该方法能够提高深度强化学习的决策网络的鲁棒性,能够防止在线学习和离线学习观测环境状态被恶意干扰,最终导致奖励值有较大偏差从而使Agent行为出错。
[0006] 为实现上述发明目的,本发明提供以下技术方案:
[0007] 一种面向深度强化学习模型对抗攻击的防御方法,所述防御方法包括以下步骤:
[0008] 利用基于生成式对抗网络构建的视觉预测模型对输入的前一时刻环境状态进行预测输出预测当前环境状态,并获得预测当前环境状态在深度强化学习策略下的下一预测环境状态值;
[0009] 获取深度强化学习模型输出的实际当前环境状态,并获得实际当前环境状态在深度强化学习策略下添加扰动的环境状态值;
[0010] 利用基于生成式对抗网络构建的判别模型对预测环境状态值和添加扰动的环境状态值进行判别,根据判别结果获得深度强化学习模型是否被攻击;
[0011] 在深度强化学习模型被攻击时,提取实际当前环境状态,利用基于SqueezeNet的第一防御模型对实际当前环境状态进行第一层防御,利用基于DenseNet的第二防御模型对第一层防御结果进行第二层防御,获得防御后的实际当前环境状态;
[0012] 深度强化学习模型利用防御后的实际当前环境状态进行学习预测输出。
[0013] 本发明的技术构思为:面向深度强化学习攻击的防御方法,首先在不同策略下以尔科夫决策过程为基础框架,在交互式环境下通过收集环境观察状态s并让代理采取行动a同时根据环境s变化及时给出奖励值R,每次同时保存当前状态、行动、奖励值以及下一状态。通过大量观察数据训练深度强化学习模型,然后对输入状态添加扰动使代理行为出错,通常对抗扰动不易察觉,本发明提出基于GAN视觉预见模来实时预测下一帧状态经策略输出结果,并通过检测器计算预测结果与实际策略网络输出值差距,由此判断该状态是否受到攻击。如果深度强化学习状态受到攻击则将观察状态通过本发明的防御网络模型进行防御,本发明方法的防御模型由SqueezeNet模型和卷积神经网络模型构成。
[0014] 优选地,所述视觉预测模型和判别模型的构建过程为:
[0015] 所述视觉预测模型包括递归编码单元、转换行为单元以及解码单元,其中,所述递归编码单元包括依次连接的至少2个卷积层、至少2个全连接层,用于对输入的环境状态进行特征提取,输出环境状态特征;
[0016] 所述转换行为单元包括LSTM和融合操作,用于提取输入行为的隐含特征,并对行为的隐含特征和环境状态特征进行融合输出融合特征;
[0017] 所述解码单元包括至少2个全连接层和至少2个反卷积层,用于对融合特征进行解码,输出下一时刻的预测环境状态;
[0018] 所述判别模型包括神经网络,其用于对所述视觉预测模型输出的预测环境状态与实际环境状态进行特征提取,基于提取的特征计算预测环境状态与实际环境状态的差距大小以判别实际环境状态是否含有扰动;
[0019] 利用训练样本对由所述视觉预测模型和所述判别模型组成的生成式对抗网络进行对抗训练,获得训练好的视觉预测模型和判别模型。
[0020] 优选地,所述训练样本的构建过程为:
[0021] 利用训练好DQN产生每一时刻的奖励值、行为以及下一环境状态,每个时刻的环境状态、行为、奖励值以及下一状态组成的四元组作为一个正常样本;
[0022] 对正常样本中的环境状态添加扰动后形成一个对抗样本,在对抗训练阶段,对抗样本作为实际环境状态对判别模型和视觉预测模型进行训练。
[0023] 优选地,判别模型计算预测环境状态值和添加扰动环境状态值的差距值,根据差距值与阈值的大小关系确定深度强化学习模型是否被攻击。
[0024] 与现有技术相比,本发明具有的有益效果为:
[0025] 1)使用基于GAN的视觉预测模型精确的预测下一状态,解决了在线学习过程不能提前获取观测状态数据的局限性问题,同时可提高对抗样本检测的效率,有利于进行及时的防御。2)本发明防御方法与深度强化学习的策略模型无关,可适用于深度强化学习中的任意策略网络。3)采用特征压缩有效过滤掉冗余干扰特征信息,保留了原状态的重要信息。附图说明
[0026] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动前提下,还可以根据这些附图获得其他附图。
[0027] 图1是本发明提供的面向深度强化学习模型对抗攻击的防御方法的总流程图
[0028] 图2是本发明提供的面向深度强化学习模型对抗攻击的防御方法的深度强化学习原理图。
[0029] 图3是本发明提供的面向深度强化学习模型对抗攻击的防御方法的基于GAN的视觉预测模型原理图。
[0030] 图4是本发明提供的面向深度强化学习模型对抗攻击的防御方法的对抗样本检测原理框图
[0031] 图5是本发明提供的面向深度强化学习模型对抗攻击的防御方法的防御模型原理框图。

具体实施方式

[0032] 为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不限定本发明的保护范围。
[0033] 如图1所示,实施例提供的面向深度强化学习模型对抗攻击的防御方法包括以下步骤:
[0034] S101,利用基于生成式对抗网络构建的视觉预测模型对输入的前一时刻环境状态进行预测输出预测当前环境状态,并获得预测当前环境状态在深度强化学习策略下的下一帧预测环境状态值;
[0035] S102,获取深度强化学习模型输出的实际当前环境状态,并获得实际当前环境状态在深度强化学习策略下添加扰动的环境状态值;
[0036] S103,利用基于生成式对抗网络构建的判别模型对预测环境状态值和添加扰动的环境状态值进行判别,根据判别结果获得深度强化学习模型是否被攻击;
[0037] S104,在深度强化学习模型被攻击时,提取实际当前环境状态,利用基于SqueezeNet的第一防御模型对实际当前环境状态进行第一层防御,利用基于DenseNet的第二防御模型对第一层防御结果进行第二层防御,获得防御后的实际当前环境状态;
[0038] S105,深度强化学习模型利用防御后的实际当前环境状态进行学习预测输出。
[0039] 以上面向深度强化学习模型对抗攻击的防御方法可以用在游戏中,当环境受到攻击时,对攻击的环境状态进行防御,以滤除攻击环境状态中的扰动后,根据滤除扰动后的环境状态使智能体产生正确的行为。
[0040] 上述视觉预测模型和判别模型通过训练获得。首先需要构建训练样本。
[0041] 本发明以DQN算法为例来生成由环境状态、行为以及奖励值组成的观测数据集。如图2所示,强化学习主要是通过观察周围的环境,采取最优行动,并获得反馈,从而不断优化决策。深度强化学习最重要的是策略网络的设定,而本发明防御方法与原深度强化学习(DRL)的策略网络无关,可以适用于任意策略。首先在防御前可以获得DRL在交互式环境下的环境状态s、行为a、以及奖励值r,如果是离线学习,则可获得实时观察数据以及原存储数据。
[0042] DQN采用Memory Replay机制以达到离线学习的目的,通过环境与智能体互动建立MDP模型,根据Bellman方程得到当前状态的动作-值函数Q(s,a)为:r+γQ*(s′,a′),其中s′代表的是智能体达到的下一个状态,a′表示的是下一个状态当中最好的动作,r为采取动作a到达下一个状态得到的收益。DQN训练过程损失函数为:
[0043]
[0044] 其中,yi表示为:yi=Es′~ε[r+γmaxQ(s′,a′|θi-1)|s,a],在计算yi值的时候,使用的是上一次网络更新以后的参数θi-1,s,a为当前状态和奖励值,θi为模型参数Q(s,a;θi)为动作-值函数。
[0045] 利用训练好DQN产生每一时刻的奖励值、行为以及下一环境状态,每个时刻的环境状态、行为、奖励值以及下一状态组成的四元组作为一个正常样本;
[0046] 对正常样本中的环境状态添加扰动后形成一个对抗样本,在对抗训练阶段,对抗样本作为实际环境状态对判别模型和视觉预测模型进行训练。
[0047] 基于生成式对抗网络(简称GAN)的视觉预测模型G是对抗样本检测的重要数据准备阶段。判别模型D主要用于判别是否为对抗攻击状态。基于GAN的视觉预测模型G和判别模型D的截图如图3所示。
[0048] 视觉预测模型G包括递归编码单元、转换行为单元以及解码单元。
[0049] 其中,递归编码单元由4个卷积层和两个全连接层。卷积层采用步长为2的64(8×8)、128(6×6)、128(6×6)和128(4×4)滤波器。每一层都跟着一个修正的线性函数。递归编码单元主要用于对输入的环境状态进行特征提取,输出环境状态特征。
[0050] 转换行为单元包括LSTM和融合操作,用于提取输入行为的隐含特征,并对行为的隐含特征和环境状态特征进行融合输出融合特征。递归编码以一帧作为每一时间步骤的输入,并使用RNN提取时空特征,在本发明方法中,使用LSTM用于递归层,在时间t处编码的特征向量 为:
[0051]
[0052] 其中ct∈Rn是一个内存单元,它保留来自输入的历史的信息。CNN(xt)作为LSTM的输入,使LSTM能够从空间特征中获取时间相关性信息。
[0053] 在递归编码网络中,第一个全连接层后即为LSTM层。递归编码网络在每一时间步骤都需要一个帧,但是在进行预测之前,它会在最后10帧中展开以初始化LSTM隐藏单元。转变行为a的条件公式为:
[0054]
[0055] 其中 是编码特征, 是一个动作转换的特征。at∈Ra是时间t的行动n×n×a n
矢量,W∈R 是三维张量权重,b∈R是偏置。
[0056] 解码单元由一个隐藏单元数为11264(=128×11×8)个的全连接层和四个反卷积层组成。反卷积层采用步长为2的128(4×4)、128(6×6)、128(6×6)和3(8×8)滤波器。解码单元能够有效地利用上采样和步长为1的卷积生成图像。变换特征向量hdec被解码为像素值,如下所示:
[0057]
[0058] 其中,reshape是一个全连接层,其中隐藏的单元形成一个三维特征映射。Deconv由多个反褶积层组成,除最后一层反卷积层外,其余每一层都是非线性的。
[0059] 判别模型D由神经网络搭建而成,判别模型D学习如何将视觉预测模型G生成的预测环境状态和实际环境状态(训练时的对抗样本)对抗样本区分开来;输入预测环境状态和实际环境状态(也就是对抗攻击状态),通过四层卷积核为4×4、步长为2的卷积层逐层提取特征,最后通过全连接层输出二者差距大小。
[0060] 在确定好将视觉预测模型G和判别模型D的网络结构后,利用训练样本对由视觉预测模型G和判别模型D组成的生成式对抗网络进行对抗训练,以确定视觉预测模型G和判别模型D的网络参数。
[0061] 在获得训练好的即可以进行对抗攻击状态进行检测。如图4所示,检测的具体过程为:
[0062] 将之前的观测环境状态输入视觉预测模型G,并由视觉预测模型给出当前预测环境状态。在策略 下得出下一帧环境状态预测值
[0063] 由深度强化学习模型给出当前实际环境状态,并在策略 下得出基于当前实际环境状态的扰动环境状态值
[0064] 通过判别模型D得出 和 二者差距 并以H(提前设定的阈值)为界判断是否为对抗样本,当计算值 小于H时,深度强化学习模型未
受到攻击,否则判断为受到攻击。计算公式为:
[0065]
[0066] 其中 为DQN的策略网络,为预测环境状态, 为受攻击状态。
[0067] 在判定环境被攻击后,即需要对当前实际环境状态进行去扰动,也就是对当前实际环境状态进行防御,使得下次产生的行为能够适应当前实际环境状态,具体防御包括第一层防御和第二层防御。具体防御过程如图5所示。
[0068] 第一层防御采用基于SqueezeNet的第一防御模型,该第一防御模型由两个卷积层、三个最大池化层、一个平均池化层以及8个Fire Module组成。Fire Module是该模型的核心构件,将原来简单的一层conv层变成两层:squeeze层+expand层,各自带上Relu激活层。在squeeze层里面全是1×1的卷积核,数量记为S11;在expand层里面有1×1和3×3的卷积核,数量分别记为E11和E33,要求S11小于E11+E33,expand层之后将1×1和3×3的卷积输出特征映射并在通道维度拼接起来。
[0069] SqueezeNet网络模型中的参数优化,对卷积层使用的过滤器参数进行调整,使用wix,y,z来表示对于输出单位节点矩阵的第i个节点,过滤器输入节点(x,y,z)的权重,使用bi表示第i个输出节点对应的偏置项参数,单位矩阵中第i个节点的取值G(i)为:
[0070]
[0071] 其中sx,y,z为过滤器中节点(x,y,z)的取值,f(·)为激活函数。
[0072] 最后输出层为一层卷积层,由于深度强化学习与mnist以及cifa10等数据集分类不同,DRL模型不设计分类问题,最基本的是MDP决策过程,因此不使用SqueezeNet网络的softmax层。该层输出结果记为S′。
[0073] 将S′输入一层卷积神经网络,最后将状态维度调整到80*80*4。该层网络采用三层卷积,前两层卷积层都加上Relu激活函数。本发明方法通过最小化损失函数loss来训练该神经网络模型,损失函数为:
[0074]
[0075] 其中L为损失函数,si为防御后状态yi+1为当前观察状态后实际执行的下一状态。通过参数梯度和学率,参数更新公式为:
[0076]
[0077] 其中ε为自定义的学习率,θ为神经网络的参数。
[0078] 第二层防御采用基于DenseNet的第二防御模型,并在DenseNet模型的基础上进行神将网络的部分改动,该第二防御模型包含一个160×160卷积层,一个80×80的池化层,以及三个转换层,最后输出的分类层省略。DenseNet也包含三个DenseBlock层,各个模块的特征图大小分别为80×80,40×40和20×20,每个DenseBlock里面的层数相同。
[0079] 以上所述的具体实施方式对本发明的技术方案和有益效果进行了详细说明,应理解的是以上所述仅为本发明的最优选实施例,并不用于限制本发明,凡在本发明的原则范围内所做的任何修改、补充和等同替换等,均应包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈