数据增强(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 分钟前
拍了一大堆照片,哪些糊了?我用 C# 做了一个离线筛选助手
人工智能
DolphinDB智臾科技3 分钟前
数智筑基·算启未来 ——2026 AI+金融基础设施前沿创新对话 共探金融智能化发展新路径
人工智能·金融
在所不辞兄7 分钟前
【人工智能驱动的电催化研究-01】人工智能是什么?AI、机器学习、深度学习和神经网络之间有什么区别?
人工智能·深度学习·神经网络·机器学习·有限元仿真·电化学·电催化
xsd202411188 分钟前
VLX-VR:帮你从视频里找出 SOP 的隐藏风向
人工智能
loulanyue_11 分钟前
AI Agent记忆从不是向量库:Oracle拆解读写分离与记忆晋升门,终结无脑存聊天的伪智能——读Wojtek Pluta演讲
数据库·人工智能·oracle
A7bert77717 分钟前
【MobileSAM部署至RK3588】环境适配→转换RKNN→开发板部署
c++·人工智能·深度学习·目标检测·ubuntu
Ada's20 分钟前
【公司系列】001:墨芯科技
人工智能·科技
HANDY0920023 分钟前
从“不照人”到“剂量达标”:扇叶遮挡式UV-C空气消毒的工程边界与可验证评估框架
开发语言·人工智能·嵌入式硬件·智能家居
lucas_AI31 分钟前
想公开警告 AI 风险?先看看你的合同:DeepMind 员工抗议「终身禁言条款」
人工智能