深度学习之ANN、CNN、RNN
一、神经网络基础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 及其变体、梯度下降优化器家族、注意力机制等深度学习关键知识点力求详尽准确可作为复习与查阅的结构化资料。

相关新闻

第37篇:原生AJAX从零手写源码——彻底弄懂前端网络请求底层

第37篇:原生AJAX从零手写源码——彻底弄懂前端网络请求底层

前言在前面章节我们使用过 Fetch、封装过 Promise 请求。但 Fetch 是现代API,真正前端网络底层根基永远是:AJAX(XMLHttpRequest)。绝大多数新人只会调用接口,从来不知道:网络请求底层是怎么建立的请求头、响…

2026/10/25 10:40:52 阅读更多 →
北京高新技术软件公司 校园物资申领系统 院校全过程管理开发

北京高新技术软件公司 校园物资申领系统 院校全过程管理开发

一、北京软件定制服务商介绍该项目的开发主体为北京一网天行科技有限公司,于2013年4月在北京市海淀区成立,公司在济南、宿州、西安设有分公司。一网天行具有13年的软件定制开发经验,是国家高新技术企业,证书编号为GR202311008731&…

2026/10/23 17:31:50 阅读更多 →
PARD2-Llama-3.1-8B vs 传统模型:为什么它能超越EAGLE-3达1.9倍性能?

PARD2-Llama-3.1-8B vs 传统模型:为什么它能超越EAGLE-3达1.9倍性能?

PARD2-Llama-3.1-8B vs 传统模型:为什么它能超越EAGLE-3达1.9倍性能? 【免费下载链接】PARD2-Llama-3.1-8B 项目地址: https://ai.gitcode.com/hf_mirrors/amd/PARD2-Llama-3.1-8B PARD2-Llama-3.1-8B是基于Llama3.1-8B架构优化的高性能推理模型…

2026/10/24 23:21:57 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/10/26 12:00:21 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/10/27 4:06:49 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/10/26 4:52:12 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/10/26 12:00:21 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/10/26 5:00:37 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/10/27 4:06:50 阅读更多 →

日新闻

周新闻

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/26 12:00:19 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/25 13:21:54 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/26 8:34:37 阅读更多 →