BP神经网络

举报
the-order 发表于 2022/04/14 23:18:09 2022/04/14
【摘要】 BP神经网络介绍

1 BP神经网络介绍

多层感知器可以很好的解决分类问题,但是单层感知器的权值调整算法无法
运用到多层感知器中(无法确定隐藏层的期望输出)。而随着误差反向传播算法(Error
Back Propagation, BP)的提出, 解决了多层神经网络的学习问题, 故人们称这种采用
误差反向传播算法训练的多层神经网络称为BP网络。 BP网络的学习过程由信号的正向
传播和反向传播两个过程组成:
· 正向传播时信号从输入层计算各层加权和经由各隐层最终传递到输出层,得到输出结
果· 输出结果与期望结果(监督信号)比较得到输出误差,误差反传是依照梯度下降算法
将误差沿着隐藏层到输入层逐层反传,将误差分摊给各层的所有单元,从而得到各个
单元的误差信号(学习信号),据此修改各单元权值

2 网络结构

在这里插入图片描述
其中的向量定义如下
在这里插入图片描述

3 研究步骤-输出

在这里插入图片描述
研究步骤-代价函数

· 3 权值调整:
这里我们用代价函数E来描述网络误差,使用随机梯度下降(SGD,Stochastic
Gradient Descent)策略, 以代价函数的负梯度方向对参数进行调整。每次只针对
一个训练样例更新权值。这种算法被称作误差逆传播(error Back Propagation)算
法,简称标准BP算法

在这里插入图片描述
研究步骤-梯度下降反向调整权值

在这里插入图片描述

4 bp算法推导

在这里插入图片描述

5 学习算法步骤——标准化、初始化

1 观察输入向量,一般需要标准化,当量纲差别不大是不需要标准化。
· 2 初始化:

  • 选取学习率η(0 < η ≤ 1) - 对权值矩阵、赋初值(较小的非零随机数)
  • 根据循环训练的需要定义训练集内样本计数器p = 1(全部样本训练完一次后归
    一)和训练次数计数器q = 1(记录总的训练次数),误差E = 0(记录每次的训
    练误差)。给出训练需要满足的精度Emin,设定最大迭代次数M

学习算法步骤——计算

在这里插入图片描述
学习算法步骤——调整权重、循环:
在这里插入图片描述

6 学习算法步骤——流程图

在这里插入图片描述

7 拓展——累积BP算法

除了标准BP算法,还有另一种基于标准梯度下降(BGD,Batch Gradient Descent)策
略的BP算法(累积BP算法). 相较于标准BP算法的对于每个样本都要回传误差调整权值,
累积BP算法是在所有样本输入后计算总误差然后调整权值,总误差
在这里插入图片描述
累积BP算法在样本数多的情况下学习速度快很多;而
标准BP算法往往会获得较好的解

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。