每日论文231103: once for all

视频链接:  https://www.youtube.com/watch?v=wrsid5tvuSM

项目链接: https://github.com/mit-han-lab/once-for-all

论文链接:  https://arxiv.org/pdf/1908.09791.pdf

该项目吸引到我的是,它在效率和精度上实现的非常好的效果, 配合efficientML的Lecture也是很香.

此外,  提供的视频链接介绍了ofa的使用方式.

__________________________________________________________

初读

在介绍部分,作者提到,它是通过解耦合训练和搜索的方式来支持广泛的架构搜索。此外,为了有效的训练,通过一种广义的剪枝的方法,去从多维度减小模型大小。然后,OFA效果要明显好于目前的NAS方法。

在总结阶段中,作者提到,通过,OFA不需要基于不同平台采用不同架构,而是可以在一次训练后,适配所有架构,包括深度,宽度,kernel大小和分辨率。此外,还提出了一种progressive shrinking的算法。

读完之后,问题还是很多的,progressive shrinking就是一个让人很好奇的概念。

直接做实验吧,实验记录在这

EfficientAI Lab3: Neural Architecture Seach-CSDN博客

——————————————————————————————————

细读

Progressive shrinking 是用于提供OFA模型的训练效率。首先训练一个最大的网络,然后再慢慢缩小网络的深度,宽度和kernel size。

OFA在imagenet上的效果很惊艳。

传统模型部署都是基于特定模型,然后优化结构。而OFA则使用了一个巨大的搜索空间,带来超强的灵活性,但是也给训练带来更大的挑战,因此我们使用Progressive shrinking的方法来试图解决。

Architecture space

搜索空间中对于图像大小,kernel大小等因素都可以调整,并且所有subnets共享相同的参数。

这张图例里很清楚的说明了,PS相比于Pruning,只是维度更多。在实际训练时,基于大模型训练小模型,然后采用知识蒸馏的方法进行进一步调优。

作者列举了缩小kernel size, channel size的策略,还是有细节在里面的。比如小kernel要考虑到它既是大kernel的一部分,但同时也承担了一定的责任。

Specifically, we randomly sample 16K sub-networks with different architectures and input image sizes, then measure their accuracy on 10K validation images sampled from the original training set. These [architecture, accuracy] pairs are used to train an accuracy predictor to predict the accuracy of a model given its architecture and input image size  

上面这部分是我完成lab时候,印象最深的一部分,那就是,我构建了一个简单的FCN,用来评估不同架构的模型精度。

实验

在实验中,作者提到基于MobileNetV3 作为architecture space进行搜索。(其实这里,我的问题是为什么不使用MCUNet?)

作者这里的性能对比,包含intel CPU提供的MKL-DNN,  手机和TF-Lite,IoT设备使用Pytorch 1.0+cuDNN。实验结果是基于imagenet完爆mobilenet。。。

感受

这篇论文,因为它的实验结果很好,当然是值得细读。梳理一下它所提出的策略,感觉像一套组合拳,这套组合拳里,哪些是关键点,哪些优点累赘呢?这还需要进一步的分析判断。而在实际使用中,这个框架究竟有怎样的效果,还是需要进一步的分析和实验。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值