摘要 给机器四组数字,不告诉它规律,它却能把两个旋钮拧向答案。再看神经元熔炉里的曲线:损失下降、界面能跑、真的学会,究竟差在哪里? 黑粉科技 · 2026-10-05
损失能从101.5降到接近0,机器就算“学会”了吗?先看一个只有2个参数的小实验,再回到神经元熔炉的真实界面。小实验解释更新怎样发生,网页截图展示训练状态;两者都不能独自证明一个大模型已经可靠。
第一期说过,神经网络通过训练调整权重;架构、损失和数据处理仍由人设计。这一篇把这句话拆开:权重是什么?调是怎么调的?我们用一段只有两个参数的代码,观察机器怎样拟合给出的四组数据。 不需要数学基础,会读中文就能跟上。
先破除一个误会
“神经网络”这个名字骗了很多人。它听起来像在模拟大脑,实际上它并不是对真实大脑的完整模拟——它更像一台有几百亿个旋钮的调音台。
调音台的工作方式你能想象:输入一段声音,经过一排旋钮的调节,输出另一段声音。旋钮位置决定了输出。如果输出不对,你就伸手拧几下,再听听,再拧。
在训练时,程序按人设计的目标计算梯度,再由优化器更新参数。大型模型可能有数十亿乃至更多旋钮,但“机器自己拧”并不意味着它自己决定了学什么、拿什么数据学,以及什么算正确。
这一篇的全部内容就是解释:机器怎么知道该往哪边拧。

从这两个旋钮往外看,AlexNet论文中的网络有约6000万个参数。参数增加意味着可以承载更复杂的计算,也意味着训练、存储与推理成本改变;它不是一根单独决定能力的进度条。 原始论文
一个神经元在做什么
一个简化神经元可以分成加权求和、加偏置和激活三个动作。先用容易计算的版本理解它,不代表所有激活函数都只是小学算术。
- 加权求和:把每个输入乘以自己的权重,加起来
- 加偏置:再加一个固定的数
- 过激活函数:把结果做一次非线性变换
写成一行就是:输出 = 激活(输入₁×权重₁ + 输入₂×权重₂ + ... + 偏置)
前两步是线性的——直来直去。第三步的激活函数才是关键,它给系统引入了“拐弯”的能力。
沿着调音台再想一步:普通放大只把声音整体乘大或缩小,连续放大仍是同一种比例变化;带门限的处理则会把过低的部分压住,另一些部分保留。激活函数提供的就是这类非线性处理,而偏置像把触发门限挪一个位置。它不一定按声音来工作,但这个场景能说明:为什么增加一种“不是始终按同一比例变化”的动作,才可能改变可表达的关系。下面把两层公式展开,就能检查这种区别。
为什么必须拐弯?因为如果全是线性运算,无论叠多少层,整体效果都等价于一层——异或任务不能用单一线性分界解决;只堆线性层,也无法凭空获得非线性分界。加了非线性,多层才真的比一层强。
把“不拐弯为什么不行”算出来就更清楚。第一层算a×x+b,第二层再算c乘以前面的结果再加d,展开后仍是(ca)×x+(cb+d)。两层只换了直线的斜率和截距,没有凭空变出弯曲的边界。
第2期的异或刚好需要区分对角线两侧的两组点,单条直线做不到。非线性让组合后的边界拥有更丰富的形状;训练再负责寻找有用的参数。这把“模型能表示什么”和“训练能否找到它”接起来了,两者缺一不可。
ReLU是一种常见激活函数:负数变0,正数不变。现代大模型还常用GELU、SiLU及门控变体;深层网络能训练起来,也依赖初始化、归一化、优化器和数据,不能只归功于这一个动作。
“学习”的三个动作
现在看机器怎么自己拧旋钮。整个过程是一个循环,重复成千上万次:
① 前向传播:拿当前的旋钮位置,对输入算一遍,得到一个猜测。
② 算损失:把猜测和正确答案比一比,用一个数字表示“错得多离谱”。这个数字叫损失(loss)。优化器沿着训练目标更新参数;训练损失下降并不自动等于陌生样本表现更好。
③ 反向传播 + 梯度下降:这是最精妙的一步。机器要算出每个旋钮对这次错误负多大责任——这个比喻里的“责任”,更精确地说是梯度:损失对参数微小变化的敏感方向与大小,不是道德式归因。然后每个旋钮朝着能减小损失的方向,挪一小步。
反向传播沿计算关系求梯度;优化器再根据梯度决定怎样更新参数。这是“找方向”和“走一步”两个动作。1986年的经典论文推广了多层网络的这类训练方法,但链式求导和相关研究并非那一年才出现。
现在回到拧旋钮:你先把一个旋钮轻轻往右试一点,发现错误反而增大,就知道附近不该继续往右。梯度记录的是这种局部变化的方向和大小;反向传播利用计算关系把它求出来,并不是把每个旋钮都实际试一遍。学习率再决定拧多大,优化器决定具体怎么走。方向找对而步子太大,仍可能越过较好的位置——下面的学习率对照就会看到这个问题。

“挪一小步”的步子大小叫学习率(learning rate)。步子太大可能震荡甚至发散,太小则可能进展缓慢;实际训练还常采用学习率调度,而不是始终手动保持一个数。
两个参数:让机器自己拟合规律
下面这段代码你可以直接跑(需要 numpy)。我们不告诉机器公式,只给它四组数据,看它能不能自己找出规律:
import numpy as np
# 我们心里的规律是 y = 3x + 2,但绝不告诉机器
x = np.array([1, 2, 3, 4], dtype=float)
y = np.array([5, 8, 11, 14], dtype=float)
w, b = 0.0, 0.0 # 两个“旋钮”,初始值随便给
lr = 0.01 # 学习率:每次拧多小的一步
for step in range(2000):
pred = w * x + b # ① 前向:用当前旋钮猜一遍
error = pred - y # ② 错了多少
loss = (error ** 2).mean() # ③ 损失:误差的平均平方
grad_w = (2 * error * x).mean() # ④ 反向:w 对这次错误负多少责任
grad_b = (2 * error).mean() # b 负多少责任
w, b = w - lr * grad_w, b - lr * grad_b # ⑤ 两个旋钮各朝减小损失的方向挪一小步
if step % 500 == 0:
print(f"第{step}步 损失={loss:.4f} w={w:.3f} b={b:.3f}")
print(f"机器自己找到的规律:y = {w:.2f}x + {b:.2f}")**
2026年9月知识库记录的输出如下,本轮没有重新训练本地大模型:
第0步 损失=101.5000 w=0.550 b=0.190
第500步 损失=0.0064 w=3.066 b=1.805
第1000步 损失=0.0003 w=3.015 b=1.956
第1500步 损失=0.0000 w=3.003 b=1.990
机器自己找到的规律:y = 3.00x + 2.00
请盯住第二列。 损失从 101.5 一路掉到接近 0,而旋钮 w 和 b 自己爬到了 3 和 2 附近。没有人告诉它答案是 3 和 2,它是靠“哪边能让错误变小就往哪边挪”一步步试出来的。
不用相信“它自己找到了”这句话,我们手算第一次更新。四组数据是x=1、2、3、4,对应y=5、8、11、14,预测式为w×x+b。初始w=b=0,四个预测都是0;平方误差平均为(25+64+121+196)÷4=101.5。
为什么用平方?若两条误差分别是+2和−2,直接求平均会得到0,好像都没错;平方后平均是4,错误不会正负抵消。损失不是唯一可以选的函数,但它必须与想解决的任务相配。
| 第一次更新 | 结果 | 它说明什么 |
|---|---|---|
| 对w的梯度 | −55 | 增大w有机会降低当前损失 |
| 对b的梯度 | −19 | 增大b有机会降低当前损失 |
| 学习率0.01后 | w=0.55,b=0.19 | 旧值减去学习率乘梯度 |
| x=1的新预测 | 0.74,目标为5 | 向正确方向走了一步,尚未完成学习 |
这个表不是新增的大模型实测,是直接从前面四组数据和代码公式算出来的。它也说明,梯度不是“这个参数分到某个比例的错误责任”。它是损失对参数变化的局部敏感度,单位和大小都与数据及目标有关。把比喻译回公式,才不会把数学过程想成人在反省。
再改一个数试试。把学习率 lr 从 0.01 改成 0.001:两千步走完,它还停在 w=3.16、b=1.52 的半路上。改成 0.13:损失不降反升,第 10 步是 2386,第 100 步已经到了 5 乘以 10 的 15 次方——步子太大,每一步都跨过了最低点,而且越跨越远。更意外的是 0.11 反而比 0.01 收敛得更快:对这四组数据,安全线就在 0.12 上下,过了线,一步之差从最快变成失控。
这段代码保留了“前向计算→损失→梯度→更新”的骨架,但它是线性回归,不是完整的深度网络或GPT。实际训练还要处理架构、词元、批次、优化器状态、数值精度、分布式通信和数据质量,不能仅用参数倍数推导成本或能力。
还有一道比损失下降更重要的追问:只用这四个点,真的确定了世界的规律吗?直线3x+2能经过它们;另一条式子3x+2+(x−1)(x−2)(x−3)(x−4)也能经过同样四个点,因为乘积在训练点上都是0。
到了x=5,第一条给17,第二条给41。训练数据完全相同、训练点误差都为0,没见过的点却相差24。这是一个手工构造的反例,不是说实际模型会选第二条;它只证明“训练题做完了”不足以推出“新题也会做”。模型结构、数据范围与独立测试,正是为了解决这件事。
这就像驾考时只把练过的几条路线背熟:熟路上每个路口都答对,换一条路未必还会判断。过拟合说的是模型过度贴合训练材料中的细节,泛化说的是遇到没见过的材料还能不能做好。留出的验证数据用于选择设置,最终测试数据尽量不参与这种选择;若反复根据“没见过”的题改答案,那些题实际上也在帮助你备考,独立检查的价值会减少。
为什么叫“深度”学习
把神经元排成一层,多层堆起来,就是深度神经网络。“深度”指的就是层数多。
层数带来什么?逐层抽象。以图像识别为例:第一层可能只认得出边缘和明暗,第二层把边缘拼成纹理和角点,第三层拼出眼睛、轮子这样的部件,再往上才是“猫”“汽车”这样的概念。
在合适的任务与训练中,多层网络可以学出逐步组合的表示,不需要人逐层规定“这一层负责眼睛”。图像特征的这个例子是帮助理解,不是每个网络都遵守的固定分工表。传统机器学习也会学习参数与部分表示;两者的区别不能简化成以前全靠人、现在全靠机器。
代价也在这里:机器学到的中间表示往往不可读,我们知道它有效,却很难说清每个数字代表什么。这就是所谓的黑箱问题。
这和评测有什么关系? 模型名字里的“7B”“27B”,数的就是模型的参数。它是模型卡上最显眼的数字,却不是本事的刻度:同样 270 亿个旋钮,读过的书不同、训法不同,本事可以差得很远(后面的模型规模与选型内容)。对你的电脑来说,它最先决定的是另一件事——装不装得下:每个旋钮都要占内存,旋钮越多,文件越大(第16期硬件内容)。
截图里87.5%的准确率,为什么还不能宣布学会?
9月五题留下的神经元熔炉界面显示步数378、损失0.1856、准确率87.5%,界面还画出决策边界与曲线。这是当时那一帧的状态,不是当前重新测出的结果。准确率涉及哪些样本、有没有独立测试集、噪声和种子怎样设,都会改变它的含义。网页不报错、曲线下降、泛化可靠,是三件不同的事。
读这张界面时,先看决策边界与样本,再读准确率。边界是在把哪些点分成两类?分数来自训练样本还是留出的样本?如果一边看验证分数、一边反复改设置,验证集也会慢慢参与选择,最后最好还有一批没用来挑设置的测试数据。
这张旧截图没有替我们回答所有条件,所以87.5%只能按当时记录解读,不能改写成“模型拥有87.5%的智能”。也不要把演示网络的分类分数,算到生成这段网页的语言模型头上。一个负责被展示,一个负责写程序,评价对象都不一样。

| 常见说法 | 为什么容易信 | 怎样核实 |
|---|---|---|
| 损失降到0就是学会 | 曲线下降很直观 | 单独保留未参与训练的样本,检查是否只是记住训练点 |
| 聊天越多模型越聪明 | 它能引用前面的回答 | 区分上下文变化、外部记忆写入与权重更新 |
| 参数更多就一定更强 | 旋钮数量显得像能力刻度 | 控制任务、训练数据和评价条件,别只比较参数量 |
带着这件事,试一次
只需读代码,不必启动大模型:标出预测、损失、梯度、参数更新四处;把学习率对照记录分成“收敛但慢”“收敛较快”“发散”。再给神经元熔炉写两项额外验收:独立样本表现、换种子后的稳定性。安全阈值0.1198只属于原记录这四组数据和这个更新方法,不能拿去调所有神经网络。
现在可以回答开头:损失下降,说明在所选数据与目标上,计算结果更符合训练要求;要说学到了可迁移的规律,还得用没有参加训练的新例子检查。旋钮的数量、训练时是否更新、聊天时是否带入历史,也必须分开看。
故事里出现的几个名词
| 术语 | 人话 |
|---|---|
| 权重 weight | 可调的旋钮,保存学到的参数;外部资料和会话状态不在其中 |
| 偏置 bias | 每个神经元额外加的一个固定数,让它有基础倾向 |
| 激活函数 | 引入非线性的拐弯动作;ReLU = 负数变 0 |
| 前向传播 | 用当前旋钮算一遍,得到猜测 |
| 损失 loss | 一个数字,表示这次错得多离谱 |
| 梯度 gradient | 损失对参数变化的敏感方向与大小;不是责任占比 |
| 反向传播 | 沿计算图应用链式法则求梯度;1986年经典论文推广多层网络训练 |
| 梯度下降 | 顺着降低损失的方向一小步一小步挪 |
| 学习率 | 每步挪多大;太大震荡,太小太慢 |
| 参数量 | 旋钮总数。“7B”就是七十亿个旋钮 |
| 黑箱问题 | 中间表示不可读,知其有效不知其所以然 |
下一篇接着看:草莓还是那颗草莓,前面多一个空格,机器看到的块数却变了。一个来自数据压缩的老办法,怎样走进聊天框,改变你的费用、速度和上下文?
参考资料
自制软件
版本、功能变化和安装平台统一取自公开发行记录。
方寸智匣 LocalBrain
把 Mac 变成私有 AI 盒子:本地转写、配音、生图、视频和 MCP 工具一站管理。
本轮公开 Apple Silicon Mac 安装包。聊天模型现在可通过同一代理按需调用已集成的语音、转写、图像、图片编辑、音乐和视频工具,并把实际产物交给下一项工具继续处理。
黑粉盒子 HyphenBox
免费大模型 API 雷达与本地统一路由:持续复测可用性,Key 只存本机。
保留私有签名目录、本地密钥保险箱、模型实测和本机兼容路由的现有能力;AMD Radeon Cloud、Ollama 云服务和 Vercel AI Gateway 的官方条件已在。
光影词库 ScreenLex
把本地电影与剧集字幕变成可复习的英语词库,全程离线。
侧边栏新增赞助入口,点开是一张二维码,不打扰、不弹窗、不影响任何功能。
黑粉录屏 HyphenScreen
录屏与剪辑一体:达芬奇式时间线、自动打码、导出前做成片体检。
在 AI 面板打开「制作动画」,输入讲解及自己的要求,从三组19种风格方法中选择。模型结合当前内容设计主体、动作与镜头,生成可编辑的原生动画图层和关键帧。
熬夜烧钱三千字扫码随心一杯茶
微信扫码长按保存图片,用微信「扫一扫」从相册选取





留言
正在加载留言…