当前位置: 首页 > article >正文

深度学习(2)前向传播与反向传播

这一次我们重点讲解前向传播与反向传播,对这里还是有点糊涂

前向传播(Forward Propagation)和反向传播(Backward Propagation)是深度学习中神经网络训练的核心过程。它们分别负责计算神经网络的输出以及更新神经网络的参数(如权重和偏置)。下面我会详细解释这两个过程,包括其工作原理、公式以及如何实现。

1. 前向传播(Forward Propagation)

前向传播是神经网络的第一步,用于计算从输入到输出的路径。神经网络通过前向传播将输入数据传递到输出,计算每一层的加权和,并通过激活函数生成最终的输出结果。

前向传播步骤:
  1. 输入数据

    • 神经网络的输入层接受原始数据。例如,输入可能是图像像素值、文本的词向量等。
  2. 输出层

    • 最后一层的输出将作为神经网络的预测值。例如,在分类问题中,输出层的激活函数可能是 Softmax,用于输出概率分布。
前向传播的公式总结

2. 反向传播(Backward Propagation)

反向传播是神经网络训练中的关键步骤,用于计算每个参数(权重和偏置)的梯度,并更新这些参数。通过反向传播,我们使用梯度下降法(或其他优化算法)最小化损失函数。

反向传播步骤:

  1. 反向传播到前一层

前向传播与反向传播的总结

  • 前向传播:输入数据通过神经网络传递,计算出每一层的激活值,最终得到输出结果。
  • 反向传播:根据损失函数计算梯度,并使用这些梯度更新网络的权重和偏置,从而最小化损失函数。

前向传播和反向传播是神经网络训练的核心,理解这两个过程对掌握神经网络的工作原理至关重要。

例题 1:简单的前向传播

假设你有一个单层神经网络(一个神经元):

  • 输入:x=[1.0,2.0]
  • 权重:w=[0.5,−0.5]
  • 偏置:b=0.5
  • 激活函数:Sigmoid
任务:计算神经元的输出。

例题 2:反向传播计算梯度

假设我们有一个包含一个隐藏层和一个输出层的简单神经网络,结构如下:

  • 输入层:2个节点
  • 隐藏层:2个节点
  • 输出层:1个节点
  • 激活函数:Sigmoid

已知:

任务:计算反向传播的梯度,更新权重。
步骤 1:前向传播
步骤 3:反向传播


http://www.kler.cn/a/430079.html

相关文章:

  • Github出现复杂问题 无法合并 分支冲突太多 如何复原
  • android源码编译后,为什么emulator一直黑屏或者停止android界面
  • AI的主流数据库介绍及其功能对比
  • vue3+ts+element-plus 对话框el-dialog设置圆角
  • Yolo11改进:注意力改进|Block改进|ESSAformer,用于高光谱图像超分辨率的高效Transformer|即插即用
  • 00000008_C并发编程与多线程
  • Python爬虫——猫眼电影
  • Linux setfacl lsattr chattr 命令详解
  • 什么是 k8s CNI ?
  • 研究生第一篇文献综述怎么写,文献检索,文章整理,文献归纳高效方法小技巧【学习笔记】
  • 解决view-ui-plus 中表单验证不通过问题,select 组件开启multiple模式 总是提示错误,即使不验证也提示,有值也验证失败
  • 亚马逊云科技re:Invent大会:数据与AI如何颠覆企业未来?
  • Tr0ll: 1 Vulnhub靶机渗透笔记
  • 阿里内部正式开源“Spring Cloud Alibaba (全彩小册)”
  • Android问题记录 - Inconsistent JVM-target compatibility detected for tasks
  • 05-树莓派-交叉编译
  • PHP和GD如何给图片添加滤镜效果
  • 【QNX+Android虚拟化方案】134 - QNX侧配置开机自动抓取tcpdump 报文
  • 第一篇:k8s架构与组件详解
  • 自然语言处理:从入门到精通全指引
  • 【LLMs】用LM Studio本地部署离线大语言模型
  • 从零开始的使用SpringBoot和WebSocket打造实时共享文档应用
  • 学生信息管理系统(简化版)
  • 动画Lottie
  • 微服务篇面试题
  • 亚马逊云科技Swami博士:生成式AI即将达到临界点