从直觉到证明3Blue1Brown 中文导学教材
3.1 神经网络的基本单元

3.1 神经网络的基本单元

区分输入、权重和激活,并解释为什么连续仿射层需要非线性才有新的表达能力。

例题练习Lean 对照原课

一步一步建立直观

先预测,再点“演示本步”核对右图。每一步都重设到指定情形,随后可以自由修改参数。

01让一个单元先做一件能看清的事

输入向量不是一张图片的含义,而是被编码成数值的特征。右图只保留两个输入:权重决定各输入的影响方向和强度,偏置移动触发门槛。先计算加权和 zz,再经过 ReLU 得到输出,这样便能把“收集证据”与“决定是否激活”分成两个步骤。

02开关边界怎样切分输入空间

关闭单元时,加权和落在零以下,ReLU 把输出截成零。右图固定第二输入,只画输出随第一输入变化的曲线;折点对应 z=0z=0,两侧分别是关闭段和激活段。拖动输入点,观察跨过折点后的变化:单个单元只产生简单的分段线性结构,多层网络通过组合这些结构形成更复杂的表示。

03训练改变规则,推理使用规则

给定目标输出后,损失衡量当前结果与目标的差异。调权重或偏置是在改变这条输入输出规则;只拖动输入是在用既定规则计算新的样本。二者应明确区分。此处只有一个标量目标和一个单元,不代表真实分类网络的全部架构与训练过程。

3.1.1 从输入数字到可调整的判断

一张灰度小图可以按固定顺序展成向量,每个分量记录一个像素。要判断图中类别,最简单的尝试是给各像素分配权重,求加权和,再加一个偏置。正权重把某些像素的亮度当作支持证据,负权重当作反对证据,偏置调节整体阈值。

单个神经元接收这个分数,再通过非线性函数输出激活。以 2x1−x2+12x_1-x_2+1 为例,输入 (1,3)(1,3) 时分数为零,Sigmoid 输出一半。这里权重、输入、激活是三类对象:训练调整权重,样本提供输入,前向计算产生激活。

3.1.2 为什么堆很多层之前要插入非线性

如果每层只是仿射映射,前后层可以合并:第二层展开后,仍是一个新矩阵乘原输入再加新偏置。增加深度只把同一个仿射动作拆成多步,并没有得到新的非线性边界。激活函数打断这种合并,允许不同输入区域产生不同响应。

用图形理解时,可以把第一层看成建立一组可调整的测量,后续层组合这些测量。但“某个神经元识别一条笔画”只是可能的解释,不能仅凭网络结构认定训练必然得到这种分工。

本节先把计算规则写清楚,还没有解决权重从哪里来。下一节引入损失,把“判断好不好”压缩成可优化的数,再利用微积分修改参数。理解前向计算、评价结果、更新参数三步的区别,是后续所有模型的基础。

数学表述 3.1.1

把输入表示为向量后,每一层先做带偏置的线性组合,再经过非线性函数。参数控制哪些输入影响哪些输出。

z(ℓ)=W(ℓ)a(ℓ−1)+b(ℓ),a(ℓ)=σ(z(ℓ)).z^{(\ell)}=W^{(\ell)}a^{(\ell-1)}+b^{(\ell)},\qquad a^{(\ell)}=\sigma(z^{(\ell)}). 例如 σ(z)=1/(1+e−z)\sigma(z)=1/(1+\mathrm{e}^{-z})。若输入维度为 nn、输出为 mm,权重形状为 m×nm\times n,偏置有 mm 个分量。

例 3.1.1 把概念用于具体计算

单神经元 z=2x1−x2+1z=2x_1-x_2+1,输入 (1,3)(1,3) 时 z=0z=0,Sigmoid 输出为 1/21/2。

练习 3.1.1

x↦3(2x+1)−4x\mapsto3(2x+1)-4 可合并为什么?

展开解答与检查

6x−16x-1;若中间插入 ReLU,一般不能这样整体合并。

Lean 对照 3.1.1 命题、证明与适用边界

精确验证两个标量仿射层的复合公式,说明非线性激活为何重要。

NeuralNetworks.affine_composition

theorem affine_composition (a b c d x : ℝ) :
    a*(b*x+c)+d = (a*b)*x+(a*c+d) := by ring

查看完整定义与上下文 ↗ · 全书证明范围

原课对照 观课问题、视频与图示

区分输入、权重和激活,并解释为什么连续仿射层需要非线性才有新的表达能力。

官方课程与图示 ↗ · 原视频 ↗

点击后连接 YouTube;播放器不可用时可通过上方原链接观看。