12.30-1-5学习周报

news2025/1/4 19:20:44

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 文章链接
  • 摘要
  • Abstract
  • 一、方法介绍
    • 1.HAT-CIR
    • 2.Horde
    • 3.DWGRNet
  • 二、实验
  • 总结


文章链接

https://arxiv.org/pdf/2405.04101

摘要

本博客介绍了论文《Continual learning in the presence of repetition》关于CVPR 2023 上的 CLVision 挑战赛的总结。该挑战赛的主要目标是探索重复在持续学习中的作用。博客首先介绍了决赛团队所提出的三种方案:HAT-CIR、Horde、DWGRNet,这三种方案的设计思路都是从数据流中的重复的类来进行持续学习。在比赛中,实验采用数据集CIFAR100 和 Tiny-ImageNet 来生成带有重复类的数据流,采用上述三种方法在生成数据流中的任务精确度作为评估指标。实验结果表明,三个决赛方案相对于用于生成数据流的数据集的性能具有一致性。HAT-CIR 在实验中展现了对于重复数据流进行持续学习的适用性,相较于其他两个方法,HAT-CIR 在重复的数据流中得到了更高的精确度,表明了数据流中的重复以不同的方式影响不同持续学习策略的行为。但是,怎么准确地找出重复的数量和类型如何影响每种方法的有效性还有待研究。

Abstract

This blog presents the summary of the paper “Continual learning in the presence of repetition” about the CLVision challenge at CVPR 2023. The main goal of the challenge is to explore the role of repetition in continuous learning. The blog first introduces the three solutions proposed by the finalist teams: HAT-CIR, Horde, and DWGRNet, all of which are designed to continuously learn from duplicate classes in the data stream. In the competition, the experiment uses dataset CIFAR100 and Tiny-ImageNet to generate a data stream with duplicate classes, and the task accuracy of the above three methods in generating the data stream is used as an evaluation metric. Experimental results show that the performance of the three finalists is consistent with the dataset used to generate the data stream. Compared with the other two methods, HAT-CIR achieves higher accuracy in repeated data streams, indicating that repetition in data streams affects the behavior of different continuous learning strategies in different ways. However, how exactly to find out how the number and type of replicates affect the effectiveness of each method remains to be studied.

一、方法介绍

在论文中,持续学习用CL来表示。研究者采用重复类增量学习(CIR),CIR 包含具有两个关键特征的各种数据流:1.随着时间的推移,新的类别可能会出现。 2. 以前遇到的类可能会以不同的重复模式重新出现。

在论文中,研究者开发的基于采样的生成器用于生成该挑战的数据流,使用具有明确解释的四个控制参数:
流长度(Stream length,简写为Stream):数据流中的经验数。
经验大小(Experience Size,简写为ESTA):每次经验中的样本数量。
首次出现分布(First occurrence distribution,缩写为RST):数据流中经验的离散概率分布,它决定了每个类的首次出现。
重复概率(𝑃𝑟):每个类的重复概率,控制每个类在第一次出现后在流中的未来经验中重新出现的可能性。

1.HAT-CIR

xduan7团队提出的策略称为HAT-CIR。 该策略结合了网络副本和测试时决策的优势,以及其他元素,例如对任务的硬注意力 (HAT)和监督对比学习 (SupCon) 。

所提出的方法包括三个核心部分:1.结构设计,具有基于HAT的分区和网络副本; 2.两阶段训练策略,包括监督对比学习和分类; 3.用于测试时决策的基于动量的推理机制。 该方法的示意图如下图所示:
在这里插入图片描述
在训练新任务时,一个由多个“集合”组成的新“片段”被添加到模型中,并分两个阶段对新体验的训练数据进行训练。 第一阶段,使用投影头并优化监督对比损失; 在第二阶段,使用softmax输出层并优化交叉熵损失。 在测试期间,每个可能类别的分数被计算为根据该类别出现的经验进行训练的最新片段的 logits 的加权平均值。

基于 HAT 的分区。 为了减轻灾难性遗忘,HAT 根据经验 ID 隔离网络参数。 原始的 HAT 方法在处理大量经验时存在训练速度慢和超参数敏感性的问题。 为了克服这个问题,使用了 HAT-CL,它将掩码初始化为 1,并使用余弦掩码缩放曲线来促进与网络权重更好的对齐。 通过使用余弦掩模缩放曲线,每个训练时期分为三个阶段:
1.训练权重,掩码大多是1
2.一起训练掩码和权重,使掩码更稀疏
3.当掩码主要为1时微调权重

这些变化显著提高了HAT的训练速度和稳定性,以及性能。此外,掩模的正则化项的影响逐渐减小。该步骤确保了网络容量的充分利用,并通过可变的正则化项提供了对每个经验中的类的数量的说明。基于HAT的分区仅用于预选阶段;对于最后阶段,仅使用网络副本,这导致了更高的性能。

为了学习更好的特征表示,在每个经验中,网络首先使用监督对比学习进行训练。目标是最大化相同类别的特征向量之间的相似性,并使用以下损失函数最小化不同类别的特征向量:
在这里插入图片描述
𝑓(𝑥) 生成输入 𝑥 的嵌入特征向量,𝐷(𝑥, 𝑦) 表示距离函数,𝑥𝑎 𝑖 、𝑥𝑝 𝑖 和 𝑥𝑛 𝑖 分别表示锚点、正样本和负样本,𝛼 是边距 范围。 批次中的样本数量用 𝑁 表示。 由于硬注意力掩模对学习率和历元数的敏感性,硬注意力掩模的训练仅发生在监督对比学习阶段。
在每次训练的第二个训练阶段,使用标准交叉熵分类损失进一步训练网络参数

HAT-CIR的局限性:在初始体验中,当类的数量较小时,该方法的一个显著缺点出现。在这种情况下,由于有限的多样性,网络无法学习有效的类表示。这对基于动量的测试时间决策策略的性能产生了负面影响。另一个固有的局限性与HAT的使用有关。网络结构的刚性要求仔细地调整超参数以匹配预期的体验总数,这在CIR设置中并不总是预先知道的。结果,可能会实现次优的参数分配,导致性能受损。

2.Horde

mmasana团队提出的策略称为Horde。该策略根据选定的经验学习特征提取器(FE)的集合,这应该提供强大的特征,有助于区分可见和不可见的下游类。
为了进一步促进伪特征投影,使用通常的交叉熵损失和额外的度量学习损失来训练FE,这促进了每个特征空间内的学习类之间的对齐。

Horde将各个FE的特征表示结合到一个能够预测到目前为止所看到的所有类的统一头部中。这是通过两步训练过程实现的:第一,FE的学习(仅在选定的经验上),第二,用于适应统一头部的伪特征对齐(在每个经验上)。每个个体FE都是一个在单一经验上训练的专家模型,之后它被冻结并添加到集合中。在第二个训练步骤中,数据通过所有的集成模型,并对统一的头部进行微调。训练统一头部涉及直接使用来自熟悉某个类的FE的表示,以及来自未在该类上训练的FE的表示的伪特征投影。Horde提高了每个任务特定的特征提取器(FE)的稳定性,同时通过学习对齐的统一表示来利用类重复来平衡可塑性

在论文中研究者设计了两个约束来确定何时将FE添加到集合中。首先,为了限制过度拟合FE的存在并限制系综的大小,不考虑少于五个类的经验。第二,在已经看到85%的类之后停止向集合添加FE,因为一旦已经学习了大多数类的鲁棒特征,则期望在剩余类上有良好的性能。此外,FE总是在第一次体验时接受培训的。在这些约束条件下,所提出的方法基于下图所示的突出显示的经验来学习特征提取器:
在这里插入图片描述
当FE在当前经验上进行训练时,学习发生在具有与类一样多的输出的完全连接的头部上的通常的交叉熵损失。为了促进在更相似分布的空间中的特征的学习,强调硬否定对的对比损失也被包括在单独的头部上,如下图所示。这两种损失都使用自适应alpha来平衡,该自适应alpha是基于每个损失的能量自动计算的。
在这里插入图片描述
当在新体验上进行训练时,在第一阶段中,可以使用交叉熵和对比损失来训练新的特征提取器。是否在新经验上训练新特征提取器由启发式决定。在对每个新体验执行的第二训练阶段中,执行伪特征投影,并且训练统一的头部以基于来自集合的特征来区分所有看到的类。(在测试时,一个测试样本被简单地转发到模型的所有组件,预测的类从统一头中读出

伪特征投影使用相应的类标准差扩展了特征转换,以允许更好的维度采样。它将表示从类转换为不同类别的预计代表。 令 𝑎𝑖 为属于类别 𝑖 的当前经验样本的所有 FE 输出的串联表示。 投影定义为:在这里插入图片描述
其中 ̂𝑎𝑗 ,𝑖 是从类 𝑖 到类 𝑗 的估计投影。 该投影在学习统一头时应用于训练批次中的每个样本,并且在评估期间不使用
目标类𝑗是从先前学习的类中随机选择的,原始表示和预测的表示都被添加到损失上。类原型(即平均𝜇𝑖和标准差𝜎𝑖)总是在通过计算可用类数据的统计量来训练统一头部之前进行更新。

3.DWGRNet

pddbend团队提出的策略称为动态加权门控表示网络(DWGRNet)。该策略为每个Experience创建独立的分支并使用门控单元来控制哪些分支处于活动状态。 在训练期间,与当前经验相对应的分支被其门控单元激活,以促进学习,而来自先前经验的分支保持不活动状态。
DWGRNet 根据熵、特征范数和每个分支经历的类别数量来分配权重。 具体来说,评估每个分支的预测概率分布的熵。 高熵表示样本成为该分支的开集项的可能性。 类似地,计算特征范数。 较高的特征范数表明该样本很可能是开放集样本。 最后,假设大量类别的经验将使模型的预测更加可靠。 因此,权重还可以根据每次体验中的课程数量进行调整。

DWGRNet 使用门控单元来控制每个分支的激活。 每次新Experience都会添加一个新分支,然后激活,而旧分支中的模型参数保持冻结。 如图所示:在这里插入图片描述
在训练阶段,没有使用特殊的损失函数或重播缓冲区。 相反,使用标准交叉熵损失来训练模型,同时使用 AugMix 来增强模型的泛化性和鲁棒性。 AugMix 结合了不同的数据增强技术。 在测试阶段,门控单元可以一一激活每个分支,以避免需要大量 GPU 内存。 他们的输出被收集起来,然后用于做出最终的预测

二、实验

CVPR 2023 的 CLVision 挑战,主要目标是探索重复在 CL 中的作用,这是目前较少研究者所关注的方向。 为此,参与者被要求设计一些策略,可以利用数据流中固有的重复来促进知识转移并减少遗忘,而无需存储原始样本。上述所介绍的三种主要方法以及团队是该比赛的部分参赛者。

十强队伍预选阶段结果。 显示的是在预选阶段对三个流中的每一个进行训练后,CIFAR-100 测试集的准确度
在这里插入图片描述
为了测试数据流中的重复是否对决赛解决方案的有效性发挥重要作用,在对没有重复的数据流进行训练后,也会对它们进行评估。 为此,使用“标准”Split CIFAR-100 类增量学习基准。
在这里插入图片描述
上图中的结果表明,当数据流中没有重复时,解决方案的性能显着降低。 虽然缓冲区大小为 2000 的 ER 在有重复的数据流上明显优于每个决赛解决方案,但当没有重复时,该版本的 ER 比所有决赛解决方案表现更好。 这表明数据流中的重复可以改变不同 CL 策略的相对有效性。

为了探讨结果的普遍性,研究者对使用 Tiny ImageNet 数据集生成的三个 CIR 数据流对决赛解决方案进行了评估。生成数据流的配置与挑战最后阶段的数据流𝑆4、𝑆5 和𝑆6 使用的配置相同。 评估结果如下图所示。这些结果表明三个决赛解决方案相对于用于生成数据流的数据集的性能具有一致性
在这里插入图片描述

总结

在随机重复的数据流中,HAT-CIR基于集成的持续学习策略能够很好地利用数据流中固有的重复来促进知识转移并减少遗忘。Horde训练了一组特征提取器,其中仅在需要时基于启发式添加新的特征提取器。它还使用了一个统一的头来区分在当前训练步骤中观察到的类。DWGRNet为每个体验使用独立的分支,在训练期间通过门控单元激活,并结合数据增强技术以提高鲁棒性。该解决方案进一步从开集问题的角度来处理该问题,并且为了解决开集识别问题,它采用了基于熵,特征范数和每个经验中的类数等因素的加权策略。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2269950.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android OpenGl(二) Shader

一、Shader 1、什么是Shader,为什么要使用Shder (1)shader运行在gpu上的小程序 (2)以前使用固定管线,但缺点是灵活度不够,无法满足复杂需求,为了解决固定管线的缺点,出…

【LeetCode】200、岛屿数量

【LeetCode】200、岛屿数量 文章目录 一、并查集1.1 并查集1.2 多语言解法 二、洪水填充 DFS2.1 洪水填充 DFS 一、并查集 1.1 并查集 // go var sets int var father [90000]intfunc numIslands(grid [][]byte) int {n, m : len(grid), len(grid[0])build(grid, n, m)for i …

[最佳方法] 如何将视频从 Android 发送到 iPhone

概括 将大视频从 Android 发送到 iPhone 或将批量视频从 iPhone 传输到 Android 并不是一件容易的事情。也许您已经尝试了很多关于如何将视频从 Android 发送到 iPhone 15/14 的方法,但都没有效果。但现在,通过本文中的这 6 种强大方法,您可…

MetaRename for Mac,适用于 Mac 的文件批量重命名工具

在处理大量文件时,为每个文件手动重命名既耗时又容易出错。对于摄影师、设计师、开发人员等需要频繁处理和整理文件的专业人士来说,找到一款能够简化这一过程的工具是至关重要的。MetaRename for Mac 就是这样一款旨在提高工作效率的应用程序&#xff0c…

QEMU网络配置简介

本文简单介绍下qemu虚拟机网络的几种配置方式。 通过QEMU的支持,常见的可以实现以下4种网络形式: 基于网桥(bridge)的虚拟网络。基于NAT(Network Addresss Translation)的虚拟网络。QEMU内置的用户模式网…

Elasticsearch向量检索需要的数据集以及768维向量生成

Elasticsearch8.17.0在mac上的安装 Kibana8.17.0在mac上的安装 Elasticsearch检索方案之一:使用fromsize实现分页 快速掌握Elasticsearch检索之二:滚动查询(scrool)获取全量数据(golang) Elasticsearch检索之三:官方推荐方案search_after…

MySQL:安装配置(完整教程)

这里写目录标题 一、MySQL 简介二、下载 MySQL三、安装 MySQL四、配置环境变量五、配置 MySQL5.1 初始化 MySQL5.2 启动 MySQL 服务 六、修改 MySQL 密码七、卸载 MySQL八、结语 一、MySQL 简介 MySQL 是一款广泛使用的开源关系型数据库管理系统(RDBMS)…

您的公司需要小型语言模型

当专用模型超越通用模型时 “越大越好”——这个原则在人工智能领域根深蒂固。每个月都有更大的模型诞生,参数越来越多。各家公司甚至为此建设价值100亿美元的AI数据中心。但这是唯一的方向吗? 在NeurIPS 2024大会上,OpenAI联合创始人伊利亚…

如何用CSS3创建圆角矩形并居中显示?

在网页设计中,圆角矩形因其美观和现代感而被广泛使用,居中显示元素也是一个常见的需求。今天,我们将学习如何使用CSS3的border-radius属性来创建圆角矩形,并将其居中显示在页面上。 如果你正在学习CSS,那么这个实例将非…

PhPMyadmin-cms漏洞复现

一.通过日志文件拿Shell 打开靶场连接数据库 来到sql中输入 show global variables like %general%; set global general_logon; //⽇志保存状态开启; set global general_log_file D:/phpstudy/phpstudy_pro/WWW/123.php //修改日志保存位置 show global varia…

本地LLM部署--llama.cpp

–图源GitHub项目主页 概述 llama.cpp是以一个开源项目(GitHub主页:llamma.cpp),也是本地化部署LLM模型的方式之一,除了自身能够作为工具直接运行模型文件,也能够被其他软件或框架进行调用进行集成。 其…

基本算法——分类

目录 创建项目 导入依赖 加载数据 特征选择 学习算法 对新数据分类 评估与预测误差度量 混淆矩阵 通过模型的预测结果生成 ROC 曲线数据 选择分类算法 完整代码 结论 创建项目 首先创建spring boot项目,我这里用的JDK8,springboot2.7.6&…

【系统配置】3种方式修改用户登录显示名|统信|麒麟|方德

原文链接:【系统配置】3种方式修改用户登录显示名|统信|麒麟|方德 Hello,大家好啊!今天给大家带来一篇关于 通过修改 /etc/passwd 文件、usermod 命令,以及图形化界面三种方式修改用户登录名 的…

TTL 传输中过期问题定位

问题: 工作环境中有一个acap的环境,ac的wan口ip是192.168.186.195/24,ac上lan上有vlan205,其ip子接口地址192.168.205.1/24,ac采用非nat模式,而是路由模式,在上级路由器上有192.168.205.0/24指向…

Cocos2dx Lua绑定生成中间文件时参数类型与源码类型不匹配

这两天维护的一个项目&#xff0c;使用arm64-v8a指令集编译时遇到了报错&#xff0c;提示类型不匹配&#xff0c;具体报错的代码【脚本根据C源文件生成的中间文件】如下&#xff1a; const google::protobuf::RepeatedField<unsigned long long>& ret cobj->equi…

连接Milvus

连接到Milvus 验证Milvus服务器正在侦听哪个本地端口。将容器名称替换为您自己的名称。 docker port milvus-standalone 19530/tcp docker port milvus-standalone 2379/tcp docker port milvus-standalone 192.168.1.242:9091/api/v1/health 使用浏览器访问连接地址htt…

走方格(蓝桥杯2020年试题H)

【问题描述】在平面上有一些二维点阵。这些点的编号就像二维数组的编号一样&#xff0c;从上到下依次为第1~n行&#xff0c;从左到右依次为第1~m列&#xff0c;每个点可以用行号和列号表示。 现在有个人站在第1行第1列&#xff0c;他要走到第n行第m列&#xff0c;只能向右或者向…

28. 二叉树遍历

题目描述 根据给定的二叉树结构描述字符串&#xff0c;输出该二叉树按照中序遍历结果字符串。中序遍历顺序为:左子树&#xff0c;根结点&#xff0c;右子树。 输入描述 由大小写字母、左右大括号、逗号组成的字符串: 1、字母代表一个节点值&#xff0c;左右括号内包含该节点的子…

Swift White Hawkstrider

Swift White Hawkstrider 迅捷白色陆行鸟 Swift White Hawkstrider - Item - 魔兽世界怀旧服TBC数据库_WOW2.43数据库_70级《燃烧的远征》数据库 Kaelthas Sunstrider (1) <Lord of the Blood Elves> 凯尔萨斯逐日者. 掉落 [80圣骑士][Alonsus-加丁][诺森德冒险补给品…

LeetCode算法题——有序数组的平方

题目描述 给你一个按非递减顺序排序的整数数组nums&#xff0c;返回每个数字的平方组成的新数组&#xff0c;要求也按非递减顺序排序。 题解 解法一&#xff1a;暴力解法 思路&#xff1a; 该题目可通过暴力解法解决&#xff0c;即利用for循环遍历数组&#xff0c;对数组每…