神经网络基础讲解 一

​一.神经网络

​1. 全连接神经网络(Fully Connected Network, FCN)​

​核心概念:​

  • ​输入层​:接收原始数据(如数字、图片像素等) 数字矩阵 。
  • ​隐藏层​ :对数据进行计算和变换(可以有多个隐藏层)。
  • ​输出层​:给出最终结果(如分类标签、预测值等)。

​计算方式:​

每个神经元的输出计算如下:

a=h(w⋅x+b)

  • x:输入数据
  • w:权重(决定输入的重要程度)
  • b:偏置(调整输出的偏移)
  • h:激活函数(如 ReLU、Sigmoid,让网络能学习复杂模式)

​特点:​

  • ​全连接​:每一层的每个神经元都与下一层的所有神经元相连。
  • ​适合简单任务​(如分类数字、预测房价),但处理图像等高维数据时效率较低。

​2. 神经网络的训练与优化​

​核心目标:​
找到最佳的 ​权重(w)​​偏置(b)​,让模型的预测尽可能准确。

​训练过程:​

  1. ​前向传播​:输入数据经过网络计算,得到预测值 y。
  2. ​计算误差​ :用 ​损失函数(Loss Function)​ 衡量预测值与真实值的差距。
  3. ​反向传播​:从输出层反向调整 w 和 b,让误差变小。
  4. ​优化算法​(如梯度下降):不断更新参数,使模型越来越准。

​简单理解:​

  • 就像学习骑自行车,一开始会摔倒(误差大),但通过不断调整(优化参数),最终能骑得稳(预测准)。

​3. 卷积神经网络(CNN)的引入​
​为什么需要 CNN?​

全连接网络在处理图片时:

  • ​参数太多​(一张 100x100 的图片,全连接层可能有上百万参数!)
  • ​计算太慢​,且容易过拟合。

​CNN 的核心:卷积核(Filter)​

  • ​作用​:像一个小窗口,在图片上滑动,提取局部特征(如边缘、纹理)。
  • ​优点​
    • ​参数更少​(共享权重,减少计算量)。
    • ​保留空间信息​(适合图像、视频等数据)。

​典型结构:​

  1. ​卷积层(Convolution)​:提取特征
  2. ​池化层(Pooling)​:降低数据量(如取最大值或平均值)
  3. ​全连接层(FC)​:最终分类或回归

​适用场景:​

  • 图像识别(如人脸检测、物体分类)
  • 视频分析、医学影像处理等

​总结对比​
​网络类型​ ​适用场景​ ​核心特点​
​全连接网络(FCN)​ 简单分类、回归(如房价预测) 所有神经元相连,参数多
​卷积网络(CNN)​ 图像、视频等空间数据 用卷积核提取特征,参数更高效

​为什么需要激活函数?​

​核心问题:​
如果不用激活函数,多层神经网络会退化成"单层线性模型"。

  • ​例子​:假设激活函数是线性的,比如 h(x)=2x,那么一个 3 层网络的计算过程是:y(x)=h(h(h(x)))=2×2×2×x=8x这其实等价于单层网络 y(x)=8x,多层网络没有发挥任何优势。

​关键作用:​

激活函数引入​​非线性​​,使得神经网络可以:

  • 学习复杂模式(比如图像中的曲线、文本中的语义关系)。
  • 解决线性模型无法处理的问题(如分类复杂数据)。
  • 让深层网络真正发挥"深度"价值,而不是简单堆叠线性计算。

​1. Sigmoid 激活函数​

​公式:​

​特点:​

✅ ​​优点​​:

  • 输出在 (0,1) 之间,适合做​概率输出​(比如二分类问题,判断"是猫"或"不是猫")。
  • 计算简单,早期神经网络常用。

❌ ​​缺点​​:

  1. ​梯度消失​
    • 当输入 z 很大或很小时,导数 y′ 接近 0,导致参数(w,b)几乎不更新,深层网络训练困难。
    • 比如,z=10 时,y≈1,y′≈0,梯度几乎消失。
  2. ​输出不对称​
    • 输出恒为正(> 0),导致后续层的输入总是正数,影响参数优化效率。
  3. ​训练慢​
    • 梯度更新方向不稳定,优化过程耗时较长。

​适用场景​​:二分类问题的输出层(现代神经网络隐藏层一般不用 Sigmoid)。


​2. Tanh 激活函数​

​公式:​

​特点:​

✅ ​​优点​​(相比 Sigmoid):

  1. ​输出对称​
    • 输出在 (-1, 1) 之间,以 0 为中心,缓解了 Sigmoid 的"恒正"问题,训练更稳定。
  2. ​收敛更快​
    • 梯度更新更合理,模型训练速度比 Sigmoid 快。

❌ ​​缺点​​:

  1. ​梯度消失仍然存在​
    • 当 ∣z∣ 很大时,导数 y′ 接近 0,深层网络依然可能训练困难。
  2. ​非线性能力有限​
    • 和 Sigmoid 类似,Tanh 仍然是"饱和型"激活函数,对复杂数据的拟合能力不如 ReLU 等现代激活函数。

​适用场景​​:RNN、LSTM 等序列模型(隐藏层),二分类问题的输出层(替代 Sigmoid)。


​对比​
​激活函数​ ​输出范围​ ​优点​ ​缺点​ ​适用场景​
​Sigmoid​ (0, 1) 适合概率输出,计算简单 梯度消失、训练慢、输出不对称 二分类输出层
​Tanh​ (-1, 1) 输出对称,训练比 Sigmoid 快 仍有梯度消失问题 RNN/LSTM 隐藏层

3. ​​ReLU & Leaky ReLU 激活函数


​一、ReLU(修正线性单元)​

​1. 公式与计算规则​

  • ​直观理解​:输入 > 0 时,直接输出原值;输入 ≤ 0 时,输出 0。反向传播时,正输入的梯度恒为 1,负输入的梯度为 0。

​2. 核心优势​​ ✅

  1. ​解决梯度消失​:正区间的梯度恒为 1,深层网络训练时梯度能稳定传递(不像 Sigmoid/Tanh 会接近 0)。
  2. ​计算极快​:只需判断是否大于 0,没有指数、除法等复杂运算,适合大规模网络(如 CNN、Transformer)。
  3. ​稀疏激活​:负输入直接输出 0,让部分神经元"关闭",提升模型效率。

​3. 主要缺点​ ​ ❌
​神经元死亡问题​

  • 如果某个神经元的输入长期 ≤ 0(比如初始化不好或学习率太高),它的梯度永远是 0,参数无法更新,这个神经元就"死"了,失去作用。
  • 影响:部分神经元失效,降低模型表达能力。

​适用场景​​:

  • ​绝大多数深度学习模型​(如 CNN、全连接网络)的隐藏层默认选择。
  • 代表网络:ResNet、VGG、AlexNet 等。

​二、Leaky ReLU(带泄漏的 ReLU)​

​1. 公式与计算规则​

  • ​直观理解​:输入 > 0 时和 ReLU 一样;输入 ≤ 0 时,输出一个很小的比例(如 0.01 倍),而不是直接归零。

​2. 核心优势​ ​ ✅

​解决神经元死亡​​:

  • 负输入也有微小梯度(如 0.01),神经元不会完全"死掉",保留了学习能力。

​3. 主要缺点​​ ❌

  1. ​需要调参​:泄漏系数 a 是人工设定的(通常 0.01),不同任务可能需要调整。
  2. ​训练可能不稳定​:正负区间的处理方式不同,可能导致梯度更新波动。

​适用场景​​:

  • 担心 ReLU 神经元死亡的场景(如训练不稳定或深层网络)。
  • 改进版:​PReLU​(Parametric ReLU),让 a 变成可学习的参数,自动优化。

​三、对比
​特性​ ​ReLU​ ​Leaky ReLU​
​计算速度​ ⚡️ 极快(主流选择) ⚡️ 快(稍慢于 ReLU)
​梯度消失​ ✅ 正区间无消失 ✅ 正区间无消失
​神经元死亡​ ❌ 可能死亡 ✅ 缓解死亡问题
​超参数​ 需设定泄漏系数 a

二. 损失函数

1. 均方误差损失函数

相关推荐
Halo咯咯3 分钟前
无限免费 OpenClaw:接入本地模型后,你的 AI Agent 就可以 24 小时自动干活(Mac Mini 可用)
人工智能
NAGNIP12 小时前
一文搞懂深度学习中的通用逼近定理!
人工智能·算法·面试
冬奇Lab13 小时前
一天一个开源项目(第36篇):EverMemOS - 跨 LLM 与平台的长时记忆 OS,让 Agent 会记忆更会推理
人工智能·开源·资讯
冬奇Lab13 小时前
OpenClaw 源码深度解析(一):Gateway——为什么需要一个"中枢"
人工智能·开源·源码阅读
AngelPP17 小时前
OpenClaw 架构深度解析:如何把 AI 助手搬到你的个人设备上
人工智能
宅小年17 小时前
Claude Code 换成了Kimi K2.5后,我再也回不去了
人工智能·ai编程·claude
九狼17 小时前
Flutter URL Scheme 跨平台跳转
人工智能·flutter·github
ZFSS17 小时前
Kimi Chat Completion API 申请及使用
前端·人工智能
天翼云开发者社区18 小时前
春节复工福利就位!天翼云息壤2500万Tokens免费送,全品类大模型一键畅玩!
人工智能·算力服务·息壤
知识浅谈19 小时前
教你如何用 Gemini 将课本图片一键转为精美 PPT
人工智能