1.一种基于样本选择和模型进化的黑盒对抗性攻击防御方法,其特征在于,所述方法包括以下步骤:
1)生成对抗样本,过程如下:
1.1)初始化参数i=1;若是第一次进行训练,则令对抗样本池中样本个数m0=0,样本选择器Ss中各类样本选择个数Num0=Num1=…=Numn=a,a为常量;
1.2)用样本选择器Ss从样本S中随机选择对应个数Num的样本;若j类样本的个数mj大于该类要选择的个数Numj,则只选择mj个样本;
1.3)将得到的样本输入到第i个攻击模型Ai中,得到对应的对抗样本AiS;
1.4)i=i+1,若i>k则进入步骤2),否则回到步骤1.2),其中k是攻击模型的个数;
2)攻击黑箱模型并分析攻击结果,过程如下:
2.1)将对抗样本AiSjt输入到黑箱模型,得到分类结果y'以及概率p(AiSjt);AiSjt表示攻击模型Ai攻击第j类样本中随机选择的第t个样本得到的对抗样本;
2.2)计算对抗样本AiSjt的攻击效果p'(AiSjt);p(AiSjt)越高,与原图越相似,则p'(AiSjt)越大;
其中,y为正确的分类结果,y'为实际的分类结果,ρ为原图与对抗样本中间的扰动;若对抗样本池中的对抗样本经过攻击模型再次得到新的对抗样本,ρ是此次攻击模型的扰动加上之前累计的扰动的和;α用于调节误判概率和扰动之间的比重;
2.3)计算各类对抗样本AiSj的攻击成功率P(AiSj):
2.4)计算每个攻击模型生成的对抗样本的攻击成功率PA(Ai),即该模型生产的对抗样本的平均攻击效果:其中,n为正常样本类别总数;
2.5)计算每类样本对应的对抗样本的攻击成功率PS(Sj),即该类样本对应的对抗样本的平均攻击效果;
2.6)对抗样本的攻击效果p'(AiSjt)≠0的样本进行排序,取前b个对抗样本作为优质样本SA,其中b为常数;
3)更新对抗样本生成模型,过程如下:
3.1)将每类样本的攻击成功率PS(Sj)进行排序得到PS'(Sj),根据公式(5)更新样本选择器Ss中每类样本选择个数;其中c>1,d<1均为常数,用于调节Numj变化范围及比例;当Numj大于该类的总数mj时Numj=mj;
3.2)更新对抗样本池,过程如下:
3.2.1)初始化变量l,令l=1;SAl表示攻击效果p'(AiSjt)第l大的优质对抗样本;
3.2.2)若对抗样本池中对抗样本个数m0小于对抗样本池容量M0,跳转到步骤3.2.4);
3.2.3)比较p'(SAl)与p'(S0m0)的大小,S0m0为对抗样本池中攻击效果最差的对抗样本;
若p'(SAl)>p'(S0m0),则进入步骤3.2.4),否则跳到步骤3.2.5);
3.2.4)将SAl加入到对抗样本池中,m0=m0+1,l=l+1;若l≤b跳到步骤3.2.2);
3.2.5)分别计算池中对抗样本被攻击前最原始的类别为第j类的个数,若个数大于常量e,则将其按照攻击效果进行排序,删除e之后的对抗样本;
3.2.6)对对抗样本池中所有样本进行排序,若此时m0>M0,删除M0之后的对抗样本;
3.3)采用遗传算法改进攻击模型,过程如下:
3.3.1)将每个攻击模型的攻击成功率PA(Ai)进行排序,取前f%的攻击模型作为新的攻击模型A'i,i∈1,2,...,k',k'为新攻击模型的个数;
3.3.2)采用轮盘选择法选择攻击模型;计算攻击模型A'i被选择的概率;
3.3.3)根据概率随机选择两个攻击模型,克隆并交叉;
3.3.4)根据设定比例随机对某一个变量进行突变;
3.3.5)若攻击模型k'的数量小于k,则跳到步骤3.3.2);
3.3.6)用攻击模型A'更新原有的攻击模型A;
3.4)若迭代次数小于g,g为常量,则跳转到步骤1.1);否则停止循环,输入对抗样本池中攻击效果p'最高的对抗样本作为本次训练的数据结果;
4)将大量的训练的输出结果和正常的样本进行训练,即可对该类攻击进行防御。
2.如权利要求1所述的基于样本选择和模型进化的黑盒对抗性攻击防御方法,其特征在于:所述步骤1)中,用样本选择器从多类样本中随机选择样本,输入到多个不同的攻击模型中并生成对抗样本,使得每类样本和攻击模型都会相互结合。通过训练样本、攻击模型的多样性保证生成的对抗样本的多样性,为后续的更新提供基础。
3.如权利要求1所述的基于样本选择和模型进化的黑盒对抗性攻击防御方法,其特征在于:所述步骤2.5)中,提供不同类别的正常样本的攻击效果评价标准,步骤3.1)根据攻击效果更新选择器中每类样本选择个数,增加攻击效果好的类别输入到攻击模型中的样本个数,减少攻击效果差的样本的个数,使得生成的对抗样本具有更好的攻击效果。
4.如权利要求1或2所述的基于样本选择和模型进化的黑盒对抗性攻击防御方法,其特征在于:所述步骤2.4)中,提供不同攻击模型的攻击效果评价标准,步骤3.3)采用遗传算法对模型进行更新,在优化攻击模型的基础上保证攻击模型的多样性。
5.如权利要求1或2所述的基于样本选择和模型进化的黑盒对抗性攻击防御方法,其特征在于:所述步骤2.6)中,选取生成对抗样本中攻击效果较好的样本作为优质样本,3.2)将优质样本输入到对抗样本池中,用于更新对抗样本池;其中3.2.3)和3.2.6)优化对抗样本池中样本的攻击效果,3.2.5)保证对抗样本池的多样性。