
论文阅读
文章平均质量分 92
*pprp*
GiantPandaCV公众号作者,研究方向automl,nas
展开
-
CvT: 如何将卷积的优势融入Transformer
【GiantPandaCV导语】与之前BoTNet不同,CvT虽然题目中有卷积的字样,但是实际总体来说依然是以Transformer Block为主的,在Token的处理方面引入了卷积,从而为模型带来的局部性。最终CvT最高拿下了87.7%的Top1准确率。引言CvT架构的Motivation也是将局部性引入Vision Transformer架构中,期望通过引入局部性得到更高的性能和效率权衡。因此我们主要关注CvT是如何引入局部性的。具体来说提出了两点改进:Convolutional token原创 2022-01-01 16:09:29 · 1935 阅读 · 3 评论 -
CNN、Transformer、MLP的经验性分析
A Battle of Network Structures: An Empirical Study of CNN, Transformer, and MLP【GiantPandaCV导语】ViT的兴起挑战了CNN的地位,随之而来的是MLP系列方法。三种架构各有特点,为了公平地比较几种架构,本文提出了统一化的框架SPACH来对比,得到了具有一定insight的结论。背景近期Transformer MLP系列模型的出现,增加了CV领域的多样性,MLP-Mixer的出现表明卷积或者注意力都不是模型性能优异原创 2021-12-24 10:20:41 · 3111 阅读 · 3 评论 -
知识蒸馏综述:蒸馏机制
【GiantPandaCV导语】Knowledge Distillation A Suvery的第二部分,上一篇介绍了知识蒸馏中知识的种类,这一篇介绍各个算法的蒸馏机制,根据教师网络是否和学生网络一起更新,可以分为离线蒸馏,在线蒸馏和自蒸馏。感性上理解三种蒸馏方式:离线蒸馏可以理解为知识渊博的老师给学生传授知识。在线蒸馏可以理解为教师和学生一起学习。自蒸馏意味着学生自己学习知识。1. 离线蒸馏 Offline Distillation上图中,红色表示pre-trained, 黄色代表To原创 2021-12-04 14:11:21 · 3360 阅读 · 0 评论 -
知识蒸馏综述: 知识的类型
【GiantPandCV引言】简单总结一篇综述《Knowledge Distillation A Survey》中的内容,提取关键部分以及感兴趣部分进行汇总。这篇是知识蒸馏综述的第一篇,主要内容为知识蒸馏中知识的分类,包括基于响应的知识、基于特征的知识和基于关系的知识。知识蒸馏简介定义:知识蒸馏代表将知识从大模型向小模型传输的过程。作用:可以用于模型压缩和训练加速 手段。综述梳理思路:知识蒸馏的种类训练机制教师-学生 架构蒸馏算法性能比较实际应用典型的知识蒸原创 2021-11-28 09:43:49 · 1028 阅读 · 0 评论 -
【知识蒸馏】Knowledge Review
【GiantPandaCV引言】 知识回顾(KR)发现学生网络深层可以通过利用教师网络浅层特征进行学习,基于此提出了回顾机制,包括ABF和HCL两个模块,可以在很多分类任务上得到一致性的提升。摘要知识蒸馏通过将知识从教师网络传递到学生网络,但是之前的方法主要关注提出特征变换和实施相同层的特征。知识回顾Knowledge Review选择研究教师与学生网络之间不同层之间的路径链接。简单来说就是研究教师网络向学生网络传递知识的链接方式。代码在:https://github.com/Jia-Resear原创 2021-11-21 16:52:01 · 2237 阅读 · 0 评论 -
【知识蒸馏】Deep Mutual Learning
【GiantPandaCV导语】Deep Mutual Learning是Knowledge Distillation的外延,经过测试(代码来自Knowledge-Distillation-Zoo), Deep Mutual Learning性能确实超出了原始KD很多,所以本文分析这篇CVPR2018年被接受的论文。同时PPOCRv2中也提到了DML,并提出了CML,取得效果显著。引言首先感谢:https://github.com/AberHu/Knowledge-Distillation-Zoo笔者原创 2021-11-16 22:08:22 · 1506 阅读 · 17 评论 -
Towards Oracle Knowledge Distillation with NAS
【GiantPandaCV导语】本文介绍的如何更好地集成教师网络,从而更好地提取知识到学生网络,提升学生网络的学习能力和学习效率。从方法上来讲是模型集成+神经网络结构搜索+知识蒸馏的综合问题,在这里使用简单的NAS来降低教师网络与学生网络之间的差距。背景介绍解决的问题?希望从集成的教师网络中提取知识到学生网络,从而提升学习能力和学习效率。model ensemble + NAS + KDMotivation: This is motivated by the fact that kno原创 2021-11-11 15:51:59 · 1456 阅读 · 0 评论 -
【分类技巧】Fixing the train-test resolution discrepancy
【GiantPandaCV导语】调研分类方法的时候师姐推荐的一篇paper,其核心是训练的时候使用小分辨率,测试的时候使用大分辨率(训练分辨率的1.15倍),能够有效提升验证精度。MotivationImageNet数据集分类模型通常采用的数据增强方式会导致训练时和测试时的模型看到的目标尺寸出现差异。即训练分辨率的降低可以一定程度上提高测试阶段的精度。举个例子:图一:原先的ImageNet训练方法上图代表训练阶段图片处理流程:训练阶段主要通过随即选择一块矩形区域,然后resize到224固定大小原创 2021-11-08 16:47:21 · 1344 阅读 · 0 评论 -
Bag of Tricks for Neural Architecture Search
Bag of Tricks for Neural Architecture Search【GiantPandaCV导语】相比于普通的分类网络,基于超网的NAS更加难以训练,会出现收敛效果较差甚至不收敛的情况。并且,基于超网的NAS还需要额外关注子网的排序一致性等问题,训练策略的选择也极为重要。AutoSlim, BigNAS等文章都花费了大量篇幅来讲解超网的训练技巧。本文是CVPR2021 Workshop中的一篇短文,作者单位是de bosch,介绍了NAS中常用的trick。1. 介绍NAS在很原创 2021-11-05 09:44:54 · 232 阅读 · 0 评论 -
NetAug 韩松团队新作解决欠拟合问题
【GiantPandaCV导语】本文介绍的是韩松团队针对欠拟合问题提出的一种解决方案,在代价可接受范围内能够提升小模型的性能。引入专用于解决小型网络模型欠拟合 带来的问题,通过引入更大的模型包围住小模型从而得到额外的监督信息。欠拟合情况下使用正则化方法进行处理会导致性能更差。NetAug适用场景:数据集量比较大模型参数量相对而言比较小由于模型容量有限导致的欠拟合问题问题明确与知识蒸馏区别:知识蒸馏相当于学习一个soft label(或者说learned label s原创 2021-10-28 14:15:24 · 270 阅读 · 0 评论 -
【神经网络架构搜索】DNA: Block-wisely Supervised NAS with KD
【GiantPandaCV导语】知识蒸馏结合NAS的一篇工作,提出了DNA,让教师网络来指导超网的学习。这个工作将知识蒸馏非常深入的融合在一起,有很强的创新性,已被CVPR20接收。1. 背景介绍知识蒸馏通常作为One-Shot NAS中的一个训练技巧,但是他起到非常大的作用。简便起见,知识蒸馏在这里被分为四类:基于softmax输出层的知识蒸馏基于中间层的知识蒸馏基于相关性知识的知识蒸馏基于GAN的知识蒸馏第一个基于softmax输出层的知识蒸馏是最传统的,Hinton原创 2021-09-27 15:31:45 · 433 阅读 · 0 评论 -
DeiT:使用Attention蒸馏Transformer
题目:Training data-efficient image transformers & distillation through attention【GiantPandaCV导语】Deit是一个全Transformer的架构,没有使用任何的卷及操作。其核心是将蒸馏方法引入VIT的训练,引入了一种教师-学生的训练策略,提出了token-based distillation。有趣的是,这种训练策略使用卷积网络作为教师网络进行蒸馏,能够比使用transformer架构的网络作为教师取得更好的效果原创 2021-09-24 10:18:44 · 1242 阅读 · 0 评论 -
ECCV20 BigNAS无需后处理直接部署
【GiantPandaCV导语】这篇是Slimmable Network三部曲之后的续作,提出了Single-Stage的超网训练方法,在更大的搜索空间中,提出了很多训练的Trick来提升训练效果以及稳定训练过程。0. InfoTitle: BigNAS: Scaling Up Neural Architecture Search with Big Single-Stage ModelsAuthor: Jiahui Yu, Pengchong Jin, Hanxiao Liu, Gabriel Ben原创 2021-09-17 10:11:43 · 340 阅读 · 0 评论 -
【神经网络架构搜索】ProxylessNAS直接在ImageNet上搜索
【GiantPandaCV导语】这篇是MIT韩松实验室发布的文章,是第一个直接在ImageNet上进行搜索的NAS算法,并且提出了直接在目标硬件上对latency进行优化的方法。相比于同期算法NASNet、MnasNet等,搜索代价降低了200倍。0. InfoTitle: ProxylessNAS: Direct Neural Architecture Search On Target Task and HardwareAuthor: MIT韩松团队Link: https://arxiv.org/原创 2021-07-01 11:15:47 · 382 阅读 · 0 评论 -
ICLR 2021 NAS 相关论文(包含Workshop)
ICLR 2021 Workshop 接收Measuring Uncertainty through Bayesian Learning of Deep Neural Network StructureZhijie Deng, Yucen Luo and Jun Zhu PDFAutoHAS: Efficient Hyperparameter and Architecture SearchXuanyi Dong, Mingxing Tan, Adams Yu, Daiyi Peng, Bog原创 2021-06-22 09:40:03 · 856 阅读 · 0 评论 -
CVPR2021 NAS相关论文链接
Neural Architecture Search with Random LabelsLandmark Regularization: Ranking Guided Super-Net Training in Neural Architecture SearchAttentiveNAS: Improving Neural Architecture Search via AttentiveFBNetV3: Joint Architecture-Recipe Search Using Predict.原创 2021-06-22 09:15:55 · 421 阅读 · 0 评论 -
【神经网络架构搜索】SMASH直接生成候选网络权重
1. INFOTitle: SMASH: One-Shot Model Architecture Search through HyperNetworksAuthor: Andrew Brock, Theodore Lim, & J.M. RitchieLink: https://arxiv.org/pdf/1708.05344.pdfDate: ICLR 2018 PosterCode:https://github.com/ajbrock/SMASH2. Motivation高性能原创 2021-06-21 18:12:19 · 488 阅读 · 0 评论 -
【神经网络搜索】Once for all
【GiantPandaCV导语】Once for all是韩松组非常有影响力的工作,其最大的优点是解耦了训练和搜索过程,可以直接从超网中采样出满足一定资源限制的子网,而不需要重新训练。该工作被ICLR20接收。文章目录0. Info1. Motivation2. Contribution3. Method4. Experiment5. Revisiting6. Reference0. InfoTitle: Once-for-All: Train one Network and Specialize i原创 2021-05-28 14:14:06 · 1103 阅读 · 0 评论 -
如何阅读和学习深度学习项目代码
【前言】现在深度学习项目代码量越来越大,并且单个文件的量也非常的大。笔者总结了一些专家的经验并结合自己看的一些项目,打算总结一下如何探索和深入一个深度学习项目库。笔者pprp,未经允许不得擅自转发。1. 基础知识首先,需要保证有一定的深度学习基础知识,吴恩达的深度学习课还有斯坦福大学的CS231n都是不错的入门教程,只需要有大学数学的基础就可以看懂。然后,需要对Linux系统使用有一定的了解,一般选择Ubuntu系统作为主力系统,了解一下基础的系统命令就可以了,比如rm,ls,cd,cat,vim,s原创 2021-05-27 21:45:05 · 2249 阅读 · 1 评论 -
【神经网络搜索】NAS-Bench-101: 可复现神经网络搜索
【GiantPandaCV导语】Google Brain提出的NAS领域的Benchmark,是当时第一个公开的网络架构数据集,用于研究神经网络架构搜索。本文首发GiantPandaCV,请不要随意转载。0. 摘要神经网络搜索近年来取得进步巨大,但是由于其需要巨大的计算资源,导致很难去复现实验。本文目标是通过引入NAS-Bench-101的方法来缓解以上问题。在NAS-Bench-101中,设计了一个紧凑且丰富的搜索空间。通过图同构的方式来区别423k个网络架构。在CIFAR10数据集上多次训练以上原创 2021-05-19 09:21:25 · 1261 阅读 · 4 评论 -
【神经网络结构搜索综述】NAS的挑战和解决方案
【GiantPandaCV导读】上一篇中,笔者翻译了国外一篇介绍Automl和NAS的博客,点这里回顾。这一篇是笔者对《A Comprehensive Survey of Nerual Architecture Search: Challenges and Solutions》这篇论文进行翻译和解读,这是2020年刚刚发到arxiv上的有关NAS的综述,内容比较多,30页152篇参考文献。对初学者来说,可以当作一个学习的目录,阅读文中提到的论文。文末用思维导图总结了整篇文章脉络,可以用来速览。【内容速览】原创 2020-11-16 15:06:37 · 1796 阅读 · 2 评论 -
【神经网络搜索】Single Path One Shot
【GiantPandaCV导读】Single Path One Shot(SPOS)是旷视和清华、港科大联合的工作。与之前的工作不同,SPOS可以直接在大型数据集ImageNet上搜索,并且文章还提出了一种缓和权重共享的NAS的解耦策略,让模型能有更好的排序一致性。代码:https://github.com/megvii-model/SinglePathOneShot论文:https://arxiv.org/abs/1904.00420摘要之前的One-Shot NAS训练难度很大,并且在大型数据原创 2021-05-04 11:06:04 · 1087 阅读 · 4 评论 -
【神经网络搜索】1. NAS-RL(ICLR2017)
谷歌最早发表的有关NAS的文章,全称Neural Architecture Search with Reinforcement Learning神经网络架构搜索经典范式是,首先通过controller以p概率采样一个网络结构,然后开始训练网络结构得到准确率R,根据准确率R和概率p可以使用梯度上升的方法更新controller的参数。在NAS-RL中,使用了Policy Gradient算法来训练controller(通常实现是一个RNN或者LSTM)。训练完采样网络后在验证集上得到的准确率就是环境反馈原创 2021-02-07 09:47:12 · 467 阅读 · 0 评论 -
【论文阅读】Mixed Precision Training
【GiantPandaCV导语】混合精度是一个非常简单并且实用的技术,由百度和谷歌联合发表于ICLR2018,可以让模型以半精度的方式训练模型,既能够降低显存占用,又可以保持精度。这篇文章不是最先提出使用更低精度来进行训练,但是其影响力比较深远,很多现在的方案都是基于这篇文章设计的。1. 摘要提高网络模型的大小可以有效提升准确了,但是也增加了内存的压力和计算力的需求。本论文引入了半精度来训练深度神经网络,在不损失精度、不需要更改超参数的情况下,几乎可以减半内存占用。权重、激活、梯度都是以IEEE半精度原创 2020-12-20 21:49:19 · 885 阅读 · 0 评论