CN112115998B - 一种基于对抗增量聚类动态路由网络克服灾难性遗忘的方法 - Google Patents

一种基于对抗增量聚类动态路由网络克服灾难性遗忘的方法 Download PDF

Info

Publication number
CN112115998B
CN112115998B CN202010958097.2A CN202010958097A CN112115998B CN 112115998 B CN112115998 B CN 112115998B CN 202010958097 A CN202010958097 A CN 202010958097A CN 112115998 B CN112115998 B CN 112115998B
Authority
CN
China
Prior art keywords
task
capsule
network
prototype
routing
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
CN202010958097.2A
Other languages
English (en)
Other versions
CN112115998A (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.)
Kunming University of Science and Technology
Original Assignee
Kunming University of Science and Technology
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 Kunming University of Science and Technology filed Critical Kunming University of Science and Technology
Priority to CN202010958097.2A priority Critical patent/CN112115998B/zh
Publication of CN112115998A publication Critical patent/CN112115998A/zh
Application granted granted Critical
Publication of CN112115998B publication Critical patent/CN112115998B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种基于对抗增量聚类动态路由网络克服灾难性遗忘的方法,属于神经网络深度学习领域。本发明对多任务图像数据集进行扩展据预处理;基于抗增量聚类动态路由网络模型(SDN)搭建:基于CNN的原始胶囊网络模型、构建动态路由、原型竞争聚类(PCC)构建;结合预处理的数据训练得到初始精度进行参数跟网络的调整;第一个任务“记忆力”测试进行参数微调得到最终的模型。通过本发明的方法,神经网络就可以在保留原有的知识的基础上,连续学习新的任务,并且在学习任务的难度以及效率上比现有方法有很大提升。

Description

一种基于对抗增量聚类动态路由网络克服灾难性遗忘的方法
技术领域
本发明涉及神经网络深度学习技术领域,特别是涉及一种基于对抗增量聚类动态路由网络来克服多任务连续学习中灾难性遗忘的方法。
背景技术
神经网络是比较先进的计算方法,它们已成功地应用于工业、经济管理、交通运输、工业设计等领域,解决了许多问题。但是神经网络权值的训练和学习过程的复杂和长期性,特别是神经网络易有训练过度的缺点,这些都大大影响了神经网络的更广泛普及和应用。近年来,随着深度神经网络的发展,基于大量数据驱动的多任务学习,取得了重大进展。灾难性遗忘是解决迁移学习,多模态学习中必须解决的一个问题,更是得到了研究人员广泛的关注。由于灾难性的遗忘或干扰,终身学习仍然是机器学习和神经网络模型的一项长期挑战。这种灾难性的遗忘现象发生在深度神经网络(DNN),卷积神经网络(CNN)和循环神经网络(RNN)中。
为什么会存在灾难性遗忘呢?深度学习的结构一旦确定,在训练过程中很难调整。神经网络的结构直接决定学习模型的容量。固定结构的神经网络意味着模型的容量也是有限的,在容量有限的情况下,神经网络为了学习一个新的任务,就必须擦除旧有的知识。深度学习的隐含层的神经元是全局的,单个神经元的细小变化能够同时影响整个网络的输出结果。另外,所有前馈网络的参数与输入的每个维度都相连,新数据很大可能改变网络中所有的参数。我们知道,对于本身结构就已经固定的神经网络,参数是关于知识的唯一变化量。如果变化的参数中包含与历史知识相关性很大的参数,那么最终的效果就是,新知识覆盖了旧的知识。
尽管已经提出了解决问题的各种方法,但模型仍然面临挑战实际排序数据集上的过度简化。最近的研究通过使用具有可训练超参数的深层网络在CF问题上取得了更多进展。在此基础上,可以简单地将这些现有解决方案归纳为三类,包括合奏,可约束和可转移的方法。
神经网络要实现多任务连续学习,首先必须克服灾难性遗忘(人工智能系统在接收新信息时倾向于忘记先前学到的东西,这被称为灾难性遗忘),经过多年的努力,灾难性遗忘问题有所改善,但灾难性的遗忘仍然是阻碍科学家们建立通用人工智能(AGI)的主要障碍之一,这是一种包括我们在电视和电影中看到的无所不能、拥有同情心和富有想象力的人工智能。谷歌DeepMind团队开发出一套名为弹性权重固化(Elastic WeightConsolidation)新的算法,描述了让机器学习、记住并重新使用信息将成为可能,似乎解决了长期困扰神经网络的“灾难性遗忘”问题。早期有研究可以直接将当前的训练集与先前的数据结合起来,以进行持续的训练以减轻灾难性的遗忘,随着任务数量的增加,网络规模将越来越大,这将消耗大量的计算资源。有一些研究可以通过压缩和修剪神经网络来改善灾难性的遗忘。例如,引入了遗传算法来简化网络结构,学习策略和约束已整合以从不同角度克服CF问题。在训练当前任务之前,首先采用先前的模型来预测新数据以获得虚拟训练集,该虚拟训练集可用于约束先前的学习模型以抑制遗忘。而且,该策略可以有效地避免网络随着任务数量的增加而扩展的问题。否则,参数正则化已集成到网络优化中,以通过旧配置来适应新任务。通过使用正则化方案,学习而不忘(LWF)是一个典型示例。此外,有研究通过使用顺序贝叶斯估计来连续训练神经网络,这增加了对损失函数的约束,该函数将可塑性指向对先前任务贡献最大的权重。最近,基于EWC网络,已经研究了扩展的进化策略。通常,上述方法可以减轻诸如像素调整器(MNIST,Cifar-10等)之类的简单任务的灾难性遗忘,但是当任务之间涉及更复杂的转移时,知识保留就变得无效。原因在于纯模型约束可能会导致一些根本性的缺陷,例如对任务间和任务间的无效表示,因此输入图像的大小也受到限制(例如,只有具有28×28图像的MNIST可以执行)。因此,尽管这些工作试图在连续学习模型的简单性和功能之间取得平衡,但如果任务序列变得更大或更困难,则很难保持这种平衡。
尽管缓解灾难性遗忘有各种方法,但是在实际试验中,却面临诸多的困难。现有方法大多都是在简单数据集(MNIST,Cifar10等)上面试验。同时对数据集的处理也比较简单。当数据集图片进行旋转时,人能很简单识别出图片上的内容,计算机却很难识别出来。并且现有方法在全局图片旋转的数据集上表现不好,旋转角度增大,现有方法效果变得更差。现有方法在数据集上图片尺寸变化小(一般均为28×28),且没有用到卷积网络,当图片尺寸变大时,效果变差。除此之外,现有方法在任务的分类中采用的是有监督的,这并不符合“智能”化。
发明内容
本发明主要解决的技术问题是提供一种基于对抗增量聚类动态路由网络克服灾难性遗忘的方法,通过以胶囊网路(CapsNet)为框架,使旋转图像中的位置信息作为一个矢量,从而能对全局旋转的图片内容进行识别,并且与传统方法不同,采用CNN网络,可以处理大尺寸彩色图片以及难度比较大的任务。搭建的路由网络对网络中对任务无监督分类,通过分类张量来对网络中任务重要权重数据实时更新,更有效的解决灾难性遗忘问题。同时,原型竞争聚类(PCC)网络在保证无监督分类的情况下提高了分类速度,能够解决网络运行效率低,识别率低等问题。
本发明提出了基于对抗增量聚类动态路由网络克服灾难性遗忘的方法,包括以下步骤:对多任务图像数据集进行扩展据预处理;基于抗增量聚类动态路由网络模型(SDN)搭建:基于CNN的原始胶囊网络模型、构建动态路由、原型竞争聚类(PCC)构建;结合预处理的数据训练得到初始精度进行参数跟网络的调整;第一个任务“记忆力”测试进行参数微调得到最终的模型,具体而言,主要包括以下五个步骤:
Step1:对多任务图像数据集进行扩展预处理;具体为:通过图像尺寸、以图像为中心的旋转角度、颜色调整。综合现有方法实验,为了能更方便公平的进行实验性能对比,采用的实验数据集为:灰色数据集为MNIST、Fashion-MNIST,彩色数据集采用SVHN、Cifar10、CelebA。其中MNIST、Fashion-MNIST、SVHN是28×28大小的图片,Cifar10是32×32大小的图片,CelebA原图是218×158大小的图片,将其缩小为109×89大小的图。将MNIST,Cifar10数据集通过旋转扩展,旋转间隔为(15°,30°,60°,90°)。Fashion-MNIST,SVHN,CelebA数据集通过旋转扩展,间隔为30°。
Step2:基于抗增量聚类动态路由网络模型(SDN)搭建,通过在卷积神经网络(CNN)的原始胶囊网络模型的基础框架上搭建,包括基于CNN的原始胶囊网络模型、构建动态路由、原型竞争聚类(PCC)构建。具体过程为:
(1)胶囊内神经元的活动表示图像中存在的特定实体的各种属性。这些属性可以包括许多不同类型的实例化参数,例如姿势(位置,大小,方向),变形,速度,反射率,色调,纹理等。一个非常特殊的属性是图像中实例化实体的存在。表示存在的一个显而易见的方法是使用一个单独的逻辑单元,其输出是实体存在的概率。使用实例化参数向量的全部长度来表示实体的存在(概率),并规定向量的方向来表示实体的属性。通过应用一个非线性(激活函数)保证矢量输出的长度不超过1,这个非线性使得矢量的方向保持不变,但是其量级减小(只控制在0-1之间)。
Figure BDA0002677365440000041
式中vj是胶囊j的向量输出,而sj是胶囊的总输入。对于除胶囊的第一层以外的所有胶囊,胶囊sj的总输入是来自下一层胶囊中所有“预测矢量”uj|i的加权总和,是通过将胶囊在该层中的输出ui乘以权重矩阵Wij得到的:
Figure BDA0002677365440000042
在(2)式中,cij是由迭代动态路由过程确定的耦合系数。胶囊i与上一层中的所有胶囊之间的耦合系数之和为1,由“路由softmax”确定,其初始bij是胶囊i耦合至胶囊j的对数先验概率。
Figure BDA0002677365440000043
对数先验可以与所有其他权重同时进行区分学习。它们取决于两个胶囊的位置和类型,而不取决于当前的输入图像。然后,通过测量上方层中每个胶囊j的电流输出vj与胶囊i做出的预测矢量uj|i之间的一致性,迭代优化初始耦合系数。
使用实例化向量的长度来表示胶囊实体存在的概率。我们希望类别k的顶层胶囊只有在图像中存在该数字时才具有长实例化矢量。为了允许多个数字,使用单独的损失,对于每个胶囊类别k,使用Lk表示其损失,胶囊网络的损失函数为:
Lk=Tkmax(0,m+-||vk||)2+λ(1-Tk)max(0,||vk||-m-)2 (4)
其中如果存在k类,那么Tk=1,且m+=0.9且m-=0.1。对于缺少数字类别的损失,λ的下调权重会阻止初始学习缩小所有数字胶囊的活动向量的长度。使用λ=0.5。总损失仅仅是所有数字胶囊损失的总和。
(2)动态路由的建立。在上面(1)的基础上,路由权重可以公式化为单个任务集dt的矩阵Ct=[cij]。为所有任务路由矩阵Ct制定了一个内存张量,称为动态路由表(DRT),用P=(C1,C2,...,Ct)表示。实施此路由表,通过产生元素乘法运算为,确定数字胶囊DigitCap层中的哪些胶囊被激活以被前馈:
Vt=ρs(Ct·WU)=ρs(P(t)·U) (5)
上式(5)中,矩阵表示为U=[ui]和W=[wij],DRT选择操作Ct=P(t)表示当前的路由矩阵Ct是在顺序任务之间动态制定的。
在顺序学习中,根据当前胶囊U从表P中选择任务路由矩阵Ct。让变换后的胶囊表示为式(2)中的uj|i=Wijui,并具有扩展维,则有Vt=ρs(CtU),这意味着路由权重与显着转换的胶囊有关。胶囊路由矩阵Ct可被视为这些U的聚类中心。基于余弦距离的聚类度量表示为
Figure BDA0002677365440000051
并且路由公式可以重写为:
Figure BDA0002677365440000052
DRT使用二进制神经网络(BNN)中提出的近似激活进行前馈。任务路由的前向路径是二进制掩码,即
Figure BDA0002677365440000053
它是通过非线性函数P(t)=ρr(Ct)和二进制有效函数ρr获得的,在反向传播阶段将放弃此近似运算,以确保使用连续梯度进行更新。在这里,生成了一个w={w1,w2,...,wN}的路由表,wn是由
Figure BDA0002677365440000054
的0或者1构成,其中n∈(1,...,N),当wn为0时,在反向传播阶段将放弃对该任务权重的更新。然后,DRN公式由Vt=ρs(P(t)·WU)表示的W和U均具有不同的误差:
Figure BDA0002677365440000055
上式中eij是从较高层反向传播的误差值。这意味着如果胶囊路径因为
Figure BDA0002677365440000056
而被禁用,相关的梯度更新受到限制。
(3)原型竞争聚类(PCC)搭建。原型网络能识别出在训练过程中从未见过的新的类别,并且对于每个类别只需要很少的样例数据。原形网络将每个类别中的样例数据映射到一个空间当中,并且提取他们的“均值”来表示为该类的原形(prototype)。使用欧几里得距离作为距离度量,训练使得本类别数据到本类原形表示的距离为最近,到其他类原形表示的距离较远。测试时,对测试数据到各个类别的原形数据的距离做softmax,来判断测试数据的类别标签。
在样例数据中,一组小规模的N个标签(与路由表wN中的N相同)的支持数据集可以表示为:
S={(x1,y1),...,(xN,yN)} (8)
在(8)式中,x是D维的原始数据的向量化表示,y为其对应的类别,S代表数据集合。
原形网络要为每个类别计算出一个原形表示Cσ,通过一个embedding函数fΦ:RD→RM,将维度D的样例数据映射到M维的空间上。类别的原形表示Cσ是对支持集中的所有的向量化样例数据取均值得到的:
Figure BDA0002677365440000061
上式中,Sσ代表类别为σ的数据集合,其中σ表示S数据集合的类别数且1≤σ≤N。根据(9)式,可得原形网络使用softmax作用在query向量点到Cσ的距离表示:
Figure BDA0002677365440000062
在顺序学习中,关键机制是区分当前任务,然后在调用以前的内存时自动将一个任务路由切换到另一个任务。因此,路由表P由原型簇以增量方式表示。任务路由Ct∈P本质上是根据胶囊U的聚类原型。原型竞争聚类(PCC)是基于(10)中向量点到的距离表示,首先计算最大余弦距离以估计
Figure BDA0002677365440000063
然后通过以下方式更新原型P:
Figure BDA0002677365440000064
其中,s是更新步骤,步长为Δs∈(0,1),此公式是标准原型聚类。在整个序列学习过程中,当前原型将按照第一行的方式进行更新,而先前的原型将在第二行中进行维护,该原型更新步骤集成到CapsNet的前馈架构中。根据建议的网络,本地更新策略对于保留先前学习的知识以进行当前更新很重要。采用one-hot标签t作为输出掩码,因此只能更新与实标签通道相对应的任务路由。
(4)根据(7)与(11)的模型,任务损失可以表示为:
Figure BDA0002677365440000071
其中,
Figure BDA0002677365440000072
是任务估计的神经输出,与t共享相同维度。这个softmax公式实际上等效于原型更新公式。此外,DRT中的激活元素应稀疏,以获取针对每个已排序任务的有效且显着的路由,因此,DRT受P(t)中每个元素的标准L1范数损失Lspars=||P(t)||1的约束。最后,胶囊层的总损失可以通过以下公式限制:
Ltotal=L* task+Lspars (13)
在(13)式中,Lspars表示中One-hot的激函数ρonehot是不连续的,因此从理论上讲它将限制高层的梯度传播,然后原型更新就独立于基本的CapsNet。
(5)路由网络的实施
提出的DRN是通过统一的持续学习过程实现的。此外,尽管基本CapsNet可能会通过不同的任务路由矩阵Ct完全解耦,DRT的P(t)也可以共享一部分激活的胶囊作为这些任务之间的共同编码,从而压缩总的信息熵。在这里,使用阈值εn来调节不同路由列表之间的压缩率,如下式所示:
ct ij=ρsign(ct ijn ij) (14)
(14)式中,ρsign表示为符号函数,其中ρsign∈(0,1)。
Figure BDA0002677365440000073
为阈值,
Figure BDA0002677365440000074
按照降序定义前一组的第n元素值,因此n是可以在不同任务中同时激活一个胶囊的数量。ct ij表示该胶囊是否被激活,不为“0”时才被激活,为“0”时不激活。记忆和遗忘的机制用不同的神经门来阐述了,现有的LSTM/RNN具有类似的门,这些门由当前输入确定,最后的状态表示为:
ytt=f(xtt-1) (15)
式中,yt表示路由输出,ξt表示激活状态,xt表示输入,并且状态和输出每一步都随着输入xt进行更新。与此相比,DRN没有与序列模型耦合的时间状态。此外,原型路由P(t)可以调用先前学习的路径,并且此操作也与时间序列无关。因此,期望的网络可以根据(15)表示为:
yt=f(xt,θ,δ(t)) (16)
上式中,δ(t)表示学习的网络结构,θ为相关性参数。(16)式表示为路由输出yt仅与输入xt和任务集dt所确定的结构δ(t)有关。所提出的体系结构是一个完全转发的网络,可以根据已排序任务的输入自发地实现路由选择。学习的网络结构δ(t)被认为是确定模型状态ξt-1的先决条件,并且路由选择开关仅取决于当前输入。
Step3:利用处理后的多任务数据集对模型进行训练;将预处理后的多任务数据先在模型中的卷积层Conv1上进行特征提取,经过激活层RELU保存为PrimaryCaps的一个张量,再通过一个Conv2输出带有不同空间特征的DigitCaps,调整学习率,批次大小,迭代次数等参数。其中学习率“lr”为0.001,批次大小“epoch”为48,每个批次的迭代次数“Iterate”为80,这样能够保证每个任务的胶囊损失Lk和总损失Ltotal完全回传,在测试时能避免由于训练不充分导致精度下降的问题,得到初始模型;
Step4:通过Step3训练完单个后,得到初始参数B(t)。当该任务第二次出现(训练完第二个任务用第一个任务的验证集验证)时,原型竞争聚类(PCC)模型,分类得到张量w也更新,与上一次的数据B(t)进行加权,得到b(t+1),达到参数更新的目的。具体为进行第一个任务的学习训练,完成所有批次的迭代后,用测试集测试第一个任务的精度并记录。接着训练第二个任务,第二个任务训练完后,再用第一个任务的测试集来测试第一个任务的精度,得出测试精度。通过对第一个任务的第一次测试精度与第二次测试精度的差值大小,就可以衡量模型保存记忆力的能力。训练完第二个任务后,可以依次增加新任务,每增加一个新任务都对第一次学习的任务进行测试,得出测试精度。新任务的增加是对第一个任务进行的干扰,随着任务数增多,干扰变大,对第一个任务的测试精度就会降低。在此过程中,对胶囊维数,任务通道数参数进行微调。主要调整“Task-channels”与“Dim-capsule”;
Step5:重复进行步骤Step3-Step4若干次,将Step(4)中微调后的模型在各个任务数据集上测试,微调网络结构与参数,当第一个任务的测试精度不在上升时,将参数保存,并将最后微调得到的模型保存,作为最后的缓解灾难性遗忘模型。
本发明的有益效果:
本发明将抗增量聚类(PCC)网络模型加入到原始胶囊网络中,首先,通过扩展CapsNet框架,构造基于对抗增量聚类动态路由网络模型(SDN),可以很好地保存“记忆力”。还能通过原型聚类的任务分类,对少量样本进行快速分类,实现无监督学习。具体来讲,初始训练时N个任务通过原型聚类模块将任务进行快速分类,生成一个路由表w,其中w={w1,w2,...,wN}。测试时原型聚类模块判断是第i个任务,此时wi=1,其余为0,这就形成了一个张量w。将w乘于网络中的参数张量T,参数B(t)更新为b(t+1),这个任务单独保存到一个模块Ti,所有任务构成一个新的张量T,通过对该张量各个任务模块参数Ti的实时更新,就可以解决记忆力丢失问题。并且构建了一种新的动态路由网络用于参数更新,使得网络能处理较大尺寸的彩色图片,并且能有效识别旋转后的图片,通过陆路由的参数更新,还能很好记住之前学习到的任务知识,从而提升神经网络在难度比较大的多任务上连续学习的性能。
在step1中,对数据进行预处理,扩展了数据集,增加数据的数量与变化,从而使得模型可以更好地拟合与泛化。
在step2中,基于抗增量聚类动态路由网络模型(SDN)的构建。使得网络模型对图片的多任务尺寸、旋转角度更具鲁棒性,对多任务参数更新保存快速,同时还能快速准确的对少量任务准确分类,提高了网络效率。
在step3和step4中,主要对网络参数进行调整。在新任务数据训练时,在不同的卷积层上提取特征,可以得到不同的信息。通常而言,深度卷积神经网络,其浅层是较为通用的特征,主要包含了图像数据的空间位置信息等,而语义信息较少;通过调节相关参数,可以保存较为重要的图片权重信息。其深层卷积是较为特别的,主要包含了图像数据的语义信息,而空间位置信息较少。经过深层卷积后输出一个特征向量,里面包含图像旋转的位置信息。测试阶段,主要针对有关权重的参数进行调整,能够在训练时读取并且重新更新这部分参数,使得网络能保存更多信息。
在step5中,重复step(3)与step(4)若干次,以实现所有卷积层的参数最优化,并保持检测精度,从而得到最终的检测模型。
附图说明
图1是本发明基于抗增量聚类动态路由网络(SDN)的网络模型;
图2是本发明的多任务数据集预处理示意图;
图3是本发明原型竞争聚类(PCC)示意图。
具体实施方式
下面结合附图对本发明的具体实施进行相关阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
实施例1:本发明主要是一种基于对抗增量聚类动态路由网络克服灾难性遗忘的方法,其将构建的动态路由与原型竞争聚类(PCC)与原始的胶囊网络融合。解决了网络在对旋转任务的识别率低以及记不住之前学习到的知识等方面的问题,同时还用提升了网络效率。
本发明有着广泛的应用领域,例如在迁移学习,应用于不同场景下的多任务训练中,通过对多个场景学习权重的更新保存,可以实现场景的迁移,提升迁移的鲁棒性,同时这些场景的学习是无监督的,能减少了海量的数据标注成本。在未来人工智能时代下,对“智慧”大脑的发展也有所帮助,减少神经网络冗余复杂的麻烦,一个神经网络能学习记住多个知识。本发明的实验过程中,使用系统Ubuntu18.04,采用硬件CPU为i78700k 3.7GHz×6,编程语言为python3.6,显卡为英伟达GeForce RTX 2070,深度学习框架为Pytorch1.2。
其具体实施过程如下:
Step1:如图2所示,对多任务图像数据集进行扩展据预处理:通过图像尺寸、以图像为中心的旋转角度、颜色调整。将MNIST,Cifar10数据集通过旋转扩展成5个任务,旋转间隔为(15°,30°,60°,90°)。Fashion-MNIST、SVHN,CelebA数据集通过旋转扩展成5个任务,间隔为30°。
Step2:如图1和3所示,方法架构很浅,只有两个卷积层和一个完全连接的层。Conv1具有256个[9×9]的卷积内核,步幅为1且激活了ReLU。该层将像素强度转换为局部特征检测器的活动,然后将其用作主胶囊的输入。第二层(主胶囊)是具有32个卷积8D胶囊通道的卷积胶囊层(即每个主胶囊包含8个具有[9×9]内核且步幅为2的卷积单元)。每个主胶囊输出会看到所有[256×81]Conv1单元的输出,其接收场与胶囊中心位置重叠。总共Primary Capsules具有[32×6×6]胶囊输出(每个输出是一个8D矢量),并且[6×6]网格中的每个胶囊彼此共享权重。最终的图层(Digit Caps)每位数字类具有一个16D胶囊,并且每个胶囊都接收来自下一层中所有胶囊的输入。
Step3:通过学习新任务并使用第一个任务的测试集来检测第一个任务的准确性,可以测量网络的“内存”。在MNIST,Fashion-MNIST,SVHN,Cifar10和CelebA上测试了所有模型。在训练期间,以不同角度全局旋转数据集图像以增加难度,并同时扩展为多个任务。CelebA使用[109×89]的大小,其余数据集使用原始大小。对于所有任务,除了上面说的学习率习率“lr”、批次大小“epoch”和每个批次的迭代次数“Iterate”,还有任务丢失系数“lam tl”设置为0.2。所有方法都使用相同的任务序列,数据拆分,批处理关闭和权重初始化。在不同的数据集中分别选择不同的测试参数,以筛选出每个任务的最佳通道数并保持不变。通过多次实验选择每个数据集的最佳通道号,并在最佳通道号下选择最佳胶囊尺寸。对应于MNIST,Fashion-MNIST,Cifar10和CelebA的最佳Task-channels参数分别为16、16、22、32、48,对应于最佳Dim-capsule参数分别为4、8、8、16、22。
Step:试验直接得出的是第一个任务的识别精度,为了更能反映“记忆力”,我们引入了“遗忘率”这一参数作为衡量标准。在相同的初始识别率的情况下,我们可以直接使用准确性来衡量每个模型的质量。但是,当同一数据集的初始识别率不同时,为了获得一般估计,我们需要权衡几个任务并统一随机化它们的顺序。在训练任务t之后,我们计算任务的所有测试集τ≤t的准确性。为了比较不同的任务准确性,并且为了获得对遗忘量的一般度量,我们还引入了遗忘率(FR):
Figure BDA0002677365440000111
式(1)中Aτ≤t是依次学习任务t后在任务τ上测得的精度,
Figure BDA0002677365440000112
是仅对任务τ进行训练的基于频率的随机分类器的精度,而
Figure BDA0002677365440000113
是联合学习t后在多任务方式执行任务τ上测得的精度。请注意,ρ≈-1和ρ≈0分别对应于接近随机和多任务分类器的性能。为了学习t任务后报告一个数字,我们取平均比率(AR):
Figure BDA0002677365440000114
(1),(2)这种评估对于不同方法,模型体系结构,损失函数和相关参数的结果是全面且可比较的。并且,遗忘率绝对值越小,表示记得之前知识的能力就越强。
通过以上步骤,最后可以得到一个克服灾难性遗忘的新模型,表1给出了该模型与传统已有模型在MNIST数据集五个任务下每增加一个任务对第一个任务测试的精度对比。
表1该模型与传统已有模型在五个任务下第一个任务测试精度对比
Figure BDA0002677365440000121
与现有其他技术相比较,本次实例实施首先通过对抗增量聚类动态路由网络来缓解灾难性遗忘问题,并且与之前试验相比,对所用数据集进行扩展难度较大。表2给出了该模型与传统已有模型在Fashion-MNIST与SVHN数据集五个任务以30°为间隔下每增加一个任务对第一个任务测试的遗忘率对比。
表2 Fashion-MNIST与SVHN每增加一个任务对第一个任务测试的遗忘率对比
Figure BDA0002677365440000122
表1主要针对MNIST数据集在全局旋转不同角度上做的讨论,所记录的精度是所有模型在训练完第五个任务后进行第一个任务测试的精度,该精度可以准确反映出模型对先前知识的“记忆力”。当旋转角度为0°时,SDN模型(our)优势不明显,此时所有模型测试精度都达到0.98(±0.01),当旋转角度增加时,特别是60°之后,现有模型精度下降比较明显。表2记录的是在Fashion-MNIST与SVHN全局旋转间隔30°数据集上,每增加一个任务对第一个任务测试的遗忘率对比,其中ρi表示训练完第i个任务时第一个任务测试的遗忘率,遗忘率绝对值越小表示保留先前知识的能力越强。通过实验数据对比,我们的模型在着两个数据集上有很大优势。ρ5时表现最为明显,在FashionMNIST(30°)和SVHN(30°)分别为-0.1484和-0.0976,此时与其他模型遗忘率之差的绝对值最大。
与现有的其他方法相比,本例的实施通过使用对抗增量聚类动态路由网络的模型,然后通过对旋转任务的训练进行参数调整,找到使得训练精度最高的参数。在整个卷积核过程中,我们并没有改变原来模型的结构,这样可以更好的保持模型的精度。在第一个数据集训练后,通过增加任务,用第一个任务的测试集测试模型,再对模型进行微调,以使得测试精度达到最优。通过我们的算法,实现了对全局旋转彩色图片的高精度识别,能在困难任务上实现多任务连续学习,在学习到新知识后,网络能保留先前学到的知识不忘记,并且遗忘率比较低,网络效率也高。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (2)

1.一种基于对抗增量聚类动态路由网络克服灾难性遗忘的方法,其特征在于,包括以下步骤:
Step1:将多任务训练数据进行扩展预处理;
所述Step1中预处理是指对数据进行增广,具体为将图片全局旋转不同角度;
Step2:构造对抗增量聚类动态路由网络模型,包括胶囊网络,动态路由建立和原型竞争聚类的搭建;
所述Step2中构建基于抗增量聚类动态路由网络模型的具体过程为:
(1)实现胶囊网络,将胶囊的输出向量的长度代表当前输入中由胶囊表示的实体存在的概率,对于除胶囊的第一层以外的所有胶囊,胶囊sj的总输入是来
自下一层胶囊中所有预测矢量
Figure FDA0003867142040000011
的加权总和,通过将胶囊在该层中的输出ui乘以权重矩阵Wij得到:
Figure FDA0003867142040000012
上式中,cij是由迭代动态路由过程确定的耦合系数,胶囊i与上一层中的所有胶囊之间的耦合系数之和为1,其初始bij是胶囊i应耦合至胶囊j的对数先验概率;
Figure FDA0003867142040000013
然后,通过测量上方层中每个胶囊j的电流输出vj与胶囊i做出的预测矢量
Figure FDA0003867142040000014
之间的一致性,迭代优化初始耦合系数;
(2)动态路由的建立
在前述基础上,路由权重可以公式化为单个任务集dt的矩阵Ct=[cij],为所有任务路由矩阵Ct制定了一个内存张量,称为动态路由表,用P=(C1,C2,...,Ct)表示,实施此路由表,通过产生元素乘法运算,确定数字胶囊层中的哪些胶囊被激活以被前馈:
Figure FDA0003867142040000015
上式中,矩阵表示为U=[ui]和W=[wij],Ct=P(t)表示当前的路由Ct是在顺序任务之间动态制定的;
在顺序学习中,根据当前胶囊U从动态路由表P中选择任务路由Ct,让变换后的胶囊表示为
Figure FDA0003867142040000021
并具有扩展维,则有
Figure FDA0003867142040000022
胶囊路由Ct可被视为胶囊
Figure FDA0003867142040000023
的聚类中心,基于余弦距离的聚类度量表示为
Figure FDA0003867142040000024
并且路由公式重写为:
Figure FDA0003867142040000025
任务路由的前向路径是二进制掩码,即
Figure FDA0003867142040000026
它是通过非线性函数
Figure FDA0003867142040000027
和二进制有效函数ρr获得的,在反向传播阶段将放弃此近似运算,以确保使用连续梯度进行更新,在这里,生成了一个w={w1,w2,...,wN}的路由表,wn是由
Figure FDA0003867142040000028
的0或者1构成,其中n∈(1,...,N),当wn为0时,在反向传播阶段将放弃对该任务权重的更新,DRN公式由
Figure FDA0003867142040000029
表示的W和U均具有不同的误差:
Figure FDA00038671420400000210
上式中eij是从较高层反向传播的误差值,这意味着如果胶囊路径因为
Figure FDA00038671420400000211
而被禁用,相关的梯度更新受到限制;
(3)原型竞争聚类搭建
在顺序学习中,关键机制是区分当前任务,然后在调用以前的内存时自动将一个任务路由切换到另一个任务,因此,动态路由表P由原型簇以增量方式表示,任务路由Ct∈P本质上是根据胶囊
Figure FDA00038671420400000212
的聚类原型,原型竞争聚类首先计算最小余弦距离以估计
Figure FDA00038671420400000213
然后通过以下方式更新原型P:
Figure FDA00038671420400000214
其中,s是更新步骤,步长为Δs∈(0,1),此公式是标准原型聚类,在整个序列学习过程中,当前原型将按照第一行的方式进行更新,而先前的原型将在第二行中进行维护,这也意味着该原型更新步骤可以集成到胶囊网络的前馈架构中,采用One-hot标签t作为输出掩码;
(4)根据(1)-(3)的模型,任务损失可以表示为:
Figure FDA0003867142040000031
其中,将
Figure FDA0003867142040000032
作为任务估计的神经输出,与t共享相同维度,这个softmax公式实际上等效于原型更新公式,此外,动态路由表P中的激活元素应稀疏,以获取针对每个已排序任务的有效且显着的路由,因此,动态路由表P受P(t)中每个元素的标准L1范数损失Lspars=||P(t)||1的约束,最后,胶囊层的总损失可以通过以下公式限制:
Ltotal=L* task+Lspars
其中,One-hot的激函数ρonehot是不连续的,因此从理论上讲它将限制高层的梯度传播,然后原型更新就独立于基本的胶囊网络;
(5)路由网络的实施
提出的DRN是通过统一的持续学习过程实现的,此外,尽管基本CapsNet可能会通过不同的任务路由Ct完全解耦,DRT的P(t)也可以共享一部分激活的胶囊作为这些任务之间的共同编码,从而压缩总的信息熵,在这里,使用阈值
Figure FDA0003867142040000033
来调节不同路由列表之间的压缩率,如下式所示:
ct ij=ρsign(ct ijn ij)
其中,ρsign表示为符号函数,ρsign∈(0,1),
Figure FDA0003867142040000034
为阈值,
Figure FDA0003867142040000035
按照降序定义前一组的第n元素值,因此n是可以在不同任务中同时激活一个胶囊的数量,ct ij表示该胶囊是否被激活,不为“0”时才被激活,为“0”时不激活,记忆和遗忘的机制用不同的神经门来阐述,这些门由当前输入确定,最后的状态表示为:
ytt=f(xtt-1)
式中,yt表示路由输出,ξt-1表示激活状态,xt表示输入,并且状态和输出每一步都随着输入xt进行更新,期望的网络可以表示为:
yt=f(xt,θ,δ(t))
上式中,δ(t)表示学习的网络结构,θ为相关性参数,路由输出yt仅与输入xt和任务集dt所确定的网络结构δ(t)有关,学习的网络结构δ(t)被认为是确定模型激活状态ξt-1的先决条件,并且路由选择开关仅取决于当前输入;
Step3:将Step1预处理后的数据输入构建的对抗增量聚类动态路由网络模型,进行训练,优化模型参数,得到最好的识别精度;
Step4:训练完第一个任务后,接着训练第二个任务,第二个任务训练完后,用第一个任务的测试集来测试网络,得出测试精度,再对参数进行调整,使得测试精度最高;
Step5:重复进行步骤Step3-Step4若干次,得到最终的缓解灾难性遗忘模型。
2.根据权利要求1所述的基于对抗增量聚类动态路由网络克服灾难性遗忘的方法,其特征在于,所述Step4具体为:在Step3的基础上,进行第一个任务的学习训练,完成所有批次的迭代后,用测试集测试第一个任务的精度并记录,接着训练第二个任务,第二个任务训练完后,再用第一个任务的测试集来测试第一个任务的精度,得出测试精度,通过对第一个任务的第一次测试精度与第二次测试精度的差值大小,衡量模型保存记忆力的能力,训练完第二个任务后,可以依次增加新任务,每增加一个新任务都对第一次学习的任务进行测试,得出测试精度,在此过程中,对胶囊维数,任务通道数参数进行微调。
CN202010958097.2A 2020-09-11 2020-09-11 一种基于对抗增量聚类动态路由网络克服灾难性遗忘的方法 Active CN112115998B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010958097.2A CN112115998B (zh) 2020-09-11 2020-09-11 一种基于对抗增量聚类动态路由网络克服灾难性遗忘的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010958097.2A CN112115998B (zh) 2020-09-11 2020-09-11 一种基于对抗增量聚类动态路由网络克服灾难性遗忘的方法

Publications (2)

Publication Number Publication Date
CN112115998A CN112115998A (zh) 2020-12-22
CN112115998B true CN112115998B (zh) 2022-11-25

Family

ID=73802392

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010958097.2A Active CN112115998B (zh) 2020-09-11 2020-09-11 一种基于对抗增量聚类动态路由网络克服灾难性遗忘的方法

Country Status (1)

Country Link
CN (1) CN112115998B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113129310B (zh) * 2021-03-04 2023-03-31 同济大学 一种基于注意力路由的医学图像分割系统
CN112966761B (zh) * 2021-03-16 2024-03-19 长安大学 一种可扩展的自适应宽度神经网络学习方法
CN112990318B (zh) * 2021-03-18 2024-05-07 中国科学院深圳先进技术研究院 持续学习方法、装置、终端及存储介质
CN113591974A (zh) * 2021-07-29 2021-11-02 浙江大学 一种联邦学习中基于易遗忘数据子集的遗忘验证方法
CN113850302B (zh) * 2021-09-02 2023-08-29 杭州海康威视数字技术股份有限公司 一种增量学习方法、装置及设备
CN115392451B (zh) * 2022-08-02 2024-04-16 西安工业大学 一种可持续学习的人工神经网络避免遗忘方法
CN117808040B (zh) * 2024-03-01 2024-05-14 南京信息工程大学 一种基于脑图的低遗忘热点事件预测方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108764031A (zh) * 2018-04-17 2018-11-06 平安科技(深圳)有限公司 识别人脸的方法、装置、计算机设备和存储介质
CN109118479A (zh) * 2018-07-26 2019-01-01 中睿能源(北京)有限公司 基于胶囊网络的绝缘子缺陷识别定位装置及方法
CN109725531A (zh) * 2018-12-13 2019-05-07 中南大学 一种基于门控制机制的连续学习方法
CN109801305A (zh) * 2019-01-17 2019-05-24 西安电子科技大学 基于深度胶囊网络的sar图像变化检测方法
CN111325169A (zh) * 2020-02-26 2020-06-23 河南理工大学 基于胶囊网络的深度视频指纹算法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108764031A (zh) * 2018-04-17 2018-11-06 平安科技(深圳)有限公司 识别人脸的方法、装置、计算机设备和存储介质
CN109118479A (zh) * 2018-07-26 2019-01-01 中睿能源(北京)有限公司 基于胶囊网络的绝缘子缺陷识别定位装置及方法
CN109725531A (zh) * 2018-12-13 2019-05-07 中南大学 一种基于门控制机制的连续学习方法
CN109801305A (zh) * 2019-01-17 2019-05-24 西安电子科技大学 基于深度胶囊网络的sar图像变化检测方法
CN111325169A (zh) * 2020-02-26 2020-06-23 河南理工大学 基于胶囊网络的深度视频指纹算法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
A dynamic routing CapsNet based on increment prototype clustering for overcoming catastrophic forgetting;Wang Meng等;《IET Computer Vision》;20200918;第16卷(第1期);第83-97页 *
Forecasting transportation network speed using deep capsule networks with nested LSTM models;Ma X等;《IEEE Transactions on Intelligent Transportation Systems》;20200416;第22卷(第8期);4813-4824页 *
Multi-task continuous learning model;Guo Zhengbin等;《Journal of Physics: Conference Series》;20210419;第1873卷(第1期);第1-12页 *
Recognition of emotions by facial Geometry using a capsule neural network;Tereikovska L等;《International Journal of Civil Engineering and Technology》;20191231;第10卷(第3期);第1424-1434页 *
神经网络多任务连续学习中灾难性遗忘问题的研究;郭正兵;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》;20220115(第01期);第I138-2439页 *
胶囊网络对复杂现实场景中的物体识别;姜虹等;《西安工业大学学报》;20191231;第39卷(第6期);第712-719页 *

Also Published As

Publication number Publication date
CN112115998A (zh) 2020-12-22

Similar Documents

Publication Publication Date Title
CN112115998B (zh) 一种基于对抗增量聚类动态路由网络克服灾难性遗忘的方法
Li et al. LGM-Net: Learning to generate matching networks for few-shot learning
Ba et al. Blending diverse physical priors with neural networks
US11385292B2 (en) Battery materials screening
Cheng et al. Evolutionary support vector machine inference system for construction management
CN110969086B (zh) 一种基于多尺度cnn特征及量子菌群优化kelm的手写图像识别方法
CN115661550B (zh) 基于生成对抗网络的图数据类别不平衡分类方法及装置
Irsoy et al. Autoencoder trees
Tripathi et al. Image classification using small convolutional neural network
CN112633463A (zh) 用于建模序列数据中长期依赖性的双重递归神经网络架构
Kim et al. Building deep random ferns without backpropagation
CN114548591A (zh) 一种基于混合深度学习模型和Stacking的时序数据预测方法及系统
Nazir et al. Exploring compression and parallelization techniques for distribution of deep neural networks over edge–fog continuum–a review
EP3660742B1 (en) Method and system for generating image data
CN114638823B (zh) 基于注意力机制序列模型的全切片图像分类方法及装置
US20230031512A1 (en) Surrogate hierarchical machine-learning model to provide concept explanations for a machine-learning classifier
Saum et al. Hyperparameter optimization using iterative decision tree (idt)
US11508067B2 (en) Method for quantifying algal for management of water quality
CN115544307A (zh) 基于关联矩阵的有向图数据特征提取与表达方法和系统
Alaeddine et al. A CONVblock for convolutional neural networks
Tchendjou et al. Spintronic memristor-based binarized ensemble convolutional neural network architectures
Yang et al. Multi-scale shape boltzmann machine: A shape model based on deep learning method
CN113052298A (zh) 一种基于胶囊网络的三维模型检索方法
Premchandar et al. Unified probabilistic neural architecture and weight ensembling improves model robustness
Striuk et al. Optimization Strategy for Generative Adversarial Networks Design

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