LESSON 07 · 卷 神经网络

神经元结构

一个只会「加权投票」的小开关,凭什么是智能的起点?

第 1 站

你是怎么猜水果的

卷一我们备齐了工具:向量给世界拍数字照片,点积量「像不像」,矩阵做空间变换,梯度指出下坡方向。 从这一课起,我们用这些零件亲手设计一套小装置——一台专门用来「做判断」的小机器。它叫什么、是什么来头,先按下不表,我们从它要解决的问题入手。

这一篇自始至终只做一件事:造一台「猜水果」的机器,从最简单的一个小装置起步,一路加零件、串成一张大网。 先来看,这台装置要做的判断长什么样。

先玩个游戏。桌上摆着四种水果——🍎 苹果、🍉 西瓜、🍋 柠檬、🍇 葡萄。我从里面挑了一个藏起来,只把它的四条线索报给你(每条都用 0~1 之间的一个数打分,这就是后面要说的「输入特征」):

  • 尺寸大小(小 ↔ 大)= 0.5,中等个头
  • 颜色(偏绿 ↔ 偏红)= 0.9,相当红
  • 酸甜度(酸 ↔ 甜)= 0.7,挺甜
  • 水分(干 ↔ 多汁)= 0.55,水分一般
四条线索(0~1 打分)
尺寸
0.5 · 中等
颜色
0.9 · 相当红
酸甜
0.7 · 挺甜
水分
0.55 · 一般
👇 根据这四条线索,猜猜我藏的是哪种水果?
互动 7-A「猜水果」游戏:四条线索各打一个 0~1 的分,点一种水果试试看,再揭晓答案。西瓜太大、葡萄太小、柠檬偏绿又酸,都对不上「中等大、又红又甜」——只有苹果最贴合。后面这一整课,就是把这套「比对打分」的直觉,造成一台机器。

拿这组线索挨个比一比:西瓜该很大、葡萄该很小,可线索说「中等大」,俩都先排除;柠檬偏绿、很酸,线索却是「又红又甜」,也对不上。四种里只剩 🍎 苹果最贴合。 所以问你:它是不是苹果?你几乎是脱口而出「是」。但仔细想想,你脑子里其实做了一次加权打分—— 「又红又甜」最像苹果,所以颜色和酸甜度的分量重;大小和水分嘛,参考一下就好,分量轻。那就凭直觉给四条线索各设一个权重——重要的给大、次要的给小(具体数值先别纠结,随手定就行,后面会让机器自己学出来)。然后把这四项加权求和,别的都不管:

苹果分 = 0.4×大小 + 2.8×红 + 1.6×甜 + 0.4×水分
代入这组线索:0.4×0.5 + 2.8×0.9 + 1.6×0.7 + 0.4×0.55 = 4.06

得到 4.06。可马上卡住了:4.06 算高吗?到底多少分才算苹果?光有分数、没有一条「门槛线」,根本没法下结论。那就再随手算一个明显不是苹果的——一个又小、又绿、又酸的青果子(大小 0.3、红 0.15、甜 0.2、水分 0.5):

青果子:0.4×0.3 + 2.8×0.15 + 1.6×0.2 + 0.4×0.5 = 1.06

苹果 4.06、青果子 1.06,门槛大概落在中间的 2.4 附近。但把这个门槛单独挂在公式外面、每次都要记着「和 2.4 比一下」,太别扭。 更顺手的办法:把门槛也塞进公式——给总分直接减去 2.4,判断规则就统一成最干净的一句「大于 0 就是苹果」:

苹果分 = 0.4×大小 + 2.8×红 + 1.6×甜 + 0.4×水分 − 2.4
苹果:4.06 − 2.4 = +1.66 > 0,是 | 青果子:1.06 − 2.4 = −1.34 < 0,不是

这个被减掉的常数 −2.4,就叫偏置(bias,记作 b)——本质是一道可调的门槛:调它,就是在挪动「多少分才算苹果」的那条线。 于是判断规则统一成了「加权求和 + 偏置,再看正负」。而那几个权重和这个偏置,全都可以从数据里学出来,不需要你手工拍板。

这套打分逻辑有什么问题?权重和门槛都是拍脑袋定的——有没有更靠谱的办法?
第 2 站

把这套装置精确地画出来

把刚才的猜法精确化——四条线索是输入 , 四个分量各配一个权重 ,再加上刚才推出来的那个偏置 (就是那道可调门槛,这里 ):

z 就是「加权总分」。但分数可能是 5.2、也可能是 −3,不好直接当答案。最后把 z 送进一个函数 , 把它压成 0 到 1 之间的数,解释成「是苹果的概率」

σ 是激活函数,下一课详讲

y 越接近 1,越确信「是苹果」;越接近 0,越确信「不是」。到这里,整套装置就齐全了。

现在退一步看看我们造出了什么:几个输入 → 各乘一个权重 → 加权求和 → 加上偏置 → 用 σ 压成概率。 是时候揭晓了——这套你亲手设计的小装置,就是大名鼎鼎的「神经元」(neuron),深度学习里最小的那个零件。

名字听着玄乎,灵感其实来自大脑:一个生物神经元从上游收集许多信号,攒够了就「激发」、把信号传给下游—— 我们这套装置做的正是同一件事:把各路输入加权汇总,再决定要不要「激发」。而且它根本不是什么新发明: 那个 正是第 2 课的点积;把一排这样的装置并起来、权重摞成一张表,整层就是第 4 课的 Wx + b只是你早就学过的运算换了个名字。

尺寸 x₁w₁=0.4颜色 x₂w₂=2.8酸甜 x₃w₃=1.6水分 x₄w₄=0.4Σ wᵢxᵢ+ bσ(z)激活y苹果概率b = 可学习的偏置(决定激发门槛)
图 7-1一个神经元:四个水果特征各乘以权重,相加后加偏置得到总分 z,再送入激活函数 σ,输出一个 0~1 的「苹果概率」。

光看公式还不够过瘾——下面这台就是上图那一个神经元,活的。四个旋钮就是四条线索, 拧动它们,看右边的「苹果概率」怎么实时变化。试着把「颜色」和「酸甜度」拉满,再把它们归零,感受一下权重大的输入说话更响

🎛 四个旋钮 = 四个输入特征
尺寸大小0.50
颜色0.50
偏绿偏红
酸甜度0.50
水分0.50
多汁
尺寸大小0.50×0.40颜色0.50×2.80酸甜度0.50×1.60水分0.50×0.40加权总分 z0.20Σ wᵢxᵢ + (−2.4)σ(z)激活苹果概率55%
z = 0.4×0.50 + 2.8×0.50 + 1.6×0.50 + 0.4×0.50 − 2.4 = 0.20
🍎 苹果55%
🚫 非苹果45%
转动左边的旋钮 → 结构图上的输入值、连线粗细、总分 z、苹果概率同步刷新。权重大的输入(颜色 ×2.8)连线最粗、最能左右结果。
互动 7-B单个神经元的现场演算:z = 加权求和 + 偏置,再经 σ 压成概率。这台机器此刻的权重是写死的;到了第 12 课,梯度下降会让它自己把权重学出来。

全是可学习的参数——以后模型在训练时会不断微调它们, 让预测越来越准,直到在一大堆「已知答案」的水果上,它说「是苹果」的那些,确实大多是苹果。

第 3 站

局限:一个神经元只能画一条直线

刚才那台机器很好用,但它有个藏得很深的硬伤:单个神经元只能做出最「平直」的切分——一条笔直的线、一张平展的面,绝不会拐弯。 这话听着突兀,我们从一个特征开始、一维一维往上加,把它讲清楚。

先回到它的判断规则。装置说「是苹果」,当且仅当加权总分 ; 说「不是」,则是 。所以真正把两类分开的,是中间不偏不倚的那道边界——也就是 的地方。

这道边界长什么样?我们从一个特征、到两个、再到更多,一维一维搭上去,最好懂。

先只留一个特征——就看个头大小 。神经元的输出 是个一元函数, 画在平面坐标系里(横轴个头、纵轴输出 )就是一条直线。判断规则还是 算苹果, 于是分界就是这条直线穿过「水面 」的那一个点。拖一拖感受下:

水面 z=0个头大小(小 → 大)输出 z判定点🍎🍎🍎🍎
输出直线:z = 4.0·个头 + (-2.0)分对 8/8
只有一个特征时,神经元的输出 z=w·x+b 就是一条直线。它穿过「水面 z=0」的那一个点(判定点)就是分界:右侧浅红区 z>0 判「是苹果」。拖 w 改斜率、拖 b 上下挪——你只能挪动这一个分界点,没法让它在「中间挖一段」。
图 7-2一个特征时,输出 是一条直线,它和「水面 」只交于一个点——这就是判定分界。改 改斜率、改 上下挪,分界点跟着移动,但你只能挪动这一个点

再添一个特征(把颜色也算上)。输入变成 ,输出 升级成二元函数, 它的图像也从一条线长成一张平面(横面是两个特征、高度是 )。这就是「线性」的真身——它是平的。这一次判定分界不再是一个点,而是平面与水面相交的一条线。把它写出来:

都只出现一次方——没有平方、没有相乘——这正是中学的二元一次方程,图像铁定是一条直线。 我们调 让平面倾斜转向、调 让它整体升降,那道「浮出水面」的分界随之移动——但平面永远是平的、分界永远是直的,你掰不弯它。下面这张可以拖着转:

可拖拽旋转 · 滚轮缩放

输出平面:z = 2.0·x₁ + 2.0·x₂ + (-2.0)分对 8/8
这张倾斜的平面就是神经元的输出 z——「线性」的真身:它永远是平的。🍎 应落在平面浮出「水面 z=0」的一侧(红,z>0),● 落在沉下去的一侧(蓝,z<0)。拖 w₁、w₂ 让平面倾斜转向、拖 b 让它整体升降;黑线是平面与水面相交的「水位线」,正是上一张图里那条判定直线。
图 7-3两个特征时,输出 是一张平面(红= 浮出水面、蓝= 沉在水下,竖线是每个样本到平面的高度)。要找的就是一张能让 🍎 浮起、● 沉底的平面。拖滑块让它倾斜、升降,它永远是平的——平面与水面的交线(也就是上面那条判定直线 )也永远是直的。

也许你会想:不是还有个激活函数 σ 吗?让它来弯一下?可惜救不了。σ 是单调的, 恰好等于 0.5 的位置,就是 的位置——还是那条直线。σ 只把输出的数值从「分数」压成「概率」,并不改变分界的形状

再加下去,规律就一目了然了。神经元的输出 始终是一张「平的」图像:一个特征 → 直线,两个特征 → 平面, 个特征 → 维「超平面」。 判定分界也跟着一级级升维:点 → 直线 → 平面 → 维超平面。名字越来越唬人,本质却始终如一——平的,一点都不弯

所以单个神经元的全部本事,就是用一条直线(或一张平面)把空间切成两半。 两类数据只要能被一条直线分开(叫线性可分),它就学得会;可一旦两类数据交错排列,直线就彻底没辙了。

为了把这种「没辙」看得最清楚,我们退回最简单的一个特征——还是看个头大小 。 一个合格的苹果,个头要适中:太小(没长开、像山楂)不行,太大(大得不正常,多半不是苹果)也不行,「好」恰好卡在中间一段。 把一批样本按个头大小摆到一根轴上,就是这样:

个头 x神经元输出 zz=0 水面要框住中间,边界得「弯」过来直线 z=wx+b ✗🍎🍎🍎太小 · 不是适中 · 好苹果太大 · 不是需要「两个」分界点才能框住好苹果 →
图 7-4只有一个特征(个头大小)时,好苹果(🍎)挤在中间一段,太小、太大的都不是。单个神经元 是直线,穿过水面只有一个分界点(灰色虚线),只能切出「比某值大 / 小」;而把中间这段单独框出来,至少要两个分界点——边界必须(红色虚线那样),这已超出一条直线的能力。

症结说白了:单个神经元做的判断永远是 ,它只有一个分界点。 能切「比某个头」或「比某个头」,却怎么也切不出「在某两段之间」。 一个特征尚且如此,升到两个特征,同样的窘境有个更出名的版本——异或(XOR):

一条直线分不开的情形

设想一个更刁钻的判断:只有当两个条件恰好一个成立时,才算「是」。 比如「要么大但不甜,要么甜但不大,才是我要找的那种果子;又大又甜、或者又小又酸都不算」——这就是异或(XOR)逻辑。

把四种情形画在平面上:(0,0)→否,(1,0)→是,(0,1)→是,(1,1)→否。 你会发现,没有任何一条直线能把「是」和「否」分开—— 「是」的两个点在一条对角线上,「否」的两个点在另一条对角线上。 单个神经元面对这种交错排列,完全束手无策。

x₁x₂(0,0)(1,0)(0,1)(1,1)
图 7-5XOR 问题:无论怎么画直线,都没法把蓝点(否)和红点(是)分开。单个神经元对这类「交错」问题无能为力。
既然单个神经元画不出需要的边界,加一层呢?两个神经元能合力解决 XOR 吗?
第 4 站

多个神经元,串成网络

回到猜水果。刚才那台机器只会判断「是不是苹果」——可世界上不止苹果。 如何实现一个能识别多种不同水果的机器呢,办法很自然:给每一种水果都配一个神经元,让它们并排站成一。 每个神经元都看同样的四条线索,各算各的「像不像我这种水果」的分数。

于是四个神经元吐出四个分数。可分数有高有低、还可能是负的,怎么变成「概率分布」? 答案是再接一步 softmax(下一课、以及第 11 课会专门讲):它把四个分数挤成一组加起来正好等于 100% 的概率。 下面就是升级后的机器——同样四个旋钮,输出变成了四种水果的概率分布

🎛 四个旋钮 = 四个输入特征
尺寸大小0.50
颜色0.50
偏绿偏红
酸甜度0.50
水分0.50
多汁
尺寸大小0.50颜色0.50酸甜度0.50水分0.50🍎2.4🍌2.2🍉1.4🍋2.1softmax分数→概率每个神经元给一种水果打分
机器觉得最像:🍎 苹果
🍎 苹果36%
🍌 香蕉27%
🍉 西瓜13%
🍋 柠檬24%
四个神经元各给一种水果打分(圆圈旁的数字),softmax 把四个分数挤成一组加起来 = 100% 的概率。试试把旋钮调到「大 + 多汁」,看西瓜怎么后来居上。
互动 7-C四个神经元 + softmax:一层网络在四种水果上输出一个概率分布。试着把旋钮调向「又大又多汁」,看西瓜的概率怎么一路爬到最高。

这「一排神经元」就是一。再把多层串起来——前一层的输出当作后一层的输入——就是深度神经网络。 有了隐藏层,网络才能像上一站说的那样,把多条直线组合出弯曲、复杂的决策边界。

输入层(3)隐藏层(4)输出层(2)x1x2x3σσσσy1y2每层公式:σ(Wx + b);每个 σ 是一个神经元
图 7-6三层全连接网络。连线是权重,节点是神经元(做 σ(Wx+b))。隐藏层让网络能组合多条「直线」,勾出复杂的决策边界。

神经元的数量和层数加起来,决定了网络能拟合多复杂的函数。 GPT-3 的隐藏层维度是 12288、有 96 层——但每个神经元做的, 还是你刚才在旋钮台上看到的那个简单公式。

第 5 站

总结

本课核心 · TAKEAWAY

神经元把你「猜水果」的加权判断数学化:z = w·x + b,再经激活函数输出概率。 单个神经元只能画一条直线;给每种水果配一个神经元、再用 softmax 得到概率分布,就是一层; 把许多层串起来,涌现出来的是拟合世界任意复杂规律的能力

这一课你亲手发现了

  • 神经元:z = w·x + b,再经激活函数 σ(z) 输出;w 和 b 可从数据中学出来。
  • 权重 w:控制每个输入的影响力(颜色/酸甜分量重);偏置 b 控制激发门槛。
  • 单层极限:一个神经元只能学出直线边界,无法解决 XOR 类「交错」问题。
  • 多神经元 + softmax:每种水果一个神经元,输出一个加起来等于 1 的概率分布。
  • 深度:多层串联,每层学出「前一层特征的特征」,能拟合任意复杂函数。
小测验

学习小测验

做完这一课,来检测一下核心知识点。选出你的答案后点击「提交」,即可看到正确选项与讲解。

Q1一个最基础的人工神经元,对它的若干输入到底做了什么计算?
Q2神经元里的「偏置 b」起什么作用?
NEXT · 第 8 课

激活函数

那个把总分压成概率的 σ 到底是什么?如果它是直线,叠再多层都还是一条直线——「弯折」从哪里来?

0 人点赞,0 人看过