深度学习之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/7/20 18:38:57 阅读更多 →
北京高新技术软件公司 校园物资申领系统 院校全过程管理开发

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

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

2026/7/20 18:38:57 阅读更多 →
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/7/20 18:38:57 阅读更多 →

最新新闻

自顶向下设计:XYZ轴机械模组建模与运动仿真全流程实战

自顶向下设计:XYZ轴机械模组建模与运动仿真全流程实战

如果你是一名机械工程师、产品设计师,或者正在学习3D建模的学生,最近是否被一个看似简单却总也绕不过去的问题困扰: 面对一个由多个运动部件组成的复杂机械装置(比如一台3D打印机、一个机械臂,甚至是一个简单的升降平…

2026/7/21 9:34:49 阅读更多 →
如何用Sunshine搭建家庭游戏串流服务器:从零到精通的完整指南

如何用Sunshine搭建家庭游戏串流服务器:从零到精通的完整指南

如何用Sunshine搭建家庭游戏串流服务器:从零到精通的完整指南 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine 你是否想在客厅大屏上玩PC游戏,或者在平板上享…

2026/7/21 9:34:49 阅读更多 →
3步掌握Photoshop终极AI插件:SD-PPP让你的设计效率提升300%

3步掌握Photoshop终极AI插件:SD-PPP让你的设计效率提升300%

3步掌握Photoshop终极AI插件:SD-PPP让你的设计效率提升300% 【免费下载链接】sd-ppp A Photoshop AI plugin 项目地址: https://gitcode.com/gh_mirrors/sd/sd-ppp 你是否曾在Photoshop和AI绘图工具之间反复切换,浪费宝贵的设计时间?你…

2026/7/21 9:34:49 阅读更多 →
凹函数与凸函数:机器学习优化收敛的几何本质

凹函数与凸函数:机器学习优化收敛的几何本质

1. 项目概述:为什么凹函数和凸函数是机器学习的“隐形骨架” 你有没有遇到过训练模型时损失曲线反复震荡、优化器卡在某个平台期死活下不去,或者调参像开盲盒——换个学习率,模型要么飞速发散,要么纹丝不动?我带过十几…

2026/7/21 9:34:49 阅读更多 →
如何在电脑上同时播放多个视频?GridPlayer 让多画面同步播放变得简单

如何在电脑上同时播放多个视频?GridPlayer 让多画面同步播放变得简单

如何在电脑上同时播放多个视频?GridPlayer 让多画面同步播放变得简单 【免费下载链接】gridplayer Play videos side-by-side 项目地址: https://gitcode.com/gh_mirrors/gr/gridplayer 在视频剪辑、教学对比或直播监控等场景中,我们经常需要同时…

2026/7/21 9:34:49 阅读更多 →
Kotlin跨平台开发:KMP与Compose实战解析

Kotlin跨平台开发:KMP与Compose实战解析

1. 项目背景与核心价值CPF-KMP-CMP组织的上线标志着Kotlin跨平台开发领域的一个重要里程碑。这个技术社区专注于推动Kotlin Multiplatform(KMP)与Compose Multiplatform(CMP)在实际项目中的应用落地。作为长期从事移动端开发的工程师,我见证了从原生开发到跨平台方案…

2026/7/21 9:33:48 阅读更多 →

日新闻

Octane Render与C4D汉化版安装与优化指南

Octane Render与C4D汉化版安装与优化指南

1. Octane Render与C4D的黄金组合:为什么选择这个方案?在三维创作领域,渲染器的选择往往决定了作品的最终呈现质量和工作效率。作为Cinema 4D(C4D)用户,Octane Render的GPU加速特性与实时预览功能&#xff…

2026/7/21 0:00:19 阅读更多 →
GPMC接口设计:异步/同步模式与多路复用配置实战

GPMC接口设计:异步/同步模式与多路复用配置实战

1. GPMC接口设计:从硬件连接到软件配置的全局视角在嵌入式系统开发中,尤其是基于TI Sitara系列如AM263x这类高性能微控制器的项目里,外部存储器的扩展几乎是绕不开的一环。无论是存放大量非易失性代码的NOR Flash,还是作为高速数据…

2026/7/21 0:00:19 阅读更多 →
UE5 GAS框架下RPG被动技能系统:从核心原理到实战实现

UE5 GAS框架下RPG被动技能系统:从核心原理到实战实现

1. 项目概述:UE5 GAS RPG被动技能的核心价值在UE5里用GAS(Gameplay Ability System)做RPG游戏,主动技能像是你手里的武器,按一下打一下,逻辑直接,反馈也快。但被动技能,它更像是你身…

2026/7/21 0:00:19 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/21 8:48:31 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/21 5:34:47 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/21 8:25:39 阅读更多 →

月新闻