一、神经网络基础1.1 结构组成神经网络由输入层、隐藏层、输出层构成输入层接收原始数据每个神经元对应一个特征维度。隐藏层核心计算层。每一层执行两步操作1.线性变换z Wx b其中 W 为权重矩阵b 为偏置。2.非线性激活a f(z)为网络引入非线性表达能力。输出层根据任务类型输出结果如分类概率或回归值。1.2 前向传播数据从输入层开始逐层计算线性变换与激活直至输出层得到预测值。对于第 l 层z[l] W[l] a[l-1] b[l]a[l] f[l](z[l])其中 a[0] x 为输入最终输出 ŷ a[L]。1.3 反向传播目标通过计算损失函数对每个参数的梯度沿网络反向更新权重以减小损失。核心工具链式法则。从输出层损失 L 开始逐层计算∂L/∂W[l] (∂L/∂z[l]) · (∂z[l]/∂W[l])∂L/∂b[l] ∂L/∂z[l]。误差项 δ[l] ∂L/∂z[l] 从后向前传递δ[l] (W[l1])T δ[l1] ⊙ f(z[l])。最终用梯度下降更新参数。二、损失函数详解2.1 分类任务交叉熵损失 (Cross-Entropy Loss)对于多分类模型输出经 Softmax 后得到概率分布 ŷi真实标签为 one-hot 向量 yiL -∑i yi log(ŷi)。PyTorch 中 CrossEntropyLoss 已整合 LogSoftmax 和 NLLLoss。二分类交叉熵 (BCE Loss)L -[y log(ŷ) (1-y) log(1-ŷ)]。通常先对输出做 Sigmoid 转为概率。实践中推荐使用 BCEWithLogitsLoss它将 Sigmoid 与损失合并数值更稳定。2.2 回归任务均方误差 (MSE / L2 Loss)L (1/n) ∑i1n (yi - ŷi)2。梯度与误差成正比对异常值敏感放大误差。平均绝对误差 (MAE / L1 Loss)L (1/n) ∑i1n |yi - ŷi|。梯度为常数1 或 -1对异常值更鲁棒但零点不可导实践中可使用次梯度。Smooth L1 Loss结合 L1 与 L2 的优点误差绝对值小于 1 时用 L2 部分梯度平缓否则用 L1梯度恒定当 |yi - ŷi| 1 时 L 0.5 (yi - ŷi)2否则 L |yi - ŷi| - 0.5。常用于目标检测中的回归。三、激活函数详解函数公式值域导数特点与适用场景Sigmoidσ(x) 1/(1e-x)(0,1)σ(x)(1-σ(x))输出可解释为概率两端饱和区梯度接近 0易梯度消失用于二分类输出层。Tanhtanh(x) (ex - e-x)/(ex e-x)[-1,1]1 - tanh2(x)零中心梯度消失问题略轻于 Sigmoid常用于隐藏层。ReLUmax(0, x)[0, ∞)1 (x0), 0 (x0)计算简单正区间梯度恒为 1缓解梯度消失负区间输出为 0可导致神经元“死亡”权重无法更新。Leaky ReLUmax(αx, x)(-∞, ∞)1 (x0), α (x0)给负区间一个很小的斜率如 α0.01缓解死亡 ReLU 问题。PReLU同 Leaky ReLU但 α 为可学习参数(-∞, ∞)同上α 通过梯度更新自适应负区间斜率。RReLUα 在训练时随机采样测试时固定平均(-∞, ∞)类似随机斜率具备正则化效果。Softmaxexi / ∑j exj(0,1) 且和为 1较复杂雅可比矩阵将任意实数向量转换为概率分布用于多分类输出层。为什么 ReLU 能缓解梯度消失因为它在正区间的导数为 1反向传播时梯度不会像 Sigmoid/Tanh 那样快速衰减允许深层网络训练。四、梯度下降与优化器4.1 核心思想梯度下降的目标是最小化损失函数 L(θ)。每次迭代参数沿负梯度方向更新θt1 θt - η ∇θ L(θt)其中 η 为学习率。直觉类比盲人下山每一步沿当前最陡峭方向迈出步长 η。4.2 三种变体变体每次更新使用数据优点缺点批量梯度下降 (BGD)全量训练集梯度准确收敛平稳计算代价高内存可能不足随机梯度下降 (SGD)单一样本速度快可在线学习梯度噪声大损失震荡剧烈小批量 SGD (Mini-batch)小批量如 32/64平衡效率与稳定性最常用需调节批量大小通常所说的 SGD 即指 Mini-batch SGD。4.3 面临的挑战局部最小与鞍点在高维空间中鞍点梯度为 0 但非极值远比局部最小常见普通梯度下降可能停滞。学习率选择太小收敛慢太大则震荡甚至不收敛。参数尺度不同不同参数可能需要不同更新步长。4.4 优化器详解4.4.1 Momentum动量法累积历史梯度产生速度效应帮助跃出平坦区域和鞍点。vt γ vt-1 η ∇θ L(θt)θt1 θt - vt。γ 通常取 0.9。比喻小球从山滚下惯性使其冲过小坑。4.4.2 Nesterov 加速梯度 (NAG)在 Momentum 基础上先按历史动量移动一步再计算该位置的梯度具有“前瞻”校正能力。vt γ vt-1 η ∇θ L(θt - γ vt-1)θt1 θt - vt。4.4.3 AdaGrad自适应学习率对频繁更新的参数减小学习率适合稀疏特征。Gt Gt-1 gt2gt ∇L(θt)θt1 θt - (η / √(Gt ε)) ⊙ gt。缺陷Gt 单调递增学习率会过早接近零导致训练停滞。4.4.4 RMSProp将累积改为指数加权移动平均避免学习率过快衰减。St β St-1 (1-β) gt2θt1 θt - (η / √(St ε)) ⊙ gt。β 常用 0.9使得学习率只反映最近梯度的幅度。4.4.5 Adam结合 Momentum 和 RMSProp维护一阶矩 mt梯度均值和二阶矩 vt梯度未中心化方差并进行偏差校正。mt β1 mt-1 (1-β1) gtvt β2 vt-1 (1-β2) gt2。偏差校正因初值为 0m̂t mt / (1 - β1t)v̂t vt / (1 - β2t)。更新θt1 θt - (η / (√v̂t ε)) m̂t。默认超参η0.001, β10.9, β20.999, ε1e-8。Adam 兼具快速收敛和逐参数自适应。4.5 优化器选择建议Adam通用首选收敛快超参鲁棒。SGD Momentum追求极致性能时配合精心调参学习率衰减、长训练可能获得更好泛化。4.6 学习率调度等间隔衰减每 k 个 epoch 学习率乘以 0.1。指定间隔衰减在固定 epoch如 [30, 60, 80]降低学习率。指数衰减ηt η0 · γt。余弦退火ηt ηmin 0.5(η0 - ηmin)(1 cos(tπ/T))可带热重启。线性衰减从初始值线性减小至终止值。4.7 梯度裁剪当梯度的 L2 范数超过阈值 τ 时将其缩放至 τg g · (τ / ‖g‖2)。有效防止 RNN 等结构中的梯度爆炸。五、卷积神经网络 (CNN)5.1 核心思想CNN 专为网格状数据如图像设计通过两个关键特性降低参数量并提取平移不变特征局部连接每个神经元仅连接输入的一个局部区域感受野。权值共享同一个卷积核在整个输入上滑动参数不变。5.2 卷积层一个卷积核滤波器大小为 F × F × Cin对输入进行点积运算生成特征图Feature Map。多个卷积核输出多个通道。超参数核尺寸 F、步长 S、填充 P。输出尺寸计算向下取整Hout ⌊(Hin - F 2P) / S⌋ 1同理计算宽度 Wout。填充目的控制输出尺寸保留边缘信息。常用的“SAME”填充使输出尺寸不变当 S1 时P (F-1)/2。5.3 池化层下采样操作减小特征图尺寸降低计算量和参数量同时提供一定平移不变性。最大池化 (Max Pooling)取局部窗口内的最大值。平均池化 (Average Pooling)取局部窗口内的平均值。通常池化层不使用填充步长等于窗口大小。5.4 典型结构输入 → [卷积 → 激活(ReLU) → 池化] × N → 全连接层 → 输出。5.5 感受野某层特征图上一个像素点在原始输入上映射的区域大小。计算公式递推RFl RFl-1 (Fl - 1) × ∏i1l-1 Si。深层特征具有更大感受野能捕捉全局语义信息。六、循环神经网络 (RNN) 与改进6.1 基本 RNN 结构处理序列数据核心是隐藏状态 ht 随时间传递。ht tanh(Wih xt bih Whh ht-1 bhh)ŷt f(Who ht bo)。所有时间步共享同一套参数 W。反向传播通过时间 (BPTT)梯度需沿时间步反向传播涉及矩阵连乘∂L/∂ht ∝ ∏ktT (WhhT diag(tanh(zk)))。当 Whh 的特征值小于 1 时连乘导致梯度消失大于 1 则导致梯度爆炸。这使得 RNN 难以捕捉长距离依赖。6.2 LSTM长短期记忆网络通过门控机制和细胞状态 Ct 缓解梯度消失。遗忘门决定丢弃多少旧记忆。ft σ(Wf · [ht-1, xt] bf)输入门决定采用多少候选记忆。it σ(Wi · [ht-1, xt] bi)C̃t tanh(WC · [ht-1, xt] bC)细胞状态更新线性求和梯度可直接流动Ct ft ⊙ Ct-1 it ⊙ C̃t输出门决定输出多少细胞状态作为隐藏状态。ot σ(Wo · [ht-1, xt] bo)ht ot ⊙ tanh(Ct)线性加法操作使得梯度可以跨越多个时间步而不易衰减。6.3 GRU门控循环单元将隐藏状态与细胞状态合并使用两个门控参数更少。重置门rt控制如何混合新旧信息。rt σ(Wr · [ht-1, xt])更新门zt控制保留多少旧状态、加入多少新状态。zt σ(Wz · [ht-1, xt])候选隐藏状态h̃t tanh(W · [rt ⊙ ht-1, xt])最终状态ht (1 - zt) ⊙ ht-1 zt ⊙ h̃t。当 zt 接近 1 时更依赖新候选状态接近 0 时保留过去。6.4 双向 RNNBi-LSTM / Bi-GRU由前向层和后向层组成每个时间步的最终表示是两者隐藏状态的拼接ht [ht→; ht←]。能同时捕捉过去和未来的上下文信息在序列标注、机器翻译等任务中效果显著。七、注意力机制与 Seq2Seq7.1 注意力机制的 Q/K/V 理解Q查询、K键、V值均来自同一输入的线性变换Q X WQK X WKV X WV。Q代表当前要“查询”的目标表达“我需要关注什么”。K代表每个位置的“索引”信息用于与 Q 匹配。V代表每个位置实际存储的“内容”信息。注意K 是连续向量不是离散索引通过点积与 Q 计算相似度。7.2 注意力计算通用框架计算相似度分数eij score(Qi, Kj)- 点积eij QiT Kj- 缩放点积eij QiT Kj / √dk防止点积过大进入 softmax 饱和区- 加性注意力eij vT tanh(W Qi U Kj)归一化注意力权重αij softmax(eij) exp(eij) / ∑k exp(eik)上下文向量输出contexti ∑j αij VjQ 与 K 的匹配决定聚焦何处最终提取的是 V 的加权内容。7.3 Seq2Seq 中的注意力传统编码器-解码器模型将整个输入压缩为固定向量存在信息瓶颈。引入注意力机制后编码器每个时间步输出一个隐藏状态 hj构成源信息的集合。解码器在生成第 i 个词时用当前状态 si 作为 Q所有编码器隐藏状态作为 K 和 Vαij exp(score(si, hj)) / ∑k exp(score(si, hk))ci ∑j αij hj。生成将上下文 ci 与解码状态结合预测输出词。这样每个生成步骤都能动态访问源序列的任意位置极大改善了长序列翻译、摘要等任务的性能。7.4 自注意力简介在自注意力中Q、K、V 均来自同一序列使每个位置都能关注同一序列内的其他位置是 Transformer 的核心机制。其缩放点积公式为Attention(Q, K, V) softmax(QKT / √dk) V。此总结整合了神经网络基础、CNN、RNN 及其变体、梯度下降优化器家族、注意力机制等深度学习关键知识点力求详尽准确可作为复习与查阅的结构化资料。