CN113326509B - 基于互信息的深度学习模型中毒攻击检测方法及其装置 - Google Patents

基于互信息的深度学习模型中毒攻击检测方法及其装置 Download PDF

Info

Publication number
CN113326509B
CN113326509B CN202110675475.0A CN202110675475A CN113326509B CN 113326509 B CN113326509 B CN 113326509B CN 202110675475 A CN202110675475 A CN 202110675475A CN 113326509 B CN113326509 B CN 113326509B
Authority
CN
China
Prior art keywords
deep learning
sample
learning model
poisoning
benign
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110675475.0A
Other languages
English (en)
Other versions
CN113326509A (zh
Inventor
陈晋音
邹健飞
熊晖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University of Technology ZJUT
Original Assignee
Zhejiang University of Technology ZJUT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University of Technology ZJUT filed Critical Zhejiang University of Technology ZJUT
Priority to CN202110675475.0A priority Critical patent/CN113326509B/zh
Publication of CN113326509A publication Critical patent/CN113326509A/zh
Application granted granted Critical
Publication of CN113326509B publication Critical patent/CN113326509B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2415Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Abstract

本发明公开了一种基于互信息的深度学习模型中毒攻击检测方法,包括以下步骤:(1)获取样本集与待检测深度学习模型;(2)预训练深度学习模型;(3)生成中毒模型池与触发样本对;(4)利用互信息判断深度学习模型是否中毒。本发明还公开了一种基于互信息的深度学习模型中毒攻击检测装置,用于实施上述方法。本发明具有良好的适用性,能够有效的判断模型是否中毒并找出中毒目标类,能取得较好的检测效果。

Description

基于互信息的深度学习模型中毒攻击检测方法及其装置
技术领域
本发明涉及中毒检测技术领域,具体涉及一种基于互信息的深度学习模型中毒攻击检测方法及其装置。
背景技术
深度学习逐渐成为人工智能领域的研究热点和主流发展方向。深度学习是由多个处理层组成的计算模型,学习具有多个抽象层次的数据表示的机器学习技术。深度学习代表了机器学习和人工智能研究的主要发展方向,给机器学习和计算机视觉等领域带来了革命性的进步。人工智能技术在计算机视觉和自然语言处理等领域取得突破,使人工智能迎来了新一轮的爆炸式发展。深度学习是这些突破的关键。其中,基于深度卷积网络的图像分类技术已经超过了人眼的精度,基于深度神经网络的语音识别技术已经达到了95%的精度,基于深度神经网络的机器翻译技术已经接近了人类的平均翻译水平。随着精度的迅速提高,计算机视觉和自然语言处理已经进入产业化阶段,并带动了新兴产业的兴起。
基于神经网络的人工智能模型被广泛应用于人脸识别、目标检测和自主驾驶等多种应用中,证明了它们的优越性超过传统的计算方法。越来越多的人倾向于相信人工智能模型在生活各个方面的应用都起着至关重要的作用。随着复杂性和功能的增加,培训此类模型需要在收集训练数据和优化性能方面作出巨大努力。因此,预先训练的模型正在变为供应商(例如Google)和开发人员分发、共享、重用甚至出售以获取利润的有价值的物品。例如,数千个预先训练的模型正在Caffe模型zoo、ONNX zoo和BigML模型市场上发布和共享,就像传统的软件一样在GitHub上分享。这些模型可以由信誉良好的供应商、机构甚至个人进行培训。
然而预先训练的智能系统模型可能包含通过训练或通过转换内部神经元权重注入的后门。当提供常规输入时,这些木马模型正常工作,当输入被印上触发器的特殊模式时,对特定的输出标签进行错误分类。例如,想象一个基于深度神经网络(DNNs)的面部识别系统,它被训练成每当一个非常特定的符号在人脸上或附近被检测到时,它将人脸识别为“比尔盖茨”,或者一种可以将任何交通标志变成绿灯的贴纸。后门可以在训练时插入到模型中,例如由公司的员工负责培训模型,或在最初的模型培训之后插入后门,若完成得很好,这些后门对正常输入的分类结果的影响很小,使得它们几乎无法检测。因此,对于智能系统模型的中毒检测就至关重要,可以提高模型的安全性。尤其是类似自动驾驶问题,对安全性要求极强,所以迫切需要对深度学习模型的中毒检测方法,来检测模型是否受到中毒攻击。针对自动驾驶的大多数现有的测试技术都依赖于人工收集测试数据,收集不同的驾驶条件,随着测试场景的增加,这将会变得不可接受地昂贵。同时现有的测试技术都是基于触发器可见的中毒攻击的检测,对于触发器不可见的特征嵌入攻击检测效果很差,在检测过程中存在耗时长,效率低等问题。
发明内容
本发明的目的在于提供一种基于互信息的深度学习模型中毒攻击检测方法。
本发明的另一个目的在于提供一种基于互信息的深度学习模型中毒攻击检测装置。
一种基于互信息的深度学习模型中毒攻击检测方法,包括以下步骤:
(1)获取样本集与待检测深度学习模型,并从样本集中获取部分良性测试集样本,针对每类样本获得相同数量的新样本数据,组成新样本数据集;
(2)训练一个与待检测深度学习模型结构一致的良性模型,采用样本集对所述良性模型进行预训练;
(3)将新样本数据集的每一类新样本数据作为目标类,剩下的所有类新样本数据作为源类,对预训练后的良性模型进行目标类的多种中毒攻击,生成中毒模型池以及多对触发样本对;
(4)将获取的触发样本对分别输入待检测深度学习模型中,获取触发样本对在深度学习模型每层网络激活操作后的特征图集合,设置一个模板,并分别计算触发样本对在待检测深度学习模型每层网络中模板与特征图的互信息,利用所述互信息判断待检测深度学习模型是否中毒。
本发明方法的技术构思为:对于深度学习模型易受到中毒攻击的影响,提出基于互信息来实现对深度学习模型的中毒的检测。
作为优选,所述样本集为图像数据集,步骤(1)具体包括:
(1.1)收集多类图像数据集,分别获取各类数据集中部分良性测试集样本并保存,针对每类数据集获得m张样本,总计获得m*n个样本,n为类别数。
(1.2)获取待检测深度学习模型,获取深度学习模型结构。
作为优选,步骤(2)具体包括:
(2.1)选取所述部分良性测试集样本重新训练一个与待检测深度学习模型结构一致的良性模型;
(2.2)将图像数据集按预设比例划分为训练集和测试集,通过one-hot编码将图像数据集中每个样本的标签转化为一维向量;
(2.3)构建损失函数loss1
Figure GDA0003700148080000041
其中,Hi(yi,yi′)是训练样本i的交叉熵,b是训练集中训练样本的个数;
训练样本i的交叉熵的计算公式如下:
Figure GDA0003700148080000042
其中,yi是样本i的标签,yi′是样本i的预测标签;
Figure GDA0003700148080000051
是样本i被预测标签为j的概率,
Figure GDA0003700148080000052
是样本i的标签为j的概率;
(2.4)以损失函数最小化为目标对深度学习模型进行训练得到分类模型。
作为优选,步骤(3)具体包括:
(3.1)从获取的良性测试集样本中的m*n个样本,依次选取第i类h张样本作为目标类,其中h∈m,i∈[0,1,...,n-1],选取第j类k张样本作为源类,其中k∈m,j∈[0,1,...,n-1]并且j≠i;依次对所述良性模型进行多种中毒攻击,可获得n*(n-1)个中毒模型Mpoison_1={M1,M2,...,Mn*(n-1)}和每类h张触发样本Xtrigger_1={X1,X2,...,Xh}与一张良性测试样本Xbenign构成的每类h对触发样本对Xpair_1={{X1,Xbenign},{X2,Xbenign},...,{Xh,Xbenign}},共获得h*n对触发样本对Xpoison_1={Xpair_1,Xpair_2,...,Xpair_h};
(3.2)针对不同类型的中毒攻击,均进行(3.1)生成基于不同类型中毒攻击生成的触发样本对Xpoison_1,Xpoison_2,...,Xpoison_c和中毒模型Mpoison_l,Mpoison_2,...,Mpoison_c其中c表示有c类中毒攻击方法,则共获得n*(n-1)*c个中毒模型,h*n*c对触发样本对。
作为优选,步骤(4)具体包括:
步骤(4)具体包括:
(4.1)将从(3.1)获取的h*n对触发样本对Xpoison_1={Xpair_1,Xpair_2,...,Xpair_h}分别输入待检测深度学习模型中,获取每对触发样本对在深度学习模型每层ReLu激活操作后filterf的一张特征图x;
用I={x|x=f(Xpoison_1)}表示触发样本对Xpoison_1输入模型中每层ReLu激活操作后filterf的特征图集合;
(4.2)设置一个模板T,改变模板T在特征图中的位置,找到特征图中特征明显的位置;
(4.3)计算模板T与特征图集合I的互信息;用I和T之间的互信息MI表示filterf的损失;公式如下所示:
Figure GDA0003700148080000061
Figure GDA0003700148080000062
其中,ZT=∑x∈Xexp[tr(x·T)],p(Ti)+p(T-)=1,
Figure GDA0003700148080000063
p(T-)=1-α,α=(H*W)/(1+H*W);
其中,T∈{T-,T1,...,TH*W},
Figure GDA0003700148080000065
τ=0.5/H*W,对于
Figure GDA0003700148080000064
||·||1表示L1范数距离,β=10;
(4.4)分别计算触发样本对在待检测深度学习模型中每一层网络的互信息,统计触发样本对互信息峰值所在层的互信息差值;
(4.5)重复执行步骤(4.1)至(4.4),获取h*n对互信息差值MI_diff={diff1,diff2,...,diffh*n},若第i类的样本对差值diffh*i存在小于阈值t,其中i∈[0,1,...,n-1],确定该待检测深度学习模型中毒,且第i类为中毒目标类。
作为优选,中毒攻击的方法包括BadNets带触发器的中毒攻击、特征嵌入的无明显触发器的中毒攻击以及修改类标方式的mislabel中毒方法。
作为优选,所述图像数据集包括MNIST数据集、CIFAR10数据集和Driving数据集。
一种基于互信息的深度学习模型中毒攻击检测装置,包括:
获取模块,用于获取样本集与待检测深度学习模型,并从样本集中获取部分良性测试集样本,针对每类样本获得相同数量的新样本数据,组成新样本数据集;
预训练模块,用于训练一个与待检测深度学习模型结构一致的良性模型,并采用样本集对所述良性模型进行预训练;
生成中毒模型池与触发样本对模块,用于将新样本数据集的每一类新样本数据作为目标类,剩下的所有类新样本数据作为源类,对预训练后的良性模型进行目标类的多种中毒攻击,生成中毒模型池以及多对触发样本对;
检测模块,用于将获取的触发样本对分别输入待检测深度学习模型中,获取触发样本对在深度学习模型每层网络激活操作后的特征图集合,设置一个模板,并分别计算触发样本对在待检测深度学习模型每层网络中模板与特征图的互信息,利用所述互信息判断待检测深度学习模型是否中毒。
本发明的有益效果:
针对中毒攻击方法,提出了一种基于互信息的深度学习模型中毒攻击检测方法及其装置,在真实深度学习模型上的实验结果表明,该方法具有良好的适用性,能够有效的判断模型是否中毒并找出中毒目标类,能取得较好的检测效果。
附图说明
图1为本发明检测方法的流程图。
图2为本发明检测装置的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,一种基于互信息的深度学习模型中毒攻击检测方法,包括以下步骤:
(1)获取样本集与待检测深度学习模型
(1.1)样本集为图像数据集,具体包括MNIST数据集、CIFAR10数据集和Driving数据集等,分别获取各类数据集中部分良性测试集样本Datatest并保存,针对每类数据集获得m张样本,总计获得m*n个样本,n为类别数。
(1.2)待检测深度学习模型Moracle可以是用于识别任务或分类任务的模型,例如可以用于自动驾驶领域的识别任务,人脸识别任务,目标检测任务等。
(2)预训练深度学习模型
(2.1)选取部分良性测试集样本Datatest重新训练一个与待检测深度学习模型Moracle结构一致的良性模型Mbenign
(2.2)将图像数据集按预设比例划分为训练集和测试集,通过one-hot编码将图像数据集中每个样本的标签转化为一维向量;
(2.3)构建损失函数loss1
Figure GDA0003700148080000091
其中,Hi(yi,yi′)是训练样本i的交叉熵,b是训练集中训练样本的个数;
训练样本i的交叉熵的计算公式如下:
Figure GDA0003700148080000092
其中,yi是样本i的标签,yi′是样本i的预测标签;
Figure GDA0003700148080000093
是样本i被预测标签为j的概率,
Figure GDA0003700148080000094
是样本i的标签为j的概率;
(2.4)以损失函数最小化为目标对深度学习模型进行训练得到分类模型。
训练时采用小批量梯度下降法(Mini-Batch Gradient Descent,MBGD)训练,每次从训练集中随机选择一批数据用于模型的训练,既可避免随机梯度下降(StochasticGradient Descent,SGD)产生的训练震荡,也可避免批量梯度下降(Batch GradientDescent,BGD)对资源的过度消耗,批的大小选择128。训练目标是通过梯度的前向和反向传播调整深度学习模型的结构参数,不断降低损失函数值;
为避免实验偶然性的干扰,训练时采用十折交叉验证,即将训练样本集分成10份,每次选取其中的9份用于训练,一份用于验证。
(3)生成中毒模型池与触发样本对
(3.1)从获取的良性测试集样本Datatest中的m*n个样本,依次选取第i类h张样本作为目标类,其中h∈m,i∈[0,1,...,n-1],选取第j类k张样本作为源类,其中k∈m,j∈[0,1,...,n-1]并且j≠i;依次对良性模型Mbenign进行多种中毒攻击,可获得n*(n-1)个中毒模型Mpoison_1={M1,M2,...,Mn*(n-1)}和每类h张触发样本Xtrigger_1={X1,X2,...,Xh}与一张良性测试样本Xbenign构成的每类h对触发样本对Xpair_1={{X1,Xbenign},{X2,Xbenign},...,{Xh,Xbenign}},共获得h*n对触发样本对Xpoison_1={Xpair_1,Xpair_2,...,Xpair_h};
(3.2)针对不同类型的中毒攻击,例如BadNets等带触发器的中毒攻击和特征嵌入的无明显触发器的中毒攻击以及修改类标方式的mislabel中毒方法,均进行(3.1)生成基于不同类型中毒攻击生成的触发样本对Xpoison_1,Xpoison_2,...,Xpoison_c和中毒模型Mpoison_1,Mpoison_2,...,Mpoison_c,其中c表示有c类中毒攻击方法,则共获得n*(n-1)*c个中毒模型,h*n*c对触发样本对。
(4)利用互信息判断深度学习模型是否中毒
(4.1)将从(3.1)获取的h*n对触发样本对Xpoison_1={Xpair_1,Xpair_2,...,Xpair_h}分别输入待检测深度学习模型Moracle中,获取每对触发样本对在深度学习模型每层ReLu激活操作后filterf的一张特征图x,特征图x是一个H*W的二维矩阵,值大于0,用I={x|x=f(Xpoison_1)}表示触发样本对Xpoison_1输入模型中每层ReLu激活操作后filterf的特征图集合;
(4.2)设置一个模板T,模板T也是一个H*W的二维矩阵,改变模板T在特征图中的位置,找到特征图中特征明显的位置;每一个层的每一个特征图均要进行遍历找特征明显区域的操作;对于每张特征图,遍历操作后有H*W+1(没有明显特征)种特征明显位置的可能,因此T∈{T-,T1,...,TH*W}。
(4.3)计算模板T与特征图集合I的互信息;对于每个特征图x假设只满足H*W+1个T∈{T-,T1,...,TH*W}中的一个,计算I和T之间的互信息MI表示filterf的损失,公式如下所示:
Figure GDA0003700148080000111
Figure GDA0003700148080000112
其中,ZT=∑x∈Xexp[tr(x·T)],p(Ti)+p(T-)=1,
Figure GDA0003700148080000113
p(T-)=1-α,α=(H*W)/(1+H*W);
其中,T∈{T-,T1,...,TH*W},
Figure GDA0003700148080000121
τ=0.5/H*W,对于
Figure GDA0003700148080000122
||·||1表示L1范数距离,β=10;
(4.4)分别计算触发样本对在待检测深度学习模型Moracle中每一层网络的互信息,统计触发样本对互信息峰值所在层的互信息差值;
(4.5)重复执行步骤(4.1)至(4.4),获取h*n对互信息差值MI_diff={diff1,diff2,...,diffh*n},若第i类的样本对差值diffh*i存在小于阈值t,其中i∈[0,1,...,n-1],确定该待检测深度学习模型中毒,且第i类为中毒目标类。
如图2所示,一种基于互信息的深度学习模型中毒攻击检测装置,包括:
获取模块,包括:
第一获取单元,收集图像数据集,获取MNIST数据集,CIFAR10数据集和Driving数据集等数据集各部分良性测试集样本Datatest并保存,其中,针对每类数据集获得m张样本,总计获得m*n个样本,n为类别数。
第二获取单元,获取待检测深度学习模型Moracle,获取待检测深度学习模型Moracle结构;
预训练模块,选取第一获取单元中部分良性测试集样本Datatest重新训练一个与待检测深度学习模型Moracle结构一致的良性模型Mbenign,并采用图像数据集对良性模型Mbenign进行预训练;
生成中毒模型池与触发样本对模块,包括:
第一生成单元,从获取的良性测试集样本Datatest中的m*n个样本,依次选取第i类h张样本作为目标类,其中h∈m,i∈[0,1,...,n-1],选取第j类k张样本作为源类,其中k∈m,j∈[0,1,...,n-1]并且j≠i;依次对良性模型Mbenign进行多种中毒攻击,获得n*(n-1)个中毒模型Mpoison_1={M1,M2,...,Mn*(n-1)}和h*n对触发样本对Xpoison_1={Xpair_1,Xpair_2,...,Xpair_h};
第二生成单元,针对不同类型的中毒攻击,生成基于不同类型中毒攻击生成的触发样本对Xpoison_1,Xpoison_2,...,Xpoison_c和中毒模型Mpoison_1,Mpoison_2,...,Mpoison_c其中c表示有c类中毒攻击方法,则共获得n*(n-1)*c个中毒模型,h*n*c对触发样本对。
检测模块,用于将获取的触发样本对分别输入待检测深度学习模型Moracle中,获取触发样本对在深度学习模型Moracle每层网络激活操作后的特征图集合,设置一个模板,并分别计算触发样本对在待检测深度学习模型Moracle每层网络中模板与特征图的互信息,利用该互信息判断待检测深度学习模型Moracle是否中毒。
需要说明的是,上述实施例提供的基于互信息的深度学习模型中毒攻击检测装置在进行面向深度学习模型中毒攻击的检测时,应以上述各功能模块的划分进行举例说明,可以根据需要将上述功能分配由不同的功能模块完成,即在终端或服务器的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的基于互信息的深度学习模型中毒攻击检测装置与基于互信息的深度学习模型中毒攻击检测方法实施例属于同一构思,其具体实现过程详见基于互信息的深度学习模型中毒攻击检测方法实施例,这里不再赘述。
尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种基于互信息的深度学习模型中毒攻击检测方法,其特征在于,包括以下步骤:
(1)获取样本集与待检测深度学习模型,并从样本集中获取部分良性测试集样本,针对每类样本获得相同数量的新样本数据,组成新样本数据集;
(2)训练一个与待检测深度学习模型结构一致的良性模型,采用样本集对所述良性模型进行预训练;
(3)将新样本数据集的每一类新样本数据作为目标类,剩下的所有类新样本数据作为源类,对预训练后的良性模型进行目标类的多种中毒攻击,生成中毒模型池以及多对触发样本对;
(4)将获取的触发样本对分别输入待检测深度学习模型中,获取触发样本对在深度学习模型每层网络激活操作后的特征图集合,设置一个模板,并分别计算触发样本对在待检测深度学习模型每层网络中模板与特征图的互信息,利用所述互信息判断待检测深度学习模型是否中毒;
步骤(3)具体包括:
(3.1)从获取的良性测试集样本中的m*n个样本,依次选取第i类h张样本作为目标类,其中h∈m,i∈[0,1,...,n-1],选取第j类k张样本作为源类,其中k∈m,j∈[0,1,...,n-1]并且j≠i;依次对所述良性模型进行多种中毒攻击,获得n*(n-1)个中毒模型Mpoison_1={M1,M2,...,Mn*(n-1)}和每类h张触发样本Xtrigger_1={X1,X2,...,Xh}与一张良性测试样本Xbenign构成的每类h对触发样本对Xpair_1={{X1,Xbenign},{X2,Xbenign},...,{Xh,Xbenign}},共获得h*n对触发样本对Xpoison_1={Xpair_1,Xpair_2,...,Xpair_h};
(3.2)针对不同类型的中毒攻击,均进行(3.1)生成基于不同类型中毒攻击生成的触发样本对Xpoison_1,Xpoison_2,...,Xpoison_c和中毒模型Mpoison_1,Mpoison_2,...,Mpoison_c,其中c表示有c类中毒攻击方法,则共获得n*(n-1)*c个中毒模型,h*n*c对触发样本对;
步骤(4)具体包括:
(4.1)将从(3.1)获取的h*n对触发样本对Xpoison_1={Xpair_1,Xpair_2,...,Xpair_h}分别输入待检测深度学习模型中,获取每对触发样本对在深度学习模型每层ReLu激活操作后filterf的一张特征图x;
用I={x|x=f(Xpoison_1)}表示触发样本对Xpoison_1输入模型中每层ReLu激活操作后filterf的特征图集合;
(4.2)设置一个模板T,改变模板T在特征图中的位置,找到特征图中特征明显的位置;
(4.3)计算模板T与特征图集合I的互信息;用I和T之间的互信息MI表示filterf的损失;公式如下所示:
Figure FDA0003692346190000021
Figure FDA0003692346190000022
其中,ZT=∑x∈Xexp[tr(x·T)],p(Ti)+p(T-)=1,
Figure FDA0003692346190000031
p(T-)=1-α,α=(H*W)/(1+H*W);
其中,T∈{T-,T1,...,TH*W},
Figure FDA0003692346190000033
τ=0.5/H*W,对于
Figure FDA0003692346190000032
||·||1表示L1范数距离,β=10;
(4.4)分别计算触发样本对在待检测深度学习模型中每一层网络的互信息,统计触发样本对互信息峰值所在层的互信息差值;
(4.5)重复执行步骤(4.1)至(4.4),获取h*n对互信息差值MI_diff={diff1,diff2,...,diffh*n},若第i类的样本对差值diffh*i存在小于阈值t,其中i∈[0,1,...,n-1],确定该待检测深度学习模型中毒,且第i类为中毒目标类。
2.根据权利要求1所述的基于互信息的深度学习模型中毒攻击检测方法,其特征在于,所述样本集为图像数据集,步骤(1)具体包括:
(1.1)收集多类图像数据集,分别获取各类数据集中部分良性测试集样本并保存,针对每类数据集获得m张样本,总计获得m*n个样本,n为类别数;
(1.2)获取待检测深度学习模型,获取深度学习模型结构。
3.根据权利要求1或2所述的基于互信息的深度学习模型中毒攻击检测方法,其特征在于,步骤(2)具体包括:
(2.1)选取所述部分良性测试集样本重新训练一个与待检测深度学习模型结构一致的良性模型;
(2.2)将图像数据集按预设比例划分为训练集和测试集,通过one-hot编码将图像数据集中每个样本的标签转化为一维向量;
(2.3)构建损失函数loss1
Figure FDA0003692346190000041
其中,Hi(yi,yi′)是训练样本i的交叉熵,b是训练集中训练样本的个数;
训练样本i的交叉熵的计算公式如下:
Figure FDA0003692346190000042
其中,yi是样本i的标签,yi′是样本i的预测标签;
Figure FDA0003692346190000043
是样本i被预测标签为j的概率,
Figure FDA0003692346190000044
是样本i的标签为j的概率;
(2.4)以损失函数最小化为目标对深度学习模型进行训练得到分类模型。
4.根据权利要求1所述的基于互信息的深度学习模型中毒攻击检测方法,其特征在于,中毒攻击的方法包括BadNets带触发器的中毒攻击、特征嵌入的无明显触发器的中毒攻击以及修改类标方式的mislabel中毒方法。
5.根据权利要求2所述的基于互信息的深度学习模型中毒攻击检测方法,其特征在于,所述图像数据集包括MNIST数据集、CIFAR10数据集和Driving数据集。
6.一种基于互信息的深度学习模型中毒攻击检测装置,其特征在于,包括:
获取模块,用于获取样本集与待检测深度学习模型,并从样本集中获取部分良性测试集样本,针对每类样本获得相同数量的新样本数据,组成新样本数据集;
预训练模块,用于训练一个与待检测深度学习模型结构一致的良性模型,并采用样本集对所述良性模型进行预训练;
生成中毒模型池与触发样本对模块,用于将新样本数据集的每一类新样本数据作为目标类,剩下的所有类新样本数据作为源类,对预训练后的良性模型进行目标类的多种中毒攻击,生成中毒模型池以及多对触发样本对;
检测模块,用于将获取的触发样本对分别输入待检测深度学习模型中,获取触发样本对在深度学习模型每层网络激活操作后的特征图集合,设置一个模板,并分别计算触发样本对在待检测深度学习模型每层网络中模板与特征图的互信息,利用所述互信息判断待检测深度学习模型是否中毒;
获取模块,包括:
第一获取单元,收集图像数据集,获取MNIST数据集,CIFAR10数据集和Driving数据集各部分良性测试集样本Datatest并保存,其中,针对每类数据集获得m张样本,总计获得m*n个样本,n为类别数;
第二获取单元,获取待检测深度学习模型Moracle,获取待检测深度学习模型Moracle结构;
预训练模块,选取第一获取单元中部分良性测试集样本Datatest重新训练一个与待检测深度学习模型Moracle结构一致的良性模型Mbenign,并采用图像数据集对良性模型Mbenign进行预训练;
生成中毒模型池与触发样本对模块,包括:
第一生成单元,从获取的良性测试集样本Datatest中的m*n个样本,依次选取第i类h张样本作为目标类,其中h∈m,i∈[0,1,...,n-1],选取第j类k张样本作为源类,其中k∈m,j∈[0,1,...,n-1]并且j≠i;依次对良性模型Mbenign进行多种中毒攻击,获得n*(n-1)个中毒模型Mpoison_1={M1,M2,...,Mn*(n-1)}和h*n对触发样本对Xpoison_1={Xpair_1,Xpair_2,...,Xpair_h};
第二生成单元,针对不同类型的中毒攻击,生成基于不同类型中毒攻击生成的触发样本对Xpoison_1,Xpoison_2,...,Xpoison_c和中毒模型Mpoison_1,Mpoison_2,...,Mpoison_c,其中c表示有c类中毒攻击方法,则共获得n*(n-1)*c个中毒模型,h*n*c对触发样本对;
检测模块,用于将获取的触发样本对分别输入待检测深度学习模型Moracle中,获取触发样本对在深度学习模型Moracle每层网络激活操作后的特征图集合,设置一个模板,并分别计算触发样本对在待检测深度学习模型Moracle每层网络中模板与特征图的互信息,利用该互信息判断待检测深度学习模型Moracle是否中毒。
CN202110675475.0A 2021-06-17 2021-06-17 基于互信息的深度学习模型中毒攻击检测方法及其装置 Active CN113326509B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110675475.0A CN113326509B (zh) 2021-06-17 2021-06-17 基于互信息的深度学习模型中毒攻击检测方法及其装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110675475.0A CN113326509B (zh) 2021-06-17 2021-06-17 基于互信息的深度学习模型中毒攻击检测方法及其装置

Publications (2)

Publication Number Publication Date
CN113326509A CN113326509A (zh) 2021-08-31
CN113326509B true CN113326509B (zh) 2022-07-19

Family

ID=77423681

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110675475.0A Active CN113326509B (zh) 2021-06-17 2021-06-17 基于互信息的深度学习模型中毒攻击检测方法及其装置

Country Status (1)

Country Link
CN (1) CN113326509B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104869126A (zh) * 2015-06-19 2015-08-26 中国人民解放军61599部队计算所 一种网络入侵异常检测方法
CN107301328A (zh) * 2017-05-19 2017-10-27 浙江工业大学 基于数据流聚类的癌症亚型精准发现与演化分析方法
CN110765458A (zh) * 2019-09-19 2020-02-07 浙江工业大学 一种基于深度学习的恶意软件检测方法及其装置
CN111600851A (zh) * 2020-04-27 2020-08-28 浙江工业大学 面向深度强化学习模型的特征过滤防御方法
CN111753986A (zh) * 2020-06-28 2020-10-09 浙江工业大学 面向深度学习模型的动态测试方法及其装置
KR20210060938A (ko) * 2019-11-19 2021-05-27 서강대학교산학협력단 딥러닝 기반 보행자 영상 데이터 증강방법
CN112905997A (zh) * 2021-01-29 2021-06-04 浙江工业大学 面向深度学习模型中毒攻击的检测方法、装置及系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110008842A (zh) * 2019-03-09 2019-07-12 同济大学 一种基于深度多损失融合模型的行人重识别方法
US11514297B2 (en) * 2019-05-29 2022-11-29 Anomalee Inc. Post-training detection and identification of human-imperceptible backdoor-poisoning attacks
EP4022474A2 (en) * 2019-08-29 2022-07-06 PXL Vision AG Id verification with a mobile device

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104869126A (zh) * 2015-06-19 2015-08-26 中国人民解放军61599部队计算所 一种网络入侵异常检测方法
CN107301328A (zh) * 2017-05-19 2017-10-27 浙江工业大学 基于数据流聚类的癌症亚型精准发现与演化分析方法
CN110765458A (zh) * 2019-09-19 2020-02-07 浙江工业大学 一种基于深度学习的恶意软件检测方法及其装置
KR20210060938A (ko) * 2019-11-19 2021-05-27 서강대학교산학협력단 딥러닝 기반 보행자 영상 데이터 증강방법
CN111600851A (zh) * 2020-04-27 2020-08-28 浙江工业大学 面向深度强化学习模型的特征过滤防御方法
CN111753986A (zh) * 2020-06-28 2020-10-09 浙江工业大学 面向深度学习模型的动态测试方法及其装置
CN112905997A (zh) * 2021-01-29 2021-06-04 浙江工业大学 面向深度学习模型中毒攻击的检测方法、装置及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
低信噪比下基于深度学习的调制模式识别方法;陈晋音等;《计算机科学》;20200615;全文 *
深度学习模型的中毒攻击与防御综述;陈晋音等;《信息安全学报》;20200715(第04期);全文 *

Also Published As

Publication number Publication date
CN113326509A (zh) 2021-08-31

Similar Documents

Publication Publication Date Title
CN109977918B (zh) 一种基于无监督域适应的目标检测定位优化方法
CN108446700B (zh) 一种基于对抗攻击的车牌攻击生成方法
CN112750140B (zh) 基于信息挖掘的伪装目标图像分割方法
CN112905997B (zh) 面向深度学习模型中毒攻击的检测方法、装置及系统
CN111709311B (zh) 一种基于多尺度卷积特征融合的行人重识别方法
Mathur et al. Crosspooled FishNet: transfer learning based fish species classification model
CN109002755B (zh) 基于人脸图像的年龄估计模型构建方法及估计方法
CN113011357A (zh) 基于时空融合的深度伪造人脸视频定位方法
CN110414367B (zh) 一种基于gan和ssn的时序行为检测方法
Xu et al. Research on ResNet101 network chemical reagent label image classification based on transfer learning
Wang et al. Hand-drawn electronic component recognition using deep learning algorithm
CN112784921A (zh) 任务注意力引导的小样本图像互补学习分类算法
CN112381987A (zh) 基于人脸识别的智能门禁防疫系统
CN110163206B (zh) 车牌识别方法、系统、存储介质和装置
CN111444816A (zh) 一种基于Faster RCNN的多尺度密集行人检测方法
CN113487610B (zh) 疱疹图像识别方法、装置、计算机设备和存储介质
Zhang Application of artificial intelligence recognition technology in digital image processing
Defriani et al. Recognition of Regional Traditional House in Indonesia Using Convolutional Neural Network (CNN) Method
CN112613032B (zh) 基于系统调用序列的主机入侵检测方法及装置
CN117011274A (zh) 自动化玻璃瓶检测系统及其方法
CN113326509B (zh) 基于互信息的深度学习模型中毒攻击检测方法及其装置
CN116580176A (zh) 基于轻量化网络MobileViT的车载CAN总线异常检测方法
CN116824330A (zh) 一种基于深度学习的小样本跨域目标检测方法
Putro et al. Fast eye detector using CPU based lightweight convolutional neural network
Shishkin et al. Implementation of yolov5 for detection and classification of microplastics and microorganisms in marine environment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant