您现在的位置 : 电脑森林舞会下载>街机森林舞会下载>新濠线上澳门平台,是你的数据还不够强!谷歌大脑「数据增强」开源,大神QuocLe出品

新濠线上澳门平台,是你的数据还不够强!谷歌大脑「数据增强」开源,大神QuocLe出品

2020-01-09 10:57:21 点击:1768

新濠线上澳门平台,是你的数据还不够强!谷歌大脑「数据增强」开源,大神QuocLe出品

新濠线上澳门平台,十三 发自 凹非寺 量子位 报道 | 公众号 qbitai

你的数据还不够强。

玩深度学习的人都知道,ai算法大部分是数据驱动。数据的质量一定程度上决定了模型的好坏。

这就有了深度学习天生的一个短板:数据不够多、不够好。

而数据增强就是解决这一问题的有效办法。

谷歌大脑去年提出了自动数据增强方法(autoaugment),确实对图像分类和目标检测等任务带来了益处。

但缺点也是明显的:

1、大规模采用这样的方法会增加训练复杂性、加大计算成本;

2、无法根据模型或数据集大小调整正则化强度。

于是乎,谷歌大脑团队又提出了一种数据增强的方法——randaugment。

这个方法有多好?

谷歌大脑高级研究科学家barret zoph表示:

randaugment是一种新的数据增强方法,比autoaugment简单又好用。

主要思想是随机选择变换,调整它们的大小。

最后的实验结果表明:

1、在imagenet数据集上,实现了85.0%的准确率,比以前的水平提高了0.6%,比基线增强了1.0%。

2、在目标检测方面,randaugment能比基线增强方法提高1.0-1.3%。

值得一提的是,这项研究的通讯作者是谷歌automl幕后英雄的quoc viet le大神。

△quoc viet le

这么好的技术当然开源了代码:https://github.com/tensorflow/tpu/blob/master/models/official/efficientnet/autoaugment.py

正如刚才说到的,单独搜索是问题的关键点。

所以研究人员的目标就是消除数据增强过程中对单独搜索的需求。

再考虑到以往数据增强方法都包含30多个参数,团队也将关注点转移到了如何大幅减少数据增强的参数空间。

为了减少参数空间的同时保持数据(图像)的多样性,研究人员用无参数过程替代了学习的策略和概率。

这些策略和概率适用于每次变换(transformation),该过程始终选择均匀概率为1/k的变换。

也就是说,给定训练图像的n个变换,randaugment就能表示kn个潜在策略。

最后,需要考虑到的一组参数是每个增强失真(augmentation distortion)的大小。

研究人员采用线性标度来表示每个转换的强度。简单来说,就是每次变换都在0到10的整数范围内,其中,10表示给定变换的最大范围。

为了进一步缩小参数空间,团队观察到每个转换的学习幅度(learned magnitude)在训练期间遵循类似的表:

并假设一个单一的全局失真m(global distortion m)可能就足以对所有转换进行参数化。

这样,生成的算法便包含两个参数n和m,还可以用两行python代码简单表示:

△基于numpy的randaugment python代码

因为这两个参数都是可人为解释的,所以n和m的值越大,正则化强度就越大。

可以使用标准方法高效地进行超参数优化,但是考虑到极小的搜索空间,研究人员发现朴素网格搜索(naive grid search)是非常有效的。

在实验部分,主要围绕图像分类和目标检测展开。

研究人员较为关注的数据集包括:cifar-10、cifar-100、svhn、imagenet以及coco。

这样就可以与之前的工作做比较,证明randaugment在数据增强方面的优势。

数据增强的一个前提是构建一个小的代理任务(proxy task),这个任务可以反映一个较大的任务。

研究人员挑战了这样一个假设:

用小型proxy task来描述问题适合于学习数据的增强。

特别地,从两个独立的维度来探讨这个问题,这两个维度通常被限制为实现小型proxy task:模型大小和数据集大小。

为了探究这一假设,研究人员系统地测量了数据增强策略对cifar-10的影响。结果如下图所示:

△最优增强量取决于模型和训练集的大小。

其中:

图(a)表示wide-resnet-28-2,wide-resnet-28-7和wide-resnet-28-10在各种失真幅度(distortion magnitude)下的精度。

图(b)表示在7种wide-resnet-28架构中,随着变宽参数(k)的变化,所产生的最佳失真幅度。

图(c)表示wide-resnet-28-10的三种训练集大小(1k,4k和10k)在各种失真幅度上的准确性。

图(d)在8个训练集大小上的最佳失真幅度。

△在cifar-10、cifar-100、svhn(core set)和svhn上的测试精度(%)。

其中,baseline是默认的数据增强方法。

pba:population based augmentation;fast aa:fast autoaugment;aa:autoaugment;ra:randaugment。

但值得注意点的是,改进cifar-10和svhn模型的数据增强方法并不总是适用于imagenet等大规模任务。

同样地,autoaugment在imagenet上的性能提升也不如其他任务。

下表比较了在imagenet上randaugment和其他增强方法的性能。

△imagenet结果。

在最小的模型(resnet-50)上,randaugment的性能与autoaugment和fast autoaugment相似,但在较大的模型上,randaugment的性能显著优于其他方法,比基线提高了1.3%。

为了进一步测试这种方法的通用性,研究人接下来在coco数据集上进行了大规模目标检测的相关任务。

△目标检测结果。

coco目标检测任务的平均精度均值(mean average precision,map)。数值越高,结果越好。

我们知道数据增强可以提高预测性能,例如图像分割,3-d感知,语音识别或音频识别。

研究人员表示,未来的工作将研究这种方法将如何应用于其他机器学习领域。

特别是希望更好地了解数据集或任务是否/何时可能需要单独的搜索阶段才能获得最佳性能。

最后,研究人员还抛出了一个悬而未决的问题:

如何针对给定的任务定制一组转换,进一步提高给定模型的预测性能。

对此,你又什么想法?

论文地址:https://arxiv.org/pdf/1909.13719.pdf

github地址:https://github.com/tensorflow/tpu/blob/master/models/official/efficientnet/autoaugment.py

— 完 —

量子位 qbitai · 头条号签约

关注我们,第一时间获知前沿科技动态