有人说,「深度学习“等于”深度卷积神经网络算法模型+大规模数据+云端分布式算力」。也有人说,「能够在业内叱咤风云的 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+大数据”领域,让数据创造价值,让商业更智能。
评论