本随笔参考文章:《BP神经网络详解与实例》(链接: https://pan.baidu.com/s/1e2niIvD9KtLXEqwXtgdXxw 密码: vb8d)

本随笔原创,转发请注明原处:https://www.cnblogs.com/nanyunan/p/9494946.html


1 神经网络单元示例

2 神经网络示例

3 几个重要公式

3.1 单元前向公式

y=f[sum(wi*xi)-θ]

其中,wi是输入权重,xi是输入值,sum是求和函数,θ是阈(yu)值,f是激发函数

其中,f激发函数主要有:sgn,Sigmoid

其中,sgn是符号函数(https://baike.baidu.com/item/sign/115763

其次,Sigmoid是S型函数(https://baike.baidu.com/item/Sigmoid%E5%87%BD%E6%95%B0/7981407?fr=aladdin

3.2 单元后向公式

权重迭代公式

假设有n个样本训练网络,p表示当前训练样本,p-1表示上一个训练样本。

ωlp(i,j)=ωlp-1(i,j)+ηδlpαl-1p(j)

其中,ωlp(i,j)表示第l层第i个神经单元的第j个输入权重

其中,ωlp(i,j)表示新的权重

其中,ωlp-1(i,j)表示旧的权重

其中,η是学习效率,取值(0,1)之间,一般默认取值0.1。η过小,收敛过慢,精度高。η过大,收敛快,优解容易丢失。

其中,δlp(i)=f’Sum[δl+1p(j)ωl+1p-1(j,i)]

其中,f’是激发函数f的导函数

其中,δl+1p(j)表示下一层第j个神经单元的δ值

其中,ωl+1p-1(j,i)表示下一层第j个神经单元第i个权重的旧值

其次,δLp(i)=f’(tp(i)-aLp(i))

其中,L表示最后一层

其中,tp(i)表示最后一层第i个输出神经单元的真值

其中,aLp(i)表示最后一层第i个输出神经单元的输出值

4 编程实例

使用语言:C#

源代码(链接: https://pan.baidu.com/s/1nsh8T2VCISZFQb0fU_wBXg 密码: y8pi)

实例(包含程序,说明书,样本)(链接: https://pan.baidu.com/s/1sWkEOGqKXC6uMCGzD9eg_Q 密码: sjfh)

样本(链接: https://pan.baidu.com/s/1O9XlLOGXRbC0PfAVo9LULA 密码: b9st)

4.1 样本

4.2 样本文件

4.3 创建网络大小

4.4 训练

4.5 询问

BP神经网络研究(一)的更多相关文章

  1. 基于BP神经网络的字符识别研究

    基于BP神经网络的字符识别研究 原文作者:Andrew Kirillov. http://www.codeproject.com/KB/cs/neural_network_ocr.aspx 摘要:本文 ...

  2. 字符识别OCR研究一(模板匹配&BP神经网络训练)

    摘 要 在MATLAB环境下利用USB摄像头採集字符图像.读取一帧保存为图像.然后对读取保存的字符图像,灰度化.二值化,在此基础上做倾斜矫正.对矫正的图像进行滤波平滑处理,然后对字符区域进行提取切割出 ...

  3. BP神经网络原理及python实现

    [废话外传]:终于要讲神经网络了,这个让我踏进机器学习大门,让我读研,改变我人生命运的四个字!话说那么一天,我在乱点百度,看到了这样的内容: 看到这么高大上,这么牛逼的定义,怎么能不让我这个技术宅男心 ...

  4. 机器学习(一):梯度下降、神经网络、BP神经网络

    这几天围绕论文A Neural Probability Language Model 看了一些周边资料,如神经网络.梯度下降算法,然后顺便又延伸温习了一下线性代数.概率论以及求导.总的来说,学到不少知 ...

  5. 【转】漫谈ANN(2):BP神经网络

    上一次我们讲了M-P模型,它实际上就是对单个神经元的一种建模,还不足以模拟人脑神经系统的功能.由这些人工神经元构建出来的网络,才能够具有学习.联想.记忆和模式识别的能力.BP网络就是一种简单的人工神经 ...

  6. 利用BP神经网络预测水道浅滩演变

    论文 <基于现代技术的河道浅滩演变研究> 利用BP神经网络来预测浅滩演变 BP输出因子:浅滩的年平均淤积厚度以及浅滩上最小水深,是反映浅滩变化的两个基本指标,是确定浅滩航道尺度能否满足航行 ...

  7. 神经网络中的BP神经网络和贝叶斯

    1 贝叶斯网络在地学中的应用 1 1.1基本原理及发展过程 1 1.2 具体的研究与应用 4 2 BP神经网络在地学中的应用 6 2.1BP神经网络简介 6 2.2基本原理 7 2.3 在地学中的具体 ...

  8. RBF神经网络和BP神经网络的关系

    作者:李瞬生链接:https://www.zhihu.com/question/44328472/answer/128973724来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...

  9. NO.2:自学tensorflow之路------BP神经网络编程

    引言 在上一篇博客中,介绍了各种Python的第三方库的安装,本周将要使用Tensorflow完成第一个神经网络,BP神经网络的编写.由于之前已经介绍过了BP神经网络的内部结构,本文将直接介绍Tens ...

随机推荐

  1. leetcode529

    public class Solution { //DFS public char[,] UpdateBoard(char[,] board, int[] click) { ), n = board. ...

  2. Spring Test 整合 JUnit 4 使用总结

    转自:https://blog.csdn.net/hgffhh/article/details/83712924 这两天做Web开发,发现通过spring进行对象管理之后,做测试变得复杂了.因为所有的 ...

  3. GitHub个人使用入门

    今天突然想起来了github 于是开始了入门之旅 如果你用过svn 那么你用起来感觉入门比较快的(至少我是这么感觉的)和在svn服务器上建项目的流程很像 每次修改代码之后提交的过程是: add, co ...

  4. VMWare中三种网络连接模式的区别

    VMWare中有桥接.NAT.host-only三种网络连接模式,在搭建伪分布式集群时,需要对集群的网络连接进行配置,而这一操作的前提是理解这三种网络模式的区别. 参考以下两篇文章可以更好的理解: V ...

  5. Linux实战教学笔记41:企业级SVN版本管理与大型代码上线方案

    第1章 SVN服务实战应用指南 1.1 SVN介绍 1.1.1 什么是SVN(Subversion)? Svn(subversion)是近年来崛起的非常优秀的版本管理工具,与CVS管理工具一样,SVN ...

  6. solr的简单部署:在tomcat中启动slor

    1,首先要下载solr 途径1: 官网网址: http://lucene.apache.org/ 与Lucene的官网是一个 途径2: 下载历史版本的网址: http://archive.apache ...

  7. springboot启动过程(3)-refresh方法

    1  springboot在启动的时候,会调用run方法,创建环境设置spring容器,其中包含refresh方法,完成配置类解析,各种beanFactoryPostProcess和beanPostP ...

  8. 解剖Nginx·模块开发篇(2)ngx_http_hello_world_module 模块基本结构定义

    elloWorld 是一个典型的 location 模块.什么是 location 模块?在 Nginx 中,根据作用域,有 main 模块.server 模块.location 模块. 1 模块定义 ...

  9. 微信小程序(一)基本知识初识别

    最近微信圈里小程序很火的样子,以前小程序刚开始的时候研究了一下,多日没关注发现一些东西都淡忘了,最后决定还是记录下来的好.    毕竟好记星比不上烂笔头嘛~

  10. Cloudstack4.2之改变数据卷容量的大小(Resize Data Volumes)

    下图标注了这个功能在cloudstack4.2 UI中的位置 在cloudstack中是通过磁盘服务来设定卷的大小的.管理员可以设置相应的磁盘服务以供用户来使用.为了增强系统的灵活性,方便最终用户的使 ...