深度学习进化之旅

这篇文章我想整理一下深度神经网络的进化之旅。从CNN到Transformer,再到GPT,这些模型架构设计过程中是怎么进化的,每个模型解决了什么问题。

深度学习的发展并非一蹴而就,而是在不断解决实际问题的过程中逐步演进的。每一次架构创新,都是针对前一代模型的局限性提出的解决方案。这个过程就像计算机产业的发展一样,遵循着”问题-突破-新问题-新突破”的螺旋上升规律。

卷积神经网络(CNN):视觉的突破

1998年,Yann LeCun(杨立昆)在贝尔实验室提出了LeNet-5,这是第一个真正意义上的卷积神经网络。它被用于手写数字识别,准确率达到了惊人的99%以上。LeCun的工作奠定了CNN的基础架构,但在当时并未引起广泛关注——计算能力不足,数据集太小,传统机器学习方法在小规模问题上表现也不错。

但CNN真正引起轰动是在2012年。多伦多大学的Geoffrey Hinton(杰弗里·辛顿)教授带领学生Alex Krizhevsky和Ilya Sutskever,用AlexNet在ImageNet图像识别竞赛中以压倒性优势夺冠,错误率比第二名低了10个百分点。这个突破不是偶然的:Hinton在1980年代就开始研究神经网络,提出了反向传播算法的改进版本,几十年如一日地坚持这个方向。AlexNet的成功证明了深度学习的潜力,也标志着AI的”寒冬”彻底结束。

2024年,Hinton因为在人工神经网络领域的开创性工作获得了诺贝尔物理学奖。这个看似跨界的奖项其实有其深刻逻辑:神经网络的训练过程本质上是一个能量优化问题,与统计物理学中的玻尔兹曼机、自旋玻璃等概念密切相关。Hinton早期的工作就是从物理学的角度理解神经网络,他提出的玻尔兹曼机就借鉴了统计力学的思想。诺贝尔委员会认为,神经网络不仅是计算机科学的突破,更是用物理学原理解决复杂系统问题的典范。

image

2018年,Hinton、LeCun和另一位深度学习先驱Yoshua Bengio(约书亚·本吉奥)共同获得了图灵奖,被称为”深度学习三巨头”。LeCun因为发明了卷积神经网络和推动其在工业界的应用而获奖,Bengio则因为在循环神经网络和注意力机制方面的贡献而获奖。这三位科学家在AI的”寒冬”期坚持研究神经网络,最终迎来了深度学习的春天。

image

CNN解决的核心问题是:如何让神经网络理解图像?

传统的全连接神经网络处理图像时,会把每个像素当作独立的输入。一张224×224的彩色图片就有150,528个输入参数,这导致参数量爆炸,训练困难,而且完全忽略了图像的空间结构。

CNN的核心思想是通过层层降维,从高维的像素数据中提取出低维的语义特征。一张224×224的彩色图片(ImageNet的标准输入尺寸)就有15万个像素点,而现实中的高清照片动辄几百万像素。但最终我们只需要判断”这是不是一只猫”这样一个简单的结论。CNN就是在做这个从高维到低维、从具体到抽象的转换。

三个关键设计巧妙地实现了这个过程:

局部连接:神经元只关注图像的一小块区域,就像人眼的感受野一样。这大幅减少了参数量,也符合图像的局部相关性特征——理解一个物体不需要同时看整张图片,先识别局部特征就够了。

权值共享:同一个卷积核在整张图片上滑动,用相同的参数提取不同位置的特征。这意味着无论猫出现在图片的左上角还是右下角,都能被同一个”猫特征检测器”识别出来。这种特性叫做平移不变性。但要注意,CNN对旋转、缩放等变换并不天然具备不变性——一只倒立的猫可能就识别不出来了。

有趣的是,这和人类视觉系统很相似。你试着把书倒过来读,会发现识别文字变得困难,需要在脑海中”旋转”回来。人眼也不是对所有变换都天然不变的,而是通过大量的视觉经验学会了处理各种变换。CNN也是如此,训练时需要做数据增强,通过旋转、翻转、缩放等操作让模型见过各种变换后的图片,就像人类从小到大积累视觉经验一样。

池化层:通过下采样直接降低特征图的分辨率。比如2×2的最大池化会把4个像素压缩成1个,数据量减少75%。这不仅减少了计算量,还让模型对位置变化更加鲁棒——猫的耳朵偏移几个像素,不影响我们认出它是猫。

image

整个CNN就像一个漏斗:输入是高维的像素矩阵,经过多层卷积和池化,特征图的空间尺寸不断缩小,但通道数(特征的种类)不断增加。最底层提取边缘、纹理等低级特征,中间层组合成形状、部件等中级特征,顶层形成物体、场景等高级语义。最终,几万维的像素被压缩成几百维的特征向量,再通过全连接层输出分类结果。

image

从LeNet到AlexNet,再到VGG、GoogLeNet、ResNet,CNN的演进主要围绕着”如何加深网络”展开。理论上,网络越深,能学习的特征就越抽象,性能应该越好。但实践中却遇到了两个棘手的问题:梯度消失和梯度爆炸。

神经网络的训练依赖反向传播算法,就像接力赛一样,误差信号从输出层一层层往回传。每经过一层,误差都要乘以该层的权重。如果权重普遍小于1,连续相乘几十次后,误差信号会变得极其微小,就像声音在传播中不断衰减,传到前面几层时已经听不见了。这就是梯度消失,导致前面的层几乎学不到东西。

反过来,如果权重普遍大于1,连续相乘后误差会指数级增长,就像雪崩一样越滚越大。这就是梯度爆炸,会让训练过程变得极不稳定,参数更新幅度过大,模型无法收敛。

image

ResNet在2015年提出的残差连接巧妙地解决了这个问题。它在网络中增加了”跳跃连接”,让信息可以直接跨越若干层传递,就像在接力赛中增加了直通车道。即使某些层的梯度消失了,误差信号也能通过这些捷径传回去。这个简单而优雅的设计让网络深度从十几层跃升到上百层甚至上千层,性能也随之大幅提升。

CNN在计算机视觉领域取得了巨大成功,但它的设计天然适配的是图像这种具有空间局部性的数据。当面对序列数据,比如文本、语音时,CNN就显得力不从心了。

循环神经网络(RNN):记忆的引入

序列数据的特点是前后有依赖关系。”我吃苹果”和”苹果吃我”,虽然用了相同的三个词,但意思完全相反。要理解这句话,必须记住词的顺序和上下文关系。这种时序依赖性是CNN无法处理的。

image

在RNN出现之前,自然语言处理主要依赖词袋模型(Bag of Words)。这种方法把句子看作一个装满词的袋子,只统计每个词出现的次数,完全忽略词的顺序。就像把”我吃苹果”和”苹果吃我”都变成{我:1, 吃:1, 苹果:1},两句话在模型眼中完全一样。

为了提升效果,研究者们在词袋模型基础上做了各种改进。TF-IDF通过降低常见词(如”的””是”)的权重,突出关键词的重要性。BM25进一步考虑了文档长度和词频饱和效应,成为搜索引擎的标配算法。这些方法在信息检索领域非常成功,Google早期的搜索引擎就大量使用了这类技术。

但词袋模型的本质缺陷无法克服:它丢失了词序信息。在一些简单任务上还能凑合,比如垃圾邮件分类——只要看到”中奖””转账”这些关键词,不管顺序如何,大概率是垃圾邮件。但面对需要理解语义的任务,比如机器翻译、问答系统,词袋模型就彻底失效了。

RNN在1986年就被提出,但直到2010年代才真正流行起来。它的核心思想是引入”记忆”:神经网络在处理当前输入时,会参考之前的隐藏状态。这就像人阅读文章时,会记住前面读过的内容来理解当前的句子。

RNN的结构看起来很简单:在每个时间步,网络接收当前输入和上一时刻的隐藏状态,输出当前的结果和新的隐藏状态。这个隐藏状态就是网络的”记忆”,它会随着序列的推进不断更新。

但标准RNN有个致命缺陷:长期依赖问题。当序列很长时,早期的信息在反向传播过程中会因为梯度消失而丢失。就像传话游戏,传的人越多,信息失真越严重。

1997年,Sepp Hochreiter和Jürgen Schmidhuber提出了LSTM(长短期记忆网络),通过引入门控机制解决了这个问题。LSTM有三个门:遗忘门决定丢弃哪些旧信息,输入门决定接收哪些新信息,输出门决定输出什么。这种设计让网络能够选择性地记住重要信息,忘记无关信息。

2014年,Kyunghyun Cho提出了GRU(门控循环单元),它简化了LSTM的结构,只用两个门就实现了类似的效果,训练速度更快。

image

RNN及其变体在机器翻译、语音识别、文本生成等任务上取得了显著成果。2016年,Google推出的神经机器翻译系统就是基于LSTM的,翻译质量相比之前的统计方法提升了60%。

但RNN也有无法克服的局限:它的序列化处理方式导致无法并行计算,训练速度慢;即使有LSTM的改进,处理超长序列时仍然会丢失信息;更重要的是,RNN的”记忆”是隐式的,我们无法直观地看到模型在关注序列的哪些部分。

Transformer与注意力机制:并行化的革命

2017年,Google的研究团队发表了论文《Attention is All You Need》,提出了Transformer架构。这篇论文的标题本身就是一种宣言:我们不需要RNN,不需要CNN,只需要注意力机制。

image

注意力机制的思想其实很直观。当你阅读”小明把书放在桌子上,然后他就去睡觉了”这句话时,你会自动知道”他”指的是”小明”而不是”桌子”。这种能力就是注意力——在理解当前词时,动态地关注句子中的相关部分。

Transformer的核心是自注意力(Self-Attention)机制。对于序列中的每个位置,模型会计算它与所有其他位置的相关性,然后根据这些相关性加权聚合信息。这个过程可以用三个矩阵来描述:

  • **Query(查询)**:当前位置想要什么信息
  • **Key(键)**:每个位置能提供什么信息
  • **Value(值)**:每个位置的实际内容

通过计算Query和Key的相似度,模型决定应该关注哪些位置,然后加权求和对应的Value。这个过程完全可以并行化,因为每个位置的计算是独立的。

Transformer还引入了多头注意力(Multi-Head Attention),让模型能够同时关注不同类型的信息。就像人在理解句子时,会同时考虑语法结构、语义关系、上下文等多个维度。

image

相比RNN,Transformer有三个显著优势:

并行化:所有位置可以同时计算,训练速度提升了数十倍。在GPU集群上,这种并行性的优势更加明显。

长距离依赖:任意两个位置之间的路径长度都是1,信息可以直接传递,不会像RNN那样经过多次传递而衰减。

可解释性:注意力权重是显式的,我们可以可视化模型在关注什么,这对理解和调试模型非常有帮助。

原始的Transformer采用了Encoder-Decoder架构,专为机器翻译设计。Encoder负责理解源语言(比如英语),Decoder负责生成目标语言(比如德语)。两者之间通过交叉注意力机制连接,让Decoder在生成每个词时都能关注到源语言的相关部分。这个设计在WMT 2014英德翻译任务上刷新了记录。

但Transformer的影响远不止于机器翻译。研究者很快发现,Encoder和Decoder可以单独使用,分别适合不同的任务。Encoder擅长理解和表示,Decoder擅长生成和预测。这为后来BERT和GPT的分野埋下了伏笔。

更令人惊讶的是,Transformer的通用性超出了所有人的预期。2020年,Google提出的Vision Transformer(ViT)把图片切成小块,当作序列来处理,在图像分类任务上超越了CNN。这打破了”CNN是视觉任务专用架构”的认知。随后,Transformer被应用到语音识别、视频理解、蛋白质结构预测、强化学习等各个领域,几乎无往不利。

image

原本为不同任务设计的专用架构——CNN处理图像、RNN处理序列、GNN处理图结构——正在被Transformer这个统一架构逐步替代。这种”大一统”的趋势背后,是一个深刻的洞察:无论是文本、图像还是语音,本质上都是数据序列,都可以用注意力机制来建模关系。

image

更重要的是,Transformer的可扩展性极强。通过增加层数、增大隐藏维度、使用更多数据,模型性能可以持续提升。这种”scaling law”(规模定律)为后来的大语言模型奠定了基础。OpenAI的研究表明,只要有足够的计算资源和数据,Transformer的性能可以预测性地提升,不会遇到明显的瓶颈。这让”暴力美学”成为可能——用更大的模型、更多的数据,就能获得更强的能力。

BERT(理解)与GPT(生成):预训练的分野

有了Transformer这个强大的架构,下一个问题是:如何训练它?

传统的监督学习需要大量标注数据。在计算机视觉领域,ImageNet这个包含1400万张标注图片的数据集推动了CNN的突破。但在自然语言处理领域,情况完全不同。文本的标注比图像更复杂,成本也更高昂——给图片打标签只需要说”这是一只猫”,但标注文本的语义、情感、实体关系需要专业知识。更重要的是,语言任务千差万别,为每个任务都标注大量数据不现实。

能否让模型先在海量无标注文本上学习语言的通用知识,然后再针对具体任务微调?这就是预训练的思想。

2018年,两个里程碑式的模型几乎同时出现:Google的BERT和OpenAI的GPT。它们都基于Transformer,都采用预训练+微调的范式,但训练目标截然不同。

image

BERT:双向的理解者

BERT的全称是Bidirectional Encoder Representations from Transformers,核心是”双向”。它使用Transformer的编码器部分,通过掩码语言模型(Masked Language Model)进行预训练:随机遮住句子中15%的词,让模型根据上下文预测被遮住的词。

这种训练方式让BERT能够同时利用左右两侧的上下文,形成深层的双向表示。就像完形填空,你需要理解整个句子才能填对空。

BERT在11个NLP任务上刷新了记录,包括问答、文本分类、命名实体识别等。它特别擅长需要深度理解的任务,比如判断两个句子是否语义相似,或者从文章中找出问题的答案。

GPT:单向的生成者

GPT(Generative Pre-trained Transformer)采用了完全不同的路线。它使用Transformer的解码器部分,通过自回归语言模型进行预训练:根据前面的词预测下一个词。

这种训练方式是单向的,模型只能看到左侧的上下文。但这恰恰符合文本生成的场景——你在写作时,只能根据已经写下的内容来决定下一个词。

GPT-1在2018年6月发布时并没有引起太大关注,因为它在很多任务上不如BERT。但OpenAI坚持了这个方向,并在2019年发布了GPT-2,参数量从1.17亿增加到15亿。

GPT-2展现出了惊人的生成能力,给定一个开头,它能续写出连贯、有逻辑的长文本。更令人惊讶的是,它在零样本(zero-shot)设置下就能完成很多任务,不需要针对性的微调。

两条路线的本质差异

BERT和GPT代表了两种不同的AI哲学:

BERT是”理解型”模型,它通过双向上下文建立深层语义表示,擅长判断、分类、匹配等需要理解的任务。但它不是为生成设计的,生成文本时需要额外的解码策略。

GPT是”生成型”模型,它通过预测下一个词学习语言的概率分布,天然适合文本生成。虽然是单向的,但通过足够大的规模和数据,它也能展现出强大的理解能力。

2020年,GPT-3的发布彻底改变了游戏规则。1750亿参数的规模让它展现出了”涌现能力”——仅通过少量示例(few-shot)甚至零样本就能完成各种任务,不需要微调。这证明了生成式预训练的路线具有更好的可扩展性。

从此,大语言模型的主流范式转向了GPT的自回归生成路线。BERT仍然在特定的理解任务上有价值,但在通用人工智能的道路上,GPT代表的生成式模型走得更远。

这个分野不仅是技术路线的选择,更反映了对智能本质的不同理解:智能是理解世界,还是生成世界?或许两者本就是一体两面,而生成能力恰恰是更高层次的理解。

MoE专家模型:稀疏激活的智慧

当GPT-3用1750亿参数震惊世界时,人们开始思考一个问题:模型是不是越大越好?如果是,那么训练和推理的成本会不会成为瓶颈?

2021年,Google发布了Switch Transformer,参数量达到1.6万亿,是GPT-3的9倍多。但令人惊讶的是,它的训练成本反而更低,推理速度也更快。秘密就在于MoE(Mixture of Experts,混合专家模型)架构。

专家分工的哲学

MoE的核心思想来自一个朴素的观察:人类社会的高效运作依赖于专业分工。你不需要每个人都懂所有知识,而是让不同的专家处理不同的问题。医生看病,律师打官司,工程师写代码,各司其职。

传统的密集模型就像一个”全能选手”,每次推理都要激活所有参数。而MoE模型则像一个”专家团队”,包含多个子网络(专家),每次只激活其中的一部分。一个门控网络(Gating Network)负责决定对于当前输入应该咨询哪些专家。

具体来说,MoE层会替换Transformer中的前馈网络(FFN)。对于每个token,门控网络计算一个概率分布,选择Top-K个专家来处理,然后将这些专家的输出加权求和。其他专家则完全不参与计算,参数保持”休眠”状态。

image

这个过程对用户是完全透明的。你无法直接指定”用数学专家来回答这个问题”——即使在提示词中写”你是一个数学专家”,这也只是在引导模型的输出风格,而不是在激活某个特定的MoE专家。MoE的专家是模型内部的神经网络模块,它们的激活是由门控网络根据每个token的特征自动决定的。

但提示词的内容确实会间接影响专家的选择。当你输入”计算这个积分”时,后续生成的token(数学符号、公式)会让门控网络倾向于激活在数学数据上训练较多的专家;当你输入”写一段Python代码”时,生成的代码token会激活擅长编程的专家。这种专业化是在训练过程中自动涌现的——不同的专家在不同类型的数据上获得了更低的损失,门控网络学会了根据token特征来路由到合适的专家。

有趣的是,研究者通过分析发现,专家的分工并不总是按照人类理解的”领域”来划分。有的专家可能专注于处理长句子,有的专注于处理罕见词汇,有的专注于某种语法结构。这种分工是数据驱动的,而非人为设计的。你在提示词中指定的”角色”,只是在语义层面引导模型,而MoE专家的激活发生在更底层的token处理层面。

稀疏激活的优势

这种设计带来了三个关键优势:

参数效率:虽然总参数量巨大,但每次推理只使用一小部分。Switch Transformer有1.6万亿参数,但每个token只激活其中的0.1%,实际计算量相当于一个10亿参数的密集模型。

训练加速:由于每次只更新部分参数,训练时的计算量和通信开销都大幅降低。Switch Transformer在相同的计算预算下,训练速度比T5快了7倍。

专业化能力:不同的专家会自动学习处理不同类型的输入。有的专家擅长处理数学问题,有的擅长处理代码,有的擅长处理对话。这种专业化分工让模型在各个领域都能有更好的表现。

从理论到实践

MoE的思想其实在1991年就被提出了,但直到深度学习时代才真正发挥作用。早期的尝试面临两个主要挑战:

负载均衡:如果所有输入都倾向于选择同一个专家,那么专家分工就失效了。为了解决这个问题,研究者引入了辅助损失函数,鼓励门控网络均匀地使用各个专家。

训练稳定性:稀疏激活导致梯度更新不均匀,容易出现训练不稳定。Switch Transformer通过降低专家容量、使用更小的初始化等技巧解决了这个问题。

2022年,Google的GLaM模型(1.2万亿参数)在少样本学习任务上超越了GPT-3,但训练成本只有GPT-3的三分之一。同年,OpenAI也在GPT-4中采用了MoE架构(虽然官方没有公开确认,但多方证据表明如此)。

2024年,Mistral AI发布的Mixtral 8x7B成为开源社区的明星。它有8个专家,每次激活2个,总参数量47B,但激活参数只有13B。在多个基准测试中,它的表现接近甚至超越了GPT-3.5,但推理成本要低得多。

2024年底,中国的DeepSeek团队将MoE技术推向了新的高度。DeepSeek-V3采用了创新的多token预测和细粒度专家分割技术,用不到600万美元的训练成本就达到了GPT-4级别的性能。更令人震惊的是,2025年初发布的DeepSeek-R1通过强化学习进一步提升了推理能力,在数学和编程等任务上超越了OpenAI的o1模型。DeepSeek证明了,通过精心设计的MoE架构和训练策略,可以用极低的成本训练出世界级的大模型,这彻底改变了人们对AI训练成本的认知。

专家模型的挑战

尽管MoE展现出巨大潜力,但它也带来了新的挑战:

内存占用:虽然计算量减少了,但所有专家的参数都需要加载到内存中。这对硬件提出了更高要求,也限制了模型的部署场景。

通信开销:在分布式训练中,不同的专家可能分布在不同的设备上,门控决策需要跨设备通信,这会成为新的瓶颈。

专家坍塌:如果训练不当,可能出现只有少数专家被频繁使用,其他专家退化的情况。这需要精心设计的训练策略来避免。

推理优化:如何在保持稀疏性的同时优化推理速度,如何在边缘设备上部署MoE模型,这些都是工程上的难题。

从密集到稀疏的范式转变

MoE代表了深度学习的一个重要趋势:从密集计算走向稀疏计算。这不仅是工程优化,更是对智能本质的新理解。

人脑有860亿个神经元,但在处理特定任务时,只有一小部分神经元被激活。这种稀疏激活机制让大脑能够在有限的能量预算下实现强大的智能。MoE模型正是在模仿这种机制。

更深层次地看,MoE体现了”规模”与”效率”的平衡。过去十年,深度学习的进步主要靠暴力堆砌参数和数据。但这条路不可能无限走下去,能源、成本、环境的约束都在逼近。MoE提供了一条新路:通过更聪明的架构设计,用更少的计算实现更强的能力。

这种思路在计算机产业史上并不陌生。从单核到多核,从CPU到GPU,从集中式到分布式,每一次架构创新都是在追求更高的性价比。MoE或许只是开始,未来还会有更多稀疏化、模块化的架构出现。

毕竟,智能的本质不是”知道所有事情”,而是”知道在什么时候调用什么知识”。这正是专家模型想要实现的。

进化的逻辑

回顾深度学习的进化之路,我们可以看到清晰的演进逻辑:

CNN解决了空间局部性问题,让神经网络能够理解图像的层次化特征。它的成功证明了深度学习的潜力,但也暴露了对特定数据结构的依赖。

RNN引入了记忆机制,让神经网络能够处理序列数据。但序列化的计算方式限制了它的规模化能力,长期依赖问题也始终没有完美解决。

Transformer通过注意力机制实现了并行化,打破了序列处理的瓶颈。它的通用性和可扩展性使其成为深度学习的新基础架构。

BERT和GPT则探索了两条不同的预训练路线,最终GPT的生成式范式因为更好的可扩展性和涌现能力而成为主流。

每一次架构创新,都不是凭空产生的,而是针对前一代模型的局限性提出的解决方案。这个过程遵循着”问题驱动”的规律:当一个架构在某些任务上遇到瓶颈时,新的架构就会应运而生。

更重要的是,这些架构的演进体现了深度学习从”特定任务”走向”通用智能”的趋势。CNN是为图像设计的,RNN是为序列设计的,而Transformer是通用的。GPT-3的出现更是证明了,通过足够大的规模和数据,单一的生成式模型可以处理几乎所有的语言任务。

这种从专用到通用的演进,与计算机产业的发展何其相似。从专用计算机到通用计算机,从单一功能的软件到操作系统,从垂直应用到平台生态,技术的进化总是朝着更通用、更可扩展的方向前进。

而现在,大语言模型正在成为新的”操作系统”,为各种AI应用提供基础能力。这或许就是深度学习进化的下一站。

本作品采用 知识共享署名 4.0 国际许可协议 进行许可。

转载时请注明原文链接:https://blog.hufeifei.cn/2026/02/ai/deeplearning-history/

鼓励一下
支付宝微信