热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

为什么说BP神经网络就是人工神经网络的一种?

BP(BackPropagation)网络是由Rinehart等于1986年提出的,是一种按误差逆传播算法训练的,多层前馈网络,是目前应用最广泛的神经网络模型之一。�CBP网络能学习和

BP( Back Propagation)网络是由Rinehart等于1986年提出的,是一种按误差逆传播算法训练的,多层前馈网络,是目前


应用最广泛的神经网络模型之一。


CBP网络能学习和存储大量的输入、输出模式映射关系,而无须事前揭示描述这种映射关系的数学方程。


C其学习规则是使用梯度下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。


BP神经网络模型拓扑结构包括:


输入层(Input),这一区域相当于外界的刺激,是刺激的来源并且将刺激传递给神经元。


隐藏层( Hide layer),这一区域表示神经元相互之间传递刺激,相当于人脑里面。


输出层(Output layer),这一区域表示神经元经过多层次相互传递后,对外界的反应。


wKioL1mmUBuynyoXAACa15zTGhE054.jpg-wh_50


BP反馈机制


简单的描述就是,输入层将刺激传递给隐藏层,隐藏层通过神经元之间,联系的权重和激活函数,将刺激传到输出层,输出层整理隐藏层处理后的刺激,产生最终结果。


若有正确的结果,那么将正确的结果和产生的结果进行比较,得到误差,再逆推对神经网中的链接权重进行反馈修正,从而来完成学习的过程。


这就是BP (Back Propagation)神经网的反馈机制,也是名字的来源,即运用向后反馈的学习机制,来修正神经网中的权


重,最终达到输出正确结果的目的。


双向信号传播


BP算法由数据流的前向(正向)传播和误差信号的反向传播两个过程构成。


C正向传播时,传播方向为输入层-隐层-输出层,每层神经元的状态只影响下一层神经元。


C若在输出层得不到期望的输出,则转向误差信号的反向传播流程。


这两个过程的交替进行


C在权向量空间,执行误差函数梯度下降策略,动态迭代搜索一组权向量。


C使网络误差函数达到最小值,从而完成信息提取,和记忆过程。




正向传播


设BP神经网络的输入层有n个节点,隐层有q个节点,输出层有m个节点,输入层与隐层之间有权值为vki,隐层与输出层之间的权值为wjk,三层神经网络的拓扑结构,如下图所示。


wKiom1mmUECTZ2zTAACppbF-3-Y941.jpg-wh_50


隐层传递函数为1(),输出层的传递函数为2(),则隐层节点的输出为(将阈值写入求和项中,k=1,2,…q)


wKiom1mmUEyRgDYRAAAdxl-hOLw021.jpg-wh_50


输出层节点的输出为(j=l,2,…,m):


wKiom1mmUFiiBeEVAAAbPmFzYFg928.jpg-wh_50


至此BP网络完成n维空间向量对m维空间的近似映射




反向传播


反向传播,目的是传递误差信号


C所以要进行定义误差函数、输出层权值变化、以及隐层权值变化等操作。


C以上作用可分别以数据公式表达出来:


wKioL1mmUFKh2-LKAAAfL3AkRqk716.jpg-wh_50


C式中x1,x2,…,xq为输入信号,wj1,wj2,…,wji,…,wjn为神经元k之权值,uk为线性组合结果,θk为阈值,f ()为激活函数,yk为神经元k的输出。


wKiom1mmUHSB62sLAAAXn8xwrgk674.jpg-wh_50


C若把输入的维数增加一维,则可把阈值θk包括进去。


本文出自 “中科院计算所培训” 博客,谢绝转载!


推荐阅读
  • 尽管使用TensorFlow和PyTorch等成熟框架可以显著降低实现递归神经网络(RNN)的门槛,但对于初学者来说,理解其底层原理至关重要。本文将引导您使用NumPy从头构建一个用于自然语言处理(NLP)的RNN模型。 ... [详细]
  • 深入浅出TensorFlow数据读写机制
    本文详细介绍TensorFlow中的数据读写操作,包括TFRecord文件的创建与读取,以及数据集(dataset)的相关概念和使用方法。 ... [详细]
  • 本文档旨在帮助开发者回顾游戏开发中的人工智能技术,涵盖移动算法、群聚行为、路径规划、脚本AI、有限状态机、模糊逻辑、规则式AI、概率论与贝叶斯技术、神经网络及遗传算法等内容。 ... [详细]
  • 深入理解OAuth认证机制
    本文介绍了OAuth认证协议的核心概念及其工作原理。OAuth是一种开放标准,旨在为第三方应用提供安全的用户资源访问授权,同时确保用户的账户信息(如用户名和密码)不会暴露给第三方。 ... [详细]
  • 资源推荐 | TensorFlow官方中文教程助力英语非母语者学习
    来源:机器之心。本文详细介绍了TensorFlow官方提供的中文版教程和指南,帮助开发者更好地理解和应用这一强大的开源机器学习平台。 ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • 本文详细介绍了如何使用 Yii2 的 GridView 组件在列表页面实现数据的直接编辑功能。通过具体的代码示例和步骤,帮助开发者快速掌握这一实用技巧。 ... [详细]
  • XNA 3.0 游戏编程:从 XML 文件加载数据
    本文介绍如何在 XNA 3.0 游戏项目中从 XML 文件加载数据。我们将探讨如何将 XML 数据序列化为二进制文件,并通过内容管道加载到游戏中。此外,还会涉及自定义类型读取器和写入器的实现。 ... [详细]
  • 本章将深入探讨移动 UI 设计的核心原则,帮助开发者构建简洁、高效且用户友好的界面。通过学习设计规则和用户体验优化技巧,您将能够创建出既美观又实用的移动应用。 ... [详细]
  • 扫描线三巨头 hdu1928hdu 1255  hdu 1542 [POJ 1151]
    学习链接:http:blog.csdn.netlwt36articledetails48908031学习扫描线主要学习的是一种扫描的思想,后期可以求解很 ... [详细]
  • 本文探讨了如何在给定整数N的情况下,找到两个不同的整数a和b,使得它们的和最大,并且满足特定的数学条件。 ... [详细]
  • 使用Vultr云服务器和Namesilo域名搭建个人网站
    本文详细介绍了如何通过Vultr云服务器和Namesilo域名搭建一个功能齐全的个人网站,包括购买、配置服务器以及绑定域名的具体步骤。文章还提供了详细的命令行操作指南,帮助读者顺利完成建站过程。 ... [详细]
  • 毕业设计:基于机器学习与深度学习的垃圾邮件(短信)分类算法实现
    本文详细介绍了如何使用机器学习和深度学习技术对垃圾邮件和短信进行分类。内容涵盖从数据集介绍、预处理、特征提取到模型训练与评估的完整流程,并提供了具体的代码示例和实验结果。 ... [详细]
  • 尽管深度学习带来了广泛的应用前景,其训练通常需要强大的计算资源。然而,并非所有开发者都能负担得起高性能服务器或专用硬件。本文探讨了如何在有限的硬件条件下(如ARM CPU)高效运行深度神经网络,特别是通过选择合适的工具和框架来加速模型推理。 ... [详细]
  • Coursera ML 机器学习
    2019独角兽企业重金招聘Python工程师标准线性回归算法计算过程CostFunction梯度下降算法多变量回归![选择特征](https:static.oschina.n ... [详细]
author-avatar
爱在运动-666_517
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有