具身智能论文伴读 | 第一期 | 精读 02|Attention Is All You Need:引言是如何“给旧王朝判死刑“的

具身智能论文伴读 | 第一期 | 精读 02|Attention Is All You Need:引言是如何“给旧王朝判死刑“的
精读 02Attention Is All You Need:这段引言在讲凭什么敢把 RNN 整个扔掉前文精读 01Attention Is All You Need: 摘要https://arxiv.org/abs/1706.03762先给你一句话的结论这段引言在讲一个造反的故事:RNN 是这行的老王朝(现状),但它有个改不掉的死穴——只能排队干活、没法并行(问题);前人打过好几个补丁,治标不治本(补救失败);注意力机制是个好苗子,可惜一直给 RNN 当配角(转机受限);于是我们干脆把 RNN 整个废掉,让注意力单干,这就是 Transformer(我们的方法),又快又强(效果)。引言的框架比摘要多一格,你摆好这五个格子,每读一句就往里丢:现状(老方法多强)→ 问题(死穴在哪)→ 补救(前人试了但不行)→ 转机(有个新东西但没用到位)→ 我们(登场) 效果这是造反型论文引言的经典套路:先把旧王朝捧得越高,后面推翻它越显本事。你往下看,会发现作者每一句都在为最后那句我们提出 Transformer铺路。逐句拆解【现状】老王朝有多稳Recurrent neural networks, long short-term memory and gated recurrent neural networks in particular, have been firmly established as state of the art approaches in sequence modeling and transduction problems such as language modeling and machine translation.这句落在现状格。大白话:循环神经网络(RNN),尤其是 LSTM 和 GRU 这两个改良款,已经稳稳坐上了序列建模和转换任务(比如语言建模、机器翻译)的头把交椅。先扫清拦路词:RNN(循环神经网络):处理序列的老牌网络,特点是读一个词、记一点、再读下一个,像你逐字读句子。LSTM / GRU:RNN 的两个升级版,专门治 RNN记不住长距离的老毛病,是当时的主力。sequence modeling(序列建模):处理有先后顺序的数据,比如一句话、一段语音。transduction(转换任务):输入一个序列、输出另一个序列,比如英文句子→中文句子。state of the art(SOTA):字面技艺的当前最高水平,科研里就指目前最强。值得学的门道是“firmly established as”这个词组。established 是确立地位,firmly 是牢牢地,连起来是已被牢牢确立为。你体会这个措辞的分量——作者不说RNN 挺好用,而说firmly established(地位稳如泰山)。为什么要把对手夸这么狠?因为这是造反前的必要动作:把旧王朝写得越不可撼动,你后面把它废掉还赢了就越震撼。这是一种写作上的欲扬先抑,你以后写我的方法超越了某个公认强基线时,也该先老老实实承认对方强。【现状】而且这王朝还在扩张Numerous efforts have since continued to push the boundaries of recurrent language models and encoder-decoder architectures.还在现状格,补一刀。大白话:自那以后,无数研究还在不断把循环语言模型和 encoder-decoder 架构往前推、突破极限。这里有你上次特别点出的push the boundaries of——千万别理解成压榨边界。boundary 是边界、极限,push the boundaries 是把边界往外推,也就是不断突破、把水平推向新高度。这是个特别好用的褒义句式,写某领域持续进步时首选。encoder-decoder(编码器-解码器)架构:处理翻译这类任务的经典框架。encoder 先把整句原文读懂、压成一团信息,decoder 再据此吐出译文。你可以想成一个人先听懂中文,另一个人再把理解写成英文。这句在结构上是个承重的过渡句,别小看它。它其实在说:“这个方向不是死水一潭,而是热热闹闹、无数人还在添砖加瓦。”——作者把繁荣景象铺满,正是为了让下一段的但是,它有个根本死穴来得更有冲击力。(上一版我为了叙事顺畅把它略过了,其实它有活儿在身,这次给你补上。)【问题】先看 RNN 是怎么干活的Recurrent models typically factor computation along the symbol positions of the input and output sequences.进入问题格,但作者很聪明,先不骂,而是先讲清楚 RNN 的工作机制——因为死穴就藏在机制里。大白话:循环模型通常是把整个计算,沿着输入输出序列的每一个符号位置,拆开来一份份处理。这里两个词factor computation:factor 作动词是分解(和因式分解factorize 同源)。factor computation 就是把计算过程拆解开。along the symbol positions:沿着符号位置,也就是沿着第 1 个词、第 2 个词、第 3 个词……这条线。合起来:RNN把大计算切成一小份一小份,每个词的位置分一份。你可以想成流水线上一个萝卜一个坑,第一个坑处理第一个字,第二个坑处理第二个字。记住这个画面,下一句的死穴就是它导致的。【问题】死穴的根源:排队Aligning the positions to steps in computation time, they generate a sequence of hidden statesh t h_tht​, as a function of the previous hidden stateh t − 1 h_{t-1}ht−1​and the input for position t.还在问题格,这是最关键的一句机制描述。大白话:RNN 把第几个位置和第几个计算时间步一一对齐,然后一步步生成一串隐藏状态h t h_tht​;而每个h t h_tht​是由上一步的隐藏状态h t − 1 h_{t-1}ht−1​加上当前位置的输入共同算出来的。这里的核心拦路概念是你特别标注的steps in computation time(计算时间步)——这是 RNN 的专属命门。RNN 是串行的:算第一个字叫时间步 1,算第二个字叫时间步 2,逐帧排队,一步都不能跳。原文说把位置对齐到时间步,意思就是位置t tt必须在第t tt个时间步才被处理。再看那个公式的味道:h t h_tht​依赖h t − 1 h_{t-1}ht−1​。这就是死穴的数学表达——你想算第t tt步,必须先等第t − 1 t-1t−1步算完,因为它要拿h t − 1 h_{t-1}ht−1​当原料。就像多米诺骨牌,第 5 张倒不倒,取决于第 4 张;你没法让第 5 张先倒。hidden state(隐藏状态):RNN 内部的记忆,h t h_tht​就是读到第t tt个词时,脑子里攒下的所有信息。你把这句吃透,整篇 Transformer 的动机就懂一大半了:问题不在 RNN 算得不准,而在它必须排队。【问题】排队为什么是大罪This inherently sequential nature precludes parallelization within training examples, which becomes critical at longer sequence lengths, as memory constraints limit batching across examples.问题,把死穴的代价说死。大白话:这种天生串行的特性,堵死了在单个训练样本内部做并行的可能;而序列越长,这个问题越致命,因为内存限制又让你没法靠一次多塞几个样本来凑数。拆开这句(它信息密度很高):inherently sequential(天生就是串行的):inherently “本质上、天生地”,作者用这个词是在强调这不是调调参数能修的,是娘胎里带的。precludes parallelization(排除了并行的可能):preclude “使…不可能、阻止”。parallelization(并行) 多个计算同时做。GPU 最擅长并行,你不让它并行,等于让一支千人军队排成一列纵队过独木桥。within training examples(在单个训练样本内部):一句话内部的各个词没法同时算(因为要排队)。batching across examples(跨样本打包):batch(批) 一次喂给模型一堆样本。本来你可以一句内不能并行,那我一次多喂几句凑并行,但——memory constraints(内存限制):句子一长,一句就吃光显存,你根本塞不下几句。于是这条退路也断了。这句的逻辑链特别值得学:天生串行 → 句内不能并行 → 那靠多喂样本救? → 句子一长内存不够 → 退路也没了。作者一环扣一环,把你逼进死角,让你觉得RNN 这问题真是无解。这种层层堵死退路的论证,是引言里制造我们非改不可的高级手法。【补救】前人打了补丁,但……Recent work has achieved significant improvements in computational efficiency through factorization tricks and conditional computation, while also improving model performance in case of the latter. The fundamental constraint of sequential computation, however, remains.补救| 相关工作。大白话:最近有些工作靠分解技巧和条件计算显著提升了计算效率,后者还顺带提升了性能——但是,串行计算这个根本约束,依然纹丝不动。factorization tricks(分解技巧)、conditional computation(条件计算):两种提速手段,细节不重要,你只需知道它们是前人的补丁。in case of the latter(就后者而言):the latter 指后面那个(条件计算),意思是其中条件计算连性能也一起提升了。这是英文里指代前者/后者的标准说法,the former / the latter可以记下来。这段的灵魂在最后一句的however, remains。前面刚夸完别人significant improvements,一个 however 直接转折:根本约束还在。你品这个安排——作者不否认前人有功劳(诚实、大气),但一句the fundamental constraint remains就把所有补丁都定性成治标不治本。这就是给自己的方法腾位置:补丁都没用,那就得换整台机器了。fundamental constraint(根本性约束)这个词也用得狠——把对手的问题从小毛病拔高到根本缺陷,你的登场才配得上。【转机】注意力这么有用为什么不能是主角Attention mechanisms have become an integral part of compelling sequence modeling and transduction models in various tasks, allowing modeling of dependencies without regard to their distance in the input or output sequences. In all but a few cases, however, such attention mechanisms are used in conjunction with a recurrent network.转机。大白话:注意力机制已经成了各种强力序列模型不可或缺的一部分,它厉害在——不管两个词隔多远,都能直接建立联系。但是(又一个 however!),除了极少数例外,这些注意力机制都还是跟 RNN 搭配着用的,只是个配角。attention mechanism(注意力机制):让模型在处理某个词时,能回头看并重点关注句子里任何相关的词。你可以想成读到它时,能一眼跳回三行前锁定那只猫。without regard to their distance(不管距离多远):这正是注意力对 RNN 的杀手锏。RNN 要传递远距离信息得一步步接力,越远越容易失真;注意力一步直达,再远也一样。integral part(不可或缺的一部分)、in conjunction with(与…结合使用):两个好词组,记下。这段是全篇的转折枢纽。作者先把注意力捧起来(它能跨距离建联系,正好治 RNN 的痛),然后用In all but a few cases, however(除极少数外)点出:这么好的东西,居然一直只当 RNN 的助手,没人让它单干。你看出作者的机心没有?他是在给你埋一个呼之欲出的期待——既然注意力这么强,为什么不干脆只用它?下一句,主角登场。in all but a few cases这个句式很地道,意思是除了极少数情况外(几乎全部),既严谨(承认有例外)又有力(强调普遍性),写综述时特别好用。【我们 效果】主角登场In this work we propose the Transformer, a model architecture eschewing recurrence and instead relying entirely on an attention mechanism to draw global dependencies between input and output.我们,全篇的题眼。大白话:本文提出Transformer——一个彻底抛弃循环结构、完全只靠注意力机制来捕捉输入与输出之间全局依赖关系的架构。eschewing recurrence(摒弃循环):eschew 是个偏正式的词,意为刻意避开、弃用。用在这儿掷地有声——不是少用,是整个不要。relying entirely on(完全依赖):entirely 呼应标题Attention Is All You Need(你只需要注意力)。这个 entirely 就是全篇的胆气所在。global dependencies(全局依赖):句子里任意两个位置之间的关系,不论远近。你回头看这句和前面所有铺垫的呼应:RNN 的死穴是串行(来自 recurrence),那我eschew recurrence;注意力的长处是跨距离直达,那我rely entirely on attention。整段引言就是为了让这一句显得顺理成章、非它不可。这就是引言写作的最高境界——读到主角登场时,读者心里已经在替作者喊就该这么干。The Transformer allows for significantly more parallelization and can reach a new state of the art in translation quality after being trained for as little as twelve hours on eight P100 GPUs.效果格收尾亮成绩。大白话:Transformer能大幅提升并行度,而且只需在 8 块 P100 GPU 上训练区区 12 小时,就能在翻译质量上达到新的 SOTA。allows for significantly more parallelization:正面回应了前面 RNN 的死穴——你不能并行,我大幅度地支持并行。问题和解药首尾呼应,结构极干净。as little as twelve hours:as little as “少至、仅仅”,专门用来强调数字之小。作者敢用它,是因为当时训一个 SOTA 翻译模型动辄好几天,12 小时是惊人的快。eight P100 GPUs:P100 是当年英伟达的旗舰训练卡。再这里需要介绍技术细节了所以给出了具体型号。今日知识点英文表达be firmly established as…:被牢牢确立为……。写某方法是公认强者时用,自带分量。push the boundaries of…:突破……的极限、把水平往前推。褒义,写领域进步的黄金句式。inherently 形容词(如 inherently sequential):本质上、天生地……。强调这是根本属性,改不掉。preclude / eschew:preclude 使不可能;eschew 刻意弃用。都是偏正式、有力度的动词。the former / the latter:前者/后者。指代上文两个并列项的标准说法。in conjunction with…:与……结合使用。in all but a few cases:除极少数外(即几乎全部)。既严谨又有力。rely entirely on…:完全依赖……。entirely 是表决心的重词。as little as 数字:少至、仅仅。专用于强调数字之小,凸显效率。顺手攒个小词——表抛弃/避开的一小家:eschew(刻意弃用,正式书面,本文用它显得决绝)、abandon(彻底放弃,中性偏强)、discard(丢掉不用,像扔废品)、forgo(主动放弃某种好处,含忍痛割爱味)。写论文说我们不采用某传统做法时,eschew 最显克制与专业;abandon 语气更重,像决裂;discard 偏口语、略随意,正式论文里慎用。科研知识造反型引言的五段式:现状(捧高对手)→ 问题(点出根本死穴)→ 补救(承认前人努力但定性为治标不治本)→ 转机(引出新工具却指出它没被用到位)→ 我们登场 量化效果。你以后写我要取代某主流方法的引言,照这个骨架搭就不会散。首尾呼应:引言开头点的死穴(不能并行),结尾必用成绩(more parallelization)正面回应。问题与解药对上,结构才紧。能量化就别用形容词:“12 小时 / 8 块 P100 / new SOTA” 胜过一万句又快又好。报硬件配置是为了可信、可复现。作者贡献声明的文化(那段脚注):开头 “Equal contribution. Listing order is random.”(同等贡献,排名随机)是顶会论文的一种署名文化——当多位作者贡献相当、难分主次时,团队会声明排名不代表贡献大小,避免第一作者最重要的默认误伤他人。后面逐条写清每人干了啥(谁提出 self-attention、谁实现第一个模型……),既公平又留痕。其实严谨的工作推荐大家都列出合作者贡献。一句话带走:这段引言用RNN 强但天生只能排队、快不起来,而注意力能跨距离直达却一直屈居配角层层铺垫,顺理成章地推出完全抛弃循环、纯靠注意力的 Transformer,并用8 卡 12 小时即达翻译新 SOTA一锤定音——这几段话,拉开了此后整个大模型时代的序幕。不掉。preclude / eschew:preclude 使不可能;eschew 刻意弃用。都是偏正式、有力度的动词。the former / the latter:前者/后者。指代上文两个并列项的标准说法。in conjunction with…:与……结合使用。in all but a few cases:除极少数外(即几乎全部)。既严谨又有力。rely entirely on…:完全依赖……。entirely 是表决心的重词。as little as 数字:少至、仅仅。专用于强调数字之小,凸显效率。顺手攒个小词——表抛弃/避开的一小家:eschew(刻意弃用,正式书面,本文用它显得决绝)、abandon(彻底放弃,中性偏强)、discard(丢掉不用,像扔废品)、forgo(主动放弃某种好处,含忍痛割爱味)。写论文说我们不采用某传统做法时,eschew 最显克制与专业;abandon 语气更重,像决裂;discard 偏口语、略随意,正式论文里慎用。科研知识造反型引言的五段式:现状(捧高对手)→ 问题(点出根本死穴)→ 补救(承认前人努力但定性为治标不治本)→ 转机(引出新工具却指出它没被用到位)→ 我们登场 量化效果。你以后写我要取代某主流方法的引言,照这个骨架搭就不会散。首尾呼应:引言开头点的死穴(不能并行),结尾必用成绩(more parallelization)正面回应。问题与解药对上,结构才紧。能量化就别用形容词:“12 小时 / 8 块 P100 / new SOTA” 胜过一万句又快又好。报硬件配置是为了可信、可复现。作者贡献声明的文化(那段脚注):开头 “Equal contribution. Listing order is random.”(同等贡献,排名随机)是顶会论文的一种署名文化——当多位作者贡献相当、难分主次时,团队会声明排名不代表贡献大小,避免第一作者最重要的默认误伤他人。后面逐条写清每人干了啥(谁提出 self-attention、谁实现第一个模型……),既公平又留痕。你以后合作发论文会遇到这套规矩,知道它是善意的即可。一句话带走:这段引言用RNN 强但天生只能排队、快不起来,而注意力能跨距离直达却一直屈居配角层层铺垫,顺理成章地推出完全抛弃循环、纯靠注意力的 Transformer,并用8 卡 12 小时即达翻译新 SOTA一锤定音——这几段话,拉开了此后整个大模型时代的序幕。