物联网场景下提升多分支预测单模型鲁棒性的训练方法与流程

文档序号:21464681发布日期:2020-07-14 16:49阅读:306来源:国知局
本发明属于计算机领域,涉及了一种多分支预测单模型的训练方法。尤其涉及提高当前高精度但难以正确分类对抗样本的单身网络模型鲁棒性提升方法,其中使用了联邦学习思想,在适合物联网的场景下,解决了现今物联网需要安全可靠的人工智能的问题。
背景技术
::近年来,物联网是被数量不断增加,同时与深度学习的结合也更加紧密,特别是在图像处理任务上。然而,这些高精度的图像分类器在面对对抗样本是脆弱的。对抗样本是在干净图片上,有意图的添加微量扰动,这些扰动不会干扰人眼的判断,但可以愚弄深度神经网络分类器。所以,研究如何获得一个更高鲁棒性的模型是必要的。提高模型的鲁棒性是目前应对对抗样本攻击的一个重要方法,模型鲁棒性是一个用于分析模型对于微小扰动的抵抗能力的评判标准,在相同扰动下模型的判断准确率越高,鲁棒性越好。已有多分支预测单模型被提出,得益于其自身多分支及相应算是函数带来的整体多样性,多分支预测单模型得到了与组合模型相当的对抗鲁棒性,成功提高了对对抗样本的防御能力。而常规的训练方法,仅仅只能有效利用到模型结构的多样性,无法将现实中物联网不断扩张带来的数据多样性体现到训练中。所以,需要去设计一个属于多分支预测单模型的训练方法,可以充分的发挥其整体多样性的效果,将数据多样性表现出来。技术实现要素:本发明的目的是针对上述问题,提供了一种物联网场景下提升多分支预测单模型鲁棒性的训练方法,该发明将多分支预测单模型的结构多样性和物联网场景下的数据多样性结合。多分支预测单模型经过本方法的训练,鲁棒性得到了提升,对对抗样本的分类准确率大幅提高,是可行且有效的。实现本发明目的的具体技术方案是:步骤1:训练系统初始化首先设定训练数据的内容、训练批量(batchsize)的大小、训练所需要的终端数量,随后导入需要训练的多分支预测单模型及权重聚合函数;接着对训练数据进行预处理,包括对训练样本的标准化和将训练标签转化为独热码(one-hotcode)格式;再将训练数据分割成与终端数量同份;最后将等分好的数据制成批量大小的迭代生成器;完成多分支预测单模型和数据的准备后,初始化云端控制节点,包括云端的聚合算法、测试数据以及全局权重的存储;接着循环初始化终端节点,包括节点标识、生成模型、优化目标、对应节点的训练数据生成器以及当前的轮数;步骤3:多终端统一训练在初始化完成的云终端系统中,一次云端和终端的交互为单个循环:云端控制节点将当前全局权重及当前轮数更新到终端节点的模型中,接着每个终端节点分别依靠初始化时赋予的训练数据及优化目标对当前模型进行优化,得到每个模型中独有的权重,然后每个终端节点上传各自的权重,云端控制节点进行统一收集,收集完成后,云端利用聚合算法将各权重聚合成新的全局权重并使用测试数据验证效果;最后达到设定的最大训练循环次数停止训练,输出最终模型权重。步骤1中所述将训练数据分割成与终端同份,具体为:三成数据非独立同分布分割:将数据按照同分类进行分割;七成数据独立同分布分割:将数据打乱后等分。本发明的有益效果本发明提出的是一个物联网场景下提升多分支预测单模型鲁棒性的训练方法,成功将多分支预测单模型的结构多样性和物联网场景下的数据多样性结合,使多分支预测单模型的鲁棒性进一步提高,以提高对对抗样本的分类能力,使多分支预测单模型能安全可靠的完成分类任务。实验需要证明的是经过本发明训练方法训练的多分支预测单模型,可以比常规训练的有更好的鲁棒性,即实验结果表现为对对抗样本有更高的识别率。实验中,使用了较为典型的7种对抗样本生成方法进行攻击,并在此基础上获得常规训练和本发明的训练方法得到的模型在被攻击后图像上的分类准确率。其中两种训练方法都是对多分支预测单模型进行训练。表1cifar-10数据集上对于对抗样本分类正确率(%)比较从表1中可以看出,cifar-10数据集下,相比于常规训练得到的模型,所有的分类准确率都有提高,尤其在bim、mim和pgd三种情况下,本发明的训练方法得到的模型提升幅度更是近10%。表2是记录了在svhn数据集上的表现。和在cifar-10上的情况相似,7种攻击情况下都有提升,特别是bim、mim和pgd三种。同时在jsma情况下也获得了较大幅度的提升。表2svhn数据集上对于对抗样本分类正确率(%)比较证明了经本发明训练的模型对对抗样本有好的防御能力,具有高鲁棒性。在两种数据集上,经过本发明的训练方法训练的对分支预测单模型对原始干净样本的分类准确率基本与常规训练后得到的模型相近,cifar-10下降幅度为0.25%,而svhn下提升了0.18%。证明了经此训练方法训练的多分支预测单模型依旧保持先进的分类能力。table3cifar-10和svhn上干净样本分类准确率(%)比较数据集常规训练本发明的训练cifar-1091.0590.8svhn96.7796.95附图说明图1是多分支预测单模型结构;图2是本实施本发明的框架图;图3是本发明具体流程图。具体实施方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进一步详细说明。多分支预测单模型在结构上形如图1。在这样结构的模型中,可以利用led损失函数在训练中使分支直接非极大预测向量尽量分类,实现此模型的整体多样性提升效果,从而提升鲁棒性、提高对对抗样本的防御能力。其中led损失函数公式为:led=lbe+γ·h(p*)+μ·lds其中lbe为交叉熵,h(p*)为香农熵,lds为非极大预测向量的分离度量,γ、μ为超参数,代表两个部分的影响能力。常规训练中,本发明将全部数据输入模型训练,最终生成一种多样性情况。这个多样性情况,虽然考虑到了所有的训练数据,但是全部在一起影响,相互之间可能会造成制约,那么最终成型的多样性情况,可能并不完美。考虑到上述的情况,本发明在训练中引入联邦学习的思想。将训练数据拆分给各个终端,模拟一个数据多样性的环境。这样,每个终端使用不同的训练数据,可以训练出不同的模型多样性情况,再利用云端将这些终端的权重进行不断迭代的融合,最终可以获得一个更加优秀的多样性情况。同时考虑到led损失函数中有两个超参数,本发明设计在每个终端的训练中,使用不同超参形成的损失函数,这样的设计同时考虑到了两点:一是两个超参的设定是一个经验性设定,那么相比于直接设定一个具体的值,设定一个区间更加有效,可以帮助模型找到更好的多样性;二是仅仅靠训练数据分割实现的数据多样性程度太低,依靠不同测超参形成不同的损失函数,提高数据多样性带来的影响。图2是实施本发明的框架图,本发明的训练方法中包含两大部分:云端和终端。终端作为训练节点,配备有相同的环境和独属于其的训练样本,同时具有与云端通信的能力,包括上传模型权重和下载更新模型权重。云端不做训练,功能仅有将所有终端上传的权重进行聚合及验证本次聚合后全局权重的效果。整个训练是一个多次迭代的过程。单次循环的步骤在图中表现为client2的标注:1)云端控制节点将存储的全局权重下发终端节点的模型中;2)终端在更新后的模型基础上,使用其相应的γ、θ形成的优化目标和独有的数据进行训练,对各自的模型参数进行训练优化;3)训练后的各自权重上传到云端,交予云端控制节点聚合并更新内部的全局权重;迭代完成之后,最终模型权重为云端内存放的。基于上述整体框架,加入数据预处理及分割、云终端初始化、日志记录等步骤,最终形成如图3展示的流程图,主要步骤为:1)导入要训练的对象模型,此对象模型可以为上述形容的多分支预测单模型,亦可为普通的单模型;2)设置训练数据,包括训练集内容、训练的批量大小、终端的数量、训练的轮数等;3)选择合适的聚合函数,一般使用的聚合函数为均化处理,将全部上传的权重对应相加求平均获得最终的全局权重;4)预处理及分割数据集,预处理为将数据集样本部分标准化,将数据集标签部分转化为独热码(one-hotcode)格式,随后分割数据集:第一种方式为独立同分布分割,直接将训练样本顺序打乱,然后等分为终端数量的份;第二种为非独立同分布分割,不考虑训练样本的顺序,将训练样本按类分割后分配给终端;本方法中,同时使用两种方式,每个终端分配的数据三成为非独立同分布,七成为独立同分布;5)初始化云端控制节点,包括云端的聚合算法、测试数据以及全局权重的存储;接着循环初始化终端节点,包括节点标识、生成模型、对应节点的训练数据生成器以及当前的轮数;6)训练过程为执行既定轮数的上述多次迭代的过程,同时加入相应的云端验证和存储策略,每一次完成聚合后都适用测试数据进行效果验证并在和当前存储的权重效果比较后存储优秀的一方;7)结束,最终存储的权重为输出的最佳模型权重。依据流程图,整个方法的算法实现为算法1。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1