NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

数据增强技术如何实现场景落地与业务增值?

  • 2019-12-19
  • 本文字数:1899 字

    阅读完需:约 6 分钟

数据增强技术如何实现场景落地与业务增值?

有人说,「深度学习“等于”深度卷积神经网络算法模型+大规模数据+云端分布式算力」。也有人说,「能够在业内叱咤风云的 AI 都曾“身经百战”,经历过无数次的训练与试错」。以上都需要海量数据做依托,对于那些数据量匮乏的领域,就衍生出了数据增强技术。即,根据一个原始数据,稍作改动,变成一个对于 AI 来说的全新的数据。

为什么做数据增强?

数据规模的重要性到底怎样呢?可以说,深度学习的火热和蓬勃发展,直接源于普林斯顿大学教授李飞飞及她所带领的团队创作的一个包含百万级图片的数据集 ImageNet。工业级人脸识别模型的训练,也是动辄百万级、千万级的人脸图片数量。深度学习是基于大数据的一种方法,我们当然希望数据的规模越大、质量越高越好,模型才能够有着更好的泛化能力。但大家都知道,海量数据的标注是一件非常庞大、非常耗时耗力耗金的工作,能标注的数据往往十分有限,同时,我们希望数据能覆盖各种场景,然而实际采集数据的时候,往往很难覆盖掉全部的场景。这时数据增强是扩充数据样本规模的一种有效的方法。

如何进行数据增强?

数据增强可以分为常规的数据增强和特殊的数据增强。常规的数据增强方法又可分为:空间几何变换类(水平垂直翻转、随机裁剪、旋转、仿射变换、透视变换)、色彩类(随机亮度、饱和度、色调)、噪声类(椒盐噪声、高斯噪声、频域噪声)、随机擦除、锐化、模糊等;然而,特殊的数据增强有着各种各样的形式,为应对不同的视觉任务以及应用场景,所采用的增强方式也会随之不同。对于某个深度学习任务,并非所有的数据增强方法都有作用,接下来将详细介绍 StartDT AI Lab 是如何采用数据增强技术实现场景落地与业务增值的。


a) 商品检测、分类任务中的数据增强技术

“无人货柜”、“无人店”等应用场景下,智能算法引擎的任务就是检测并识别商品。为了提高我们视觉模型的精度与泛化能力,除了采用一些常规的数据增强外,我们还使用了多样本融合的数据增强,例如 Mix-up、Sample-Pairing 等。Mix-up 是一种将多张图片按一定权值融合在一起的数据增强方法;此外,一些基于强化学习的数据增强方式也给我们带来了相当可观的算法收益,例如谷歌的 Auto-Augment。Auto-Augment 的做法是通过强化学习的方法,以不同的数据增强方法为搜索空间,搜索对于当前深度学习任务有效的数据增强方法的组合;另外,还有一些增强正样本或负样本以控制正负样本均衡的数据增强方法。

b) 人脸识别中的数据增强技术

人脸数据的不同个体之间相似程度较高,并且涉及个人隐私问题,这些问题给人脸数据的收集、清洗以及标注工作带来了巨大的困难与挑战。此外,人脸识别在我们的实际应用场景属于开放性场景,摄像头的安装位置、光照、遮挡等等因素造成了人脸数据分布的不确定性与复杂性。公开数据集虽然在数量级上较为可观,但是其仍然存在一定问题。不同 faceid 下的图片个数、人脸的姿态、光照条件、图像质量等存在巨大差异,造成了样本不均衡。如果直接采用这些数据进行算法模型训练,很难满足实际应用的需求。为此,我们采用了数据增强技术很大程度上解决了以上问题。


ü 人脸姿态变换:采用传统图像处理算法与 GAN 生成对抗网络结合的方式,实现通过单幅人脸图像模拟任意姿态的人脸图像。



人脸姿态变化


ü 人脸属性修改:利用 GAN 生成对抗网络,实现人脸属性的修改,包括表情、配饰、发型等。



人脸属性修改(眼镜佩戴与否)


ü 通过结合传统方法和深度学习方法,对人脸图像进行去(加)噪、去(模拟)模糊、超分辨(降质)等处理,从而获取不同质量的人脸数据。

c) 行人重识别(REID)中的数据增强技术

在“奇点识客”系统中,REID 技术作为人脸识别技术的一个重要补充,用于行人跨域追踪。然而,现场摄像头画面之间、现场摄像头画面行人数据分布与公开数据集之间都存在巨大 domain 差异,因此采用公开数据集训练的 Re-ID 模型在该场景下的准确率较低,无法满足实际需求。针对此问题,我们采用生成对抗网络(GAN)将公开数据集中的行人转化成实际场景下的图像风格,重新进行训练后,模型准确率提升了 50%以上。此外,我们还通过 GAN 的方式实现行人姿态的变化,以提高数据集的多样性;通过注意力机制,强化学习行人除衣着之外的特征(头部,四肢等),以解决行人换衣导致的准确率下降的问题。



行人风格转换


数据增强是增大数据规模,减轻模型过拟合的有效方法,数据增强技术作为视觉智能引擎的助燃剂,不断为之提供动力,并为 StartDT AI Lab 的算法落地提供强有力的支持。


作者介绍


作者:草窗、涉川。「StartDT AI Lab 」栏目致力于展现奇点云在算法技术上的突破,分享算法研发成果在商业场景的应用能力,专注于“AI+大数据”领域,让数据创造价值,让商业更智能。


公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2019-12-19 19:552341
用户头像
刘燕 InfoQ高级技术编辑

发布了 1112 篇内容, 共 493.8 次阅读, 收获喜欢 1967 次。

关注

评论

发布
暂无评论
发现更多内容

Serverless:为我们到底带来了什么

刘宇

Serverless 云原生

用Ant实现Java项目的自动构建和部署

陈磊@Criss

芯片破壁者(十二.下):青瓦台魔咒与半导体“死亡谷”

脑极体

中本聪原始比特币论文解读:点对点的电子现金系统

韩超

比特币 区块链

Windows AD 保姆级配置NTP服务器教程

BigYoung

时间 AD ntp Windows Server 2012 R2

实用心理学—没用你打我!

代码制造者

职场 职场搞笑 信息技术 人工

微服务框架 - 模块功能设计篇

superman

2.3.1 理解动态代理 -《SSM深入解析与项目实战》

谙忆

从实际案例讲 Deno 的应用场景

keelii

Java typescript deno

源码分析 | 咋嘞?你的IDEA过期了吧!加个Jar包就破解了,为什么?

小傅哥

Java 字节码插桩 asm bytebuddy

Django的Models更新时,不触发Signals解决办法

BigYoung

django singals 信号机制 update 更新

从北京降雨的复盘中,我发现了企业SD-WAN网络的秘密

脑极体

如何正确认识区块链?

CECBC

区块链价值 区块链应用

NetPerf揭示容器间是高速路还是林荫小路

陈磊@Criss

6种快速统计代码执行时间的方法

Bruce Duan

java统计时间 currentTimeMillis nanoTime StopWatch

[修复 Webpack 官方 Bug] 提取CSS时的依赖图修正

分一

大前端 webpack 编译优化 源码刨析

图解23种设计模式——前方高能,前端切图仔请务必抓好方向盘

执鸢者

typescript 大前端 设计模式

Maven的爱恨情仇

xcbeyond

Java maven

【写作群星榜】8.1~8.14 写作平台优秀作者 & 文章排名

InfoQ写作社区官方

写作平台 排行榜 热门活动

为什么会是Docker?

架构精进之路

Docker

微服务框架-模块需求篇

superman

微博基于 Flink 的机器学习实践

Apache Flink

flink

Flink 中的应用部署:当前状态与新应用模式

Apache Flink

flink

统一软件开发过程(RUP)的概念和方法

雯雯写代码

Facebook开源的数据Mock:Memisis详解

陈磊@Criss

LeetCode题解:88. 合并两个有序数组,splice合并数组+sort排序,JavaScript,详细注释

Lee Chen

大前端 LeetCode

Vue项目起步

JackWangGeek

Vue

2.3.2 JDK动态代理 -《SSM深入解析与项目实战》

谙忆

Junit执行单元测试用例成功,mvn test却失败的问题和解决方法

陈磊@Criss

Swagger 这一个文章就够了

陈磊@Criss

重磅消息,我国数字人民币将在京津冀等具备条件地区试点

CECBC

数字货币 货币

数据增强技术如何实现场景落地与业务增值?_AI&大模型_涉川_InfoQ精选文章