跳到主要内容

神经网络与训练 — 用什么来学那条规律

这一章讲三件事: 用什么来装那条规律(神经网络到底是什么东西)、 怎么把它调对(训练在做什么)、以及一个诚实的交代—— 这套东西为什么到今天仍然是手艺,不是科学。 只需要第 01 章的两个结论打底,遇到的生词都在当场解释。

1. 先看现象:没人教它规则,它却会了

上一章的结论是:必须学一条规律。但「学」这个字很含糊,先把它变具体。

想一件你熟悉的事:分辨猫和狗的照片。

没人能写出「什么是猫」的规则——你试试看:写「有胡须」不行(狗也有), 写「尖耳朵」不行(有的狗也尖)。可一个三岁小孩看几十张图就会了。

机器这边是同一回事:

我们不写规则,只给它看大量「这是猫 / 这是狗」的例子,让它自己找出区别。1

这套做法有个正式名字,叫机器学习: 不写规则、只给例子、让它自己找出区别。 今天你听到的绝大部分「AI 在学」,说的都是这一件事。

这一章要回答的就是:它「自己找」到底是怎么找的?

2. 神经网络是什么

这一节回答:那条规律被装在什么东西里。

神经网络发明于 20 世纪 40 年代,当时的样子和今天非常接近, 它是照着大脑的工作方式做的一个极简仿造品。

书里给的对照是:人脑大约有 1000 亿个神经元(神经细胞), 每个都能向另外数千个传电信号;某个神经元此刻放不放电,取决于它收到的信号, 而不同的连接贡献的分量不一样2

人工神经网络照搬了这个骨架,但把它彻底变成了算术:

大脑里人工神经网络里
神经元放不放电、放多强一个数
某条连接的分量大小权重(一个数,可正可负)
信号一层层传下去数一层层算下去
一辈子的经历训练

权重就是第 01 章说的参数。 一堆可以调的数,调对了这个网络就「会」了。

一个神经元在算什么

这是全章最该亲手记住的一步,只有三个动作:

上一层的几个数
│ 各自乘以自己那条连线的权重

全部加起来
│ 再加上一个固定的数(叫偏置,作用是把结果整体抬高或压低)

过一道「激活函数」 ← 关键在这一步


得到一个数,传给下一层

图说:整个网络就是这个动作重复几百万遍。没有 if,没有规则,没有查表。

前两步只是乘法和加法。那个「偏置」就是一个固定的数,作用是把结果整体抬高或压低—— 它让这个神经元可以「本来就偏向说是」,或者「本来就偏向说不是」。

关键在第三步:激活函数(夹在两层之间的一道小工序)3。 它存在的唯一理由是破坏「叠多少层都等于叠一层」

为什么会「叠多少层都等于叠一层」?乘法和加法这类运算,叠一百层和叠一层效果一样—— 你把一个数反复乘几次再加几次,最后总能用「乘一次加一次」表示出来。 所以如果每层都只做乘加,网络无论多深都会塌回成一层,复杂的东西一样学不了。

能打破这一点的运算,数学上就叫非线性。 激活函数就是干这件事的那道工序。

书里用的那个非线性函数叫 ReLU,规则简单到一句话: 小于 0 就取 0,大于 0 就原样放过去。

所以「深」才有意义。 每层之间夹一道 ReLU,层与层就不会塌成一层。

「层数很多」这件事也有个正式名字,叫深度学习——「深」指的就是层数多, 没有别的含义。第 01 章那个认手写数字的网络有 11 层,ChatGPT 有约 400 层。

还有一个容易搞混的点:权重每个神经元各不相同,但激活函数全网通常共用一个。 换句话说,训练调的是权重,不是函数的形状。

主走查:拿两个数亲手走一遍

这条走查会贯穿全章——第 4、5、6 节都会回到它。 下面每一个数都是为演示编的,不是真实数值,但每一步怎么算是真的。

造一个最小的网络:两个输入,一个神经元,两个权重。

输入 0.6 0.2
权重 0.5 −0.3 偏置 0.1
│ │
▼ ▼
加权求和 0.6×0.5 + 0.2×(−0.3) + 0.1
= 0.30 + (−0.06) + 0.1 = 0.34


过 ReLU 0.34 大于 0 → 原样放过


它吐出来的数:0.34

图说:这就是上面那三个动作的全部。ChatGPT 是这件事重复几千亿遍。

现在给它一个正确答案:1.0。 0.34 离 1.0 差了 0.66; 把这个差平方一下得 0.436 —— 这个数就是第 4 节要讲的东西。

再试一下「挪一点点」是什么感觉: 把第一个权重从 0.5 改成 0.51, 输出从 0.34 变成 0.346,那个平方从 0.436 降到 0.428降了,说明这个方向挪对了。 训练要做的,就是把这一下重复几万亿次。

最终,整个神经网络其实就是一个数学式子,只是写出来非常长—— ChatGPT 那个式子有数十亿项4作为对照,一条中学物理公式只有三五项。 而它有 1750 亿个权重,一项里常常带着好几个权重, 所以「项数」比「权重数」少一到两个数量级。

3. 「认出来」到底是怎么回事

这一节回答:为什么它对典型输入很稳,对边缘输入很飘。

先看现象

一张标准的猫照,它绝不会认错。一张穿着猫咪衣服的狗,它就说不准了5

这不是偶然,是这套机制的结构性特点。

原理:每个答案占住一整片输入

先打个比方。想象平面上散着几家咖啡店,你站在任意一点,总是走向最近的那家。 于是整个平面被自然地划成几块——每一块里的所有点,都走向同一家店。

这样一块一块的归属区,书里叫吸引子6:一个答案「吸」住的那一整片输入。 比方到此为止,下文一律用这个名字。

认东西就是这件事:把每个输入看成空间里的一个点,判断它落进哪个吸引子。

只不过这个空间维数很高:认手写数字时图是 28×28 的像素格, 每个像素的深浅算一个坐标轴,所以这个空间有 784 个坐标轴7

书里拿一个玩具任务(找最近的点)做了演示,结论对实际使用极有价值:

每个吸引子的中心,答案基本总是对的; 到了两个吸引子的交界上,网络「很难下定决心」,输出就开始乱。

这一句解释了大量日常现象:典型输入很稳,边缘输入很飘。

网络有多大:三个数字建立实感

任务神经元个数层数
玩具级的「找最近点」17一两层
认手写数字219011 层(其中「干正事」的核心层只有 4 层)8
分辨猫和狗60 6509书里没给

对照一下:ChatGPT 的核心层约 400 层,是那个认手写数字的网络(4 层)的一百倍。 它的权重有 1750 亿个——注意这里单位换了: 神经元是节点,权重是节点之间的连线,连线远多于节点。

它到底挑出了什么

书里做了一件很有价值的事:把一张猫图输进去,逐层看每个神经元的状态。

  • 第 1 层:很多能被人一眼读懂——「不带背景的猫」「猫的轮廓」;
  • 第 10 层:已经完全看不懂了10

所以只能笼统地说「网络在挑某些特征」——就是「图上哪些地方值得看」这类东西 (也许尖耳朵是其中之一)。但这些东西绝大多数没法用语言描述出来

有个观察值得记一笔:一些网络的前几层挑出的东西(比如物体边缘), 似乎和我们所知的大脑视觉处理第一层挑出的东西相似。作者用词很克制,只说「似乎」11

至于「我们能不能解释网络在干什么」,作者给了两个可能,并且没有下结论:

  1. 也许它本来就没有捷径可解释——除了一步步跟踪,没办法总结它做了什么;
  2. 也许只是我们还没找到那条能概括它的规律12

第一个可能是全书的理论支柱,第 05 章会专门讲。

4. 训练:把错误一点点压小

这一节回答:为什么训练要跑那么久、烧那么多卡。

先看现象

训练一个模型不是「装个软件」,是几百上千张显卡连续跑几周。为什么这么费劲?

因为训练要做的事,是把上亿个权重一个一个地、反复地往正确方向挪

那个循环

做什么
1喂一批例子进去
2看网络的输出和正确答案差多少——这个差距叫损失
3反推:每个权重往哪个方向挪一点点,能让损失变小
4真的挪那一点点,再来下一批

书里用的损失是最简单的一种:输出值与正确值之差,平方之后全部加起来13。 平方是为了让正负误差都变成正数,而且大误差被放得更大。

主走查接着走:那个 0.436 怎么变小

回到第 2 节那个两输入的小网络(那些数是为演示编的)。上面这四步套到它身上,长这样:

在这个小网络上具体是什么
1喂进 (0.6, 0.2),正确答案是 1.0
2它吐出 0.34;损失 =(1.0 − 0.34)² = 0.436
3反推:两个权重都往上挪,损失会变小
4两个权重各挪 +0.05,输出就往上爬 0.6×0.05 + 0.2×0.05 = 0.04

走 16 步: 输出从 0.34 一路爬到 0.98,损失从 0.436 掉到 0.0004—— 只剩原来的千分之一。 这就是那条下降曲线的实际长相。

第 17 步就冲过头了:输出会跨过 1.0 变成 1.02,损失不降反升。 这就是为什么每步只能挪一点点——步子迈大了会一直在正确答案两侧来回跳。

整个过程可以画成一条曲线:损失一路下降,最后趋平。 趋平在一个足够小的值就算成功,否则说明该换网络结构了。

「下山」这个比喻,以及它的坑

把损失想成一片山地的海拔,每个权重是一个坐标轴。 训练就是从随机一点出发,朝最陡的方向往下走

书里紧接着给了这个比喻的坑:

就像水从山上流下来,只能保证到达某个低洼处——「一个山湖」, 不一定是整片山地的最低点。14

这就是所谓「掉进局部最优」: 你以为训完了,其实只是掉进了半山腰的一个水坑。

5. 凭什么能一次算清 1750 亿个方向

这一节回答一个本该让你觉得不可思议的问题。

第 2 节那个小网络只有两个权重,「往哪挪」试一试就知道:把第一个往上碰一下看损失变没变, 再把第二个往上碰一下——两次就问出了两个方向。

可 ChatGPT 有 1750 亿个权重。照这么一个一个碰,碰完一轮要跑 1750 亿遍网络; 而训练要这样碰几万亿次。这条路根本走不完。 那它是怎么办到的?

台阶一:一个权重的改动,是一路乘出去传到误差的

先看清「影响」是怎么传的。第 2 节那个网络只有一层,所以权重一改,输出立刻就变了。 可真实的网络有很多层:第 1 层改了一丁点,这一丁点会被第 2 层乘上它的权重, 再被第 3 层乘上它的权重……一路乘到最后,才变成「最终误差变了多少」。

台阶二:所以「这个权重该往哪挪」= 一串乘法连乘

把这条路上每一截的「乘多少」按顺序乘起来,就是这个权重对最终误差的影响。 拿一个三层的小网络看具体的数(这些数是为演示编的):

最后一层的误差 0.66
│ 乘上第三层那一截:0.5

倒推到第二层 0.66 × 0.5 = 0.33
│ 乘上第二层那一截:0.2

倒推到第一层 0.33 × 0.2 = 0.066

图说:第一层那个权重「该挪多少」,答案就是这条链一路乘下来的 0.066。

台阶三:靠后的那几截,所有权重都在共用

关键在这里。第一层的每一个权重,要算自己那条链, 都得先乘上「第三层那一截 0.5」和「第二层那一截 0.2」——而这两个数是同一个数。

第一层有一亿个权重,这两截就要被原样用上一亿遍。重复算一亿遍同一个乘法,纯属浪费。

台阶四:于是从后往前扫一遍,把共用的存下来

办法就摆在那儿了:从最后一层往前扫,每扫过一层就把这一层那一截算出来存着, 前面所有权重直接拿去用,不必各算一遍。

扫一遍,1750 亿个方向全部到手。倒推之所以不比正推贵多少,全部原因就在这里: 共用的那几截只算了一次。

给它两个名字

上面那条「一串乘法连乘」的做法,在微积分里有个名字,叫链式法则。 它管的正是「一个东西经过好几层影响到最后,总影响是多少」这件事。

而按「从后往前扫一遍、把共用的那几截存下来」这样实现出来,这套做法叫反向传播这一节从头到尾讲的,就是这个名字底下的那件事。

书里点出了一个容易被忽略、却极其关键的工程事实15:

反向传播的计算量,只比正着算一遍多一个很小的倍数。

这句话是整个深度学习在计算量上成立的原因。 如果倒推要花正推一千倍的力气,今天这些模型一个也训不出来—— 训练本来就要几百张卡跑几周,再乘一千就是几十年。

6. 2012 年那个反直觉的发现

这一节是全书思想性最强的段落之一,中文版导读序也专门摘出来引用了16

常识会怎么想

要调的东西越多,应该越难调——这是常识。

事实相反

深度学习在 2012 年前后突然起飞,原因恰恰是发现了相反的事:

权重多的时候,把误差降下去反而比权重少的时候更容易。

原因在于「能往下走的方向」有多少:

权重少 → 能往下走的方向就那么几个 → 一掉进山湖,那几个方向全被堵死,爬不出来
权重多 → 能往下走的方向多到数不清 → 几乎总有一条还没被堵死,可以继续往下走

图说:这就是「大模型反而好训」的直觉来源。

主走查最后一步:把方向数出来

这话听着玄,数一下就实了(还是第 2 节那个小网络,数是编的)。

先约定一个最粗的问法:每个权重只有「往上挪」和「往下挪」两种选择, 那么「往下走的方向」一共有多少条?

有几个权重能往下走的方向有几条掉进坑里爬不出来的可能
2 个(第 2 节那个网络)2 × 2 = 4 条四条全堵死,就出不去了——很容易发生
6 个2 的 6 次方 = 64 条六十四条全堵死,难多了
1750 亿个多到写不出来几乎总能找到一条路继续往下

换句话说:有时候用神经网络解决复杂问题,比解决简单问题还容易。

补充(不在书里): 作者说的「2012 年左右的重大突破」,指的是那一年的论文 《ImageNet Classification with Deep Convolutional Neural Networks》 (Krizhevsky、Sutskever、Hinton,NIPS 2012)——一个深层网络在图像识别竞赛上 大幅甩开了传统方法。书里只说「2012 年左右」,没有点名是哪一件事。 中文版导读序补了这段行业史17。 来源:NeurIPS 论文集 https://papers.nips.cc/paper_files/paper/2012/hash/c399862d3b9d6b76c8436e924a68c45b-Abstract.html (查阅于 2026-08-25)。

判断(我们的,不是书里的): 这条观察是后来那套规模法则(把「机器做多大、 喂多少字」和最终效果的关系写成一条公式)在直觉层面的前身, 也解释了这个行业为什么长期押注「先做大」—— 不只是因为大模型能装更多东西,而是因为大模型更好训如果错,会错在: 这只解释了「为什么大的训得动」,没解释「为什么大的效果好」。 把两件事混为一谈,就会得出「越大越好」的过头结论——而第 05 章会说明这个结论有硬上限。

补充(不在书里):这条直觉后来被写成了公式,又被修正过一次。

  • 后来被写成了公式: 2020 年的《Scaling Laws for Neural Language Models》(Kaplan 等) 把「机器多大、数据多少、投入多少计算」和最终误差的关系写成了一条公式。 来源:https://arxiv.org/abs/2001.08361(查阅于 2026-08-25)。
  • 修正: 2022 年的《Training Compute-Optimal Large Language Models》(Hoffmann 等, 通称 Chinchilla)指出当时的大模型普遍训练不足—— 模型规模和训练数据量应当同比例放大,「模型每翻一倍,数据也该翻一倍」。 来源:https://arxiv.org/abs/2203.15556(查阅于 2026-08-25)。

所以「先做大」这句话今天要改成「大小和数据一起配平」。 这两篇都早于本书(2023 年 2 月),但书里没有提。

一个诚实的补充:没有「正确」的那组权重

同一个任务,通常有很多组不同的权重,表现几乎一样好。 训练过程里的随机选择,决定了你落到其中哪一组18

它们在训练数据覆盖到的范围内表现一致。可一旦超出这个范围—— 行话叫外插(拿学过的规律去套没见过的情况)——结果可能天差地别

哪一组是「对」的?没法确定。 它们都和已有数据吻合, 只是有些「在没学过的地方怎么办」的方式,在人看来更合理。

判断(我们的,不是书里的): 这一段是「模型为什么会在没见过的输入上突然乱来」 最本质的解释,比「训练数据不够」深一层: 不是数据不够,是数据在原理上就管不了范围之外的行为。 同一批数据能训出无数个「在数据内一致、在数据外分道扬镳」的模型。 如果错,会错在: 如果某种约束手段能可靠地管住范围之外的行为,这个说法就要减弱。

7. 训练是一门手艺:书里的九条经验

作者用了整整一节讲这件事,开头就定了调:

这基本上是一门艺术。 大多数做法是试错试出来的,慢慢攒成了一门「学问」19

九条经验,按「先定什么、再定什么」排:

#经验说明
1同一种结构能干很多不同的活看起来毫不相干的任务,往往同一种网络结构都能用
2让它自己学,别替它分步骤早期以为该「让网络少做事」(先把语音切成音素再转文字);后来发现一头喂原始输入、另一头直接要最终答案,反而更好20
3简单零件 + 自己组织,胜过塞进现成的成套做法把复杂零件硬塞进网络、逼它照某套固定步骤办事,大多数时候不划算
4但给一点结构上的暗示仍然有用处理图像用「只连相邻」的排布;处理语言用「能往回看」的排布——后一种第 04 章细讲
5多大算够,只能试太小就是学不会;过了某个尺寸就没问题。中间夹一个窄层(逼所有信息挤过较少的神经元)常能让网络更小21
6真正的难点是搞到数据实际工作里大部分力气花在拿数据、准备数据上,不是在设计网络
7反复看和轻微变形都有效,而且便宜同一批例子反复展示是标准做法;「变化」也不必复杂——图像稍微改一改就「像新的一样好用」22
8连「怎么训」本身也能交给机器去试损失怎么算、每步挪多远、一次喂多少道题——这些是人事先定的设定,不是训练出来的,叫超参数;而定它们本身也能交给机器去试
9能同时算多少数,就是瓶颈绝大部分工作是同时算一大堆数,而显卡正是干这个的,所以训练规模常常卡在有多少张卡23

ChatGPT 在第 6 条上占了大便宜

第 6 条(数据难搞)对 ChatGPT 几乎不成立,因为它的训练题目可以自动出:

拿一段现成的文字 → 把结尾遮住 → 遮住的那部分就是标准答案

图说:不需要任何人工标注。互联网上每一段文字都是一道现成的题。

行话把这种「不需要人一条条地标出正确答案」的学法叫无监督学习24

这是 GPT 路线最被低估的优势。中文版导读序把这点讲得更透: 选择「一次添加一个词」这种结构,目的不是为了做生成任务, 而是为了在没人标出正确答案的数据上学习——GPT-1 那篇论文的标题就说明了这一点25

那个标题里有两个词值得拆开看。生成式就是第 01 章那件事——一次往下续一个词。

预训练:先拿海量文字把它整个训一遍,之后再针对具体用途去调。 标题连起来就是「通过生成式预训练改进语言理解」——这本书讲的绝大部分,是「先」的那一段。

作者认为将来会变的地方

书里留了三处「现在这样不代表以后这样」26:

  • 现在训练用的是 32 位或 16 位的小数,而8 位甚至更少可能就够—— 也就是说,每个权重记多细并不是重点;
  • 现在是「结构固定,只改连接强弱」,而能改结构本身的方案可能最终更好;
  • 训练基本是排队进行的,大部分网络在大部分时间里闲着—— 因为现在的计算机把「存东西的地方」和「算东西的地方」分开了, 而大脑里存东西的地方,本身就是算东西的地方。

8. 可带走的

  1. 网络里没有规则,只有权重;规则是训练出来的副产品;
  2. 一个神经元 = 加权求和 + 偏置 + 非线性,非线性是让「深」有意义的那道工序;
  3. 认东西 = 判断输入落进哪个吸引子(一个答案「吸」住的那一整片输入); 吸引子中心很稳,两个吸引子的交界处很飘——边缘输入不可靠的总根源;
  4. 训练 = 反复「算错在哪 → 每个权重挪一点」,靠链式法则一次算清所有方向;
  5. 反向传播只比正推贵一个小倍数(共用的那几截只算一次),这是整件事在计算量上成立的前提;
  6. 2012 年的反直觉发现:权重多反而更好训——权重多,能往下走的路就多到几乎堵不死;
  7. 同一批数据能训出无数个在数据外分道扬镳的模型,没有哪个更「正确」;
  8. 训练是手艺:一头喂原始输入、一头要最终答案,胜过替它分步骤;数据获取才是主要难点;超参数靠试;
  9. ChatGPT 靠自动出题绕开了标注成本,这是它能吃下万亿级文字的前提。

9. 原文地图

主题原书章原文位置
不写规则、只给例子机器学习和神经网络的训练text/08-fm.txt:19(搜「胡须」)
神经网络的年代与来历神经网络text/07-fm.txt:31(搜「1998年」)
大脑侧的对照数字神经网络text/07-fm.txt:19(搜「1000亿个神经元」)
激活函数神经网络text/07-fm.txt:84(搜「Ramp」)
吸引子与地盘划分神经网络text/07-fm.txt:34(搜「吸引子」) · text/07-fm.txt:49(搜「沃罗诺伊图」)
网络规模的实感神经网络text/07-fm.txt:147(搜「2190个神经元」)
逐层可视化与不可解读神经网络text/07-fm.txt:144(搜「尖尖的耳朵」) · text/07-fm.txt:174(搜「计算不可约的」)
损失与下山机器学习和神经网络的训练text/08-fm.txt:58(搜「损失函数」) · text/08-fm.txt:86(搜「山湖」)
反向传播机器学习和神经网络的训练text/08-fm.txt:89(搜「链式法则」)
2012 年的反直觉发现机器学习和神经网络的训练text/08-fm.txt:92(搜「2012年」)
外插行为管不住机器学习和神经网络的训练text/08-fm.txt:104(搜「外插」)
训练是一门艺术神经网络训练的实践和学问text/09-fm.txt:16(搜「一门艺术」)
端到端神经网络训练的实践和学问text/09-fm.txt:25(搜「端到端」)
窄层与感知机神经网络训练的实践和学问text/09-fm.txt:49(搜「挤压」)
数据增强神经网络训练的实践和学问text/09-fm.txt:58(搜「数据增强」)
自动出题(无监督)神经网络训练的实践和学问text/09-fm.txt:61(搜「无监督学习」)
算力瓶颈神经网络训练的实践和学问text/09-fm.txt:76(搜「GPU」)

Footnotes

  1. 出处:「机器学习和神经网络的训练」第 19 段(text/08-fm.txt:19,搜「胡须」)。原文:构建区分猫狗的网络时「不需要编写一个程序来(比如)明确地找到胡须,只需要展示很多关于什么是猫和什么是狗的样例」。

  2. 出处:「神经网络」第 19 段(text/07-fm.txt:19,搜「1000亿个神经元」)。

  3. 出处:「神经网络」第 84 段(text/07-fm.txt:84,搜「Ramp」)。原文:「计算只需要进行矩阵乘法和矩阵加法运算。激活函数 f 则使用了非线性函数(最终会导致非平凡的行为)。」Ramp 是这个函数在作者自家语言里的名字,业界通称 ReLU。

  4. 出处:「神经网络」第 99 段(text/07-fm.txt:99,搜「数十亿项」)。作者反复强调:每个神经网络「都只对应于某个整体的数学函数」,ChatGPT 那个「实际上有数十亿项」。

  5. 出处:「神经网络」第 141 段(text/07-fm.txt:141,搜「猫咪衣服」)。原文举的正是「穿着猫咪衣服的狗怎么分」。

  6. 出处:「神经网络」第 34 段(text/07-fm.txt:34,搜「吸引子」)。

  7. 出处:「神经网络」第 49 段(text/07-fm.txt:49,搜「沃罗诺伊图」)与第 49 段(text/07-fm.txt:49,搜「784维」)。补充(不在书里,来自通用知识):沃罗诺伊图(Voronoi diagram)是按「离哪个种子点最近」把空间切块的经典构造,地理学、材料学里也常用。784 = 28×28,是那批手写数字图像的像素数。

  8. 出处:「神经网络」第 25 段(text/07-fm.txt:25,搜「11层」)。原文说那个认手写数字的网络「恰好有 11 层(只有 4 个『核心层』)」。ChatGPT 那个「约 400 个核心层」的数见第 04 章。

  9. 出处:「神经网络」第 147 段(text/07-fm.txt:147,搜「2190个神经元」)与第 147 段(text/07-fm.txt:147,搜「60 650个神经元」)。

  10. 出处:「神经网络」第 144 段(text/07-fm.txt:144,搜「尖尖的耳朵」)。原文:第一层的许多状态「可以被轻松地解读为『不带背景的猫』或『猫的轮廓』」,到第 10 层「就很难解读这些是什么了」。

  11. 出处:「神经网络」第 171 段(text/07-fm.txt:171,搜「视觉处理」)。作者用词很谨慎:「我们多半并不知道」大脑是否使用了类似特征,只说「似乎相似」。

  12. 出处:「神经网络」第 174 段(text/07-fm.txt:174,搜「计算不可约的」)。

  13. 出处:「机器学习和神经网络的训练」第 58 段(text/08-fm.txt:58,搜「损失函数」)。书里用的是「差异的平方和」,行话叫 L2 损失。

  14. 出处:「机器学习和神经网络的训练」第 86 段(text/08-fm.txt:86,搜「山湖」)。

  15. 出处:「机器学习和神经网络的训练」第 89 段(text/08-fm.txt:89,搜「链式法则」);成本的说法见「ChatGPT的训练」第 22 段(text/13-fm-chatgpt.txt:22,搜「反向传播」)——原文是「实际的反向传播通常只比前向传播难一点儿,相差一个很小的常数系数」。

  16. 出处:「机器学习和神经网络的训练」第 92 段(text/08-fm.txt:92,搜「2012年」);导读序的引用见「导读序」第 332 段(text/01-fm.txt:332,搜「刘江」)。导读序作者(图灵公司联合创始人刘江)把这一段单独摘出,称它「很好地介绍了深度学习的意义」。

  17. 出处:「导读序」第 68 段(text/01-fm.txt:68,搜「ImageNet」)。导读序原话:「直到 2012 年,他的博士生伊尔亚·苏茨克维等在 ImageNet 比赛中用新方法一飞冲天,深度学习才开始成为 AI 的显学」。这是导读序作者补的行业史,不是 Wolfram 本人所写。

  18. 出处:「机器学习和神经网络的训练」第 104 段(text/08-fm.txt:104,搜「外插」)。

  19. 出处:「神经网络训练的实践和学问」第 16 段(text/09-fm.txt:16,搜「一门艺术」)。

  20. 出处:「神经网络训练的实践和学问」第 25 段(text/09-fm.txt:25,搜「端到端」)。这也是导读序单独摘引的第二段(出处:「导读序」第 332 段(text/01-fm.txt:332,搜「刘江」))。

  21. 出处:「神经网络训练的实践和学问」第 49 段(text/09-fm.txt:49,搜「挤压」)与第 49 段(text/09-fm.txt:49,搜「感知机」)。书里的补充:没有中间层的网络(叫感知机)只能学直线关系;只要有一个足够大的中间层,原则上就能任意逼近任何关系。

  22. 出处:「神经网络训练的实践和学问」第 58 段(text/09-fm.txt:58,搜「数据增强」)。书里还提到自动驾驶用完真实视频后可以转向模拟环境取数据。

  23. 出处:「神经网络训练的实践和学问」第 76 段(text/09-fm.txt:76,搜「幂律缩放」)与第 76 段(text/09-fm.txt:76,搜「GPU」)。

  24. 出处:「神经网络训练的实践和学问」第 61 段(text/09-fm.txt:61,搜「无监督学习」)。

  25. 出处:「导读序」第 332 段(text/01-fm.txt:332,搜「刘江」)。导读序原话是:「选择这种架构并不是为了做生成任务,而是为了理解或者学习,是为了实现模型的通用能力」,并指出业界很多人当年正是误判了这一点才无视了 GPT 路线。这是导读序作者的判断,不是 Wolfram 本人的论述。

  26. 出处:「神经网络训练的实践和学问」第 79 段(text/09-fm.txt:79,搜「8位」)、第 86 段(text/09-fm.txt:86,搜「网络重写」)、第 90 段(text/09-fm.txt:90,搜「空闲」)。补充(不在书里,来自通用知识):作为对照的「现在用 32 位或 16 位」是当前训练的通行做法,书里只说了「8 位甚至更少可能就够」。