深度学习: 数据扩充 (Data Augmentation)

Introduction

数据扩充(data augmentation),又名 数据增强 / 数据增广

其本质即:

缺少海量数据时,为了保证模型的有效训练,一分钱掰成两半花。

数据扩充方法包括:

简单方法

复杂方法

翻转、旋转、尺度变换、随机抠取、色彩抖动

Fancy PCA、监督式抠取、GAN生成

方法介绍

1. 翻转

包括:水平翻转、垂直翻转、水平垂直翻转。OpenCV中的 cv2.flip 接口可用于快速实现翻转操作:opencv: cv2.flip 图像翻转 进行 数据增强

原图像:

水平翻转:

垂直翻转:

水平垂直翻转:

2. 旋转

将原图按照一定角度旋转,作为新图像。

常取的旋转角度为 -30°、-15°、15°、30° 等较刚好的角度值。

3. 尺度变换

将图像分辨率变为原图的0.8、0.9、1.1、1.2等倍数,作为新图像。

4. 抠取

  • 随机抠取:在原图的随机位置抠取图像块,作为新图像。
  • 监督式抠取:只抠取含有明显语义信息的图像块。

5. 色彩抖动

对图像原有的像素值分布进行轻微扰动(即加入轻微噪声),作为新图像。

6. Fancy PCA

对所有训练数据的像素值进行主成分分析(PCA),根据得到的特征向量和特征值计算一组随机值,作为扰动加入到原像素值中。

Code

之前做项目时有写过简易的数据增强工具,已开源:图像算法工具箱。 其中包含了最常见的图像水平翻转、垂直翻转和水平垂直翻转。可将图像数据量扩充为原来的4倍。

Summary

在实际操作中,常将多种数据扩充操作叠加使用,比如,对原图像分别 (水平、垂直、水平垂直)翻转 和 (-30°、-15°、15°、30°)旋转 后,数据量扩充为原来的8倍。此时,再对这组数据统一各进行一次随机扣取,则数据量翻为原来的16倍。与此类同,我们可以将数据扩充为原来的n次方倍,数据量简直不要太海量。。。 ╮( ̄▽ ̄)╭

Note:

  1. 不是所有 数据扩充方法都可以一股脑儿随便用。比如对于人脸图片,垂直翻转就变得不可行了。因为现实中基本不会出现对倒过来的人脸进行识别,那么垂直翻转后产生的就几乎是对模型有害的噪声了,这会干扰到模型的正常收敛。
  2. 另外,如果是 图像检测任务 或者是 图像分割任务 ,记得 将 图像数据 和 标记数据 进行 同步扩充(比如图像翻转时,对应的标记坐标跟着做相应翻转)。这个不要忘了,否则扩充后的新图像对应的却是原图像的标记数据,你觉得这个模型还能训练么。。。 (→_→)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏量子位

一篇文章搞懂人脸识别的十个概念

作者:汪铖杰 首发于 腾讯云技术社区 量子位 已获授权编辑发布 优图实验室研究人脸技术多年,不仅在技术方面有很好的积累,而且在公司内外的业务中有众多应用。笔者作...

35910
来自专栏机器之心

回归、分类与聚类:三大方向剖解机器学习算法的优缺点(附Python和R实现)

选自EliteDataScience 机器之心编译 参与:蒋思源、晏奇 在本教程中,作者对现代机器学习算法进行一次简要的实战梳理。虽然类似的总结有很多,但是它们...

3675
来自专栏wym

opencv学习笔记 模糊操作+代码(均值模糊,中值模糊,自定义模糊,锐化)

像该函数对领域点的灰度值进行权重相加最后设置灰度值,这样的操作又叫卷积,这样的滤波器叫线性滤波器。

3181
来自专栏目标检测和深度学习

干货 | 目标检测入门,看这篇就够了(上)

作者 | 李家丞( 同济大学数学系本科在读,现格灵深瞳算法部实习生) 近年来,深度学习模型逐渐取代传统机器视觉方法而成为目标检测领域的主流算法,本系列文章将回顾...

37411
来自专栏iOSDevLog

逻辑回归

1713
来自专栏专知

【360人工智能研究院与NUS颜水成团队】HashGAN:基于注意力机制的深度对抗哈希模型提升跨模态检索效果

【导读】近日,中山大学、新加坡国立大学和奇虎360人工智能研究院团队提出了一种具有注意机制的对抗哈希网络(adversarial hashing network...

4675
来自专栏企鹅号快讯

神经网络模型简介和梯度下降求解

《实例》阐述算法,通俗易懂,助您对算法的理解达到一个新高度。包含但不限于:经典算法,机器学习,深度学习,LeetCode 题解,Kaggle 实战。期待您的到来...

2917
来自专栏AI科技评论

开发 | 三年来,CNN在图像分割领域经历了怎样的技术变革?

AI科技评论按:卷积神经网络CNN是深度学习中最典型的算法之一,它可以将图片通过一系列的卷积、非线性、池(采样)、全连接层之后得到一个输出。这篇文章中,我们会一...

3896
来自专栏AI研习社

神经风格迁移指南(第一部分)

在本系列中,我们会从神经风格的基础开始,你将从中学到一种自下而上(从基础开始)的方法。对于初学者而言,我们将会详细讲解神经风格到底是什么,以及它的工作原理。本文...

812
来自专栏数据派THU

机器学习Top10算法,教你选择最合适的那一个!

本文共3800字,建议阅读6分钟。 选什么算法?本文为你梳理TOP10机器学习算法特点。

1072

扫码关注云+社区