神经网络与深度学习(一)误差反传BP算法

误差反传BP算法

1多层感知机

1.1XOR问题

线性不可分问题: 无法进行线性分类。

Minsky 1969 年提出 XOR 问题

解决方法:使用多层感知机 使用多层感知机

1.2多层感知机

• 在输入和输出层间加一或多隐单元,构成多层感知器(多层前馈神经网络)

• 加一层隐节点( 单元)为三层网络,可解决异或XOR )问题

由输入得到两个隐节点、一个输出层节点的输出:

可得到:

设网络有如下一组权值和阈值,可得各节点的输出:

三层感知器可识别任一凸多边形或无界的区域。

更多层感知器网络,可识别为复杂的图形。

2.BP算法

2.1简述


多层感知机是一种多层前馈网络, 由多层神经网络构成,每层网络将输出传递给下一层网络。神经元间的权值连接仅现在相邻之间, 不出现在其他位置。如果每一个神经元都连接到上层的所有(除输入层外),则成为全连接网络 。

多层前馈网络的反向传播 (BP) 学习算法,简称BP算法 ,是有导师的学习,它是梯度下降法在多层前馈网中的应用。

网络结构:见上图,u(或x)、y是网络的输入、输出向量,神经元用节点表示,网络由输入层、隐层和输出层节点组成,隐层可一层也可多层 (图中是单隐层) ,前层至后层节点通过权联接。由于用BP学习算法,所以常称BP神经网络。

  • 正向传播是输入信号从输入层经隐层,传向输出层,若输出层得到了期望的输出,则学习算法结束;否则,转至反向传播。
  • 反向传播是将误差(样本输出与网络输出之差) 按原联接通路反向计算,由梯度下降法调整各层节点的权值和闽值,使误差减少

2.2详解

2.2.1输入输出模型

假设网络共有L层,(输入层为第0层,输出为第L层)

层:用上标[l]表示,共L层;

2.2.2梯度下降算法迭代


网络训练的目的,是使对每一个输入样本,调整网络权值参数w,使输出均方误差最小化。这是一个最优化问题。

为求解上述最小化问题,考虑迭代算法
这就是梯度下降算法,也是BP学习算法的基本思想

2.2.3前向传播在输出端计算误差

考虑二层神经网络(有一层隐含层):

对于第1层第i个神经元,其输出:

在输出端计算误差

2.2.4误差反传--输出层



2.2.5误差反传--隐含层




即误差进行反向传播

2.2.6误差反传--总结

相关推荐
聆风吟º1 小时前
CANN算子开发:ops-nn神经网络算子库的技术解析与实战应用
人工智能·深度学习·神经网络·cann
觉醒大王1 小时前
强女思维:着急,是贪欲外显的相。
java·论文阅读·笔记·深度学习·学习·自然语言处理·学习方法
偷吃的耗子1 小时前
【CNN算法理解】:CNN平移不变性详解:数学原理与实例
人工智能·算法·cnn
笔画人生1 小时前
# 探索 CANN 生态:深入解析 `ops-transformer` 项目
人工智能·深度学习·transformer
灰灰勇闯IT1 小时前
领域制胜——CANN 领域加速库(ascend-transformer-boost)的场景化优化
人工智能·深度学习·transformer
小白狮ww1 小时前
要给 OCR 装个脑子吗?DeepSeek-OCR 2 让文档不再只是扫描
人工智能·深度学习·机器学习·ocr·cpu·gpu·deepseek
做人不要太理性1 小时前
CANN Runtime 运行时组件深度解析:任务下沉执行、异构内存规划与全栈维测诊断机制
人工智能·神经网络·魔珐星云
island13141 小时前
CANN GE(图引擎)深度解析:计算图优化管线、内存静态规划与异构任务的 Stream 调度机制
开发语言·人工智能·深度学习·神经网络
艾莉丝努力练剑1 小时前
深度学习视觉任务:如何基于ops-cv定制图像预处理流程
人工智能·深度学习
禁默2 小时前
大模型推理的“氮气加速系统”:全景解读 Ascend Transformer Boost (ATB)
人工智能·深度学习·transformer·cann