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

01 为什么做数据增强?

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

02 如何进行数据增强?

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

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

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

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

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

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

人脸姿态变化

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

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

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

行人重识别中的数据增强技术

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

行人风格转换

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

StartDT AI Lab | 数据增强技术如何实现场景落地与业务增值?的更多相关文章

  1. StartDT AI Lab | 视觉智能引擎——从Face ID说起,浅析顾客数字化

    “顾客就是上帝”,这句西谚揭示了顾客占据着商业活动中心地位这一客观规律.为了能更好地服务顾客,优化商家自身的服务与产品,对顾客的分析与需求调研一直是商业经营分析中的重中之重. 在商业互联网化.社会数字 ...

  2. StartDT AI Lab | 视觉智能引擎之算法模型加速

    通过StartDT AI Lab专栏之前多篇文章叙述,相信大家已经对计算机视觉技术及人工智能算法在奇点云AIOT战略中的支撑作用有了很好的理解.同样,这种业务牵引,技术覆盖的模式也收获了市场的良好反响 ...

  3. StartDT AI Lab | 视觉智能引擎——Re-ID赋能线下场景顾客数字化

    人货场的思路是整个新零售数字化链路的核心,人是整个业务生命周期的起始点,图像算法的首要目标就是从图像中得到“人” .前一篇我们主要讲了Face ID的发展,Face ID帮助商家赋能了线下用户画像,把 ...

  4. StartDT AI Lab | 智能运筹助力企业提升决策效率、优化决策质量

    在人工智能和大数据时代,越来越多的云上数据和越来越智能的模型开始辅助人们做出各种最优决策,从运营效率.成本节约.最优配置等方方面面,实现降本增效,进一步提升商业效率.京东.美团.滴滴.顺丰等众多知名厂 ...

  5. StartDT AI Lab | 视觉智能引擎+数据决策引擎——打造商业“智能沙盘”

    众所周知,线上商家可以通过淘宝平台的大量前端“埋点”轻松获取商品的加购率.收藏率.转化率.成交额等大量基础信息,甚至商家能够在更精细的层面,获取商品关键字变化或者上新/爆款带来的流量变化数据,更甚者商 ...

  6. StartDT AI Lab | 需求预测引擎如何助力线下零售业降本增效?

    在当下经济明显进入存量博弈的阶段,大到各经济体,小到企业,粗放的增长模式已不适宜持续,以往高增长的时代已经成为过去,亟需通过变革发掘新的增长点.对于竞争激烈的线下零售行业而言,则更需如此. 零售行业一 ...

  7. AI佳作解读系列(四)——数据增强篇

    前言 在深度学习的应用过程中,数据的重要性不言而喻.继上篇介绍了数据合成(个人认为其在某种程度上可被看成一种数据增强方法)这个主题后,本篇聚焦于数据增强来介绍几篇杰作! (1)NanoNets : H ...

  8. AI加持的阿里云飞天大数据平台技术揭秘

    摘要:2019云栖大会大数据&AI专场,阿里云智能计算平台事业部研究员关涛.资深专家徐晟来为我们分享<AI加持的阿里云飞天大数据平台技术揭秘>.本文主要讲了三大部分,一是原创技术优 ...

  9. 阿里巴巴AI Lab成立两年,都做了些什么?

    https://mp.weixin.qq.com/s/trkCGvpW6aCgnFwLxrGmvQ 撰稿 & 整理|Debra 编辑|Debra 导读:在 2018 云栖人工智能峰会上,阿里巴 ...

随机推荐

  1. 洛谷 P2516 [HAOI2010]最长公共子序列

    题目传送门 解题思路: 第一问要求最长公共子序列,直接套模板就好了. 第二问要求数量,ans[i][j]表示第一个字符串前i个字符,第二个字符串前j个字符的最长公共子序列的数量 如果f[i][j]是由 ...

  2. 每日一linux命令

    每日一linux命令 http://www.cnblogs.com/peida/tag/每日一linux命令/

  3. 开源Git代码托管平台

    开源Git代码托管平台主要参考有以下4个: 1.GitHub 很多开源项目都来自GitHub,但是GitHub只能新建公开的Git仓库,私有 仓库要收费.GitHub地址:https://github ...

  4. 64.Python中ORM查询条件:in和关联模型

    定义模型的models.py文件中示例代码如下: from django.db import models class Category(models.Model): name = models.Ch ...

  5. Cookie简单介绍

    Cookie 饼干. 其实是一份小数据, 是服务器给客户端,并且存储在客户端上的一份小数据 应用场景 自动登录.浏览记录.购物车. 为什么要有这个Cookie http的请求是无状态. 客户端与服务器 ...

  6. 3,Structured Streaming使用checkpoint进行故障恢复

    使用checkpoint进行故障恢复 如果发生故障或关机,可以恢复之前的查询的进度和状态,并从停止的地方继续执行.这是使用Checkpoint和预写日志完成的.您可以使用检查点位置配置查询,那么查询将 ...

  7. idea排除要编译的文件

    感觉应该有更好的方式.VS中可以右键文件从项目中排除 如果要恢复选中要恢复的文件,点击 +下的-即可

  8. linux_c_udp_example

    udp_server #include <stdlib.h> #include <string.h> #include <unistd.h> #include &l ...

  9. Tensorflow学习教程------tensorboard网络运行和可视化

    tensorboard可以将训练过程中的一些参数可视化,比如我们最关注的loss值和accuracy值,简单来说就是把这些值的变化记录在日志里,然后将日志里的这些数据可视化. 首先运行训练代码 #co ...

  10. JavaScript 之 "for"的衍生对象

    JavaScript for/in 语句 作用:for/in 语句用于遍历循环对象属性. 循环中的代码每执行一次,就会对数组的元素或者对象的属性进行一次操作. 例子: 循环对象属性: var pers ...