量子位 报道 | 公众号 QbitAI
谷歌大脑Quoc Le团队,又训练出了一只地表最强的模型。
这是一个目标检测模型,从前并不是最强大。
但自从团队用机器学习解锁了特别的数据扩增策略,再用自动扩增来的新数据集训练目标检测模型,事情就完全不同了。
注意:目标检测和分类不一样,分类不需要标注边界框,而目标检测需要。
模型在COCO目标检测任务上,拿到了50.7 mAP的最高分,刷新从前的纪录。
谷歌的方法,并没有改变模型本身,但有效提升了准确率,+2.3 mAP以上。
团队还强调,AI在COCO数据集里学到的扩增策略,直接迁移到其他数据集上,同样可以提升准确率。
现在,算法已经开源了,AI学到的扩增策略也在里面。
是怎样的扩增策略?
论文写到,这里的数据扩增只涉及了一些简单变换 (Simple Transformations) :
有应用在整张图片上、但不会影响边界框的那种变换,比如从图像分类里借来的颜色变换 (Color Transformations)。
也有不影响整张图片、但改变边界框位置的那种变换,比如图像平移 (Translating) 或剪切 (Shearing) 。
还有只针对边界框里的目标,而进行的变换。
注意,这些变换只用在训练过程中,不会用到测试环节里。
研究人员说,当变换的数量越来越庞大的时候,就很难手动把它们有效组合到一起了。
所以,就要用机器学习,搜索出更适合目标检测任务的组合策略。
思路是这样的:
团队把数据扩增搜索 (Data Augmentation Search) 看做一个离散的优化问题,优化的是模型的泛化表现。
在自家的另一篇论文 (arXiv:1805.09501) 基础上,把重点转移到针对目标检测的扩增策略上。
比起图像分类任务的数据扩增,目标检测的难点在于,要保持边界框和发生形变的图像之间的一致性 (Consistency) 。
而边界框的标注,也为数据扩增提供了一种新的方式:只在边界框里面修改图像。就像上文讲的那样。
另外,团队还探索了在图片发生几何变换 (Geometric Transformations) 的情况下,怎样去改变边界框的位置。
具体方法是这样的:
把扩增策略定义成一组无序的子策略 (Sub-Policy) 。
在训练过程中,每个子策略都会被随机选中,应用到当前的图片里去。
每个子策略里,有N个图片变换,依次在同一张图上进行。
要把这个搜索过程,变成一个离散的优化问题,就要创建一个搜索空间。
空间里面,有5个种策略,每种子策略有2种图像变换运算。
另外,每个运算还和两个超参数相关联,一个是代表应用这个运算的可能性 (Probability) ,二是这个运算的大小 (Magnitude) 。
初步实验之后,团队定下了22种图像变换运算。
学习完成的子策略,成效是这样的:
肉眼可见,成效显著。
一是在COCO目标检测中,以50.7 mAP拔得头筹,(比策略训练前) 提升了2.3 mAP。
二是在PASCAL VOC目标检测中,提升了2.7 mAP。
也就是说,在COCO上训练好的策略,直接搬到其他数据集上也有效。
团队说,这个方法尤其适合在小数据集中避免过拟合。
现在,代码开源了,你也要试试么?
论文传送门:
https://arxiv.org/abs/1906.11172
代码传送门:
https://github.com/tensorflow/tpu/tree/master/models/official/detection
“