没有合适的资源?快使用搜索试试~ 我知道了~
312在野外Kibok Lee†Kimin Lee†Jinwoo Shin†Honglak Lee†*密歇根大学†KAIST*{kibok,honglak}@ umich.edu†{kiminlee,jinwoos}@ kaist.ac.kr摘要众所周知,使用深度神经网络进行终身学习会遭受灾难性的遗忘:当学习新任务时,先前任务的性能急剧下降。为了减轻这种影响,我们建议利用大量的未标记的数据流,很容易在野外获得。特别是,我们设计了一种新的类增量学习方案(a)一个新的蒸馏损失,称为全球蒸馏,(b)的学习策略,以避免过拟合最近的任务,和(c)基于置信度的采样方法,有效地利 用 未 标 记 的 外 部 数 据 。 我 们 在 包 括 CIFAR 和ImageNet在内的各种数据集上的实验结果证明了所提出的方法优于现有方法,特别是当可访问未标记数据流时:我们的方法显示出高达15.8%的更高的准确性和46.5%更少的遗忘相比,国家的最先进的方法。该代码可在https://github上获得。com/kibok90/iccv2019-inc.1. 介绍深度神经网络(DNN)已经在许多机器学习应用中取得了显著的成功,例如,分类[10]、生成[29]、对象检测[9]和增强学习[39]。然而,在任务数量持续增长的现实世界中,整个任务不能一次给出;相反,它可以作为一系列任务给出类增量学习的目标[33]是通过旨在很好地执行先前和新任务来丰富处理此类情况的模型的能力1特别是,它最近受到了很多关注,因为DNN在学习新任务时容易忘记以前的任务,这是一种称为灾难性遗忘的现象[7,28]。灾难性遗忘的主要原因是可扩展性资源有限:随着任务数量的增加,不能将先前任务的所有训练数据存储在有限大小的存储器中。课堂增量学习中的先前工作集中在封闭环境中的学习,即,一1在类增量学习中,每个任务中都会给出一组类。在评估中,它的目标是对迄今为止学习的任何类别中的数据进行分类,而没有任务边界。图1.我们建议利用大量未标记的数据流进行类增量学习。在每个阶段,应用基于置信度的采样策略来构建外部数据集。具体地,基于在前一阶段P中学习的模型的预测对未标记数据中的一些进行采样以用于减轻灾难性遗忘,并且对它们中的一些进行随机采样以用于置信度校准。在标记的训练数据集和未标记的外部数据集的组合下,教师模型C首先学习当前任务,然后新模型M通过提取P,C及其集合Q的知识来学习先前和当前任务。模型只能在训练期间看到给定的标记训练数据集然而,在现实世界中,我们生活在一个连续的和大的流的未标记的数据很容易获得的飞行或瞬时,例如,通过社交媒体上的数据受此启发,我们建议利用如此大的未标记的外部数据流来克服灾难性遗忘。我们注意到,我们对未标记数据的设置类似于自学学习[31],而不是半监督学习,因为我们不假设未标记数据和标记训练数据集之间存在任何相关性贡献在新的类增量设置下,我们的贡献是三方面的(参见图1的概述):A. 我们提出了一个新的学习目标,称为全球蒸馏,利用数据提取的参考模型的知识有效。母鸡老鹰?狗?母鸡福克斯基于自信采样福克斯??????狗鹅猫鹰狐狸母鸡新模式狗鹅猫鹰先前模型狐狸母当前任务的教师未标记数据流313t−2不t−1不0B. 我们设计了一个3步学习方案来提高全局蒸馏的效率:(i)培训一名专门从事当前任务的教师;(ii)培训一名模范教师;通过提取先前模型的知识,教师在(i)和它们的集合中学习,以及(iii)微调以避免过拟合到当前任务。C. 我们提出了一种基于置信度的采样方法,以有效地利用大量的未标记数据流。在贡献A中,全局蒸馏鼓励模型学习所有先前任务的知识,而先前的工作仅应用了任务式局部蒸馏[3,12,13]。24、33]。特别地,所提出的全局蒸馏蒸馏了如何在不同的数据库中区分类别的知识。2. 方法在本节中,我们提出了一种新的类学习方法-增量学习。在第2.1节中,我们进一步描述了场景和学习目标。在第2.2节中,我们提出了一个新的学习目标,称为全局蒸馏。在第2.3节中,我们提出了一种基于置信度的采样策略,用于从大量未标记数据流中构建外部数据集。2.1. 准备工作:类增量学习形式上,令(x,y)∈ D是数据集D中的数据x及其标签y,并且令T是将x映射到y. 我们记y∈ T,如果y在T的范围内,使得|是T中类标签的数量。|is the number of class labels in T.对于第t个任务Tt,设Dt是对应的训练数据集,并且Dc 〇 r⊆任务,而本地蒸馏没有。我们证明了由于整体蒸馏而获得的性能增益尤其Dt−1 Dcorbe a coreset3t−1包含代表性数据先前任务T1:(t-1)={T1,. . . ,Tt−1},使得Dtrn=如果一些未标记的外部数据可用,则是显著的在 贡 献 B中 , 所 提 出 的 学习 方 案 的 前 两 个 步 骤(i)、(ii)被设计为保持先前任务的知识,以及学习当前任务任务另一方面,最后步骤(iii)的目的是避免对当前任务的过拟合:由于可扩展性问题,在训练期间,仅保留和重放先前任务中的一小部分数据[3,30,33]。这不可避免地导致学习模型的预测偏差,有利于当前任务。为了减轻训练不平衡的问题,我们根据以前和当前任务中的数据统计数据对模型进行了微调。最后,贡献C是由直觉激发的,即当未标记数据的数据分布更多时与前面的任务类似,它可以防止模型灾难性地遗忘更多。由于未标记的数据在野外不一定与先前的任务相关,因此还远不清楚它们是否包含用于减轻灾难性遗忘的有用信息。因此,我们建议通过有原则的采样策略对外部数据集进行采样。 对有效的外部数据集cortDt∪ Dt−1是在以下位置可用的整个标记训练数据集:第t阶段。 设Mt={θ,φ1:t}是模型的可学习参数的集合,其中θ和φ1:t={φ1,φ 2:t}。. . ,Φt}分别指示共享参数和任务特定参数。4第t阶段的目标是训练模型Mt以执行当前任务Tt以及先前任务T1:(t-1),而没有任务边界,即,T1:t中的所有类标签都是测试时的候选为此,从前一级转移小的核心集Dcor和前一模型Mt-1我们还假设大量的unla-beled数据是可访问的,并且对必要的外部数据集Dext进行采样,其中采样方法在第2.3节中描述请注意,我们不假设未标记数据流与任务之间存在任何第t阶段的结果是模型Mt,它可以执行所有观察到的任务T1:t,以及用于学习的核心集Dcor后续阶段。学习目标。 当数据集D被标记时,训练分类模型M={θ,φ}的标准方式是优化交叉熵损失:从大量未标记的数据流中,我们建议通过利用irrele来训练置信度校准模型[19,20]Lcls(θ,φ;D)=1Σ[−log p(y|x; θ,φ)]。vant数据作为分布外(OOD)2个样本。我们表明,未标记的数据,从OOD也应该采样,以保持模型更加自信校准。我们的实验结果表明,所提出的方法优于以前的方法。特别是,我们表明,在所提出的方法的性能增益是更显着的未标记的外部数据时,|D|(x,y)∈D另一方面,如果我们有一个参考模型R={θR,φR},数据集D不需要ny标签,因为目标标签由R给出:Ldst(θ,φ; R, D)available.例如,在我们在ImageNet [6]上的实验设置下,我们使用外部数据集的方法实现了1=|D|ΣΣ[−p(y|x;θR,φR)logp(y|x(θ,φ)],x∈Dy ∈T准确率提高15.8%,遗忘率降低46.5%最先进的方法(E2E)[3](在没有外部数据集的情况下,准确率提高4.8%,遗忘率降低6.0%)。2分布外指的是数据分布与到目前为止学习的任务的数据分布相距甚远。3Coreset是一个小数据集,保存在有限的内存中,用于重放以前的任务。最初,Dcor=。4如果给定多个任务特定的参数,则所有类的logit被连接用于预测而没有任务边界。请注意,任务不必是不相交的,这样一个类就可以出现在多个任务中。3141:(t−1)不Pt= {θ,φ最大1−p1:(t−1)1:t不1:t1:(t−1)t不不1:t t t1:(t−1)tttt t t t tt其中概率可以被平滑以更好地提取(参见[11]或补充材料)。以前的方法。 在第t阶段,标准ap-参考模型为了补充缺失的知识,我们将Qt定义为Pt和Ct的集合:p= max p(y|x,θP,φP ),训练模型Mt的方法是最小化以下最大y1:(t−1)分类损失:ymax= arg max p(y|x,θP,φP )。Lcls(θ,φ1:t;Dtrn)。(一)y那么,Qt的输出可以定义为:然而,在类增量学习中,有限的大小p(y|x,θQ,φQ)=使得学习的模型遭受catas-probability1:t营养遗忘 为了克服这一点,以前的模型如果y=ymax,P P1:(t−1)},Mt−1已被用于生成1−pmax−εp(y|x,θP,φP) elify∈ T1:(t−1),(六)软标签,这是关于给定的Pt的知识εp(y|x,θC,φC)elif y ∈ T,数据[3,12,24,33]:t tΣt−1TRNΣ使得yp(y|x,θQ,φQ)= 1。在这里,ε调整con-Ldst(θ,φs; Pt,Dt)、(2)s=1其中,该目标与Eq.(一). 我们关于给定数据是否在T1:(t−1)或Tt中的证据。这些信息基本上是缺失的,但是,可以从...一个假设是,预测的概率能力在例如I个类上是相同的,即,将这种任务式知识蒸馏称为本地蒸馏-Ep(y|x,θP,φP)=EΣ Σp(y|CC(d),其在y ε中的每一个的任务。但是,由于它们是在任务方面1:(t−1)y(1 −pymaxε)|不|x,θ,φt):以这种方式,该目标遗漏了关于不同任务中的类之间的区分的知识2.2. 全球蒸馏出于LD的局限性,我们提出了全球范围内提取参考模型的知识。利用引用模型Pt,可以通过最小化以下损失来全局地提取知识:ε=最大值t。(七)|T1:t|−1由于系综模型Qt能够执行所有任务,因此可以更新所有参数:Ldst(θ,φ;Q,Dext)。(八)注意,不使用标记的数据集Dtrn,因为它已经在等式(1)中使用。(1)同样的课程。Ldst(θ,φ;P,Dtrn∪ Dext)。(三)最后,我们的全球蒸馏(GD)模型学习优化方程。(1)+(3)+(4)+(8):然而,通过最小化Eq.(3)导致A偏差:由于P没有学会执行当前任务T,Lcls(θ,φ;Dtrn)+Ldst(θ,φ;P,Dtrn∪Dext)t t tt t t关于当前任务的知识将不适当地+Ldst(θ,φ;C,Dtrn∪Dext)t t t t t t学习时,只有Eq。(1)+(3)被最小化,即,每-当前任务的性能将不必要地牺牲。为了弥补这一点,我们引入了另一个教师模型Ct={θC,φC},专门用于当前任务Tt:Ldst(θ,φ;C,Dtrn∪ Dext).(四)可以通过最小化标准交叉熵损失来训练该模型Lcls(θC,φC;Dt).(3151:t t t五)注意,仅使用当前任务Dt的数据集,因为Ct仅专用于当前任务我们在第2.3节中修改了这一损失,以获得更好的外部数据采样。然而,由于Pt和Ct分别只学会了执行T1:(t-1)和Tt,因此无法通过从这两个中提取的知识来区分T1:(t-1)和Tt。+Ldst(θ,φ;Q,Dext)。(9)我们研究了表2中各项的贡献。平衡微调。 类中的类标签的统计信息训练数据集也是在训练期间学习的信息。ing.由于来自先前任务的数据数量远小于当前任务的数据数量,因此模型的预测为了消除偏差,我们在训练后以相同的学习目标进一步微调模型。 当进行微调时,对于每个D和T,我们通过以下方式缩放从具有标签k∈ Tw(k)∝1。(十)D|{(x,y)∈D|y=k}|由于缩放梯度相当于多次输入相同的数据,因此我们将此方法称为数据加权。3161:(t−1)不不y|x; θ,φ不不.Σ算法1使用GD的3步学习。1:t=1算法2对外部数据集进行采样。1:输入:先前模型Pi={θΡ,ΦΡ},第二章: 而真正的Cor未标记数据流D野生,样本大小ND,3: 输入:前一模型Pt=Mt−1,coresetDt−1,训练数据集Dt,未标记数据流Dwild要检索的未标记数据的数量NmaxextCort2:输出:采样的外部数据集Dt4:Output:n wcoresetDt,模型Mt={θ,φ1:t}3:Dprev=0,DOOD=0trn核心5:Dt=Dt∪ Dt−1CorTRN4:Nprev= 0。3ND,N00D= 0。7ND6: NC=| Dt−1|,ND=| Dt|7:使用算法2从D_wild采样D_ext5:N(k),|{(x,y,p)∈Dpr ev|y=k}|tt6:while| DOOD|<不知道8:通过最小化等式(1)来训练Ct(十二)9:如果t >1,则10:通过最小化等式11来训练Mt(九)11:通过最小化等式11来微调(9)、在Eq. (十)12:其他7:得到x∈ Dwild并更新DOOD=DOOD∪{x}8:结束时9:Nret=N OOD10:whileNret
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C++多态实现机制详解:虚函数与早期绑定
- Java多线程与异常处理详解
- 校园导游系统:无向图实现最短路径探索
- SQL2005彻底删除指南:避免重装失败
- GTD时间管理法:提升效率与组织生活的关键
- Python进制转换全攻略:从10进制到16进制
- 商丘物流业区位优势探究:发展战略与机遇
- C语言实训:简单计算器程序设计
- Oracle SQL命令大全:用户管理、权限操作与查询
- Struts2配置详解与示例
- C#编程规范与最佳实践
- C语言面试常见问题解析
- 超声波测距技术详解:电路与程序设计
- 反激开关电源设计:UC3844与TL431优化稳压
- Cisco路由器配置全攻略
- SQLServer 2005 CTE递归教程:创建员工层级结构
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功