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

ops/2024/12/13 22:48:41/

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

前向传播(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.ppmy.cn/ops/141652.html

相关文章

Golang学习笔记_06——变量和常量

Golang学习笔记_03——匿名函数和闭包 Golang学习笔记_04——递归函数 Golang学习笔记_05——延迟调用 文章目录 1. 变量1.1 声明1.2 多变量声明1.3 作用域1.4 生命周期1.5 匿名变量 2. 常量源码 1. 变量 Go语言中的变量是存储数据的基本单元,它们允许你为数据命名…

TCP 和 UDP 可以使用同一个端口吗

TCP 和 UDP 可以使用同一个端口吗 简单来说 可以使用同一个端口,关键在于它们属于不同的传输层协议,在内核中是两个完全独立的软件模块,各自维护独立的端口空间,虽然端口号相同,但通过协议类型可以确定是哪种协议。 …

rabbitMq的rabbitmqctl status报错

Error: unable to perform an operation on node rabbitASUS-PC. Please see diagnostics information and suggestions below. 遇到上图这个错大部分问题可能是由于 RabbitMQ CLI 工具的 Erlang Cookie 与服务器上的不匹配而导致连接问题。Erlang Cookie 在 RabbitMQ 节点之间…

路由介绍.

RIB和FIB Routing Information Base(RIB),即路由信息库,是存储在路由器或联网计算机中的一个电子表格或类数据库,它保存着指向特定网络地址的路径信息,包括路径的路由度量值。RIB的主要目标是实现路由协议…

Javaweb web后端maven介绍作用安装

自动导入到这个项目 src是源代码 main主程序,核心代码 java是Java源代码 resources是项目配置文件 test测试相关的 maven概述 介绍 依赖在本地仓库查找,如果本地仓库有,用本地仓库的依赖,本地没有,连接中央仓库&…

Apache HTTP 服务器性能优化指南

引言 随着Web应用的复杂性和用户需求的增长,确保Apache服务器能够高效处理大量请求变得至关重要。性能优化不仅涉及调整配置参数,还包括选择合适的架构和工具来提升响应速度、减少延迟并最大化资源利用率。本文将探讨如何通过一系列措施来优化Apache的性…

Keras 深度学习库应用全解析

一、模型构建基础 模型初始化 使用 Sequential 模型:简单线性堆叠层的方式,如 model Sequential(),适合初学者快速搭建基础网络结构。函数式 API 构建:通过 Input 定义输入层,如 input_layer Input(shape(input_dim,…

day12 接口测试 ——入门→精通→实战(1)

【没有所谓的运气🍬,只有绝对的努力✊】 目录 1、接口测试分类 1.1 内部接口: 1.2 外部接口: 2、目前接口架构设计 2.1、基于SOAP架构, 2.2、基于RPC架构, 2.3、基于RestFul架构, 2.3.1…