感性认识神经网络的反向传播

2023-11-10 03:40

本文主要是介绍感性认识神经网络的反向传播,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


本文打算从简单的方式描述神经网络的反向传播,有很多细节是不展开讲得。所以看到不展开讲的内容,知道就好,不必深究。看完本文后,会对神经网络的反向传播有一个感性的认识,然后自己再另外拓展了解细节即可。


神经网络是什么?

假设有N个输入的节点,M个输出节点。

我们假设每一个输出的节点的值,都给这N个输入节点的值有关,而每个输入节点对于输出的节点的影响的权重是各异的。那么这些权重各自应该是多少呢?可以先随机产生这些权重,然后根据这些权重算出我们的预测输出值,这些值肯定跟实际的输出值是有差异的,然后根据这些差异来再次调整这些权重。

如此重复下去,直到预测值跟目标值“差不多”。

下面这个就是一个极简单的神经网络,3个输入节点,1个输出节点。



Y= (X1 * W1)+(X2 * W2)+(X3 * W3)


但是实际应用一般是多层神经网络。




注:最下面的5个节点应该与中间曾的3个节点都相连的,为了不显得太乱,我这里没有把线条画全。



这个2层的神经网络是怎么回事呢?

先说说我们要解决什么问题:给5个输入节点,和1个输出节点。现在来构造2层的神经网络来拟合输入输出。因此加入了中间的一层,一般称为隐藏层。


现在的关系是,由输入层算出隐藏层,由隐藏层算出输出层。我们的目标是不断地调整这两层的关系,就是权重。


前文提到只有一层的神经网络该怎么调整。现在变成了两层,带来了个新问题。我们可以算出隐藏层的预测值,但是隐藏层没有期望值(或者说实际值),因为它是我们假设出来的。问题的前提条件只有5个输入节点的值和1个输出节点的值。那么我们如何评估这个隐藏层的误差呢?

那就是利用反向传播了。

首先,隐藏层的误差其实是可以由输出层的误差来评估的,为什么呢?比如隐藏层的一个节点h,它与输出层两个节点相连,o1o2。明显,节点h的误差越大,也会造成o1o2的误差越大。所以,他们是有关系的。

简单来说,反向传播就是先评估隐藏层和输出层的误差,调整他们的权重,再把误差传播给下面,输入层和输出层的误差的评估是根据上面传播过来的误差来计算的,然后再调整权重。


下面来演示一下这个调整的过程。


假设的开始状态:




我们设定初始的权重都是1,先正向传播,把预测值算出来。

1520

5 5 5

1 1 1 1 1


我们预测出来的输出值是15,跟实际的输出值20有误差。


我们来计算一下一个误差项。这个误差项有几个部分组成。

第一部分是 d1=20-15=5,就是预测值跟期望值的差。

第二部分是d2= 预测值*1-预测值)=15*1-15),其实这个是sigmoid的挤压函数的导数。

这里不详细讲解它代表什么,知道偏差的评估跟它有关就好了。想知道它什么意思,请看一下反向传播法则的推导过程。

第三部分是d3=学习率,常数。

第四部分是d4隐藏层的节点的值,555

由这四部分我们由某种方法(不展开讲),算出一个误差项D

然后根据这个误差项来调整隐藏层跟输出层的权重:w=w+D


假如,我们把这些权重都由1调整为了1.2


这一层就搞定了。接下来看输出层跟隐藏层的。

拿隐藏层的第一个节点来讨论。

还是先评估这个节点的预测值跟期望值的误差。上面提到,因为隐藏层是没有期望值的。我们只好拿上面的误差来传播下来评估。因此,找到跟隐藏层第一个节点的相连的输出层的节点(我们这个网络只有一个),把这些节点的误差传播下来。

总的来说,隐藏层节点的误差项是有以下几个部分组成的。

第一部分d1:跟该节点相连的出处层的节点的误差,以及权重。

第二部分d2=预测值*1-预测值),sigmoid的挤压函数的导数。

第三部分是d3=学习率,常数。

第四部分是d4输入层的节点的值,11111


由这四部分我们由某种方法,算出一个误差项D

然后根据这个误差项来调整输入层跟隐藏层的权重:w=w+D


不断地拿训练样本来,重复这个过程,得到最终的权重。


可以看到,反向传播其实有两个“反向”,第一是权重的调整是反向的,第二是误差是反向传播下去的。



这篇关于感性认识神经网络的反向传播的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/380205

相关文章

图神经网络模型介绍(1)

我们将图神经网络分为基于谱域的模型和基于空域的模型,并按照发展顺序详解每个类别中的重要模型。 1.1基于谱域的图神经网络         谱域上的图卷积在图学习迈向深度学习的发展历程中起到了关键的作用。本节主要介绍三个具有代表性的谱域图神经网络:谱图卷积网络、切比雪夫网络和图卷积网络。 (1)谱图卷积网络 卷积定理:函数卷积的傅里叶变换是函数傅里叶变换的乘积,即F{f*g}

用einsum实现MultiHeadAttention前向传播

einsum教程网站Einstein Summation in Numpy | Olexa Bilaniuk's IFT6266H16 Course Blog 编写训练模型 import tensorflow as tfclass Model(tf.keras.Model):def __init__(self, num_heads, model_dim):super().__init__

机器学习之监督学习(三)神经网络

机器学习之监督学习(三)神经网络基础 0. 文章传送1. 深度学习 Deep Learning深度学习的关键特点深度学习VS传统机器学习 2. 生物神经网络 Biological Neural Network3. 神经网络模型基本结构模块一:TensorFlow搭建神经网络 4. 反向传播梯度下降 Back Propagation Gradient Descent模块二:激活函数 activ

图神经网络框架DGL实现Graph Attention Network (GAT)笔记

参考列表: [1]深入理解图注意力机制 [2]DGL官方学习教程一 ——基础操作&消息传递 [3]Cora数据集介绍+python读取 一、DGL实现GAT分类机器学习论文 程序摘自[1],该程序实现了利用图神经网络框架——DGL,实现图注意网络(GAT)。应用demo为对机器学习论文数据集——Cora,对论文所属类别进行分类。(下图摘自[3]) 1. 程序 Ubuntu:18.04

基于深度学习 卷积神经网络resnext50的中医舌苔分类系统

项目概述 本项目旨在通过深度学习技术,特别是利用卷积神经网络(Convolutional Neural Networks, CNNs)中的ResNeXt50架构,实现对中医舌象图像的自动分类。该系统不仅能够识别不同的舌苔类型,还能够在PyQt5框架下提供一个直观的图形用户界面(GUI),使得医生或患者能够方便地上传舌象照片并获取分析结果。 技术栈 深度学习框架:采用PyTorch或其他

图神经网络(2)预备知识

1. 图的基本概念         对于接触过数据结构和算法的读者来说,图并不是一个陌生的概念。一个图由一些顶点也称为节点和连接这些顶点的边组成。给定一个图G=(V,E),  其 中V={V1,V2,…,Vn}  是一个具有 n 个顶点的集合。 1.1邻接矩阵         我们用邻接矩阵A∈Rn×n表示顶点之间的连接关系。 如果顶点 vi和vj之间有连接,就表示(vi,vj)  组成了

Linux如何做ssh反向代理

SSH反向代理是一种通过SSH协议实现的安全远程访问方式,它允许客户端通过SSH连接到一台具有公网IP的代理服务器,然后这台代理服务器再将请求转发给内部网络中的目标主机。以下是实现SSH反向代理的步骤: 一、准备工作 确保服务器配置: 内网服务器(目标主机)和外网服务器(代理服务器)都安装了SSH服务,并且能够通过SSH进行互相访问。内网服务器上的服务(如Web服务、数据库服务等)需要在本地

自然语言处理系列六十三》神经网络算法》LSTM长短期记忆神经网络算法

注:此文章内容均节选自充电了么创始人,CEO兼CTO陈敬雷老师的新书《自然语言处理原理与实战》(人工智能科学与技术丛书)【陈敬雷编著】【清华大学出版社】 文章目录 自然语言处理系列六十三神经网络算法》LSTM长短期记忆神经网络算法Seq2Seq端到端神经网络算法 总结 自然语言处理系列六十三 神经网络算法》LSTM长短期记忆神经网络算法 长短期记忆网络(LSTM,Long S

神经网络训练不起来怎么办(零)| General Guidance

摘要:模型性能不理想时,如何判断 Model Bias, Optimization, Overfitting 等问题,并以此着手优化模型。在这个分析过程中,我们可以对Function Set,模型弹性有直观的理解。关键词:模型性能,Model Bias, Optimization, Overfitting。 零,领域背景 如果我们的模型表现较差,那么我们往往需要根据 Training l

如何将卷积神经网络(CNN)应用于医学图像分析:从分类到分割和检测的实用指南

引言 在现代医疗领域,医学图像已经成为疾病诊断和治疗规划的重要工具。医学图像的类型繁多,包括但不限于X射线、CT(计算机断层扫描)、MRI(磁共振成像)和超声图像。这些图像提供了对身体内部结构的详细视图,有助于医生在进行准确诊断和制定个性化治疗方案时获取关键的信息。 1. 医学图像分析的挑战 医学图像分析面临诸多挑战,其中包括: 图像数据的复杂性:医学图像通常具有高维度和复杂的结构