今天整点细糠,论《Attention Is All You Need》框架下,存储/GPU的深度逻辑

每天打个新
08-14

昨晚美股大奇迹日大伙也都看到了,本以为PPI利好已是巅峰,没想到只是个前菜,居然还有高手。

图片

闪迪在当日9点的投资者日中公布长期财务模型,提出一系列2028财年至2030财年公司营收将保持中高双位数增长,给出了远超市场预期的长期财务指引(80%毛利率、75%营业利润率),更抛出了将100%超额自由现金流回馈股东的重磅承诺。

产品方面,闪迪表示首款HBF(被视为内存墙的破局者)已完成流片,预计2027年推出首批样品,公司市场情报负责人表示,闪存市场将在2026年增长至超过$3,000亿,并在2027年达到近$5,000亿。

受此影响,不光闪迪自己收涨13.67%,美股科技更是全线大涨,其中存储及其它AI相关公司涨幅靠前,海力士ADR上涨7.29%,美光科技上涨4.23%。

图片

为啥存储能带动整个AI板块,又为啥我在之前的文章里说“AI和存储是一条绳上的蚂蚱,一荣俱荣一损俱损”,我感觉大多数人只有一个模糊的概念:存储需要给GPU喂数据,带宽决定数据传输速度。

这么说不算错,但理解会相对浅显。我们更需要深入理解存储在现代AI训练逻辑中到底扮演什么角色?为什么之前电脑手机也在不断迭代,但都没有像AI浪潮这般缺存储(很多人不认为存储逻辑改变,觉得还是跟以前一样是强周期行业)?

今天讲讲现代AI的底层逻辑,从那篇十几页的论文讲起。

那篇天才之作名叫,《Attention Is All You Need》。

看懂这篇划时代的论文,你就是下一个奥特曼。

一、八个谷歌人写了一篇论文,改变了整个AI行业

2017 年以前,自然语言处理基本被RNN(Recurrent Neural Network,循环神经网络)统治,RNN理解一句话的方法很像排队传话,本质上就是把一句话拆解成一个个Token来处理。

举个例子:“老赵的新股分析很准,我觉得他很牛逼。”

如果让RNN来理解,先分析“老赵”是啥意思,然后分析“老赵的新股分析”,再到“老赵的新股分析很准”,依次类推。

这种算法有两个天然问题:首先是串行属性(Sequential Nature)产生的长距离依赖问题。长距离信息要经过很多节点才能传过去。比如之前例子中,“老赵”和最后的“牛逼”隔得越远,模型就越难得出“老赵牛逼”的结论

其次,也是比串行属性更加致命的问题:它很难并行计算。RNN要求第1步算完才能算第2步。

GPU天生擅长大规模并行矩阵运算,但RNN不同时间步之间存在强烈的前后依赖,第1步没算完,第2步就很难开始,导致GPU难以充分发挥并行能力。随着序列和模型规模扩大,这种串行属性会越来越明显地限制训练吞吐和模型扩展。

就在RNN的规模化瓶颈越来越明显,大伙焦头烂额的时候,一个划时代的构思诞生了,他就是“Transformer”,一个在2017年由八位来自谷歌的天才,在论文《Attention Is All You Need》中提出的概念。

PS:Transformer这个名字一方面取“转换信息”之意,另一方面也夹带了一点私人情怀——Transformer理论的创始人之一乌兹克雷特是变形金刚铁杆粉丝。瞧着该死的理科生的浪漫。

图片

再说个好笑的,2024年Wired回访这八位作者时,都有人都已经先后离开谷歌,一个都没留住。

图片

二、Transformer的底层逻辑

与RNN的排队传话不同,Transformer搞了个“拉群聊”的模式,每一个Token都可以直接访问其他所有Token,然后自己决定该听谁的。

如何实现这件事?靠三个向量—Query(查询向量,Q)、Key(键向量,K)和Value(值向量,V)。

简单理解就是:

Q:当前Token想从上下文中寻找什么信息

K:每个Token提供哪些可用于匹配的特征

V:每个Token最终可以贡献哪些具体信息

然后就来到全篇最著名的公式:

图片

这公式看着有点吓人,其实拆解开来就四步:

第一步(QK^T):让每个Query去和所有Key做点积

这里还是稍微展开一点,以免有些高数还给老师的童鞋看不懂(数学课代表请直接跳过灰字部分)。

每个Token都可以表示成一个高维向量,这个向量由N个数值组成,点积就是两个向量相乘得到一个标量(数值)的运算,公式是:

图片

也就是说,两个向量越长,夹角越小,点积结果越大,匹配程度越高,需要多关注;相对的,向量长度越小,夹角越大,点积结果越小,需要的关注度越低,所以这第一步的过程可以看作相似度打分器。

至于T(转置),理解起来需要一些矩阵数学的基础,简单来说就是把K的“行和列交换一下”,这样一个Q就可以一次跟所有K打分。

第二步:除以sqrt(dk)

这是一个缩放因子,因为向量维度越大,点积数值越容易变得过大,Softmax会过度饱和、梯度变小,不好训练,因此要把分数压回来。

第三步:Softmax

这一步就是把Q和所有K算出来的一堆“匹配分数”,变成一组总和等于100%的“注意力权重”。

举个直观例子,比如模型正在理解一句话:“我买了一个汉堡,晚餐就吃它”,Q是要处理“它”指代的含义,那么通过QK^T除以sqrt(dk),我们的得到原始匹配分数假设为:

图片

经过Softmax处理,就变成了:

图片

这个时候,模型就知道了:在理解“它”的时候,最应该关注“汉堡”。

第四步:最后乘(V)

把各个Token的Value信息按照注意力权重进行加权求和。

假设“它”对“汉堡”的权重最高,那么“它”新的向量中就会大量混入“汉堡”的上下文信息。

因此一个Token不再只有某个固定含义,而是会随着上下文不断更新自己的“上下文含义”。同一个Token出现在不同语境中,最终形成的向量可以完全不同。(比如上一段的汉堡是指麦**腿堡,下一段里的的汉堡就变成了不素之霸)

不过,到这里还只是Single-Head Attention(单头注意力)。问题是,语言里的关系并不只有一种。

所以Transformer 又引入了 Multi-Head Attention(多头注意力)。所谓“多头”,其实就是同时并行跑多套Attention,每一套都有自己独立的Q、K、V投影参数,可以从不同的表示空间观察同一句话。

图片

你可以把它理解成同时拉了几个分析小组:一组更容易捕捉指代关系,一组可能更关注语法结构,一组更关注动作和对象,还有一组可能盯着更远距离的语义联系等等。需要强调的是,这些分工不是工程师提前规定好的,而是模型训练过程中自己学出来的。

所以说白了,Attention干的事情本质就是“搜索—打分—加权—取信息”。但这里有一个容易被论文标题误导的地方:《Attention Is All You Need》并不是说一个AI模型真的只需要Attention。Attention解决的是“不同Token之间怎么交换信息”,拿到信息之后还得进行加工,这就轮到另一个极其重要的模块——FFN(Feed-Forward Network,前馈神经网络)登场了。

三:光会“找人”还不够,AI还得学会“自己想”

如果说Attention像开会:每个Token都拿着自己的Q去问其他Token,“谁的信息现在对我最重要”,然后根据K的匹配结果把对应的V拿回来,那么FFN则像散会以后每个人回到自己的办公室,把刚才听到的信息重新整理、消化和加工。

所以二者的分工可以概括成一句话:Attention负责Token与Token之间的横向交流,FFN负责单个Token内部的纵向加工,公式为:

图片

怎么理解?其实拆开来也很简单:

第一步:xW1+b1

这里的x就是当前Token经过Attention之后得到的向量。比如原始 Transformer里,一个Token是512维向量

W1 是模型训练出来的一组参数,可以理解成“第一套加工规则”;b1 是 Bias(偏置),相当于额外做一点调整。

这一层会把:512维变成2048维,也就是先把 Token 的信息展开到一个更大的空间里,方便模型从更多角度重新组合特征。

第二步:max(0,xW1+b1)

数学上很好理解:用max函数把负数全部变成0这就是ReLU(修正线性单元)激活函数。简单来说就是前面2048个“特征探测器”都算了一遍,其中当前有用的特征被激活,没用或者方向不对的被“压掉”。

为什么要这么做?因为如果只有矩阵乘法,整个FFN其实还是线性变换,表达能力有限。加入ReLU以后,模型就具备了非线性特征加工能力

第三步:max(0,xW1+b1)W2+b2

通过第二套参数W2 和偏置b2,把刚才2048维的信息重新组合,并压回512维,因为后面的Transformer层还要求继续处理统一的512维向量。

FFN这一步到这就结束了,但数据处理过程并没有结束。

为什么最终还要压回512维?一方面是为了让FFN拥有更大的内部特征加工空间后重新压缩信息,另一方面也是为了保持统一的 512维,这样才能与原始输入做残差相加,并顺利送入下一层Transformer。

所以这就是一个:“开会→消化→再开会→再消化的过程”。第一层可能只是让“它”注意到“汉堡”很重要;下一层又在这个基础上继续建立“吃”和“汉堡”的关系;再下一层把整句话更复杂的语义继续往前推进。

Token就这样在几十层甚至上百层Transformer中不断更新自己的向量表示。所谓大模型“理解”和“推理”的底层,并不是什么神秘的电子意识,而是海量Token在Attention中不断交换信息,再在 FFN 中不断进行非线性加工。

四、GPU与存储,Attention逻辑下的AI硬件核心

也正因为Attention和FFN的核心运算最后都高度归结为矩阵乘法,Transformer才意外撞上了现代AI最重要的一次“天作之合”——它和GPU实在是太配了

原论文自己就专门指出,Dot-Product Attention(点积注意力)之所以实际效率高,一个重要原因就是它可以使用高度优化的Matrix Multiplication(矩阵乘法)实现。

这里就能理解Transformer相比RNN真正恐怖的地方了。RNN虽然也会做矩阵运算,但Token之间存在前后依赖,Transformer则把大量Token的Q、K、V一次性装进矩阵,(QK^T)直接变成一大块矩阵乘法,FFN同样可以把一批Token一次性送进大矩阵计算。

换句话说,RNN更像让几千个厨师排队切同一根葱,前面切完一刀后面才能接着切;Transformer是直接搬来几千块菜板,让所有厨师同时开工。

这件事恰好击中了GPU的核心优势。CPU更擅长复杂、分支很多的通用任务,而GPU的强项就是把大量结构相似的数字运算一起做掉。

于是Transformer出现之后形成了一个以前很难成立的正循环:GPU越多、性能越强→矩阵乘法吞吐越高→模型可以做得更大→数据可以喂得更多→模型效果继续提高。

至此,AI第一次拥有了一种可以非常自然地通过堆GPU扩张的主流算法架构。这也是《Attention Is All You Need》真正划时代的地方,正是它终于把神经网络的算法结构和GPU的硬件结构接上了。

五、存储扮演什么角色?

但这里马上又产生了下一个问题,而且这个问题恰好就是为什么今天存储会这么重要。

GPU 是突然能同时干很多活了,但这些活不是凭空计算的。Attention 要读取Q、K、V,FFN要读取大量模型参数,每一层还会不断产生新的激活值和中间结果;训练时还要保存梯度,推理时又多了键值缓存。这些东西最终都必须放在某个地方,而且必须在计算开始之前足够快地送到 GPU 计算核心面前。

于是 Transformer 一边极大提高了并行计算能力,一边也把数据供给压力同时放大了——过去的问题是 GPU 没那么多活可以并行干,现在的问题变成了 GPU 干活太快,数据可能来不及送。

这时候 HBM(High Bandwidth Memory,高带宽内存)的意义就出来了。你理解为HBM的Bandwidth(带宽)是后厨往前台送菜的速度。如果 GPU相当于1000个厨师有1000个案板,理论上一秒可以处理1000根葱,但内存这边一秒只能送来300根,那么剩下 70% 的厨师只能站着等,你难不难受。

这件事特别关键,因为它揭示了 AI 时代一个很容易被忽视的本质:现代 AI 已经不是单纯的“计算问题”,而是“计算+数据搬运”的问题。

于是内存不再只是“给 GPU 配点显存”那么简单,它开始同时承担两个越来越关键的任务:容量决定这些数据放不放得下,带宽决定这些数据来不来得及送到计算核心。

所以你现在再回头看 AI 和存储的关系,就会发现“存储负责给 GPU 喂数据”这句话虽然没错,但只说到了结果,没有说清楚原因。真正的逻辑链条应该是:

  1. Transformer 把串行计算改造成高度并行的矩阵计算 

  2. GPU 的利用率和可扩展性发生质变 

  3. GPU 算力以极快速度膨胀 

  4. 单位时间需要读取、写入和搬运的数据同步暴增 

  5. 系统瓶颈逐渐从“算不动”向“放不下、送不动”迁移

  6. HBM、DRAM乃至NAND在AI系统中的重要性不断上升。

六:小结

到这里,我们也终于能把开头那个问题回答完整。

为什么手机、PC 的性能也一直在升级,却没有像这一轮AI一样疯狂争抢存储?

因为过去消费电子的核心负载并没有发生如此剧烈的计算范式改变。CPU、GPU 性能虽然也在提升,但一台手机不会因为芯片性能翻倍,就突然要求同时处理几十万Token、反复读取数百亿参数、维护越来越庞大的 KV Cache。

而 Transformer 不一样,它从算法底层就把“更多并行计算”和“更多数据搬运”绑在了一起。GPU 每向前走一步,Memory System(内存系统)就必须跟着往前走一步。

所以 AI 和存储不是简单的上下游关系,而更像一个共同进化的系统:算力越强,对存储容量和带宽的要求越高;存储跟不上,算力就无法兑现;存储突破了,GPU 又可以继续扩大模型和上下文。

这才是我一直说:

AI 和存储是一条绳上的蚂蚱,一荣俱荣,一损俱损。

七:有感而发

可以说,如果没有这篇《Attention Is All You Need》,就不会有现在的5.5万亿市值的英伟达,不会有现在0.9万亿的市值OpenAI,更不会有现在百花齐放的AI大模型。

标题虽然是开玩笑,但结论可以认真一点:想成为下一个奥特曼,看懂文章可能是不够的,你大概率需要去M78星云找变身器。(乐~)

图片

不开玩笑了,我觉得真正值得思考的是2017年这八个人干的那件事——当整个行业都在琢磨怎么把旧路线修得更好时,他们问了一句:有没有可能,这条路根本就不用走?

他们换了一条路。

然后,模型变了,GPU变了,存储也跟着变了。

最后整个世界都变了。

Thinking outside the BOX.

PS:

《Attention Is All You Need》今天其实只拆了两个最核心的发动机——Attention和FFN。原论文还有一张更完整、也更加经典的Encoder–Decoder架构图,把Embedding、位置编码、Masked Attention、Cross-Attention、残差连接、LayerNorm以及最终的Softmax全部串了起来。

图片

这个图同样非常伟大,但是要通俗易懂的解释起来真的很麻烦,估计文章长度得翻一倍,大家想看的话可以留言,如果真有兴趣,我再单开一篇文章来写。 $闪迪(SNDK)$ $英伟达(NVDA)$ $SK海力士(SKHY)$

免责声明:上述内容仅代表发帖人个人观点,不构成本平台的任何投资建议。

精彩评论

  • T14n
    08-17
    T14n
    很不错的一篇文章,挺全面的
发表看法
1