找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 53|回复: 0

MnasNet:迈向移动机器学习模型的自动化设计

[复制链接]

545

主题

0

回帖

1677

积分

金牌会员

积分
1677
发表于 2024-12-10 17:06:53 | 显示全部楼层 |阅读模式
卷积神经网络(CNN) 已广泛应用于图像分类、人脸识别、物体检测和许多其他领域。遗憾的是,为移动设备设计 CNN 具有挑战性,因为移动模型需要小而快,但仍然要准确。尽管已经付出了巨大努力来设计和改进移动模型,例如MobileNet和MobileNetV2,但当有如此多的可能性需要考虑时,手动创建高效的模型仍然具有挑战性。受到AutoML 神经架构搜索的最新进展的启发,我们想知道移动 CNN 模型的设计是否也可以从 AutoML 方法中受益。
在“ MnasNet:面向移动端的平台感知神经架构搜索”中,我们探索了一种使用强化学习来设计移动模型的自动神经架构搜索方法。为了应对移动速度限制,我们明确将速度信息合并到搜索算法的主要奖励函数中,以便搜索可以找到在准确度和速度之间取得良好平衡的模型。通过这样做,MnasNet 能够找到运行速度比最先进的手工制作的MobileNetV2快 1.5 倍、比NASNet快 2.4 倍的模型,同时达到相同的 ImageNet top 1 准确率。
与以前的架构搜索方法不同,以前的架构搜索方法通过另一个代理(例如FLOPS)来考虑模型速度,而我们的方法通过在特定平台(例如本研究中使用的 Pixel 手机)上执行模型来直接测量模型速度。通过这种方式,我们可以直接衡量在现实世界中可以实现的目标,因为每种类型的移动设备都有自己的软件和硬件特性,可能需要不同的架构来在准确率和速度之间取得最佳平衡。
我们方法的整体流程主要由三个组件组成:一个基于RNN的控制器,用于学习和采样模型架构,一个训练器,用于构建和训练模型以获得准确率,一个推理引擎,用于使用TensorFlow Lite在真实手机上测量模型速度。我们制定了一个旨在同时实现高精度和高速度的多目标优化问题,并利用具有定制奖励函数的强化学习算法来寻找帕累托最优解(例如,在不降低速度的情况下具有最高精度的模型)。
我们针对移动端的自动神经架构搜索方法的总体流程。
为了在搜索灵活性和搜索空间大小之间取得适当的平衡,我们提出了一种新颖的分解分层搜索空间,将卷积神经网络分解为一系列块,然后使用分层搜索空间确定每个块的层架构。通过这种方式,我们的方法允许不同的层使用不同的操作和连接;同时,我们强制每个块中的所有层共享相同的结构,从而与平坦的每层搜索空间相比,将搜索空间大小显著减少了几个数量级。
我们的 MnasNet 网络是从新颖的分解分层搜索空间中采样的,说明了整个网络架构的层多样性。
我们在ImageNet分类和COCO对象检测上测试了我们的方法的有效性。我们的实验在典型的移动速度限制下实现了新的最佳准确率。具体来说,下图显示了 ImageNet 上的结果。
ImageNet 准确度和推理延迟比较。MnasNets 是我们的模型。
在相同准确率下,我们的 MnasNet 模型运行速度比手工制作的最先进的MobileNetV2快 1.5 倍,比同样使用架构搜索的NASNet快 2.4 倍。应用squeeze-and-excitation优化后,我们的 MnasNet+SE 模型实现了ResNet-50级别的 top-1 准确率 76.1%,参数减少了 19 倍,乘加运算减少了 10 倍。在 COCO 目标检测方面,我们的模型系列比 MobileNet 实现了更高的准确率和更快的速度,并且实现了与SSD300模型相当的准确率,而计算成本减少了 35 倍。
我们很高兴地看到,我们的自动化方法可以在多个复杂的移动视觉任务上实现最先进的性能。未来,我们计划将更多的操作和优化纳入我们的搜索空间,并将其应用于更多的移动视觉任务,如语义分割。
致谢
特别感谢本文的合著者 Bo Chen、Quoc V. Le、Ruoming Pang 和 Vijay Vasudevan。我们还要感谢 Andrew Howard、Barret Zoph、Dmitry Kalenichenko、Guiheng Zhou、Jeff Dean、Mark Sandler、Megan Kacholia、Sheng Li、Vishy Tirumalashetty、Wen Wang、Xiaoqiang Zheng 和 Yifeng Lu 的帮助,以及 TensorFlow Lite 和 Google Brain 团队。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|绿色天空实验室

GMT+8, 2024-12-27 09:56 , Processed in 0.088060 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表