learning_notes

学习笔记

View project on GitHub

概念

感知机

一个假神经元,一个线性分类器,是神经网络的原子。把它剖开,里面只有权重、偏置和一个决策。

多层网络

一个深度神经网络,神经元一层层顺序叠起来,每层的输出喂给下一层的输入。

前向传播

把输入推过每一层——乘权重、加偏置、激活——产出一个输出。

反向传播

  • 一次前向传播、一次反向传播,所有梯度都算出来了。诀窍是微积分里的链式法则,系统性地应用到一张计算图上。这就是让深度学习变得切实可行的算法。
  • 训练会跑前向传播,再跑反向传播,然后更新权重。推理只跑前向传播。没有梯度,没有更新。这个区别很重要,因为生产环境里发生的就是推理。当你调用 Claude 或 GPT 这样的 API 时,你跑的就是推理——你的 prompt 正向流过网络,token 从另一头出来。没有权重改变。理解反向传播之所以重要,是因为它塑造了那个网络里的每一个权重。
  • 没有它,你的一点点的试每一个权重。

激活函数

  • 可使那些让神经网络能用曲线思考的门。
  • Sigmoid:范围:(0,1) 两端饱和
  • Tanh:范围:(-1,1) 零中心
  • ReLU:范围:[0,inf) 死亡神经元
  • GELU:范围:~(-0.17,inf) 平滑门控
  • Swish/SiLU:自门控的 ReLU
  • 使用
    • 输出层 (Output Layer)
      • 二分类:Sigmoid 输出单个概率值 (0, 1)
      • 多分类:Softmax 输出概率分布,所有类别概率之和为 1
      • 回归:线性(无激活)直接输出连续数值,不做非线性变换
    • 隐藏层 (Hidden Layers)
      • Transformer / NLP:GELU 现代大模型标准配置,平滑且性能优异
      • CNN / 视觉:ReLU 或 Swish ReLU 为经典选择;Swish (SiLU) 在深层网络中表现更佳
      • RNN / LSTM:Tanh 传统循环网络的标准选择,输出范围 [-1, 1]
      • 简单 MLP:ReLU 通用首选,计算高效,缓解梯度消失

梯度消失(Vanishing gradient)

深层网络里梯度没了,当激活的导数小于 1 时,梯度穿过层时指数级缩小,让靠前的层没法训练。

梯度爆炸(Exploding gradient)

梯度炸了,当有效乘数超过 1 时,梯度穿过层时指数级增长,导致训练不稳定。

Logit

softmax 之前的原始分数,最后一层在施加 softmax 或 sigmoid 之前的未归一化输出。

损失函数

你的网络做了一个预测。真实答案不是这样。它错得有多离谱?那个数字就是损失。选错损失函数,你的模型会朝着完全错误的目标去优化。