2202年了,继续大比拼ViT、MLP、CNN结构有意义吗??

3a20d6c055c7432b2f5740bd83000cdb.png

文 | 卖萌菌

近日,MSRA发布了一篇题为《Transformer不比CNN强 Local Attention和动态Depth-wise卷积前世今生》的博文,再次谈论了这个老生常谈的话题。文中提到,Depth-wise CNN 和 attention 存在高度相似的结构,调参优化之后,从结果上来看,指标上也没相差多少。如果从输入到输出的传播路径上来看,CNN 和 self-attention ,从视角上看,其最终汇总到的特征,的确都是类似的,例如,self-attention 一层可以看作是全连接的一跳,经 N 层之后,形成了 N 跳可达。CNN 则也类似,二者都是在整个输入空间下,各单元之间的关联强度。只是实现路径不同。

博文发出之后,加州大学伯克利分校,统计学大佬,马毅教授转发并评论:

e29c06f7d586e8372712d19779846321.png

事实上,这不是马毅教授第一次对类似的研究开炮,之前几乎所有所谓优化 transformer,以及transformer、CNN、MLP 之争,马毅教授都会发表类似的观点,例如:

e087dba6b02ac2c6b508bfb48f43ff55.png

溯源Transformer、CNN、MLP 之争

Transformer、CNN、MLP 之争到底是什么时候开始的呢?

我们可以把时间拉回到一年之前。

2021年5月4日,谷歌大脑团队在arxiv上提交了一篇论文《MLP-Mixer: An all-MLP Architecture for Vision》,这篇论文是原视觉Transformer(ViT)团队的一个纯MLP架构的尝试。总结来说就是提出了一种仅仅需要多层感知机的框架——MLP-Mixer,无需卷积模块、注意力机制,即可达到与CNN、Transformer相媲美的图像分类性能。

众所周知,CV领域主流架构的演变过程是 MLP->CNN->Transformer 。MLP->CNN->Transformer 的演变之路难道现在要变成 MLP->CNN->Transformer->MLP ?

这难道就是学术“圈”的真谛吗?

Mixer号称不使用卷积或自注意力机制,完全基于在空间位置或特征通道上重复应用的多层感知器(MLP),它只依赖基础的矩阵乘法操作、数据变换(比如reshape、transposition)以及非线性层操作。

下图是MLP-Mixer的框架图,详细细节说明可查看原论文。f37124b851c658a5e628184c7fd7f9c8.png

当时就有知乎网友表示“这个网络和Transformer很接近,关键还是故事编的好,实际上只要标题取得好,轮子重复发明没人会在乎的”。

ba95397e4cc24c4c4189464f0f74f0c3.png153c14a9dc75c5ce262412efca4b2fdd.png

此文一出,一石激起千层浪。

只隔一天,2021年5月5日,清华大学图形学实验室Jittor团队在arXiv上也提交了一篇和MLP相关的论文《Beyond Self-attention: External Attention using Two Linear Layers for Visual Tasks》。这篇论文提出了一种新的注意力机制,称之为External Attention。

同日,清华大学软件学院丁贵广团队在arXiv上也提交了论文《RepMLP: Re-parameterizing Convolutions into Fully-connected Layers for Image Recognition》,该论文中结合重参数化技术的MLP也能取得不错的视觉性能。

又隔了一天的5月6日,牛津大学的学者提交了一篇名为《Do You Even Need Attention? A Stack of Feed-Forward Layers Does Surprisingly Well on ImageNet》的论文,表示attention机制是不必要的,仅仅使用反向传播就可以在ImageNet上取得非常高的结果。

那几天,AI圈“辩论之王”、图灵奖得主 LeCun也在推特上针对谷歌的MLP-Mixer论文简单的发声了,LeCun表示这篇论文并不是完全的没有卷积网络

074a9cf5658c6d5e1bb80ab7170ebe8b.pngf68a1ca5e42b35f3f504e6195107a24c.png

自此,Transformer、CNN、MLP 大论战开始。

也是在一年前的那几天,马教授表态:Transformers和MLP对图像patch sequences做处理时与CNN数学概念几乎完全等价。

00cbc2ad9a7cdd6796424ce67a573c20.png

所以...有必要吗?

回答本文的标题,2202年了,还要做ViT、MLP、CNN结构大比拼这种智商捉急的研究吗?

关于这个问题的答案,卖萌屋作者内部也兵分两派,产生了分歧。欢迎各位在评论区发表看法。

反方观点:“没必要”

确如马教授所说,从数学概念上讲,attention 和 CNN 几乎完全等价。现在研究界不断地通过刷榜来转着圈儿灌水,属实是毫无新意。

而且实验也仅仅是在固定数据集上打榜。无非是比拼谁的算力比较强,谁先过拟合出来一个更好的分数。其弊端在萌屋之前的推文(Google掀桌了,GLUE基准的时代终于过去了?)也有过讨论。如果整个学界的研究重心都倾注在这些事情上,那自然也会让人痛心。

本人非常支持马毅老师的观点:0bdd4ec5bae505793a7f5a8f853934ef.png

正方观点:“有必要”

纵使CNN和Transformer在数学上等价,它们面对不同的任务时,不同的网络所带来的效益是不能等同的。哪怕同样是MLP网络,100多层的MLP和10层的MLP所取得的性能提升不一样的,同样是CNN网络,前些年被封为恺明神作的100多层的ResNet和简单的100多层纯CNN网络,在应用到下游任务时,性能的对比也是非常之大的。

也不能因为 ResNet和CNN本质无差别,所以否定ResNet以及之后的DenseNet、ResNetX等一切系列网络。就好像我们可以认为刀和剑本质上也是相同的,都是金属嘛,但是在战斗之中也是各有专长。好比手枪、步枪、机关枪都是枪,难道会有人因此拒绝哒哒哒冒蓝火的加特林吗?

8c1b713a90775ebc601bb3745eb895b1.png

而且,一个很无奈的事实是:在有团队能做出下一个 AI 历史性突破之前,大家都要在各自细分领域不断探索、内卷,甚至难免灌水...不然等着失业吗?

其实强如DeepMind说是要搞通用人工智能,但最近几年却一直在发力AI for Science,毕竟这个方向好落地啊,也能带来很大的科学应用价值。不是DeepMind不想全心全意搞通用人工智能,而是太难了,他们现在还搞不出来。先搞搞AI for Science,搞一波大的宣传,造血续命,让东家买账,何乐而不为呢?

2be381c936a6c540b1b063a43fdfd71a.png后台回复关键词【入群

加入卖萌屋NLP、CV与搜推广与求职讨论群

后台回复关键词【顶会

获取ACL、CIKM等各大顶会论文集!

a78d369668a148dd0208e78b306880d1.gif

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/477404.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring Cloud构建微服务架构(一)服务注册与发现

Spring Cloud简介 Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等操作提供了一种简单的开发方式。 Spring Cloud包…

击败GPT3,刷新50个SOTA!谷歌全面统一NLP范式

文 | ZenMoore编 | 小轶写在前面一觉醒来,迷糊之中看到一条推特:瞬间清醒!Google 的 Yi Tay (and Mostafa) 团队提出了一个新的策略 Mixture-of-Denoisers, 统一了各大预训练范式。重新思考现在的预训练精调,我们有各种各样的预训…

剑指Offer - 面试题3. 数组中重复的数字(哈希)

1. 题目 找出数组中重复的数字。 在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。 示例 1: 输…

击败GPT3,刷新50个SOTA,谷歌全面统一NLP范式?

声明:本文原创首发于公众号夕小瑶的卖萌屋。作者:ZenMoore,编辑:小轶--->【我是传送门】写在前面一觉醒来,迷糊之中看到一条推特:瞬间清醒!Google 的 Yi Tay (and Mostafa) 团队提出了一个新…

Spring Boot 2.3.0 发布

Spring Boot 2.3.0 已经发布,此版本主要更新内容包括: 依赖升级 新版本核心组件依赖升级 Spring Data NeumannSpring HATEOAS 1.1Spring Integration 5.3Spring Kafka 2.5Spring Security 5.3Spring Session Dragonfruit 三方组件依赖 Cassandra Dri…

剑指Offer - 面试题4. 二维数组中的查找(双指针)

1. 题目 在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 示例: 现有矩阵 matrix 如下&…

涵盖1600+任务的巨型Benchmark来了!跑个测试花一周??

文 | 兔子酱最近,benchmanking又卷出了新高度,allen AI 前段时间发布了史上最强基准测试——NATURAL-INSTRUCTIONSv2,涵盖了1600个任务、70个不同任务类型、50种不同语言,用来测试生成模型的泛化性。论文标题:Benchmar…

Spring Boot 2.x基础教程:使用MyBatis访问MySQL

之前我们已经介绍了两种在Spring Boot中访问关系型数据库的方式: 使用spring-boot-starter-jdbc使用spring-boot-starter-data-jpa 虽然Spring Data JPA在国外广泛流行,但是在国内还是MyBatis的天下。所以,今天这篇我们将具体说说如何在Spri…

剑指Offer - 面试题5. 替换空格(字符串)

1. 题目 请实现一个函数&#xff0c;把字符串 s 中的每个空格替换成"%20"。 示例 1&#xff1a; 输入&#xff1a;s "We are happy." 输出&#xff1a;"We%20are%20happy."限制&#xff1a; 0 < s 的长度 < 10000来源&#xff1a;力扣&…

信息抽取里程碑式突破!终于要大规模落地了??

文 | 卖萌酱大家好&#xff0c;我是卖萌酱。AI领域常见的工作突破有三类&#xff1a;屠爆了学术界榜单&#xff0c;成为该领域学术层面的新SOTA实现了大一统&#xff0c;用一个架构实现对该领域诸多子任务的统一建模&#xff0c;刷新建模认知将NB的学术界新SOTA变成一件人人可傻…

Spring Boot 2.x基础教程:使用 Thymeleaf开发Web页面

通过本系列教程的前几章内容&#xff08;API开发、数据访问&#xff09;。我们已经具备完成一个涵盖数据存储、提供HTTP接口的完整后端服务了。依托这些技能&#xff0c;我们已经可以配合前端开发人员&#xff0c;一起来完成一些前后端分离的Web项目&#xff0c;或是一些小程序…

《剑指Offer》解题目录(更新完毕)

题目来源于LeetCode上的《剑指Offer》&#xff0c;这里做一个目录方便大家查找。另外有本人的LeetCode解题目录、《程序员面试金典》解题目录、LintCode解题目录 可点击链接查看。updated on 2020.3.18 不懂的概念可以参考《数据结构与算法之美》学习汇总 已解决 75/75 - 简单…

信息抽取里程碑式突破!要大规模落地了?

声明&#xff1a;本文原创首发于公众号夕小瑶的卖萌屋。作者&#xff1a;卖萌酱大家好&#xff0c;我是卖萌酱。AI领域常见的工作突破有三类&#xff1a;屠爆了学术界榜单&#xff0c;成为该领域学术层面的新SOTA实现了大一统&#xff0c;用一个架构实现对该领域诸多子任务的统…

Spring Boot 2.x基础教程:使用Spring Data JPA访问MySQL

在数据访问这章的第一篇文章《Spring中使用JdbcTemplate访问数据库》 中&#xff0c;我们已经介绍了如何使用Spring Boot中最基本的jdbc模块来实现关系型数据库的数据读写操作。那么结合Web开发一章的内容&#xff0c;我们就可以利用JDBC模块与Web模块的功能&#xff0c;综合着…

剑指Offer - 面试题6. 从尾到头打印链表(栈,递归,反转链表)

文章目录1. 题目2. 解题2.1 stack解题2.2 递归2.3 反转链表1. 题目 输入一个链表的头节点&#xff0c;从尾到头反过来返回每个节点的值&#xff08;用数组返回&#xff09;。 示例 1&#xff1a; 输入&#xff1a;head [1,3,2] 输出&#xff1a;[2,3,1]限制&#xff1a; 0 &…

CV未来,路在何方?李飞飞指路!

编 | LRS源 | 新智元【导读】ImageNet见证了计算机视觉发展的辉煌历程&#xff0c;在部分任务性能已超越人类的情况下&#xff0c;计算机视觉的未来又该如何发展&#xff1f;李飞飞最近发文指了三个方向&#xff1a;具身智能&#xff0c;视觉推理和场景理解。在深度学习革命进程…

Spring Boot 2.x基础教程:找回启动日志中的请求路径列表

如果您看过之前的Spring Boot 1.x教程&#xff0c;或者自己原本就对Spring Boot有一些经验&#xff0c;或者对Spring MVC很熟悉。那么对于Spring构建的Web应用在启动的时候&#xff0c;都会输出当前应用创建的HTTP接口列表。 比如下面的这段日志&#xff1a; 2020-02-11 15:32…

剑指Offer - 面试题9. 用两个栈实现队列

1. 题目 用两个栈实现一个队列。队列的声明如下&#xff0c;请实现它的两个函数 appendTail 和 deleteHead &#xff0c;分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素&#xff0c;deleteHead 操作返回 -1 ) 类似题目&#xff1a;LeetCode 232. …

被深度学习框架逼疯的N大瞬间!何解?

文 | 卖萌酱大家好&#xff0c;我是卖萌酱。对一个深度学习从业者来说&#xff0c;无论你的场景是CV、NLP、Speech还是搜广推现金牛&#xff0c;手头使用最高频的工具莫过于深度学习框架&#xff0c;涵盖了模型训练、模型部署&#xff0c;乃至数据标注、数据清洗等环节。站在20…

Spring Boot 2.x基础教程:使用国产数据库连接池Druid

上一节&#xff0c;我们介绍了Spring Boot在JDBC模块中自动化配置使用的默认数据源HikariCP。接下来这一节&#xff0c;我们将介绍另外一个被广泛应用的开源数据源&#xff1a;Druid。 Druid是由阿里巴巴数据库事业部出品的开源项目。它除了是一个高性能数据库连接池之外&…