神经网络基础知识总结

课程:B站云博士ai 

目录

基本概念

正向传播

激活函数

神经网络训练的基本设定

损失(Loss)

梯度与梯度下降

1. 反向传播原理

2. 偏导数计算过程

3. 最终结果计算


基本概念

  • 特征与目标:已知的属性称为特征,未知的属性称为目标 。在神经网络训练中,通过对已知特征数据的学习,来预测目标值。
  • 预测:当神经网络的模型结构和权重确定后,就可以对新样本的目标值进行预测 。“net” 一般指网络计算的中间结果(如加权和),“weight” 即权重,是神经网络中用于计算的参数 。“prediction” 是预测值,“target” 是真实目标值。
  • :神经网络由多个计算单元组成的层次结构,每层包含多个节点(神经元) 。多个输出可视为一组向量。权重一般用带有下标(表示维度)的符号表示,如wx,y​ ,x表示后一层的编号,y表示前一层的第y个结点 。

正向传播

  • 原理:输入数据从输入层进入,经过各隐藏层,最终到达输出层的过程 。在每一层,输入值与权重进行加权求和,然后进行非线性变换(激活函数处理)得到输出 。
  • 示例:笔记中输入a=[a1​,a2​,a3​](向量形式),权重w以矩阵形式表示,如[w1,1​w2,1​​w1,2​w2,2​​w1,3​w2,3​​] ,通过矩阵运算g(w∗a)=z (g为激活函数)得到输出z=[z1​,z2​](向量形式) ,这里涉及加权求和并进行非线性变换 。

激活函数

  • 作用:给神经网络引入非线性因素,使网络能够学习和表示复杂的非线性关系 ,实现几何空间的扭曲和变型 ,把数据结果变化到需要的区间 。
  • 常见激活函数
    • Sigmoid:公式为σ(x)=1+e−x1​ ,值域为(0,1) ,常被用于将数据映射到概率区间 ,但存在梯度消失问题 。

    • tanh:公式为tanh(x)=cosh(x)/sinh(x)​​ ,值域为(−1,1) ,相比 Sigmoid 函数,其输出是零中心化的 ,但也有梯度消失问题 。

    • ReLU:公式为max(0,x) ,优点是计算简单,在x>0时梯度为 1,缓解了梯度消失问题,训练速度快 。

    • ELU:公式为f(x)={x,α(e^x−1),​x>0x≤0​ ,结合了 ReLU 的优点,在x≤0时引入了自适应性,使函数输出均值接近 0 。

    • PReLU:在x≤0时具有可学习的参数,增加了模型的灵活性 。

神经网络训练的基本设定

  • 网络结构:神经网络的深度(层数)和广度(每层神经元数量)通常需通过经验和实验确定 。一旦确定,训练过程主要就是调整权重w 。
  • 权重初始化与更新策略:通常会随机初始化一组权重w ,然后使用特定策略不断迭代更新w ,目标是让模型预测结果与真实值的差距最小。

损失(Loss)

  • 定义:损失用于衡量预测值和真实值的差异性 ,可以是数值差(如均方误差 )、概率差(如交叉熵损失 )、分布差等,一般表示为关于权重w的函数L(w) 。损失越小,说明模型预测越准确。

梯度与梯度下降

  • 梯度方向:在一维损失函数中,涉及 1 个权重变量;二维损失函数中,涉及 2 个权重变量 。梯度方向是函数值增长最快的方向,而其反方向就是损失函数下降最快的方向。
  • 极值点:即损失函数取得最小值的位置。在训练过程中,模型沿着梯度反方向,每次以一小段距离(学习率决定)更新权重,不断逼近极值点,使损失逐渐减小。

1. 反向传播原理

这是神经网络反向传播中利用链式法则计算 ∂w5​∂Etotal​​ 的过程。反向传播是为了更新神经网络中的权重,使得损失函数 Etotal​ 最小化 。核心依据链式法则,将总误差对权重的偏导数,拆解为多个中间变量偏导数的连乘形式 ,即 ∂w5​∂Etotal​​=∂outo1​∂Etotal​​×∂neto1​∂outo1​​×∂w5​∂neto1​​ 。

2. 偏导数计算过程

  • 计算 ∂outo1​∂Etotal​​
    • 已知 Etotal​=21​(targeto1​−outo1​)2+21​(targeto2​−outo2​)2 ,根据求导公式 (Xn)′=nXn−1 对其求关于 outo1​ 的偏导数。
    • 第一项 21​(targeto1​−outo1​)2 求导得 2×21​(targeto1​−outo1​)2−1×(−1) ,第二项 21​(targeto2​−outo2​)2 关于 outo1​ 求偏导为 0 。
    • 代入 targeto1​=0.01 ,outo1​=0.75136507 ,算出 ∂outo1​∂Etotal​​=−(0.01−0.75136507)=0.74136507 。
  • 计算 ∂neto1​∂outo1​​
    • 因为 outo1​=1+e−neto1​1​ ,这是 sigmoid 函数形式,其导数公式为 ∂neto1​∂outo1​​=outo1​(1−outo1​) 。
    • 代入 outo1​=0.75136507 ,得到 ∂neto1​∂outo1​​=0.75136507×(1−0.75136507)=0.186815602 。
  • 计算 ∂w5​∂neto1​​
    • 由 neto1​=w5​×outh1​+w6​×outh2​+b2​×1 ,根据求导公式 (aX)′=a (a 为常数,X 为变量)求关于 w5​ 的偏导数。
    • 对 w5​×outh1​ 求导得 1×outh1​×w5(1−1)​ ,后两项关于 w5​ 求偏导为 0 ,代入 outh1​=0.593269992 ,得到 ∂w5​∂neto1​​=outh1​=0.593269992 。

3. 最终结果计算

将上述计算得到的三个偏导数相乘,即 ∂w5​∂Etotal​​=∂outo1​∂Etotal​​×∂neto1​∂outo1​​×∂w5​∂neto1​​=0.74136507×0.186815602×0.593269992 ,就可得到总误差对权重 w5​ 的偏导数,用于后续权重 w5​ 的更新 。 权重更新公式一般为 w5​=w5​−η×∂w5​∂Etotal​​ ,其中 η 是学习率 。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿崽meitoufa

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值