论文笔记:Asymptotic Midpoint Mixup for Margin Balancing and Moderate Broadening

1. Motivation

在特征空间中,特征之间的collapse会导致representation learning 中的关键问题,这是因为特征之间不可区分。基于线性插值的增强方法(例如 mixup)已经显示出它们在缓解类间塌陷(称为inter-class collapse)方面的有效性,可以提高了模型在长尾数据集对比自监督学习上(contrastive self-supervised learning)的性能。但是从粗粒度到细粒度会导致的类内塌陷( intra-class collapse) 还没有得到充分讨论。

类内特征塌陷:在一个类别内部,如果所有的样本特征都过于接近类的质心,那么就会发生类内特征塌陷。这种情况下,即使这些样本在原始数据空间中有非常不同的表现,但是在特征空间中,它们都被映射到了非常接近的位置,这就导致了这些样本的特征无法区分,从而影响了模型的学习效果。类内特征坍塌被证实出现在coarse-to-fine transfer learning

类间特征坍塌:如果不同类别的样本特征在特征空间中过于接近或者相同,那么就会发生类间特征塌陷。这种情况下,不同类别的样本无法被区分开,从而影响了模型的分类效果。类间特征坍塌则会发生在长尾数据集上,因为头类的压倒性数值优势,会导致长尾数据集上的边缘不平衡,从而降低了图像分类性能。

long-tailed datasets:长尾数据集是指在数据集中,某些类别的样本数量远大于其他类别的样本数量。

2. Contribution

出于以上的动机(尚未解决的类内特征坍塌),作者研究了从粗到精的迁移学习不平衡学习这两个任务中 基于插值的增强方法的类间和类内塌陷效应,特别是mixup and manifold mixup这两种增强方法。作者发现mixup 和 manifold mixup 都存在相似的 collapse problems。为了解决这些坍塌问题,作者提出了一种更好的基于插值的增强方法:asymptotic midpoint mixup(渐近中点混合/AM-mixup)。

这个方法会通过线性插值产生features,并且精细地控制 线性插值的比例。具体来说,随着模型训练,增强的特征逐渐会接近两个类之间的中点( the midpoint of inter-class feature pairs),如图所示。最终,在能够减弱collapse effects的同时,类别的margin会变得平衡且适度地变宽。

在这里插入图片描述

在toy task的实验中,作者通过使用对齐(alignment)和均匀性(uniformity)的两种metric 对 mixupmanifold mixupAM-mixup 进行度量来验证坍塌的影响,通过经验验证了作者的方法在长尾数据集和 从粗到细的迁移数据集上 图像分类任务的影响和有效。

Contribution 分为三部分:

  1. 解决了在特征增强(feature augmentation)方法中inter-class和 intra-class collapse的坍塌问题,并且通过对 alignment 和uniformity 的分析 展示了这两种坍塌的影响。
  2. 提出了一个更好的基于插值的增强方式, asymptotic midpoint mixup,通过平衡和适度拓宽在特征空间中的margin 来解决 坍塌问题。
  3. 实践地分析了提出的方法和其他 特征增强方法的 在 不平衡学习 和 粗到细粒度迁移学习上的影响和表现。

3. Background

Intra-class collapse

在对比学习中,encoder 会确保类似的sample 在特征空间中也在类似的locations,然而,由于positive pairs之间的吸引力过大,这些特征往往cluster到一个点上,这种现象会限制模型的表现力,尤其在 coarse-to-fine transfer learning的环境下。具体来说,如果一个模型在粗粒度的labels上预训练而在细粒度的labels上微调,由于特征坍塌,这个模型很有可能没办法把 input samples 分类到 细粒度的label。特别是,在监督对比学习中,同一超类中的特征很容易在超类的质心上坍塌,即使细粒度分类器试图将它们分类为自己的子类。作者把这个问题称为类内坍塌。 为了测量类内坍塌,类内对齐( intra-class alignment)被提出,代表positive pairs的closeness。通过下面的公式测量:

在这里插入图片描述

Inter-class collapse

由于锚点和负样本之间的排斥,类的质心彼此远离,对比学习实现了高性能。然而,在处理长尾数据集时,监督对比学习可能会受到不同类别之间特征崩溃的影响。在这种情况下,模型会优先考虑最大化头部类别之间的距离以减少损失。因此,对比损失并未均匀分布在所有类别中。在这种情况下,尾部类中的特征将相互坍塌。我们将这种崩溃称为类间崩溃,它阻碍了模型学习常规简单的特征的能力,尤其在不平衡的学习中。类间崩溃可以使用类间和邻域均匀性来量化,这些指标优先考虑单位超球面上representation 的均匀分布。类间均匀性评估类的不同质心之间的距离,而邻域均匀性检查尾部类的收敛性。这两种类型的指标可以分别使用以下 U 和 Uk 来衡量:

在这里插入图片描述

4. Method

Interpolation-Based Feature Generation and One-sided Labeling

在AM-mixup中, 增强的特征和标签被创建为:

在这里插入图片描述
zi 和 zj 从小批量中随机选择,所得标签现在称为 c(i,j) 并称为单侧标签。这一过程发生在特征空间中,单侧标签是通过调整参数 λam 来确定的,以渐近地将它们移近决策边界。与其他基于插值的方法不同,标签是在一侧明确确定的,从而导致相应类别的余量增加。

Asymptotic Move of Augmented Features.

置信度是估计决策边界的重要因素。然而,在早期训练中依靠片面标签作为基本事实是一种不值得信赖的方法,因为神经网络可能会做出错误的预测。为了降低这种风险,作者使用一个调度程序,该调度程序使用训练精度来以更高的灵敏度调整 λam,如式子所示。

在这里插入图片描述
vacc ∈ [0, 1] 表示每个 epoch 训练精度的真实值。 β 是一个超参数,用于决定 λam 如何随着训练精度而减小。 β 应设置为 0.67,导致 lambda 从 1.0 呈指数下降到大约 0.5。当混合率接近 0.5 时,增强的特征会导致显着的损失,并导致模型以较大的margin进行训练。然而,在获得最大置信度后,原始特征不再远离边界。由于梯度接近于零,类内特征与其质心之间的距离得到适度保持,而不会产生过大的收敛压力。尽管有这个优势,但大约 0.5 的混合率似乎会使模型在训练后期的训练变得困难。为了缓解这种现象,作者通过实验测试了各种 β 值,并确定当 β = 0.34 时模型表现最佳。

Training Loss for Augmented Features.

交叉熵、mixup和AMmixup的损失函数用以下公式表示:

在这里插入图片描述
AM 混合损失和交叉熵损失很像,和使用两种标签的mixup的损失函数相反。 因为AM 混合损失仅利用单侧标签( λam 大于另一侧的标签)。通过这种单侧标签,AM-mixup 可以通过尝试增加增强特征对这些单侧标签的置信度来比 mixup 更广泛地扩展margin。

5. Experiment Results

Common Settings

作者选择了两种基线方法来与 AM-mixup 进行比较。mixup有效地证明了作者的目标问题,而manifold mixup作为特征增强的代表性方法。使用不同的随机种子进行了不平衡学习和从粗到精的迁移学习的实验。他们的表现用平均数mean和标准差std来表示,即mean_std。在AM-mixup中,β的默认值设置为0.34。在 ImageNet-LT 和 Places-LT 中,Mixup alpha 设置为 0.2,在所有其他数据集中设置为 1.0。作者报告了三个类别分割的准确性:Head-Many(超过 100 个图像)、Medium(20 到 100 个图像)和 Tail-Few(少于 20 个图像)。

在这里插入图片描述
在这里插入图片描述

Inter-class Collapse in Imbalanced Learning

除了 CIFAR100-LT 上的不平衡因子 50 和 10 之外,AM-mixup 在 CIFAR10/100LT 中获得了最佳性能。 Mixup 显示出比 CE 更好的性能,但不如 AM-mixup。这意味着在长尾数据集中,mixup 比 AM-mixup 更容​​易遭受类间崩塌。Mixup 和manifold Mixup 性能的改进主要是通过提高 many 部分和 Median 部分的精度来实现的,这意味着它们没有为尾部类别获得足够的余量,而 AM-mixup 通过提高 few 部分的精度来实现更好的余量平衡。

在这里插入图片描述
因此,AM-mixup 通过减少尾部类之间的类间崩溃来实现最高性能。然而,这种趋势在更实践的数据集 ImageNet-LT 上略有不同。在 ImageNet-LT 数据集中,CE 比基于插值的方法(包括少数部分的 AM-mixup)表现出更好的精度,甚至在 ResNet50 的情况下,CE 也表现出比其他方法更好的性能。尽管存在这种劣势,AM-mixup 在 ResNet50 和 ResNet152 中的few 部分上优于 mixup 和manifold mixup,同时在 ResNet101 中表现出相当的性能,这意味着渐近运动有利于减轻尾类之间的坍塌

Intra-class Collapse in Coarse-to-Fine Transfer Learning

AM-mixup 实现了第二好的测试精度,甚至在 MNIST 上优于所有其他测试。然而,mixup表现出类内崩台,正如其低准确度所表明的那样。类似地,AM-mixup 也存在类内崩溃,其精度低于没有任何增强的交叉熵(CE),但 AM-mixup 的效果比 mixup 更好。这意味着 AM-mixup 的混合率控制和单侧标记减轻了类内崩塌。

在这里插入图片描述

Ablation Study

为了定性比较AN-mixup中主要成分的影响,作者在CIFAR 100-LT上进行了消融研究,不平衡因子设置为100。

在这里插入图片描述
可以知道:

  1. 根据模型的可靠性调整mixup rate(表格中的lam)非常重要。
  2. 使用单面标签始终比不使用标签具有更好的性能。
  3. Effect of Mixup仅在最后一层。在相同条件下(第1、2行和第3、6行)比较模型的性能时,并且在Many 的部分上,LL表现出较差的性能。但是在Median 和Few 上表现出色,这是不平衡学习上的关键。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Elasticsearch之索引的增删改查(6.x版本)-yellowcong

1. 节点信息查看 #查看集群健康情况 curl -X GET localhost:9200/_cat/health?v&pretty#查看节点信息 curl -X GET localhost:9200/_cat/nodes?v&pretty 2. 索引管理 在es中,索引就相当于是mysql中的库了。 #查看索引列表 curl -X GET localhost:9200/…

Linux红帽认证有哪些等级?RHCE含金量如何?

工 仲 好:IT运维大本营哈喽,大家好! 红帽认证,作为一个备受瞩目的认证体系,其完善程度在行业内有口皆碑。 它清晰地划分为三个等级,分别是初级、中级和高级,每个等级都具有独特的要求和价值。…

ArcGIS求取多个点距离线要素的最近距离以及距离倒数

本文介绍在ArcMap软件中,对于点要素中的每一个点,求取其距离最近的道路的距离、距离倒数的方法。 首先,看一下本文的需求。现在已知一个点要素,其中含有多个点,假设每一个点表示城市中的一家商店;同时&…

大数据实验E5HBase:安装配置,shell 命令和Java API使用

实验目的 熟悉HBase操作常用的shell 命令和Java API使用; 实验要求 掌握HBase的基本操作命令和函数接口的使用; 实验平台 操作系统:Linux(建议Ubuntu16.04或者CentOS 7 以上);Hadoop版本:3…

跑一下pyapp

文档:How-to - PyApp 首先没有rust要安装 安装 Rust - Rust 程序设计语言 查看是否安装成功 然后clone下pyapp https://github.com/ofek/pyapp/releases/latest/download/source.zip -OutFile pyapp-source.zip 进入目录中,cmd,设置环境…

Python_Flask01

所有人都不许学Java了,都来学Python! 如果不来学的话请网爆我的老师---蔡老师 Flask的前世姻缘 我不知道,没啥用,要学好这个框架,其实多读书,多看报就行了,真心想了解的话! Welcom…

Unity性能优化---动态网格组合(一)

网格组合是将 Unity 中的多个对象组合为一个对象的技术。因此,在多物体的场景中,使用网格组合,会有效的减少小网格的数量,最终将得到一个包含许多小网格的大网格游戏对象,这将提高游戏或模拟器的性能。在Unity 的 “St…

Docker 逃逸突破边界

免责声明 本博客文章仅供教育和研究目的使用。本文中提到的所有信息和技术均基于公开来源和合法获取的知识。本文不鼓励或支持任何非法活动,包括但不限于未经授权访问计算机系统、网络或数据。 作者对于读者使用本文中的信息所导致的任何直接或间接后果不承担任何…

Kafka知识体系

一、认识Kafka 1. kafka适用场景 消息系统:kafka不仅具备传统的系统解耦、流量削峰、缓冲、异步通信、可扩展性、可恢复性等功能,还有其他消息系统难以实现的消息顺序消费及消息回溯功能。 存储系统:kafka把消息持久化到磁盘上&#xff0c…

vue-cli创建项目报错:command failed: npm install --loglevel error

网上解决方法有很多,对于我都没用。 最后用这个方法起了作用: 尝试将npm源设置为HTTP,慎用,可能不安全 npm config set registry http://registry.npm.taobao.org/ 改为http就顺利创建项目了。

STL算法之sort

STL所提供的各式各样算法中&#xff0c;sort()是最复杂最庞大的一个。这个算法接受两个RandomAccessIterators(随机存取迭代器)&#xff0c;然后将区间内的所有元素以渐增方式由小到大重新排列。还有一个版本则是允许用户指定一个仿函数代替operator<作为排序标准。STL的所有…

Spring Shell如何与SpringBoot集成并快速创建命令行界面 (CLI) 应用程序

Spring Shell 介绍 Spring Shell 是一个强大的工具&#xff0c;可用于构建命令行应用程序&#xff0c;提供了简单的方式来创建和管理交互式 CLI。它适合那些希望通过命令行与 Java 应用程序进行交互的开发者&#xff0c;尤其是在需要自动化、交互式输入或与 Spring 生态系统集…

圣桥ERP queryForString.dwr SQL注入漏洞复现

0x01 产品描述: 杭州圣乔科技有限公司主要研发全套工业企业ERP系列软件产品,现在公司已经形成ERP 软件、OA办公管理、等四大系列二十小类软件产品。致力于为政府、教育、医疗卫生、文化事业、公共事业(电、水、气等)、交通、住建、应急、金融、电信运营商、企业等用户提供专…

SystemUI修改状态栏电池图标样式为横屏显示(以Android V为例)

SystemUI修改状态栏电池图标样式为横屏显示(以Android V为例) 1、概述 在15.0的系统rom产品定制化开发中&#xff0c;对于原生系统中SystemUId 状态栏的电池图标是竖着显示的&#xff0c;一般手机的电池图标都是横屏显示的 可以觉得样式挺不错的&#xff0c;所以由于产品开发…

【设计模式系列】备忘录模式(十九)

目录 一、什么是备忘录模式 二、备忘录模式的角色 三、备忘录模式的典型应用场景 四、备忘录模式在Calendar中的应用 一、什么是备忘录模式 备忘录模式&#xff08;Memento Pattern&#xff09;是一种行为型设计模式&#xff0c;它允许在不暴露对象内部状态的情况下保存和恢…

简单的动态带特殊符号敏感词校验

简单的动态带特殊符号敏感词校验 敏感词之前进行了简单了解&#xff0c;使用结巴分词自带词库可以实现&#xff0c;具体参考我的如下博文 敏感词校验 此次在此基础进行了部分优化&#xff0c;优化过程本人简单记录一下&#xff0c;具体优化改造步骤如下所示 1.需求 我们公司…

AJAX三、XHR,基本使用,查询参数,数据提交,promise的三种状态,封装-简易axios-获取省份列表 / 获取地区列表 / 注册用户,天气预报

一、XMLHttpRequest基本使用 XMLHttpRequest&#xff08;XHR&#xff09;对象用于与服务器交互。 二、XMLHttpRequest-查询参数 语法: 用 & 符号分隔的键/值对列表 三、XMLHttpRequest-数据提交 核心步骤 : 1. 请求头 设置 Content-Type 2. 请求体 携带 符合要求 的数…

S4 UPA of AA :新资产会计概览

通用并行会计&#xff08;Universal Parallel Accounting&#xff09;可以支持每个独立的分类账与其他模块集成&#xff0c;UPA主要是为了支持平行评估、多货币类型、财务合并、多准则财务报告的复杂业务需求 在ML层面UPA允许根据不同的分类账规则对物料进行评估&#xff0c;并…

CMD 介绍

CMD 介绍 CMD 是 Windows 操作系统中的命令提示符&#xff08;Command Prompt&#xff09;程序&#xff0c;它是一种命令行工具&#xff0c;可以让用户通过键入命令来与计算机进行交互。 DOS: disk operating system, 磁盘操作系统. 是利用命令行来操作计算机. DOS 不是 CMD…

Hadoop生态圈框架部署 伪集群版(六)- MySQL安装配置

文章目录 前言一、MySQL安装与配置1. 安装MySQL2. 安装MySQL服务器3. 启动MySQL服务并设置开机自启动4. 修改MySQL初始密码登录5. 设置允许MySQL远程登录6. 登录MySQL 卸载1. 停止MySQL服务2. 卸载MySQL软件包3. 删除MySQL配置文件及数据目录 前言 在本文中&#xff0c;我们将…