上面提到人工神经网络学习,存储信息的能力主要来至于其神经元间可变化的权值。对人工神经网络的训练也就是找到一组合适的权值来完成信息的映射处理。网络初始化时各神经元间的权值也是随机的。通过BP算法,我们可以不断的更改权值来精确地描述问题。图2.3就是神经网络训练的流程图。

神经网络训练过程概述:

样本:(输入向量,理想输出向量)

权初始化:给各个层间的神经网络初始化随机的权值,然后进行向前传播计算值,并把误差向后传播。

向前传播阶段:

(1)从训练集中取出一些样本,即输入向量Xi和预期输出向量Yi。

(2)计算相应的实际输出Oi:

Oi=F(...S(Oi*wi)...)

向后传播阶段——误差传播阶段:

(1)计算Oi与Yi的差值;

(2)使误差以梯度下降的方式调整权矩阵。

(3)网络关于第i个样本的误差值:

整个训练集的误差值:

BP神经网络的算法实现:

主要数据结构

W[H,O]——输出层的权矩阵;

V[I,H]——输入(隐藏)层的权矩阵;

∆o[m]——输出层权值修改量向量;

∆h[H]——隐藏层权值修改量向量;

O1——隐藏层的输出向量;

O2——输出层的输出向量;

(X,Y)——一个样本。 

用随机数初始化W,V;

初始化精度控制参数ε;学习率α ; 

循环控制参数E=ε+1;循环最大次数M;循环次数控制参数N=0; 

上一篇:php微信商城购物平台的设计与实现
下一篇:java微型连锁企业办公自动化管理系统设计

基于Apriori算法的电影推荐

基于PageRank算法的网络数据分析

基于神经网络的验证码识别算法

基于网络的通用试题库系...

python基于决策树算法的球赛预测

基于消费者个性特征的化...

浅析人工智能体系建设【5490字】

中国学术生态细节考察《...

公寓空调设计任务书

医院财务风险因素分析及管理措施【2367字】

神经外科重症监护病房患...

承德市事业单位档案管理...

AT89C52单片机的超声波测距...

志愿者活动的调查问卷表

C#学校科研管理系统的设计

10万元能开儿童乐园吗,我...

国内外图像分割技术研究现状