Data Augmentation数据增强

目录

数据增强是什么

为什么数据增强

数组增强分类

有监督数据增强

无监督数据增强


数据增强是什么

数据增强又称数据扩增,是一种通过应用合理且随机的变换(例如图像位移、旋转)来增加训练集多样性的技术。让有限的数据产生等价于更多数据的价值,并避免不相关性特征。

例如针对车型识别模型,合理随机变换同车型/不同车型图片的主体大小、位置、视角、色彩等不相关特征,避免特征提取的不相关倾向性,但不接受垂直飞天侧身超高曝汽车图片。

为什么数据增强

一方面大部分实际项目难以获得充足的数据,需要充分利用已有数据进行数据增强。另一方面,卷积神经网络需要提取合理而有效的特征,而非集中不相关特征。

例如针对鸟类识别模型,原数据集中A品种和B品种鸟类占比各50%,羽毛颜色为两类品种的不相关特征,但受限数据获取难度,原数据集中A品种鸟均体现蓝色,B品种鸟均体现红色,使用颜色变换随机扩充各品种颜色比例至50%左右,可以有效避免提取颜色为显著特征。

数组增强分类

数据增强可以分为,有监督数据增强和无监督数据增强。

有监督数据增强

有监督数据增强还可以分为单样本数据增强和多样本数据增强。

  • 单样本数据增强:增强一个样本时,完全围绕样本本身进行操作,如几何变换、颜色变换等。
  • 多样本数据增强:利用多个样本来产生新的样本,如SMOTE合成少数过采样,SamplePairing样本配对,mixup混合线性插值等

简单集合变换进行增强示例:

train_transformer = transforms.Compose([# 随机水平翻转,翻转概率为0.5transforms.RandomHorizontalFlip(p=0.5),  # 随机垂直翻转,翻转概率为0.5transforms.RandomVerticalFlip(p=0.5),  transforms.ToTensor(),transforms.Normalize([meanR, meanG, meanB], [stdR, stdG, stdB])])

无监督数据增强

无监督数据增强还可以分为随机生成扩增和学习策略增强。

  • 随机生成扩增:学习数据分布,随机生成与分布一致的图片,例如GAN生成对抗网络。
  • 学习策略增强:通过模型学习出适合任务的数据增强策略,例如AutoAugment自动增强。

GAN(generative adversarial networks)包含两个网络,生成网络和对抗网络:

  1. 生成网络接收随机噪声z,通过噪声生成图片,记做G(z) 。
  2. 对抗网络判别图片是否由G生成的,训练好的生成网络能生成以假乱真的图片。

AutoAugment是Google提出的自动选择最优数据增强方案的研究,使用增强学习从数据本身寻找最佳图像变换策略,针对不同的任务学习出不同的增强方法,核心思想:

  1. 准备16个常用的数据增强操作。
  2. 选择n个操作,随机产生使用概率和幅度,称为一个sub-policy,共产生5个sub-policy。
  3. 训练过程每一个batch的图片随机采用5个sub-policy操作中的一种。

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

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

相关文章

OpenCV:特征提取

目录 一、特征提取核心概念:什么是图像特征? 二、实战 1:Harris 角点检测 1.1 角点的物理意义 1.2 Harris 算法原理 1.3 OpenCV 实战代码与解析 1.4 结果分析 三、实战 2:SIFT 特征提取 3.1 SIFT 算法核心优势 3.2 SIFT…

MySQL的查找加速器——索引

文章目录 目录 前言 一、基础概念:什么是 MySQL 索引? 二、底层数据结构:为什么 InnoDB 偏爱 B 树? B 树的结构特点(以短链接表short_link的short_code索引为例): B 树的优势&#xff1a…

【Vue2手录11】Vue脚手架(@vue_cli)详解(环境搭建+项目开发示例)

一、前言:为什么需要 Vue 脚手架? 手动搭建 Vue 项目存在诸多痛点(原笔记提及): 依赖管理复杂:需手动下载 Vue、Babel、Webpack 等工具,处理版本兼容性。配置繁琐:Webpack 配置、E…

自签发、CA机构签发、SSH、SCP、RSYNC,SUDO详解

一、为什么? 1. 自建CA为什么比Lets Encrypt强? 不能把CA放公网!Lets Encrypt是给公网服务用的(比如10.0.0.30的Web服务),但内网服务(比如OpenVPN)必须用自签CA。 CA私钥必须物理隔…

【Python】Python解决阿里云DataWorks导出数据1万条限制的问题

【Python】Python解决阿里云DataWorks导出数据1万条限制的问题一、前言二、脚本功能概述三、核心代码解析**1. 环境配置与安全设置****2. 用户配置区****3. 数据清洗函数****4. 核心逻辑**四、完整代码演示五、总结一、前言 在日常数据分析工作中,团队经常需要从阿…

计算机网络(一)基础概念

本篇文章为计算机网络相关知识点整理及扩展 基于B站计算机网络课程:https://www.bilibili.com/video/BV1p69tYZEvN/?spm_id_from333.1007.top_right_bar_window_history.content.click 如有错误,还望大家不吝指正 URL(统一资源定位符&…

Git的工作区域和文件结构

Git的工作区域和文件结构 1. Git的工作区域2. Git的文件结构 打开.git文件,.git的文件结构如下: objects 存放已经提交的文件,也就是使用 git commit 进行操作后的文件。 index 存放已暂存的文件,也就是使用了 git add 进行操作后…

前端开发易错易忽略的 HTML 的 lang 属性

前言本文主要记录:前端开发中,一个本人错了好几年,看似无关紧要的小错误:HTML 的 lang 属性设置。正文HTML 的 lang 属性在HTML中,lang属性用于指定文档的语言。这对于搜索引擎优化(SEO)、屏幕阅…

【GD32】 GPIO 超详细总结 (江科大风格课件版)

GD32 GPIO 超详细总结 (江科大风格课件版)第一部分:GPIO 是什么? 名称:GPIO General Purpose Input/Output (通用输入输出口)作用:MCU与外部世界交互的桥梁。通过程序控制引脚输出高、低电平,或者读取引脚的电平状态。…

《嵌入式硬件(八):基于IMX6ULL的点灯操作》

一、IMX6ULL启动代码.global _start_start:ldr pc, _reset_handlerldr pc, _undefine_handlerldr pc, _svc_handlerldr pc, _prefetch_abort_handlerldr pc, _data_abort_handlerldr pc, _reserved_handlerldr pc, _irq_handlerldr pc, _fiq_handler_undefine_handler:ldr pc, …

Spring Boot 调度任务在分布式环境下的坑:任务重复执行与一致性保证

前言在实际业务开发中,调度任务(Scheduled Task) 扮演着重要角色,例如:定时同步第三方数据;定时清理过期缓存或日志;定时发送消息或报告。Spring Boot 提供了非常方便的 Scheduled 注解&#xf…

剖析ReAct:当大模型学会“边想边做”,智能体的进化之路

你是否曾惊叹于大语言模型(LLM)强大的推理能力,却又对其“纸上谈兵”、无法真正与世界交互而感到遗憾?你是否好奇,如何让AI不仅能“说”,更能“做”,并且在做的过程中不断思考和调整&#xff1f…

小型无人机传感器仿真模型MATLAB实现方案

一、系统架构设计 无人机传感器仿真模型需集成多物理场建模与数据融合模块,典型架构包含: 动力学模型:六自由度刚体运动方程传感器模型:IMU/GNSS/视觉/气压计数学建模数据融合层:卡尔曼滤波/EKF算法实现环境交互模块&a…

hadoop集群

ssh-keygen -t rsassh-copyid 用户名远程服务器地址start-dfs.sh chown [选项] 新所有者[:新所属组] 目标文件/目录常用选项:-R:递归修改目录下所有文件和子目录的所有者(处理目录时常用)-v:显示修改过程的详细信息-c&…

大模型入门实践指南

大模型入门教程:从概念到实践 大模型(Large Language Model, LLM)是当前人工智能领域的核心技术,其本质是通过大规模数据训练、具备复杂语言理解与生成能力的深度学习模型。本教程将从基础概念出发,带你理解大模型的核心逻辑,并通过可直接跑通的代码示例,快速上手大模型…

猫头虎开源AI分享:一款CSV to Chat AI工具,上传CSV文件提问,它可以即时返回统计结果和可视化图表

猫头虎开源AI分享:一款CSV to Chat AI工具,上传CSV文件提问,它可以即时返回统计结果和可视化图表 摘要 本文将详细介绍一款开源工具——CSV to Chat AI,它允许用户上传CSV文件并通过自然语言提问,系统会即时返回统计…

洛谷P9468 [EGOI 2023] Candy / 糖果题解

[EGOI 2023] Candy / 糖果 思路 NNN 这么小基本就是瞎打的 DP 了。 设 dpi,jdp_{i,j}dpi,j​ 为操作 jjj 次后前 iii 项的和最大是多少。 考虑转移,我们可以枚举 iii 并考虑将其移动到 ppp 位置,总共操作 kkk 次,那么就有 dpp,kmin⁡(dpp,…

AI智能体(Agent)大模型入门【3】--基于Chailit客服端实现页面AI对话

目录 前言 安装chailint 创建中文语言环境 创建chailint页面客户端 前言 本篇章将会基chailit框架实现页面进行AI对话。 若没有自己的本地模型对话,需要查看专栏内的文章,或者点击链接进行学习部署 AI智能体(Agent)大模型入…

【高并发内存池——项目】定长内存池——开胃小菜

提示:高并发内存池完整项目代码,在主页专栏项目中 文章目录 提示:高并发内存池完整项目代码,在主页专栏项目中 先设计一个定长的内存池 一、为什么需要定长内存池? 🏢 传统内存分配的痛点 🏭 内…

6-获取磁盘分区信息

观察文件 获取server端电脑里面存在哪些盘符 int MakeDriveInfo() { //1>A 2>B &#xff08;原本属于软盘的 &#xff09;3>C ... 26>Zstd::string result;for (int i 1; i < 26; i) { //让其循环if (_chdrive(i) 0) //改变当前的驱动,_chdrive函数(c和c中)应…