数据增强(Data Augmentation)策略大全

图像数据增强方法

几何变换

  • 旋转:随机旋转图像一定角度(如±30°)。
  • 翻转:水平或垂直翻转图像。
  • 缩放:随机放大或缩小图像区域。
  • 裁剪:随机裁剪图像的一部分并调整至原尺寸。
  • 平移:沿x或y轴方向平移图像。

颜色空间变换

  • 亮度调整:随机改变图像亮度。
  • 对比度调整:调整图像对比度。
  • 饱和度调整:修改色彩饱和度。
  • 添加噪声:高斯噪声、椒盐噪声等。
  • 颜色抖动:随机调整RGB通道值。

高级增强技术

  • Mixup:混合两张图像及其标签(λ∈[0,1])。
  • Cutout:随机遮挡图像部分区域。
  • CutMix:用另一张图像的部分区域替换当前图像。
  • RandAugment:自动化选择增强策略的组合。

文本数据增强方法

词汇替换

  • 同义词替换:使用WordNet或预训练词向量替换单词。
  • 随机插入:在句子中随机插入同义词。
  • 随机交换:交换相邻词汇顺序。
  • 随机删除:以概率删除某些词汇。

语法变换

  • 回译:通过翻译至其他语言再译回原语言。
  • 句子重组:利用依存分析树调整句式结构。

生成模型

  • GPT-3等模型生成语义相似的句子。
  • 变分自编码器(VAE)生成新文本样本。

音频数据增强方法

时域增强

  • 变速:调整音频播放速度(保持音高)。
  • 时移:前后移动音频片段。
  • 裁剪:截取部分音频并填充至原长度。

频域增强

  • 添加噪声:白噪声、环境噪声等。
  • 音高变换:改变音频频率成分。

高级方法

  • SpecAugment:对频谱图进行时间/频率维度的遮挡。

视频数据增强方法

帧级增强

  • 对每一帧应用图像增强技术(如旋转、裁剪)。

时序增强

  • 帧采样:随机跳过或重复部分帧。
  • 时序裁剪:截取视频片段并调整至原长度。

空间-时序增强

  • 3D Cutout:在视频立方体(长×宽×时间)中随机遮挡。

通用注意事项

  • 增强后的数据需保持标签有效性(如翻转后的"6"可能变成"9")。
  • 避免过度增强导致模型学习到虚假模式。
  • 结合任务特性选择策略(如医学影像需谨慎几何变换)。

代码示例(图像旋转):

python 复制代码
from PIL import Image
import random

def rotate_image(image, max_angle=30):
    angle = random.uniform(-max_angle, max_angle)
    return image.rotate(angle)

公式示例(Mixup):

新样本生成公式:

x' = λx_i + (1-λ)x_j, \\quad y' = λy_i + (1-λ)y_j

其中 ( λ \sim Beta(α,α) ),通常 ( α=0.4 )。

相关推荐
美酒没故事°1 天前
Open WebUI安装指南。搭建自己的自托管 AI 平台
人工智能·windows·ai
云烟成雨TD1 天前
Spring AI Alibaba 1.x 系列【6】ReactAgent 同步执行 & 流式执行
java·人工智能·spring
简简单单做算法1 天前
基于GA遗传优化的Transformer-LSTM网络模型的时间序列预测算法matlab性能仿真
深度学习·matlab·lstm·transformer·时间序列预测·ga遗传优化·电池剩余寿命预测
AI攻城狮1 天前
用 Obsidian CLI + LLM 构建本地 RAG:让你的笔记真正「活」起来
人工智能·云原生·aigc
鸿乃江边鸟1 天前
Nanobot 从onboard启动命令来看个人助理Agent的实现
人工智能·ai
lpfasd1231 天前
基于Cloudflare生态的应用部署与开发全解
人工智能·agent·cloudflare
俞凡1 天前
DevOps 2.0:智能体如何接管故障修复和基础设施维护
人工智能
comedate1 天前
[OpenClaw] GLM 5 关于电影 - 人工智能 - 的思考
人工智能·电影评价
财迅通Ai1 天前
6000万吨产能承压 卫星化学迎来战略窗口期
大数据·人工智能·物联网·卫星化学
liliangcsdn1 天前
Agent Memory智能体记忆系统的示例分析
数据库·人工智能·全文检索