聊聊谷歌Pathways带来的想象力

声明:本文原创首发于公众号夕小瑶的卖萌屋,作者Severus
--->【我是传送门】

今年清明节,Google 搞了一点小动作,在 arxiv 上放出了自己的新工作,PaLM[1] (PaLM: Scaling Language Modeling with Pathways)。这是自去年,Jeff Dean 谈论下一代 AI,提出 Pathways[2] 架构之后,其第一次秀出了自己的成绩。既然秀肌肉的一件工作,我们不必怀疑,其在各大不同的基准任务上,能展现出什么样的非凡能力。论文发出之后,各家大V迅速跟进,各种解读铺天盖地,关于它是什么样子的,它的实现细节,它展现了什么样的效果,已不必赘述。今天,我想要谈一谈,Pathways 及其背后的思想,可能会开启什么新的纪元为什么 Jeff Dean 认为它是下一代的 AI 架构

缘起:Swtich Transformer

事情还是要回到去年1月份。彼时以 GPT-3 为首,预训练语言模型界刮起了大模型之风。当然,这股风浪到现在也没有过去,千亿级别的大模型,仍然是你方唱罢我登场。而在那个时候,Google 一篇 Switch Transformers[3] 引起了我的注意。说来惭愧,当时我注意到这篇工作,还是因为某公众号提出了“万亿”这一关键词。而彼时由于大模型的风刮了太久,对这种工作我充满了不屑,且 Google 是出了名的“大力出奇迹”,我也仅仅是将其当成了卷出新高度的工作,打开看了一眼。

我承认,我被打脸了,Switch Transformers 想要秀出来的,不只是 Google 的厨力有多强,更在于,他们翻出了一个古老而优美的架构——Geoffrey Hinton 于1991年提出的,混合专家模型[4](Mixture Of Experts,下称 MoE)。


4fbcc4c597a0278fb542775a81b2e81f.png


MoE,与我们通常所理解的 DNN模型的很大区别是,其内部不是由一个统一的模型组成,而是由若干个小模型组成,一次计算会使用哪些小模型,由一个稀疏门控系统决定[5]。当时我注意到的是,把大模型变成若干个小模型,技术上的意义则是,计算量会降低,运算效率会变快,自然,模型的总参数量也就可以变得更大

70f43803c046c9565572d86c56ced4b8.png

需要说明的是,在这个时候,我对 MoE 前景的理解是极其浅薄的,那个时候的我根本没有看到,其后面的巨大价值。

而到了去年10月底,也就是 Pathways 发布临近,马后炮地说,我在和同事畅想未来的时候,也提出了类似的设想,并将之放在了我11月的技术分享中,作为“未来篇”的结尾。现在想来,这是一个美好的巧合,从当前 AI 技术的发展步调来看,却也是一个历史的必然。

以我老 CS 人的嗅觉,我发现,MoE 的潜在价值在于其工程思想,这一架构,给多任务,乃至多模态提供了一个新的、且我认为更加靠谱的方向。

无限统合

首先,既然 MoE 的各个专家由稀疏门控制,则专家之间相互可看作是独立的。那么我们就可以做一个非常朴素的猜测,不同的任务,可以由门控系统分配给不同的专家来处理,这样任务之间就不会有太大的影响。这一点个人认为是比较重要的,因为不同的任务,大概率会有相互之间冲突的地方,虽然大模型可以依靠大规模参数所带来的记忆能力,缓解这一问题。

647dece05c650c7dd5228370f26c6759.png
通常多任务学习的前提假设是,多个任务之间,是可以互相增益的,其潜在逻辑在于,多个任务所应用到的知识,存在共通的地方。实际上,预训练模型或预训练特征(word2vec等),就是找到一种看上去所有任务都会用到的自监督特征,使用大量的语料训练出来,保证覆盖,使之在迁移学习上成立。

而独立,则可以真正地让一个系统处理多个任务。

而如我上面所提,那不是就意味着,多个任务之间共通的那部分特征也就独立,造成不必要的冗余了呢?实际上,哪怕只有一个任务输入到 MoE 系统中,也不可能只激活一个专家,单个任务,也有可能同时激活多个专家, 那么,我们是否可以认为,激活的这多个专家,实际上已经把这个任务给拆解开了呢?理想状况下,被激活的各个专家各司其职,分别抽取一部分特征,再通过某种方式结合起来,决定了模型的输出。

那么,多任务场景之下,理想状况下,就可以认为,任务之间共通的知识,由相同的专家学到,而任务之间差异的知识,则由不同的专家捕捉,二者有机结合,形成了一个统合的多任务系统。

说到这,我们就可以把脑洞开的更大一些了,多任务可以解决,多模态能否解决呢?

我认为,Pathways 所代表的思想,是一种更加有力的多模态解决方案。

多模态与 Pathways

当前多模态最大的困境是什么呢?实际上是数据空间无法对齐。以文本与图片为例,请小伙伴们同我思考,当我说出“一匹马”的时候,你的脑海中会想象出多少张图片?

而当我让你描述这样一张图片的时候,你的脑海中又能蹦出多少种描述方式?

75596eb60fd5def5e863b91b72301f08.png

我想这两个问题的答案,都是无限,对吧?这也就意味着,通用意义上,或当任务空间足够大的时候,图片和文本数据,是不可能对齐的。数据无法对齐,训练过程中,多模的知识自然也会趋向过拟合式的绑定,这也就意味着,单个 dense 网络结构的多模态模型,仅仅可以处理足够窄场景的多模任务,如某音的短视频搜索。

而到了 MoE 中,如我前面所说,不需要做数据对齐,同时也没有直接去硬性组合最终的输出,而是在中间层的抽象特征上,做了映射和组合。这样一种结构,不敢说通用,至少处理更大场景、更多元的多模任务时,看上去更加合理一些。

那么我们可以大胆设想,预训练-微调可以是这个样子的:训练一个包罗万象的大模型,由这个大模型,则可以导出各种处理专用任务的小模型,这可能才是有钱有算力的机构的使命所在。由于大模型是保罗万象的,内部是由多个独立专家组成的,我们不必再担心 fine-tuning 会破坏模型原本学到的知识,预训练阶段学到的知识也能够得到更好的利用。

最后一部分,我想要从另一个角度,谈一下为什么我相信 Pathways。

从认知科学的角度

人工智能研究的目标之一,是真正做出一个强智能,而由于目前,我们能够参考的唯一一个真正的强智能,只有我们自己,所以接下来,我将以我对人脑粗浅的认识为类比,继续聊一聊 Pathways。

我们继续以多模态为例。首先,人处理信息的时候,一定是多模态的,这个已经是一个常识了。所以多模态也一定是 AI 的趋势。但是,单个 dense 模型的多模态研究,前文已提到,需要的是数据的对齐,而用认知的话来讲,则是用一个感知系统去处理多种感知信号(需要说明的是,这里所说的感知系统与器官不是等同概念)。

是的,人是多模的,但是,人不是这么处理感知信号的,对于不同形式的感知信号,人是有不同的感知系统对应处理的,而同时又有认知系统进一步处理感知信号,形成我们对世界的认知。

b31ed29253d146031429c55971e3fc05.png

人脑是有多个感知系统的,而感知系统之间,又是相对独立的,不同的感知系统有可能分布在不同的脑区。同时,去年我关注到毕彦超老师关于知识的双重编码理论的工作[6],他们的实验结论表明,先天盲人也是能够通过认知系统,学习到“红色”这一概念的,也就说明了,即使对于颜色的感知系统缺失了,人依旧能够学会颜色概念。同时,通过核磁共振成像,也可以观察到,在提到颜色概念时,先天盲人被激活的脑区,和视觉正常的人被激活的脑区,是不一样的。也就说明,感知系统和认知系统也分布在不同的脑区,且相互独立。

这种结构,保证了很好的容错能力。即,人的某一个感知系统出现问题了,一般不会影响到其他的感知系统(双目失明的人同样可以听到声音,尝到味道);而某一感知系统缺失,也可以不影响人的认知。

那么,我们将这些对应到我上文所讲到,Pathways 的前景上,是不是可以说,相比于单纯的堆砌神经元数量,它和目前认知科学所理解到的,大脑的运行机制,非常像呢?不同的感知系统,对应不同的专家网络,而从感知到认知,则在系统中作为抽象特征组合,也由更高层次的专家网络处理,部分通用的知识,也由认知系统存储了下来;且不同的模态,或不同的特征可以缺省,增强了整体的容错能力。从这个角度来看,的确,下一代的智能可能就应该是这个样子的。

我不敢妄言具象的 Pathways 一定就是未来,从最抽象的意义上讲,它提出了一条可行的路径,或许可以通往智能。

当然,做这个东西的大前提是,有钱……

dce13c1ca0bd22c3a5a02adff0e8c19f.png
声明:本文原创首发于公众号夕小瑶的卖萌屋,作者Severus

--->【我是传送门】,内含海量CV/NLP/ML入门资料、必刷综述、前沿论文解读、交流社群、offer神器、学习神器等

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

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

相关文章

LeetCode 1339. 分裂二叉树的最大乘积(DP)

1. 题目 给你一棵二叉树,它的根为 root 。请你删除 1 条边,使二叉树分裂成两棵子树,且它们子树和的乘积尽可能大。 由于答案可能会很大,请你将结果对 10^9 7 取模后再返回。 示例 1: 输入:root [1,2…

大规模模型训练tricks集锦

文 | Connolly知乎大规模模型训练其实就是在和计算、存储和通信玩的过程,所以我列一下跟这些相关的文章。1. 大规模模型并行策略先来介绍一下几种经典的并行范式,以及他们对应的经典文章1.1 数据并行(Data parallelism)不同设备执行相同模型,…

Spring Cloud源码分析(二)Ribbon

断断续续看Ribbon的源码差不多也有7-8天了,总算告一段落。本文记录了这些天对源码的阅读过程与一些分析理解,如有不对还请指出。 友情提示:本文较长,请选择一个较为舒适的姿势来阅读 在之前介绍使用Ribbon进行服务消费的时候&…

LeetCode 1340. 跳跃游戏 V(DP)

1. 题目 给你一个整数数组 arr 和一个整数 d 。每一步你可以从下标 i 跳到&#xff1a; i x &#xff0c;其中 i x < arr.length 且 0 < x < d 。i - x &#xff0c;其中 i - x > 0 且 0 < x < d 。 除此以外&#xff0c;你从下标 i 跳到下标 j 需要满足…

论文浅尝 | TKGR with Low-rank and Model-agnostic Representations

笔记整理&#xff1a;李行&#xff0c;天津大学硕士链接&#xff1a;https://arxiv.org/pdf/2204.04783v1.pdf动机现有MKGC方法中的知识转移效率低下&#xff0c;因为它们分别对每个KG进行编码并通过强制对齐的实体共享相同的嵌入来转移知识。亮点本文的亮点主要包括&#xff1…

ICLR’22 最佳脑洞奖提名:《GPT 如何进行布朗运动?》

文 | 付瑶编 | 小轶今天给大家介绍一篇斯坦福大学的 ICLR22 论文。该文在 OpenReview 中获得了8/8/8/8的高分。在写这篇推送之前&#xff0c;小编身边有多位朋友都私下向我推荐过这篇文章。虽然这几位朋友所研究的任务并不相同&#xff0c;却都认为这篇文章“极具启发性&#x…

条件随机场(Conditional Random Field,CRF)

文章目录1. 概率无向图模型1.1 模型定义1.2 概率无向图模型的因子分解2. 条件随机场的定义与形成2.1 条件随机场的定义2.2 条件随机场的参数化形式例题2.3 条件随机场的简化形式2.4 条件随机场的矩阵形式例题3. 条件随机场的概率计算问题3.1 前向-后向算法3.2 概率计算3.3 期望…

Spring Cloud构建微服务架构(七)消息总线

先回顾一下&#xff0c;在之前的Spring Cloud Config的介绍中&#xff0c;我们还留了一个悬念&#xff1a;如何实现对配置信息的实时更新。虽然&#xff0c;我们已经能够通过/refresh接口和Git仓库的Web Hook来实现Git仓库中的内容修改触发应用程序的属性更新。但是&#xff0c…

2022中国最有钱大学排名出炉!北大只能排第三

文 | 大勇源 | 抓码计算机考研4月21日&#xff0c;教育部直属高校、工信部直属高校陆续在其信息公开网公布了2022年部门预算&#xff0c;高绩对各高校2022年预算数据进行了整理&#xff0c;从中可以一窥国内重点高校的经费情况。中国有各类型、各层次高校2000余所&#xff0c;就…

图谱实战 | 百度基于异构互联知识图谱的多模内容创作技术

分享嘉宾&#xff1a;卞东海 百度 高级研发工程师编辑整理&#xff1a;蒋郭鑫 河海大学出品平台&#xff1a;DataFunTalk导读&#xff1a;由于大数据时代的发展&#xff0c;知识呈指数级增长&#xff0c;而知识图谱技术又在近年来逐步火热&#xff0c;因此诞生了利用知识图谱技…

Spring Cloud构建微服务架构(四)分布式配置中心

Spring Cloud Config为服务端和客户端提供了分布式系统的外部化配置支持。配置服务器为各应用的所有环境提供了一个中心化的外部配置。它实现了对服务端和客户端对Spring Environment和PropertySource抽象的映射&#xff0c;所以它除了适用于Spring构建的应用程序&#xff0c;也…

华尔街投资人因股价暴跌起诉阿里巴巴,马云为起诉对象?

文 | 曹小灵知乎www.zhihu.com/question/530087383/answer/2458458738前几天发生了一个比较有意思的事情&#xff0c;直接上图&#xff1a;这新闻把我看乐了。这中国科技公司在美国股价下跌的原因&#xff0c;美国人自己不清楚么。2020年就开始闹&#xff0c;2021年落地的《外国…

Spring Cloud源码分析(一)Eureka

看过之前文章的朋友们&#xff0c;相信已经对Eureka的运行机制已经有了一定的了解。为了更深入的理解它的运作和配置&#xff0c;下面我们结合源码来分别看看服务端和客户端的通信行为是如何实现的。另外写这篇文章&#xff0c;还有一个目的&#xff0c;还是希望鼓励大家能够学…

手把手教你写出令人窒息的烂代码

源 | 机器之心在 GitHub 上有一个新项目&#xff0c;它描述了「最佳垃圾代码」的十九条关键准则。从变量命名到注释编写。这些准则将指导你写出最亮眼的烂代码。为了保持与原 GitHub 项目一致的风格&#xff0c;下文没有进行转换。读者们可以以相反的角度来理解所有观点&#x…

LeetCode 85. 最大矩形(DP/单调递增栈,难)

文章目录1. 题目2. 解题2.1 DP2.2 单调递增栈1. 题目 给定一个仅包含 0 和 1 的二维二进制矩阵&#xff0c;找出只包含 1 的最大矩形&#xff0c;并返回其面积。 示例: 输入: [["1","0","1","0","0"],["1",&quo…

图谱实战 | 故障知识图谱技术落地探索:装备制造故障知识图谱构建及其应用案例剖析总结...

故障知识图谱是当前面向装备制造领域的落地重要探索领域&#xff0c;如何通过对设备的运行状态、运行日志进行信息抽取、关系建模&#xff0c;建成可供分析应用的知识库&#xff0c;并支撑故障诊断、维修辅助等应用场景&#xff0c;具有重要意义。鉴于当前还未有系统性的开源相…

聊聊Spring Cloud版本的那些事儿

继续昨天说的计划&#xff0c;解惑一下收到比较多的问题。 有朋友问“为什么在很多文章中&#xff0c;大家引用的Spring版本名字都不一样呢&#xff1f;比如&#xff1a;Angel.SR6&#xff0c;Brixton.SR5等等&#xff0c;它们都有什么区别呢&#xff1f;”&#xff0c;今天我…

小样本学习只是一场学术界自嗨吗

文 | ALme知乎这两年看见很多人&#xff0c;包括我实习的mentor在内&#xff0c;都在批评few-shot learning&#xff0c;觉得是学术界在自high&#xff0c;思考良久&#xff0c;感觉有必要给这个领域正个名&#xff5e;(注意&#xff0c;此答案仅关注few-shot image classifica…

Spring Cloud构建微服务架构(六)高可用服务注册中心

近期因工作原因减缓了更新频率&#xff0c;同时为了把Spring Cloud中文社区搭建起来也费了不少时间&#xff0c;几乎每天都在挤牙膏般的凑时间出来做一些有意义的事。未能按原计划更新博文&#xff0c;在此对持续关注我博客的朋友们深表歉意。 之前在写Spring Cloud系列文章的…

技术动态 | 「可解释知识图谱推理」最新方法综述

转载公众号 | 专知近年来&#xff0c;以深度学习模型为基础的人工智能研究不断取得突破性进展&#xff0c;但其大多具有黑盒性&#xff0c;不 利于人类认知推理过程&#xff0c;导致高性能的复杂算法、模型及系统普遍缺乏决策的透明度和可解释性。在国 防、医疗、网络与信息安全…