第 1 章 · 基础

神经元:一切的起点

整个深度学习大厦,建立在一个朴素得近乎无聊的想法上:把几个数字加权加起来,再决定是否「点火」。这一章我们把它彻底玩明白。

1.1 一个最朴素的问题

假设你想预测一个学生能否通过考试,手上有两条信息:他每天学习时长 x1,以及睡眠时长 x2。直觉上,学习时间越长越可能通过,睡眠太少会拉低状态——但这两条信息的重要程度显然不同。

最朴素的决策方式是:给每条信息一个权重(重要性),加起来得到一个总分,再设一条门槛:总分过线就预测「通过」,否则预测「不通过」。恭喜你——你已经发明了感知机(Perceptron),1958 年由 Frank Rosenblatt 提出的、一切神经网络的祖宗。

💡 一句话直觉

神经元就是一场「加权投票」:每个输入投一票,票的价值由权重决定,最后由偏置(门槛)决定通不通过。

1.2 写成数学:没那么可怕

把上面的中文翻译成符号,就三样东西:权重 w(每个输入有多重要)、偏置 b(门槛有多高)、激活(过没过线):

z = w1x1 + w2x2 + b ,   y = 1(若 z > 0),否则 y = 0

其中 z 叫「预激活值」,就是那场投票的总分;y 是最终输出。这个「过线就 1、不过就 0」的函数叫阶跃函数,是最原始的激活函数(第 2 章会看到它的现代替代品们)。

演示 1 · 解剖一个神经元

拖滑块

试着把 w1 调到 0:无论 x1 怎么变,输出都不再看它——权重为 0 意味着「这条信息被无视」。

总分 z0.48 输出 y1

注意偏置 b 的角色:它不改变任何输入的「价值」,只整体抬高或降低门槛。b 越负,神经元越「挑剔」。

1.3 几何视角:一条线切两半

把 (x1, x2) 画在平面直角坐标系里,每个数据点是一个小圆点。「z = 0」对应一条直线 w1x1 + w2x2 + b = 0——这就是决策边界。线的一侧全部被预测为一类,另一侧是另一类。

下面的画布里,蓝点和橙点各代表一类样本(比如「通过 / 未通过」的历史数据)。背景色是当前神经元给出的预测区域,红圈标出的是被分错的点

演示 2 · 亲手找到决策边界

可点击画布

先用手动滑块试着把所有点分对,再点「单步学习」看感知机自己怎么调整。点击画布可以添加新样本点。

准确率 分错 已学习0 步

1.4 它怎么学会的?一条规则而已

感知机的学习规则简单到可以写在一行里:每当分错一个点,就把权重往「正确答案」的方向挪一点

w ← w + η · (t − y) · x ,   b ← b + η · (t − y)

这里 t 是真实标签(0 或 1),y 是预测,η(读作 eta)是学习率,控制每一步挪多远。分对了?t − y = 0,什么都不做。把 1 错成 0?t − y = 1,权重加上 ηx,下次总分更高。把 0 错成 1?反过来减。就这么机械地循环,只要数据线性可分,感知机收敛定理保证它有限步内找到一组全对的权重。

∑ 想深一层

「(t − y) · x」其实是梯度的雏形:它在告诉你每个权重该为这次错误负多大责任。第 5 章的反向传播,本质上就是把这条朴素规则推广到几千层、几亿个权重。

1.5 一个致命的局限(预告)

在演示 2 里你可能已经发现了:无论怎么调,一条直线只能解决「一条线能切开」的问题。如果蓝点和橙点呈对角交错分布(异或 XOR 模式),单个感知机永远无能为力——1969 年 Minsky 指出这一点,直接让神经网络研究沉寂了十几年。

破局需要两样东西:把神经元叠成网络,以及换掉阶跃函数。这正是第 2、3 章的故事。

✓ 本章小结

神经元 = 加权求和 z = w·x + b,再过阶跃函数得输出。几何上它是一条决策边界(高维是超平面)。学习 = 分错就朝正确方向挪权重。它只能处理线性可分问题——这个局限推动了后面的一切。