资讯动态

神经网络六十年演进:从感知机到Transformer的深度之旅

发布时间:2026/10/17 4:39:09 来源:尧图企业网站定制
如果要给计算机科学找一个“反复死去又反复复活”的研究方向神经网络应该是名单上的头号候选。这个领域的起点甚至早于“人工智能”这个词本身上世纪五十年代的一台模拟计算装置到如今驱动着语言模型、图像生成、自动驾驶的深度网络中间经历过学术界的冷眼、经费的断档、算力的鸿沟又借着数据和芯片的东风一路狂奔。我接触这个领域这些年越来越觉得不理解这段历史就很难真正理解为什么现在的模型长这样为什么有些坑是前人踩过的为什么某些在今天看来理所当然的设计当年竟然要花几十年才被接受。这篇内容我想按自己的理解把从感知机到深度神经网络这条六十多年的演进路径拆开来讲不堆术语也不回避原理尽量让不同基础的读者都能跟上。这既是一篇技术史也是一份“避坑指南”。六十年里反复出现的主题——线性不可分、梯度消失、过拟合、算力瓶颈——今天做深度学习的人依然每天在撞。了解它们最初是怎么被发现、被解决、又被重新发现的比单纯记几个网络结构要有用得多。如果你是刚入门的新人这篇文章可以帮你建立一张技术地图如果你已经在调模型了那这里面的不少细节可能会让你有种“原来如此”的感觉。1. 感知机一切的开端与第一次狂欢1.1 一个神经元能做什么故事要从一个非常朴素的想法说起能不能用机器模拟一个神经元的工作方式生物神经元接收多个输入信号经过加权整合后超过某个阈值就“兴奋”输出一个信号否则就“安静”。1957年前后某位心理学家把这件事简化成了数学模型输入乘以权重求和过阈值判断输出0或1。这就是感知机。放在今天看感知机就是一个最简单的二分类器。它的决策规则是一条直线在二维空间或一个超平面在高维空间把样本分成两类。训练方式也朴素得可爱每次喂一个样本如果预测错了就把权重朝正确的方向调一点点这就是后来被称为“感知机学习规则”的算法。我当年第一次看到这个规则时觉得它简直像小孩认错——错了就改改一点再错了再改。但正是这种极简的机制在当时引来了巨大的关注。因为它是第一个被严格证明可以在有限步内收敛的学习算法前提是数据线性可分也就是说机器真的能“学”出分类规则而不是靠人工编写规则。新闻界一度沸腾媒体开始渲染“会思考的机器”即将诞生。1.2 一场冷静的泼水感知机的计算单元能做什么不能做什么需要冷静分析一下。单个感知机本质上只能处理线性可分问题。所谓线性可分就是存在一条直线/一个平面能把两类样本完全切开。对二维平面上的“与”“或”这类逻辑这没问题。但对“异或”两个输入不同才输出1这种问题单条直线无论如何都切不开。1969年一本著名的书出版作者用严谨的数学论证指出了感知机的这个根本局限。书中还进一步证明单层感知机无法表达异或这类非线性关系。这个结论本身是数学事实几乎没有争议。但它的“附加影响”远远超出了学术讨论很多研究机构开始认为神经网络这条路走不通大规模撤资一批研究者被迫转向符号主义或其他方向。现在回看这段历史有个细节特别值得琢磨作者其实也承认多层网络可以解决非线性问题但他们认为当时没有有效的训练方法。也就是说他们否定的不是“多层网络”这个结构而是“当时的单层感知机”和“未见有效的学习算法”。但在大众传播和经费层面这个区分很快就丢失了神经网络作为整体被打入冷宫。这就是第一次“AI寒冬”。寒冬不是因为某个技术缺陷本身而是因为期望值远远超过了实际能力加上学术界的权威结论被简化传播形成了一刀切的判断。2. 多层网络与反向传播被遗忘的论文和被复活的算法2.1 卡在“如何训练隐层”上的二十年单层感知机不行那多加几层行不行理论上显然行。一个带隐藏层的神经网络可以构造出很多非线性决策边界。但问题是怎么训练它感知机的学习规则只在“输出层有监督信号”时有效。如果中间加了一层隐层隐层的神经元没有直接的正确答案它们的误差怎么算权重该怎么调这个问题卡了将近二十年。上世纪七十年代有研究者已经推导出了可以解决这个问题的算法——反向传播但论文发表在一个不太受关注的会议论文集里加上当时的算力实在太弱实验规模小得可怜这个成果几乎被淹没。这里有必要讲清楚反向传播到底解决的是什么问题。神经网络训练的本质是调整每个权重让损失函数最小。要调权重先要知道“损失对每个权重的偏导数”是多少也就是每个权重对最终错误的“责任占比”。问题是隐层的责任不直接可见它通过下一层、再下一层、最后才传到输出。反向传播的核心思路就八个字链式法则从后往前。它从输出层的误差开始一层一层把梯度回传到前面的层每一层利用后一层的梯度来算自己这一层的梯度。这个贡献被重新发掘后一般追溯到上世纪八十年代中期真正形成完整表述并带来可复现实验的时期。要知道这套操作在今天看来平平无奇——随便一个深度学习框架调用一次.backward()就完成了。但在那个没有GPU、没有自动求导框架的年代用手推公式、用代码一步步写链式求导再在小数据集上验证效果是一件极其繁琐且容易出错的事。反向传播的复活之所以重要不仅因为它给出了训练多层网络的算法更因为它用可复现的实验证明了一件事只要网络能“学”多层结构带来的表达能力就是实打实的。2.2 八十年代的“深度学习”到了上世纪八十年代神经网络迎来第二次热潮。研究者发现带一个隐层的网络只要隐层神经元够多就能逼近任意复杂的连续函数。这个结论后来被称为万能近似定理它给了从业者一个底气不是网络结构不行而是训练算法和算力不行。于是各种应用开始铺开手写数字识别、语音识别初探、简单的时序预测神经网络重新回到主流视野。但我自己在读这段时期的工作时有个很深的感受那个时代的“深度”和今天的“深度”完全不是一回事。当时说的深度网络通常只有一到两个隐层。为什么加不到很深除开算力因素更致命的是训练本身出了问题。网络一深反向传播回去的梯度会逐层衰减或者爆炸。十几层之后前面几层的权重几乎收不到任何有效的梯度信号训练就瘫了。这个现象后来被总结为梯度消失/梯度爆炸。它是压在所有研究者头顶上的一朵乌云。在梯度问题被正式命名之前很多人已经隐约意识到“层数不能太多”但不知道根本原因。有的团队试过在每层加一些归一化操作效果不稳定有的团队试过缩小初始化权重范围稍微缓解但又引发表达能力的下降。这些零散的经验后来汇聚成了一个共识要训练深网络光靠反向传播不够还需要结构设计和训练技巧上的配合。而这条路上的下一个关键节点要等一个简单却极具破坏性的学习算法出现。3. 卷积神经网络视觉任务破局与局部连接思想3.1 为什么全连接不行在CNN真正成熟之前研究者处理图像的主流做法是把图像像素拉平成一长串向量塞进全连接网络。这种做法有两个明显问题。第一个是参数爆炸一张几十乘几十的小图拉平后就有几千维输入到第一层隐层的权重数量就是百万量级再大一点直接塞爆内存。第二个问题是它把图像的空间结构破坏了。图像里相邻像素是强相关的猫的眼睛在左边还是右边耳朵和眼睛的相对位置这些局部特征在拉平之后都变成了无意义的距离关系。CNN的核心思想就是专门针对这两个问题设计的。它假设图像特征具有两个性质局部性一个特征往往只看一小块区域就能判断和平移不变性同一个特征出现在图像左上角还是右下角都应该用同样的过滤器去检测。为了实现这两个假设CNN引入了两个关键操作卷积和池化。卷积的本质是用一个小窗口比如3x3或5x5的卷积核在图像上滑动每个位置的输出是窗口内像素与卷积核的加权和。同一个卷积核在整张图上共享这意味着无论目标出现在哪里同一组权重都能捕捉到它。这种参数共享直接解决了参数爆炸问题同时也天然适应了图像的空间结构。池化则更进一步把一个小区域内的值压缩成一个代表值取最大或平均既能降低分辨率又能让小范围内的轻微位移不影响最终判断。今天的读者可能觉得这些都是理所当然但回到当时从“全连接”转向“卷积共享权重”本质上是一次关于“归纳偏置”的重大转向。所谓归纳偏置就是模型默认“哪些模式更容易出现”全连接网络默认特征可以出现在任何位置且彼此独立而CNN默认特征局部相关且位置可迁移。这个转向的核心价值在于它让模型的结构本身携带了先验知识而不是纯粹靠数据硬灌。3.2 梯度问题的局部突破CNN的早期成功主要体现在手写数字识别等相对小规模的任务上。当时的经典模型后来我们称之为LeNet类的结构已经定义了现代CNN的基本范式卷积层提取特征池化层降维最后接全连接层做分类。在当年的硬件条件下训练这样一个网络已经在算力边缘反复试探。但重要的是这个结构在实验上证明了局部连接共享权重反向传播的组合确实能在真实图像任务上跑出当时最好的成绩。不过必须诚实地说那个阶段的CNN仍然只能算“浅层模型”。层数大概只有几层参数量也很有限。它证明了CNN可以工作但距离“深度学习革命”还有一段路。要等到计算能力大爆发再加上新训练技巧的出现CNN的潜力才真正被释放出来。这里有一个挺有意思的历史细节在深度学习大红大紫之前CNN的思想并没有完全中断一批做视觉的研究者一直在用类似卷积的结构做工程只是没人叫它深度学习。这让我想到一个规律技术路线的生命力往往不在于它当下火不火而在于它是否解决了某个领域的核心痛点。计算机视觉的核心痛点就是“高维、强空间相关”卷积结构天生对症所以它不会死只是等待时机。4. 深度学习的复兴预训练、ReLU与算力东风4.1 三个关键推手到了二十一世纪初神经网络领域发生了几件看似互不相关、但最终汇成洪流的事。第一件是深层网络的“预训练微调”策略的出现。研究者发现如果先用无监督方式逐层训练网络把每层当成一个自编码器来重建输入再整体用有监督数据微调训练深度网络的成功率大幅提高。这等于给深度网络的训练找到了一根“拐杖”。第二件是激活函数的更换。经典的sigmoid函数输出范围0到1在反向传播时有一个致命弱点当输入绝对值较大时导数趋近于零梯度乘上几次就消失了。ReLU线性整流单元就简单粗暴得多输入大于0时导数恒为1小于0时恒为0。就是这样一个简单的改动让梯度在深层网络中得以顺畅传递。很多人第一次看到ReLU时会觉得这也能算激活函数但实际效果就是好就好比一个水管工发现与其费劲清理管道的每一处堵塞不如直接把管子换成更粗的直管。第三件则是GPU的大规模引入。神经网络训练的本质是大量矩阵运算而GPU天生就是为并行矩阵运算设计的。一块GPU可以同时处理成千上万个线程的乘法累加训练速度比CPU快了几个数量级。这个变化的意义怎么强调都不过分很多在理论上可行的算法因为算力不足而被判死刑算力一上来同样的算法立刻起死回生。深度学习的复兴与其说是理论的胜利不如说是三个拐杖同时到位后的必然结果。4.2 从“手工特征”走向“端到端”在深度学习复兴之前计算机视觉的主流做法是“手工特征分类器”先人工设计边缘检测、颜色直方图、纹理描述子等特征再把特征喂给支持向量机这类分类器。这套流程的问题是特征设计完全依赖领域专家的经验和运气而且一旦任务变化特征要重新设计。深度学习的核心范式转变是“端到端学习”原始像素进去预测结果出来中间的特征表示由网络自己学习不再需要人工定义。这个转变在2012年带来了标志性的突破一个深层的CNN在图像分类竞赛中把错误率大幅压低远超此前所有手工特征方法。这件事的冲击力在于它不是高几个百分点的问题而是直接把“深度学习”这个概念推到了聚光灯下。此后几年几乎所有的视觉任务都开始倒向深度学习。我后来在复现那段时期的实验时有一个很直观的感触深度学习模型不像传统方法那样有清晰的“中间产物”它更像一个黑盒。调参、改结构、看效果、再调参这种经验驱动的工作方式和过去“理解原理推公式做实验验证”的工程文化完全不同。这也解释了为什么深度学习在学院派内部曾长期不受待见——它不够“优雅”不够“可解释”。但现实世界的任务不会等优雅的数学出现能打就是硬道理。5. 从深度到更深残差结构、批归一化与训练的艺术5.1 退化问题不是过拟合是训练不动随着深度学习被大规模应用一个新的问题浮出水面网络越深效果不一定越好。直觉上深层网络应该至少不比浅层网络差因为它可以把浅层网络学到的功能原封不动地实现出来多余的层学一个恒等映射就行。但实验显示层数加到几十层后训练误差反而上升了。这不是过拟合因为训练误差本身就高了——模型根本没有把训练集学好。这个问题被称为“退化问题”。它的本质是优化困难深层网络的损失函数景观极其复杂用梯度下降很难找到那个最优解。换句话说不是模型容量不够而是训练算法在巨大的搜索空间里迷路了。这是继梯度消失之后深度学习的第二个“深度诅咒”。5.2 残差和归一化的救赎解决退化问题的关键创新之一是残差结构。它的想法极其简单与其让一个层去直接学习目标映射不如让它去学习“目标与输入的差”残差。用公式表达就是原本要学F(x)现在改成学F(x)x而网络只需要学F(x)。这个“加一个捷径连接”的微小改动让梯度可以通过捷径直接流向前层即便后面的层学习不力网络也能退化为恒等映射。实验效果立竿见影上百层的网络开始可以稳定训练效果随着层数增加持续提升。另一个同样重要的创新是批归一化。它的机制相对直白在每一层激活前把当前batch的输入做标准化让均值变为0、方差变为1然后再用两个可学习的参数做缩放和平移。这样做最大的好处是让每一层的输入分布保持稳定不会随着迭代剧烈漂移。批归一化的出现几乎成了标配它能加速收敛、降低对初始化参数的敏感度甚至可以在一定程度上缓解梯度消失。我在翻看这阶段论文时发现一个有趣现象很多创新都不是“一拍脑袋想出来的”而是研究者对着实验曲线反复挣扎后总结出来的经验性技巧。残差和批归一化最初都缺乏严格的数学解释但就是“好用”。这也给后来者一个启示在深度学习领域实验现象常常走在理论前面。与其等一个完美的理论解释再动手不如先让模型在工程上跑起来再用实践去倒推理论。5.3 正则化与训练技巧的精细化随着模型越做越大过拟合成为工程中最常见的敌人。早期的应对是经典的正则化手段L2权重衰减让权重趋向较小的值以及数据增强对训练图片做随机旋转、裁剪、翻转等变换制造更多样化的训练样本。这些方法今天仍然是基本功。但深度时代还催生了一些更独特的技巧其中最有名的就是Dropout。Dropout的做法是训练时随机让一部分神经元失活输出置零相当于每次前向传播都在训练一个不同的子网络。测试时再用全部神经元把多个子网络的预测平均起来。这个概念可以类比成一支团队平时故意拆成好几个小组分别训练比赛时全员合体综合能力反而更强。Dropout在很长一段时间里是防止神经网络过拟合的头号武器直到后来批归一化和更先进的数据增强技术逐渐分担了它的职责。训练技巧的精细化还体现在一个非常不起眼的环节——权重初始化上。在深度学习早期初始化是个玄学。如果权重初始化得太小梯度在前向传播中会逐层缩水初始化得太大信号又会爆炸。Xavier初始化和He初始化就是为了解决这个问题而设计的根据每层的输入维度和输出维度把权重的方差控制在一个合适的范围保证前向传播和反向传播的方差大致稳定。我第一次调模型时完全不理解为什么换个初始化方法训练就稳了后来才明白这不只是起点好坏问题而是模型能否在有限的计算预算内真正学起来的根本条件之一。6. 序列建模与大模型时代RNN、注意力与Transformer6.1 从短时记忆到长时依赖图像是空间数据文本和语音则是序列数据。如何处理序列是神经网络演进的另一条主线。早期处理序列主要靠循环神经网络——每个时间步读取一个输入同时把上一个时间步的隐藏状态传递下来。这个结构天然适合序列因为它保证了“记忆”的传递。但RNN有一个先天麻烦随着序列变长早期信息要么被后面的信息冲淡要么在反向传播时梯度逐层指数级变化导致“长时依赖”学不到。换句话说它只能记住很短距离的信息。为了解决这个问题研究者发明了带门控机制的变体。门控机制的思路是让网络自己决定“记住什么、忘掉什么、输出什么”。比如输入门决定新信息写入多少遗忘门决定旧记忆保留多少输出门决定当前时刻暴露多少。经过这样改造的RNN单元可以相对稳定地捕捉几十步以上的依赖一时成为机器翻译、语音识别等领域的主力。但即便如此RNN类模型的并行性很差时间步必须逐个计算无法充分利用GPU的并行优势。这在模型规模变大后成为严重瓶颈。6.2 注意力机制让每一层直接“看到”全部输入注意力机制的出现从根本上改变了序列建模的玩法。它的核心想法是在处理当前词时不要只依赖上一个时间步的隐状态而是让模型有权直接“回看”输入序列中的任意位置并根据相关性给不同位置分配不同权重。换句话说网络不再被强制按顺序消化信息而是学会了主动聚焦。这个想法最早的实现形式还带着RNN的影子在编码器-解码器框架中解码器每一步计算一个注意力权重决定编码器输出的哪些位置需要重点关注。效果立竿见影但很快研究者意识到一个更大的可能既然注意力机制这么强为什么不直接抛弃循环结构只用注意力来建模整个序列这就是Transformer的核心创新。它用自注意力机制替代了循环结构序列里每个元素都能直接和序列里所有其他元素计算相关性不再有距离的概念。这一改动的直接好处是整个序列可以同时并行计算训练速度大幅提升同时长距离依赖从“逐步传递”变成了“一跳直达”建模能力显著增强。Transformer一出现很快就取代了RNN成为机器翻译的新SOTA然后席卷了几乎所有自然语言处理任务。6.3 预训练-微调范式与规模效应Transformer带来了结构上的革命但真正引爆大模型浪潮的是它和“预训练-微调”范式结合后的化学反应。所谓预训练是在海量无标注文本上训练一个模型做“自监督任务”——比如随机遮住句子中的某些词让模型根据上下文预测被遮住的词。这个任务不需要人工标注而互联网上的文本浩如烟海模型可以从中学到大量的语法、事实和推理模式。经过预训练的模型再在特定任务上做小规模微调效果远超从头训练。这个范式其实和早期“逐层预训练微调”的思路一脉相承先让模型获得通用的表示能力再花费少量资源适配具体任务。只不过Transformer的出现让预训练的效率和上限都大大提高了。随后发生的事是典型的“规模效应”研究者发现随着模型参数量、训练数据量、计算量的增长模型能力呈现出一种平稳而持续的提升。原本被认为AI做不到的很多任务像写代码、做数学题、多轮对话竟然在大规模模型上自发涌现出来。这背后的原理至今还远未被完全理解但一个基本共识已经形成规模本身就是一种质变。这也把神经网络的历史从“研究如何设计更好的结构”推进到了“研究如何更高效地扩大规模、收集数据、调配算力”的工程时代。7. 回顾与启示我在这六十年里看到的三件事7.1 技术的起伏不只因技术本身感知机时代的泡沫破裂不是因为感知机毫无价值而是因为大众媒体的过度渲染让公众期望脱离了现实。深度学习今天的成功也不完全是因为理论突然变完美而是数据、算力、算法三股力量恰好汇合。同样的模型思想换个时间窗口命运可能完全不同。这种认知对从业者挺重要当你看到某个热点迅速火爆或迅速退潮时不妨先想想它背后的推动力到底是什么是技术硬实力、数据红利、资本周期还是单纯的环境变化。7.2 “旧想法新条件”是常态回看六十年很多所谓的新突破其实都踩着过去的骨架。反向传播的核心思想来自链式法则这是几百年前的微积分知识CNN的局部连接思想源远流长预训练-微调与早期逐层训练同宗同源。旧想法本身没有过时它们只是在等待条件的成熟。这意味着阅读老论文并不是考古行为有时候最落伍的技术恰好是下一个时代最需要的候选者。7.3 深度的敌人始终是优化从早期多层网络训不动到后来深层网络退化再到如今大模型训练中的各种不稳定性深度学习的核心矛盾一直不是“模型不够强”而是“模型难以被优化”。残差、归一化、初始化、自适应学习率——这一大堆训练技巧本质都是在和优化难度搏斗。未来如果出现一种从根本上更稳的训练范式它给深度神经网络带来的推动力可能比任何结构创新都更大。7.4 一条被反复验证的工程法则真正让我对这段历史产生敬畏的是那些看似“不优雅”的工程细节。ReLU只是把负数截断成0何曾想过它比精心设计的激活函数好用这么多批量归一化只是标准化分布它成了几乎每个模型的标配。这些改动小到不值得单独发论文但它们对整个领域进步的贡献不亚于任何结构层面的发明。我自己的体会是在这个领域动手试永远比口头争论有效。与其争论某个机制的数学优雅性不如在真实任务上跑一版对比实验让数据说话。这条法则从感知机时代一直用到现在依然好使。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑