CN113688387A - 基于服务器和客户端双重检测的联邦学习中毒攻击的防御方法 - Google Patents

基于服务器和客户端双重检测的联邦学习中毒攻击的防御方法 Download PDF

Info

Publication number
CN113688387A
CN113688387A CN202110872091.8A CN202110872091A CN113688387A CN 113688387 A CN113688387 A CN 113688387A CN 202110872091 A CN202110872091 A CN 202110872091A CN 113688387 A CN113688387 A CN 113688387A
Authority
CN
China
Prior art keywords
client
server
model
poisoning attack
poisoning
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.)
Granted
Application number
CN202110872091.8A
Other languages
English (en)
Other versions
CN113688387B (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.)
East China Normal University
Original Assignee
East China Normal University
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 East China Normal University filed Critical East China Normal University
Priority to CN202110872091.8A priority Critical patent/CN113688387B/zh
Publication of CN113688387A publication Critical patent/CN113688387A/zh
Application granted granted Critical
Publication of CN113688387B publication Critical patent/CN113688387B/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
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • 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
    • 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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Medical Informatics (AREA)
  • Mathematical Physics (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种基于服务器和客户端双重检测的联邦学习中毒攻击的防御方法,其特点是在服务器不访问客户端训练数据的前提下,通过获取客户端正常进行联邦学习模型训练与模拟中毒攻击下的联邦学习模型训练的结果,作为中毒攻击检测器的训练数据集,从而为每个客户端训练一个中毒攻击检测器。服务器根据中毒攻击检测器的结果,选出可疑客户端和可信客户端,再通过综合可信客户端对可疑客户端的评分,来完成中毒攻击检测,从而降低了服务器端异常检测的误报率。本发明能在保证准确率的前提下高效地完成联邦学习背景下的中毒攻击检测。

Description

基于服务器和客户端双重检测的联邦学习中毒攻击的防御 方法
技术领域
本发明涉及人工智能技术领域,具体而言,涉及联邦学习中的中毒攻击的防御方法。
背景技术
联邦学习是在人工智能发展下提出的一种新的计算架构。它通过加密机制下的参数交换方式,做到了各个参与方不共享训练数据的情况下学习全局预测模型,避免了分散在多个客户端上的敏感数据的隐私泄露。在联邦学习中,服务器维护一个全局模型;客户端下载当前全局模型后,根据本地数据的训练后计算更新模型,然后将更新返回给服务器;服务器聚合所有客户端的更新结果后,生成一个新的全局模型。
在传统的机器学习中,攻击者可以通过改变训练数据的标签、修改数据、将设计良好的参数注入训练模型来实现中毒攻击。然而,由于联邦学习中训练数据在各个参与方本地,其他参与方无法访问及训练的模型结构由服务器定义且公开的特性,所以上述方法无法在联邦学习中实现。然而,这并不意味着联邦学习不会遭受到中毒攻击。攻击者可以通过创建脏标签数据进行本地训练后,生成模型更新结果或者直接精心制作一份更新的结果上传给服务器以毒害全局模型,从而削弱全局模型的训练效果。
目前,联邦学习中的中毒攻击检测方法比较有限。由于联邦学习中服务器无法访问客户端训练数据,因此,人们认为利用可信数据来训练异常检测器、识别与类相关的特征来检测客户端中的中毒攻击的方法是不可行的。因此,目前的方法主要基于观察各个客户端的更新。使用k-means算法对客户端更新进行聚类进行中毒攻击检测的方法需要假设攻击者每一轮都执行攻击,且已被证明单轮攻击有效。检查更新的余弦相似度的方法已被证明不能防御单个恶意客户端。因此,如何稳定准确地检测出恶意客户端的中毒攻击,是目前联邦学习中的一个难题。
发明内容
本发明的目的是为了解决联邦学习中恶意客户端上传恶意更新参数来削弱全局模型效果的问题,探索了一种服务器在不访问客户端训练数据的前提下,训练异常检测器的方法。同时,本发明还添加了可信客户端评分的过程,降低了服务器端异常检测的误报率,从而提供了一种高效、准确的基于服务器和客户端双重检测的联邦学习中毒攻击的防御方法,克服了传统k-means算法需要假设攻击者每一轮都执行攻击的弊端,并且能有效防御单个恶意客户端。
本发明的目的是这样实现的:
一种基于服务器和客户端双重检测的联邦学习中毒攻击的防御方法,服务器在不访问客户端训练数据的前提下,为每个参与联邦学习的客户端维护一个中毒攻击检测模型,并结合可信客户端的评分来检测中毒攻击;特点是所述方法包括以下步骤:
步骤1:中毒攻击检测模型训练
服务器为每个客户端初始化一个用于中毒攻击检测的二分类模型,接收各个客户端提供的训练参数,针对每个客户端训练一个中毒攻击检测模型;
步骤2:服务器端中毒攻击检测
服务器用步骤1所述中毒攻击检测模型对对应的客户端进行中毒攻击概率预测,将客户端分为可疑客户端和正常客户端;特别地,将正常客户端中中毒攻击概率较低的客户端标记为可信客户端;
步骤3:可信客户端评分
可信客户端接收可疑客户端的更新参数,并根据服务器端制定的评分规则对接收到的可疑客户端进行评分;服务器综合所有可信客户端的评分对可疑客户端是否为中毒攻击客户端进行判断;
步骤4:联邦学习聚合
服务器丢弃被判定为中毒攻击客户端的模型更新参数,只将正常客户端的模型更新参数进行聚合,从而实现了中毒攻击的防御,并完成联邦学习模型的更新。
步骤1所述训练一个中毒攻击检测模型,具体包括下述步骤:
步骤A1:设有N个客户端C={C1,C2,...,Cn},服务器为每个客户端初始化一个相同的用于中毒攻击检测的二分类模型G={G1,G2,...,Gn};其中,所述二分类模型为使用sigmoid函数作为激活函数的逻辑回归模型,该模型由sigmoid函数输出客户端为中毒攻击的概率;
步骤A2:每个客户端使用本地数据集训练参与联邦学习的模型Gtask,得到正确的模型更新参数;需要说明的是,在联邦学习中,模型Gtask在系统初始化时由客户端和服务器共同生成;具体而言,首先由服务器发送建模任务,寻求参与客户端;客户端数据持有方根据自身需求,提出联合建模设想;在与其他合作数据持有方达成协议后,联合建模设想被确立,各数据持有方进入联合建立模型Gtask的过程,由服务器向各数据持有方发布模型Gtask的初始参数;模型Gtask随着联邦学习的聚合过程而不断更新;设客户端i得到的正确的模型更新参数为Upitrue
步骤A3:每个客户端根据本地数据集,随机生成一些错误标签的数据集,用这些错误标签数据训练联邦学习的模型Gtask,模拟中毒攻击,得到中毒的更新参数;设客户端i得到的正确的模型更新参数为Upifalse
步骤A4:服务器接收客户端的正确和错误的模型更新参数对,得到数据集Up={UP1true,Up1false,...,Upntrue,Upnfalse};
步骤A5:服务器初始化一个同步骤A1的二分类模型,按顺序每次输入一个更新参数对中的两个数据作为训练数据进行中毒攻击检测模型的训练,并记录下训练后的模型结果,记为{p1,p2,...,pn};
步骤A6:服务器重新初始化一个同步骤A1的二分类模型,逆序每次输入一个更新参数对中的两个数据作为训练数据进行中毒攻击检测模型的训练,并记录下训练后的模型结果,记为{prn,prn-1,...,pr1};
步骤A7:根据步骤A5和步骤A6的结果,为每个客户端聚合生成一个中毒攻击检测模型;对于客户端C1,其最终的中毒攻击检测模型G1的参数即为pr2;对于客户端Cn,其最终的中毒攻击检测模型Gn的参数即为pn-1;对于客户端Ci,(1<i<n),服务器将参数pi-1和pri+1聚合,即可得到其最终的中毒攻击检测模型Gi的参数。
所述步骤2具体包括下述步骤:
步骤B1:服务器用每个客户端对应的检测模型,将对应客户端在步骤A2中所得到的正确的更新参数作为输入,得到各客户端为中毒攻击的概率,记为Output={Output1,Output2,...,Outputn};
步骤B2:服务器端设定可疑客户端的阈值y1,对于每个客户端Ci,(1<i<n),服务器比较中毒攻击检测模型Gi的输出值Outputi和y1;若中毒攻击概率值Outputi大于阈值y1,服务器将客户端i标记为可疑客户端;若中毒攻击概率值Outputi小于阈值y1,服务器将客户端i标记为正常客户端;
步骤B3:服务器端设定可信客户端的阈值y2,对于正常客户端j,服务器比较中毒攻击检测模型Gj的输出值Outputj和y2;若中毒攻击概率值Outputj大于阈值y2,服务器对客户端j不做任何操作;若中毒攻击概率值Outputj小于阈值y2,服务器将客户端j标记为正常客户端中的可信客户端。
所述步骤3具体包括下述步骤:
步骤C1:服务器端制定可信客户端对可疑客户端更新参数的评分规则;所述评分规则如下:服务器设定阈值y3,若可信客户端在本地数据集下运行模型Gtask得到的预测准确率高于y3,则评分为1;若可信客户端在本地数据集下运行模型Gtask得到的预测准确率低于y3,则评分为0;
步骤C2:可信客户端接收服务器下发的可疑客户端的更新参数,选取本地数据集,按照规则对可疑模型依次进行评分;
步骤C3:服务器聚合各个可信客户端的评分结果,对每个可疑客户端进行判定;聚合过程为:
采用公式(1)计算可疑客户端k的最终评分:
Figure BDA0003189152900000041
其中,Scorek为可疑客户端k的最终评分,Gradei[k]表示第i个可信客户端对可疑客户端k的评分,m表示可信客户端的总数;
判定过程为:
服务器设定阈值y4,若可疑客户端k的最终评分Scorek大于y4,服务器将可疑客户端k标记为正常客户端;若可疑客户端k的最终评分Scorek小于y4,服务器将可疑客户端k标记为中毒攻击客户端。
本发明与现有技术相比,具有如下的有益效果:
本发明在服务器不访问训练数据的前提下,在服务器端维护了一个中毒攻击检测模型,提高了针对多个客户端中毒攻击检测的效率。同时,构建了客户端的评分系统,根据服务器中毒攻击检测模型的输出概率,将客户端分为正常客户端和可疑客户端,通过综合所有正常客户端对每个可疑客户端的评分,来最终判定客户端是否恶意,有效减少了服务器端中毒攻击检测模型的误判,从而在高效的同时,保证了中毒攻击检测的准确性。同时,与传统的方法相比,本发明不需要假设攻击者每一轮都执行攻击,并且能够有效防御单个恶意客户端。
附图说明
图1为本发明实施例提供的经过基于服务器和客户端双重中毒攻击检测的联邦学习流程示意图;
图2为本发明提供的一种联邦学习中毒攻击检测模型训练示意图;
图3为本发明提供的中毒攻击检测结构示意图;
图4为本发明提供的可信客户端评分流程示意图;
图5为本发明提供的中毒攻击评分完成后联邦学习模型结构示意图。
具体实施方式
下面结合实施例和附图对本发明的技术方案作进一步详细说明,但本发明的实施方式不限于此。
本发明的一种基于服务器和客户端双重检测的联邦学习中毒攻击的防御方法,其特点是在服务器聚合联邦学习模型之前,为每个客户端训练一个中毒攻击检测模型,并用该模型预测客户端上传的更新为恶意更新的概率,再根据可信客户端对疑似恶意客户端的评分进行综合评估。具体包括以下步骤:
步骤1:客户端用本地数据集训练参与联邦学习的模型,并保留正确的更新参数;
步骤2:客户端用错误标签数据重新训练联邦学习的模型,模拟中毒攻击,得到错误的更新参数;
步骤3:服务器接收客户端的正确和错误的模型更新参数,针对每个客户端训练中毒攻击检测模型;
步骤4:服务器用每个客户端对应的检测模型,将该客户端在步骤1中所得到的正确的更新参数作为输入,得到其为中毒攻击的概率;
步骤5:服务器根据步骤4所得到的概率将客户端分为可疑客户端和正常客户端。特别地,服务器将正常客户端中中毒攻击概率较低的客户端标记为可信客户端;
步骤6:服务器将可疑客户端的更新参数下发给可信客户端,可信客户端根据接收的参数所组成的模型在本地数据集上的效果进行评分;
步骤7:服务器综合各个客户端的评分,对各个客户端进行中毒攻击评估,对于评分低的客户端,丢弃其更新参数,从而实现了联邦学习中毒攻击的防御。
所述步骤3中每个客户端的中毒攻击检测模型可以通过下述步骤构建:
步骤A1:设有N个客户端C={C1,C2,...,Cn},服务器接收这N个客户端经过步骤1和步骤2得到的正确更新参数和错误更新参数对,形成集合U={(U1true,U1false),(U2true,U2false)...,(Untrue,Unfalse)};
步骤A2:服务器用除(Uitrue,Uifalse)之外的参数对为客户端Ci训练一个中毒攻击检测器。该步骤可通过以下方法进行效率优化:
步骤B1:服务器初始化一个用于中毒攻击检测的二分类模型,按顺序每次输入一个更新参数对中的两个数据作为训练数据进行中毒攻击检测模型的训练,并记录下训练后的模型结果,记为{p1,p2,...,pn};
步骤B2:服务器重新初始化一个用于中毒攻击检测的二分类模型,用同样的检测模型重新训练,逆序每次输入一个更新参数对中的两个数据作为训练数据,并记录下训练后的模型结果,记为{prn,prn-1,...,pr1};
步骤B3:对于客户端C1,最终的中毒攻击检测模型的参数即为pr2;对于客户端Cn,最终的中毒攻击检测模型的参数即为pn-1;对于客户端Ci,服务器将参数pi-1和pri+1聚合,即可得到最终的中毒攻击检测模型的参数。此时,即可得到每个客户端的中毒攻击检测模型,记为G={G1,G2,...,Gn}。
实施例
图1为本实施例提供的一种经过基于服务器和客户端双重中毒攻击检测的联邦学习流程示意图。本发明的主要思想是在进行联邦学习全局模型训练之前,客户端和服务器一同构建中毒攻击检测模型,根据该模型在最后的分类器层输出的中毒攻击的概率来对客户端上传的模型更新进行评估,再由评估为正常的客户端对评估为可疑的客户端进行评分。最终,由服务器综合各个正常客户端的评分来完成最后的判定。
本实施例的基于服务器和客户端双重检测的联邦学习中毒攻击的防御方法具体实现过程如下:
(1)中毒攻击检测模型训练过程
图2为本实施例提供的中毒攻击检测模型训练的结构示意图。如图2所示,实施例提供的联邦学习背景下的中毒攻击检测模型的训练包括参与联邦学习的n个客户端:客户端1、客户端2、……、客户端n,一个可信的服务器。实施例提供的联邦学习中毒攻击检测模型的训练包括以下步骤:
步骤1:服务器端选取一种二分类模型,如使用sigmoid函数作为激活函数的逻辑回归模型,为每个客户端初始化一个中毒攻击检测训练模型;
步骤2:每个客户端使用本地数据集训练参与联邦学习的模型,得到正确的模型更新参数。设客户端i得到的正确的模型更新参数为Upitrue
步骤3:每个客户端根据本地数据集,随机生成一些错误标签的数据集,用这些错误标签数据训练联邦学习的模型,模拟中毒攻击,得到中毒的更新参数。设客户端i得到的正确的模型更新参数为Upifalse
步骤4:服务器接收客户端的正确和错误的模型更新参数,针对每个客户端训练中毒攻击检测模型。具体地,可通过如下步骤来提升所有客户端中毒攻击检测模型的生成效率:
步骤A1:服务器初始化一个步骤1中所使用的二分类模型,按顺序每次输入一个更新参数对中的两个数据作为训练数据进行中毒攻击检测模型的训练,并记录下训练后的模型结果,记为{p1,p2,...,pn}。具体地,如在一个初始化好的逻辑回归模型中,依次输入Up1true,Up1false作为训练数据,得到模型结果P1;再依次输入Up2true,Up2false作为训练数据,得到模型结果P2,……,直到所有训练数据输入完毕。显然,模型pi有i个正标签训练数据和i个负标签训练数据;
步骤A2:仿照步骤A1,服务器重新初始化一个步骤1中所使用的二分类模型,逆序每次输入一个更新参数对中的两个数据作为训练数据进行中毒攻击检测模型的训练,并记录下训练后的模型结果,记为{prn,prn-1,...,pr1};
步骤A3:根据步骤A1和步骤A2的结果,为每个客户端聚合一个中毒攻击检测模型。具体地,对于客户端C1,最终的中毒攻击检测模型的参数即为pr2;对于客户端Cn,最终的中毒攻击检测模型的参数即为pn-1;对于客户端Ci,(1<i<n),服务器将参数pi-1和pri+1聚合,即可得到最终的中毒攻击检测模型的参数。此时,即可得到每个客户端的中毒攻击检测模型,记为G={G1,G2,...,Gn}。
(2)服务器端中毒攻击检测过程
图3为本实施例提供的服务器端中毒攻击检测结构示意图。实施例提供的联邦学习背景下的服务器端中毒攻击检测包括以下步骤:
步骤5:服务器用每个客户端对应的检测模型,将该客户端在步骤1中所得到的正确的更新参数作为输入,在模型最后的分类器层,由sigmoid函数计算得到其为中毒攻击的概率,记为Output={Output1,Output2,...,Outputn}。如对于客户端1,服务器将Uptrue1作为中毒攻击检测模型G1的输入,得到分类器层的输出值Output1,即为客户端1为中毒攻击的概率;
步骤6:服务器将步骤5中概率高于阈值y1的客户端判定为可疑客户端,将剩下的客户端判定为正常客户端。特别地,服务器将正常客户端中概率低于阈值y2的客户端判定为可信客户端,为接下来对可疑客户端的更新参数的评分做准备。如:服务器设阈值y1为0.6,则对于客户端i,若Outputi>0.6,则客户端i被标记为可疑客户端;反之,客户端i会被标记为正常客户端。记输出值低于y1的正常客户端的数量为m,则服务器可设阈值y2为概率低于y1的客户端的概率平均值,即
Figure BDA0003189152900000071
Outputi<y1。此时,对于客户端i,若Outputi<y2,则客户端i被标记为可信客户端,参与接下来可疑客户端的评分;反之,则不参与接下来的评分。
(3)可信客户端评分过程
图4为本实施例提供的可信客户端评分过程流程示意图。实施例提供的可信客户端评分过程包括以下步骤:
步骤7:服务器制定可信客户端对可疑客户端更新参数的评分规则;
步骤8:可信客户端接收服务器下发的可疑客户端的更新参数,选取部分或全部的本地数据集用于模型的评分。然后,可信客户端依次运行可疑客户端的更新参数下的模型,用选取的本地数据集作为输入,计算模型的预测准确率,并根据服务器制定的评分规则进行评分,并将结果上传给服务器。如:服务器制定的评分规则如下:设定阈值y3,若可信客户端在本地数据集下运行该模型得到的预测准确率高于y3,则评分为1;反之,评分为0。可信客户端根据该规则依次对接收到的可疑客户端的更新参数进行评分,用0-1数组Grade记录评分结果。记Gradei[k]为第i个可信客户端对第k个可疑客户端评分的值;
步骤9:服务器聚合各个可信客户端的评分结果,对每个可疑客户端进行判定。如:服务器先设定阈值y4,然后,对于第k个可疑客户端,服务器计算
Figure BDA0003189152900000081
作为可疑客户端k的最终评分。若Scorek>y4,则可疑客户端k被判定为正常客户端,参与最终联邦学习模型的聚合;反之,可疑客户端k则被判定为中毒攻击客户端,不参与最终联邦学习模型的聚合。
(4)联邦学习聚合过程
图5为本申请实施例提供的最终的联邦学习聚合过程结构示意图。实施例提供的联邦学习聚合过程包括以下步骤:
步骤10:服务器端丢弃被判定为中毒攻击客户端的模型更新参数,将正常客户端的模型更新参数进行聚合,完成联邦学习模型的更新。此时,在该实施例下训练的联邦学习模型,由于完成了中毒攻击检测,因此解决了部分客户端使用不良数据来训练模型所导致的服务器端全局模型效果被削弱、难以优化的问题。
以上所述,只是对本发明作进一步说明,旨在解读本发明的技术方案,仅为本发明较佳的实施例,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明所公开的范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都属于本发明的保护范围。

Claims (4)

1.一种基于服务器和客户端双重检测的联邦学习中毒攻击的防御方法,其特征在于,所述方法包括以下步骤:
步骤1:中毒攻击检测模型训练
服务器为每个客户端初始化一个用于中毒攻击检测的二分类模型,接收各个客户端提供的训练参数,针对每个客户端训练一个中毒攻击检测模型;
步骤2:服务器端中毒攻击检测
服务器用步骤1所述中毒攻击检测模型对对应的客户端进行中毒攻击概率预测,将客户端分为可疑客户端和正常客户端;特别地,将正常客户端中中毒攻击概率较低的客户端标记为可信客户端;
步骤3:可信客户端评分
可信客户端接收可疑客户端的更新参数,并根据服务器端制定的评分规则对接收到的可疑客户端进行评分;服务器综合所有可信客户端的评分对可疑客户端是否为中毒攻击客户端进行判断;
步骤4:联邦学习聚合
服务器丢弃被判定为中毒攻击客户端的模型更新参数,只将正常客户端的模型更新参数进行聚合,从而实现了中毒攻击的防御,并完成联邦学习模型的更新。
2.根据权利要求1所述的基于服务器和客户端双重检测的联邦学习中毒攻击的防御方法,其特征在于,步骤1所述训练一个中毒攻击检测模型,具体包括下述步骤:
步骤A1:设有N个客户端C={C1,C2,...,Cn},服务器为每个客户端初始化一个相同的用于中毒攻击检测的二分类模型G={G1,G2,...,Gn};其中,所述二分类模型为使用sigmoid函数作为激活函数的逻辑回归模型,该模型由sigmoid函数输出客户端为中毒攻击的概率;
步骤A2:每个客户端使用本地数据集训练参与联邦学习的模型Gtask,得到正确的模型更新参数;在联邦学习中,模型Gtask在系统初始化时由客户端和服务器共同生成;具体为:首先由服务器发送建模任务,寻求参与客户端;客户端数据持有方根据自身需求,提出联合建模设想;在与其他合作数据持有方达成协议后,联合建模设想被确立,各数据持有方进入联合建立模型Gtask的过程,由服务器向各数据持有方发布模型Gtask的初始参数;模型Gtask随着联邦学习的聚合过程而不断更新;设客户端i得到的正确的模型更新参数为Upitrue
步骤A3:每个客户端根据本地数据集,随机生成一些错误标签的数据集,用这些错误标签数据训练联邦学习的模型Gtask,模拟中毒攻击,得到中毒的更新参数;设客户端i得到的正确的模型更新参数为Upifalse
步骤A4:服务器接收客户端的正确和错误的模型更新参数对,得到数据集Up={Up1true,Up1false,...,Upntrue,Upnfalse};
步骤A5:服务器初始化一个同步骤A1的二分类模型,按顺序每次输入一个更新参数对中的两个数据作为训练数据进行中毒攻击检测模型的训练,并记录下训练后的模型结果,记为{p1,p2,...,pn};
步骤A6:服务器重新初始化一个同步骤A1的二分类模型,逆序每次输入一个更新参数对中的两个数据作为训练数据进行中毒攻击检测模型的训练,并记录下训练后的模型结果,记为{prn,prn-1,...,pr1};
步骤A7:根据步骤A5和步骤A6的结果,为每个客户端聚合生成一个中毒攻击检测模型;对于客户端C1,其最终的中毒攻击检测模型G1的参数即为pr2;对于客户端Cn,其最终的中毒攻击检测模型Gn的参数即为pn-1;对于客户端Ci,(1<i<n),服务器将参数pi-1和pri+1聚合,即可得到其最终的中毒攻击检测模型Gi的参数。
3.根据权利要求1所述的基于服务器和客户端双重检测的联邦学习中毒攻击的防御方法,其特征在于,步骤2具体包括下述步骤:
步骤B1:服务器用每个客户端对应的检测模型,将对应客户端在步骤A2中所得到的正确的更新参数作为输入,得到各客户端为中毒攻击的概率,记为Output={Output1,Output2,...,Outputn};
步骤B2:服务器端设定可疑客户端的阈值y1,对于每个客户端Ci,(1<i<n),服务器比较中毒攻击检测模型Gi的输出值Outputi和y1;若中毒攻击概率值Outputi大于阈值y1,服务器将客户端i标记为可疑客户端;若中毒攻击概率值Outputi小于阈值y1,服务器将客户端i标记为正常客户端;
步骤B3:服务器端设定可信客户端的阈值y2,对于正常客户端j,服务器比较中毒攻击检测模型Gj的输出值Outputj和y2;若中毒攻击概率值Outputj大于阈值y2,服务器对客户端j不做任何操作;若中毒攻击概率值Outputj小于阈值y2,服务器将客户端j标记为正常客户端中的可信客户端。
4.根据权利要求1所述的基于服务器和客户端双重检测的联邦学习中毒攻击的防御方法,其特征在于,所述步骤3具体包括下述步骤:
步骤C1:服务器端制定可信客户端对可疑客户端更新参数的评分规则;所述评分规则如下:服务器设定阈值y3,若可信客户端在本地数据集下运行模型Gtask得到的预测准确率高于y3,则评分为1;若可信客户端在本地数据集下运行模型Gtask得到的预测准确率低于y3,则评分为0;
步骤C2:可信客户端接收服务器下发的可疑客户端的更新参数,选取本地数据集,按照规则对可疑模型依次进行评分;
步骤C3:服务器聚合各个可信客户端的评分结果,对每个可疑客户端进行判定;聚合过程为:
采用公式(1)计算可疑客户端k的最终评分:
Figure FDA0003189152890000031
其中,Scorek为可疑客户端k的最终评分,Gradei[k]表示第i个可信客户端对可疑客户端k的评分,m表示可信客户端的总数;
判定过程为:
服务器设定阈值y4,若可疑客户端k的最终评分Scorek大于y4,服务器将可疑客户端k标记为正常客户端;若可疑客户端k的最终评分Scorek小于y4,服务器将可疑客户端k标记为中毒攻击客户端。
CN202110872091.8A 2021-07-30 2021-07-30 基于服务器和客户端双重检测的联邦学习中毒攻击的防御方法 Active CN113688387B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110872091.8A CN113688387B (zh) 2021-07-30 2021-07-30 基于服务器和客户端双重检测的联邦学习中毒攻击的防御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110872091.8A CN113688387B (zh) 2021-07-30 2021-07-30 基于服务器和客户端双重检测的联邦学习中毒攻击的防御方法

Publications (2)

Publication Number Publication Date
CN113688387A true CN113688387A (zh) 2021-11-23
CN113688387B CN113688387B (zh) 2023-08-22

Family

ID=78578426

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110872091.8A Active CN113688387B (zh) 2021-07-30 2021-07-30 基于服务器和客户端双重检测的联邦学习中毒攻击的防御方法

Country Status (1)

Country Link
CN (1) CN113688387B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115907003A (zh) * 2022-12-07 2023-04-04 中国人民解放军国防科技大学 基于度量学习的联邦学习恶意模型更新的检测方法及系统
WO2023150094A1 (en) * 2022-02-02 2023-08-10 Interdigital Patent Holdings, Inc. Methods and apparatus for enhanced security in federated learning machine learning operations in a communication network
TWI814213B (zh) * 2022-01-17 2023-09-01 國立清華大學 資料中毒方法及裝置
CN116827694A (zh) * 2023-08-29 2023-09-29 北京安天网络安全技术有限公司 一种数据安全性检测方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210051169A1 (en) * 2019-08-15 2021-02-18 NEC Laboratories Europe GmbH Thwarting model poisoning in federated learning
CN112434758A (zh) * 2020-12-17 2021-03-02 浙江工业大学 基于聚类的联邦学习搭便车攻击防御方法
CN112714106A (zh) * 2020-12-17 2021-04-27 杭州趣链科技有限公司 一种基于区块链的联邦学习搭便车攻击防御方法
CN112883377A (zh) * 2021-02-23 2021-06-01 优守(浙江)科技有限公司 一种基于特征对抗的联邦学习中毒检测方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210051169A1 (en) * 2019-08-15 2021-02-18 NEC Laboratories Europe GmbH Thwarting model poisoning in federated learning
CN112434758A (zh) * 2020-12-17 2021-03-02 浙江工业大学 基于聚类的联邦学习搭便车攻击防御方法
CN112714106A (zh) * 2020-12-17 2021-04-27 杭州趣链科技有限公司 一种基于区块链的联邦学习搭便车攻击防御方法
CN112883377A (zh) * 2021-02-23 2021-06-01 优守(浙江)科技有限公司 一种基于特征对抗的联邦学习中毒检测方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
周俊;方国英;吴楠;: "联邦学习安全与隐私保护研究综述", 西华大学学报(自然科学版), no. 04 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI814213B (zh) * 2022-01-17 2023-09-01 國立清華大學 資料中毒方法及裝置
WO2023150094A1 (en) * 2022-02-02 2023-08-10 Interdigital Patent Holdings, Inc. Methods and apparatus for enhanced security in federated learning machine learning operations in a communication network
CN115907003A (zh) * 2022-12-07 2023-04-04 中国人民解放军国防科技大学 基于度量学习的联邦学习恶意模型更新的检测方法及系统
CN116827694A (zh) * 2023-08-29 2023-09-29 北京安天网络安全技术有限公司 一种数据安全性检测方法及系统
CN116827694B (zh) * 2023-08-29 2023-11-24 北京安天网络安全技术有限公司 一种数据安全性检测方法及系统

Also Published As

Publication number Publication date
CN113688387B (zh) 2023-08-22

Similar Documents

Publication Publication Date Title
CN113688387A (zh) 基于服务器和客户端双重检测的联邦学习中毒攻击的防御方法
Ma et al. Detecting rumors from microblogs with recurrent neural networks
Zheng et al. Exploiting sample uncertainty for domain adaptive person re-identification
CN111460443B (zh) 一种联邦学习中数据操纵攻击的安全防御方法
CN110084151B (zh) 基于非局部网络深度学习的视频异常行为判别方法
CN109327480B (zh) 一种多步攻击场景挖掘方法
CN113242259B (zh) 网络异常流量检测方法及装置
Thieltges et al. The devil’s triangle: Ethical considerations on developing bot detection methods
Ding et al. HYBRID-CNN: An efficient scheme for abnormal flow detection in the SDN-Based Smart Grid
Masum et al. Tl-nid: Deep neural network with transfer learning for network intrusion detection
CN112087442A (zh) 基于注意力机制的时序相关网络入侵检测方法
Anil et al. A hybrid method based on genetic algorithm, self-organised feature map, and support vector machine for better network anomaly detection
Feng et al. Few-shot class-adaptive anomaly detection with model-agnostic meta-learning
CN115422995A (zh) 一种改进社交网络和神经网络的入侵检测方法
Callegari et al. Real time attack detection with deep learning
CN115422537A (zh) 一种抵御联邦学习标签翻转攻击的方法
KR20190028880A (ko) 봇넷 탐지 시스템을 학습하기 위한 학습 데이터를 생성하는 방법 및 그 장치
Zhao et al. A Semi-Supervised Federated Learning Scheme via Knowledge Distillation for Intrusion Detection
CN113343123A (zh) 一种生成对抗多关系图网络的训练方法和检测方法
Gao et al. The prediction role of hidden markov model in intrusion detection
Kang et al. A transfer learning based abnormal can bus message detection system
CN115879108A (zh) 基于神经网络特征提取的联邦学习模型攻击防御方法
Kaghazgaran et al. Tomcat: Target-oriented crowd review attacks and countermeasures
CN115329838A (zh) 一种考虑类别不平衡的属性图异常检测方法
TWI780411B (zh) 基於長短期記憶模型之異常網路流量偵測系統及方法

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