FMix: Enhancing Mixed Sample Data Augmentation 论文阅读

news2025/2/25 5:17:13

1 Abstract

  • 近年来,混合样本数据增强(Mixed Sample Data Augmentation,MSDA)受到了越来越多的关注,出现了许多成功的变体,例如MixUp和CutMix。通过研究VAE在原始数据和增强数据上学习到的函数之间的互信息,我们展示了MixUp以一种CutMix不会的方式扭曲了学习到的函数。我们进一步通过展示MixUp作为一种对抗性训练的形式来证明这一点,它增加了对Deep Fool和Uniform Noise等攻击的鲁棒性,这些攻击产生的样本与MixUp生成的样本类似。我们认为,这种扭曲阻止了模型学习数据中的样本特定特征,有助于提高泛化性能。相比之下,我们认为CutMix更像是一种传统的增强,通过防止记忆来提高性能,而不会扭曲数据分布。然而,我们认为,一个基于CutMix构建的MSDA,包括任意形状的掩码(而不仅仅是正方形),可以在不扭曲数据分布的同时进一步防止记忆。为此,我们提出了FMix,这是一种使用通过将傅里叶空间中采样的低频图像应用阈值获得的随机二进制掩码的MSDA。这些随机掩码可以呈现出各种形状,并且可以用于一维、二维和三维数据。FMix在不增加训练时间的情况下,提高了多种模型在多个数据集和问题设置中的性能,甚至在没有外部数据的情况下,在CIFAR-10上获得了新的单模型最佳结果。我们展示了FMix在情感分类任务中可以胜过MixUp,并且在一维数据的三维点云分类中提供了基线的改进。最后,我们展示了插值MSDA(如MixUp)和掩码MSDA(如FMix)之间差异的一个后果是,两者可以结合使用以进一步提高性能。所有实验的代码可在https://github.com/ecs-vlc/FMix获取。

2 Strategy

  • 生成随机掩码: 首先,从傅里叶空间采样低频图像。这可以通过对复数 随机变量进行低通滤波来实现,其中滤波器的衰减功率由参数δ控制。这一步骤生成了一个灰度图像。

  • 转换为二进制掩码: 将上述灰度图像通过一个阈值操作转换为二进制掩码。这个阈值是根据给定的混合系数λ来设置的,以确保掩码的平均值为λ。这意味着在二进制掩码中,像素值根据其在灰度图像中的强度被设置为0或1。

  • 应用掩码: 使用生成的二进制掩码对数据集中的图像进行混合。具体来说,对于两个独立的随机变量X1和X2(代表数据集中的两个样本),使用掩码m进行元素级别的乘法操作,然后根据混合系数λ进行加权求和,得到增强后的样本。

3 Perfermance

在这里插入图片描述

4 Demo

注:这里只用了一张图像,没有叠加两张图像

mask = binarise_mask(make_low_freq_image(3, SHAPE), 0.5, SHAPE, 0.0)

在这里插入图片描述

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

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

相关文章

【力扣】125.验证回文串

刷题,过了真的好有成就感!!! 题解: 根据题目要求,我们需要处理一下几个问题: 将大写字母转变成小写对原来的字符串进行处理,只要字母和数字考虑只有一个和字符串为空的情况 1、将…

Nginx 基础应用实战 06 构建一个PHP的站点

Nginx 基础应用实战 06 构建一个PHP的站点 使用套件 lmnp https://oneinstack.com 安装完成后 搭建bbs https://www.discuz.net/ 搭建博客 https://wordpress.com https://cn.wordpress.org/ CMS系统 http://www.dedecms.com/ 构建Lua站点 Openresty Nginx Lua …

lomobok源码编译学习笔记(1)

lomobok学习笔记(1) 项目导入 lombok的github地址 GitHub - projectlombok/lombok: Very spicy additions to the Java programming language. 开发工具 idea不知道为啥,装上ant工具也不好用,eclipse默认自带有ant,不需要装。…

0 idea搭建springboot项目

1 2 3 4 5 配置文件 application.yaml server:servlet:context-path: /app #项目名controller //注入到spring容器 Controller public class HelloController {GetMapping("hello")ResponseBodypublic String hello(){return "Hello,SpringBoot";} }启…

多态——C++

这里写目录标题 衔接继承总结继承和组合白箱复用黑箱复用 多态的概念多态的定义以及实现虚函数重写的两个例外协变面试题析构函数的重写 finalvoerride重载隐藏(重定义)重写(覆盖)抽象类什么是抽象类? 实现继承和接口继承多态的原理虚函数表 那多态的调用是怎么实现…

我为什么选择当程序员

在当今这个数字化时代,程序员已经成为了一个非常受欢迎的职业选择。无论是出于对技术的热爱,还是因为看到了这个行业的广阔前景,越来越多的人选择加入程序员的行列,尤其是最近几年AI带动整体行业的发展。本文将深入探讨人们选择成…

giteegit的连结使用

目标:在windows的本地的git上操作的项目存放到Gitee云端上 不适用于linux的terminal终端下 1.先下载好Git这个软件 2.创建一个文件夹(项目名称) 然后用gitbash的形式打开 3.创建ssh密钥到Gitee上 因为我们在Git与Gitee上的传输是通过ssh…

用友NC open SQL注入漏洞复现(XVE-2023-29119)

0x01 产品简介 用友NC是由用友公司开发的一套面向大型企业和集团型企业的管理软件产品系列。这一系列产品基于全球最新的互联网技术、云计算技术和移动应用技术,旨在帮助企业创新管理模式、引领商业变革。 0x02 漏洞概述 用友NC /portal/pt/PaWfm/open接口的proDefPK参数存…

蓝桥杯物联网竞赛_STM32L071KBU6_全部工程及国赛省赛真题及代码

包含stm32L071kbu6全部实验工程、源码、原理图、官方提供参考代码及国、省赛真题及代码 链接:https://pan.baidu.com/s/1pXnsMHE0t4RLCeluFhFpAg?pwdq497 提取码:q497

基于Web的毕业生离校离校管理系统的设计与实现(源码+配套文档)

基于Web的毕业生离校离校管理系统的设计与实现(源码配套文档) 摘要 越来越多信息化融入到我们生活当中的同时,也在改变着我们的生活和学习方式,当然,变化最明显的除了我们普通民众之外,要数高校学生的生活…

【热门话题】OneFlow深度学习框架介绍

🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 ​💫个人格言: "如无必要,勿增实体" 文章目录 OneFlow深度学习框架介绍引言一、OneFlow概述1.1 定位与起源1.2 核心特性数据流…

大屏可视化展示平台解决方案(word原件获取)

1.系统概述 1.1.需求分析 1.2.重难点分析 1.3.重难点解决措施 2.系统架构设计 2.1.系统架构图 2.2.关键技术 2.3.接口及要求 3.系统功能设计 3.1.功能清单列表 3.2.数据源管理 3.3.数据集管理 3.4.视图管理 3.5.仪表盘管理 3.6.移动端设计 3.1.系统权限设计 3.2.数据查询过程设…

ios苹果ipa文件app内测分发有哪些操作流程

哈喽,大家好,咕噜淼淼又来和大家见面啦,在iOS应用开发过程中,进行内测分发是非常重要的一环,它能帮助开发者发现并修复应用中的问题,提升用户体验。上两期咱们一起探讨了一下App内测分发的目的及优势&#…

Linux云计算之Linux基础3——Linux系统基础part-2

1、终端、shell、文件理论 1、终端 终端(terminal):人和系统交互的必要设备,人机交互最后一个界面(包含独立的输入输出设备) 物理终端(console):直接接入本机器的键盘设备和显示器虚拟终端(tty):通过软件…

20231125 1+X 中级实操考试(id:3777)

//补充完成该类的含参构造方法public Info(String name, int age, String sex, String phone) {this.name name;this.age age;this.sex sex;this.phone phone;} // 请修改该方法,以保证打印对象时输出格式如下:// [namezs;age20;sex男;phone18812349…

错误日志:解决在VScode中调试C++代码断点无效、断点错位的问题

问题可能原因有: 调试时断点无效,大概率是 CMakeLists.txt 设置成了 Release 模式;如果在 CMakeLists.txt 在设置成 Debug 以后,调试时能够停下来,但没在断点处停下,而是停在了别的地方,这就是…

实现iframe里面的页面全屏

首先在父页面引入iframe 监听iframe的方法回调 实现iframe全屏的方法 在iframe页面中,点击全屏后,执行回调函数 就能实现iframe中页面全屏了

你知道 Java 线程池的原理吗?

Java线程池是用于管理和复用线程的机制,它可以帮助开发者有效地管理线程的生命周期和资源,并提高应用程序的性能和稳定性。 1. 线程池概述 在计算机科学中,线程池是一种可用来执行异步任务的线程队列。它主要包含以下几个组成部分&#xff…

Springboot实现链路追踪功能

前言 在日常开发中,一个业务的实现往往会调用很多个方法,当我们去看日志的时候,各种接口的日志打印出来,看着就头疼,压根没办法去定位,而链路追踪就能很好的帮助我们去查看接口从头至尾依次调用了哪些方法…

CSS导读 (元素显示模式)

(大家好,今天我们将继续来学习CSS的相关知识,大家可以在评论区进行互动答疑哦~加油!💕) 目录 三、CSS的元素显示模式 3.1 什么是元素显示模式 3.2 块元素 3.3 行内元素 3.4 行内块元素 3.5 元素…