神经网络原理及应用
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
BP神经网络工作原理
误差向后传播
输入层 隐含层 输出层
初始化
给定输入向量和期望输出
求隐层输出层各单元输出
求期望输出与实际输出的偏 差e
e满足需 求? Y 全部e满足需 求 Y 结束
N
计算隐层误 差
求误差梯度
更新权值
BP神经网络工作流程
1.网络初始化: 根据训练数据确定网络的输入神经元数n,隐 含神经元数l,输出神经元数m,初始化各层神 经元之间的连接权值 w 和 w ,初始化隐含层 和输出层的阈值 a和b,给定学习速率和神经 元传递函数。 2.隐含层输出计算 :根据输入向量X,输入层和 隐含层连接权值 wij 以及隐含层阈值a,计算隐含 层输出H
谵妄的诊断
如对老年人谵妄,通常采用检查表的方式确诊,检查表 中的11个项目包含:
急性起病:病人的精神状况有急性变化的证据吗? 注意障碍:患者的注意力难以集中吗? 思维混乱:患者的思维是凌乱或是不连贯吗? 意识水平的改变:总体上看,您如何评价该患者的意识水平? 定向障碍:在会面的任何时间患者存在定向障碍吗? 记忆力减退:在面谈时患者表现出记忆方面的问题吗? 知觉障碍:患者有知觉障碍的证据吗? 精神运动性兴奋:面谈时患者的行为活动有不正常的增加吗? 精神运动性迟缓:面谈时患者有运动行为水平的异常减少吗? 波动性:患者的精神状况(注意力、思维、定向、记忆力)在面 谈前或者在面谈中有波动吗? 睡眠-觉醒周期的改变:患者有睡眠-觉醒周期紊乱的证据吗?
谵妄的诊断
谵妄是由于各种原因引起的急性脑器质性 综合症,其特点是急性发病,意识水平变 化,病程波动,定向力、注意力、思维、 精神运动、行为和情感改变。根据国外 1980年以后的有关谵妄研究文献的报道, 谵妄的发病率为4%~25%。目前对谵妄的 发病机制还了解不多,诊断的方式常采用 多个指标综合评价。
ij
jk
3.输出层输出计算。根据隐含层输出的H,连接 权值 wij 和阈值b,计算BP神经网络的预测输出O. 4.误差计算根据预测输出O和期望输出Y计算网 络预测误差e 5.权值更新根据网络误差更新网络权值 wij , jk w 6.阈值更新,根据网络误差网络e,神经元阈值 a,b 7.判断算法迭代是否结束,若没有结束返回步 骤2
BP标准算法步骤
网络结构 输入层有n个神经元,隐含层有p个神经元,输出层 有q个神经元 变量定义
输入向量:
x x1 , x2 ,, xn
hi 隐含层输入向量: hi1 , hi2 , , hi p
yi 输出层输入向量: yi , yi , , yi yo 输出层输出向量: yo , yo , , yo
中间层 h
输出层
i
o
xi
yo
hi
oh
hi、oh
2、通过已知样本训练出合适的权值 使输出为(0,1)或(1,0)。
3、将待区分的蠓虫数据输入网络,求值。
权值求法:向后传播法
理想输出 Af类(1,0),Apf类(0,1)记为 d o (k )
则有误差:
1 2 E( ) (d o ( k ) yo (k )) 2 o 1
BP神经网络
特点:多层前馈神经网络,信号向前传播,误差向后 传播。 结构:
输入层 中间层
j
输出层
i
k
输入层
i
中间层 j
输出层
k
xi
ji
中间层:
输入
输出
p
kj
u j xi ji
i 1
v j f (u j )
输入层
i
中间层 j
输出层
k
xi
ji
输出层:
kj
kj
who
e <0, who
此时Δwho>0
应用实例
分类识别 数据预测 医学诊断
蠓虫的分类识别
思路
目标输出:(1,0) 、(0,1)。 Af类记为 (1,0),Apf类记为(0,1)。
1、触角长和翼长作为输入信息,分别记x1,x2
输出层有两个神经元
yo1 0或1
yo2 0或1
输入层
-8
-6
ቤተ መጻሕፍቲ ባይዱ
-4
-2
0
2
4
6
8
10
BP神经网络原理
基本BP算法包括两个方面:信号的前向传 播和误差的反向传播。即计算实际输出时 按从输入到输出的方向进行,而权值和阈 值的修正从输出到输入的方向进行。利用 输出后的误差来估计输出层的直接前一层 的误差,再用这个误差估计更前一层的误 差,如此一层一层的反传下去,就获得了 所有其他各层的误差估计。
BP标准算法步骤
8. 计算全局误差
1 2 E (d o (k ) yo (k )) 2m k 1 o1
9. 判断网络误差是否满足要求。当误差达到预设精 度或学习次数大于设定的最大次数,则结束算法。 否则,选取下一个学习样本及对应的期望输出,返 回到第三步,进入下一轮学习。
m
q
梯度下降法
k 样本数据个数: 1,2,m
激活函数: f()
1 q 误差函数: e (d o (k ) yoo (k )) 2 2 o 1
BP标准算法步骤
1. 网络初始化
给各连接权值分别赋一个区间(-1,1)内的随机数,设定误 差函数e,给定计算精度值 和最大学习次数M。
2. 随机选取一个输入样本及对应期望输出
对于预测问题我们还可以用 灰色系统、时间序列来预测
思路二
我们用前三个月的销售量预测下一个月的 销售量,也就是用1-3月的销售量预测第4 个月的销售量,用2-4个月的销售量预测第 5个月的销售量,如此循环下去,直到用911月预测12月份的销售量。这样训练BP神 经网络后,就可以用10-12月的数据预测来 年一月的销售量。
ho 隐含层输出向量: ho1 , ho2 , , ho p
1 2 q
1 2 q
期望输出向量:
d o d1 , d 2 , , d q
BP标准算法步骤
变量定义 输入层与中间层的连接权值: ih w 隐含层与输出层的连接权值: ho w
隐含层各神经元的阈值: h b
输出层各神经元的阈值:o b
神经网络能干什么?
运用这些网络模型可实现函数逼近、数据 聚类、模式分类、优化计算等功能 。因此, 神经网络广泛应用于人工智能、自动控制、 机器人、统计学等领域的信息处理中。虽 然神经网络的应用很广,但是在具体的使用 过程中到底应当选择哪种网络结构比较合 适是值得考虑的。这就需要我们对各种神 经网络结构有一个较全面的认识
训练一个BP网络,用当前的所有数据预测下一个月 的药品销售量。
抛开神经网络,对于预测问题我们会 首先想到线性拟合的方法
首先我们看一下这些数据的离散分布图
2600 2400
2200
2000
1800
1600
1400
0
2
4
6
8
10
12
但线性拟合有它的局限性,从图中可以明显看出 月份与药品销量不存在线性关系, 对于离散程度特别高的数据,它们不存在线性关 系,所以用线性拟合做出来的误差会很大
i 1
小于阀值 i ,则此神经元 不接受此信息的传递
输入:x
系统本身/黑盒子
输出:y
知道
不知道
y=x^2
机场
几种代表性的网络模型
单层前向神经网络——线性网络 阶跃网络 多层前向神经网络(反推学习规则即BP神经 网络) Elman网络、Hopfield网络、双向联想记忆 网络、自组织竞争网络等等
人类的神经网络
神经网络基础知识
构成:大量简单的基本元件——神经元相互连接
工作原理:模拟生物的神经处理信息的方式 功能:进行信息的并行处理和非线性转化
特点:比较轻松地实现非线性映射过程
具有大规模的计算能力
神经网络的本质
距离
味道
做决定
价格
神经网络的本质就是利用计算机语言模
拟人类大脑做决定的过程
生物神经元结构:
-8
-6
-4
-2
0
2
4
6
8
10
tansig(双曲正切S型传递函数):
f ( x)
2 1 2n 1 e
调用格式:A=tansig(n)
如:
n=-10:0.1:10 a=tansig(n) plot(n,a)
1 0.8 0.6 0.4 0.2 0 -0.2
grid on
如右图所示
-0.4 -0.6 -0.8 -1 -10
神经网络
医学:疾病识别
应用范围
图像:识别、去噪、增强、配准、 融合 金融:股票和有价证券的预测分 析、资本收益的预测和分析、风 险管理、信用评估等等
BP(Back-Propagation)神经网络
BP 神经网络是一种按误差逆传播算法训练的多层 前馈网络,是目前应用最广泛的神经网络模型之 一。BP网络能学习和存贮大量的输入-输出模式映 射关系,而无需事前揭示描述这种映射关系的数 学方程。它的学习规则是使用最速下降法,通过 反向传播来不断调整网络的权值和阈值,使网络 的误差平方和最小。BP神经网络模型拓扑结构包 括输入层(input)隐层(hide layer)和输出层(output layer)
E ( )
0
BP标准算法直观解释
e
情况一、直观表达
当误差对权值的偏 导数大于零时,权值 调整量为负,实际输 出大于期望输出, 权值向减少方向调整, 使得实际输出与期望 输出的差减少。
who
e >0,此时Δwho<0 who
BP标准算法直观解释
e
情况二、直观表达
当误差对权值的偏导数 小于零时,权值调整量 为正,实际输出少于期 望输出,权值向增大方向 调整,使得实际输出与期 望输出的差减少。
传递函数(激活函数)
logsig(S型函数):
MATLAB按此函数计算:
1 f ( x) 1 e n
调用格式:A=logsig(N)
如:
n=-10:0.1:10 ;a=logsig(n)
plot(n,a)
grid on
图形如下:
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 -10
神经网络是模仿大脑的神经元,当外界刺 激达到一定的阀值时,神经元才会受刺激, 影响下一个神经元。
判断 x jij 是否大于阀值 i i 1
若
n
接受此信息,输出 yi
若 x jij i 1
n
x 大于阀值 i ,则此神经元 p
i 1 j ij
n
f ( x j wij )
BP网络的标准学习算法-学习过程
正向传播: 输入样本---输入层---各隐层---输出层 判断是否转入反向传播阶段: 若输出层的实际输出与期望的输出(教师信号)不符 误差反传 误差以某种形式在各层表示----修正各层单元的权 值
网络输出的误差减少到可接受的程度 进行到预先设定的学习次数为止
输入
输出
Uk
v
j 1
n
j
Vk f (U k )
传递函数
阈值型
线性型
1 f (x ) 0
xi 0
xi 0
1 f ( xi ) axi b 0
x1 xi x2
xi x1
xi x2
S型
f ( xi )
1 1 e
xi 2 ( ) c
x(k ) ( x1 (k ), x2 (k ),, xn (k ))
d o (k ) (d1 (k ), d 2 (k ), , d q (k ))
BP标准算法步骤
3.计算隐含层和输出层各神经元的输入和输出
BP标准算法步骤
4.利用网络期望输出和实际输出,计算误差函数对 输出层的各神经元的偏导数。
BP标准算法步骤
5. 利用隐含层到输出层的连接权值、输出层的输出和隐含层的输出,计 算误差函数对隐含层各神经元的偏导数。
BP标准算法步骤
BP标准算法步骤
6. 利用输出层各神经元的和隐含层各神经元的输出来修正连 接权值。
BP标准算法步骤
7. 利用隐含层各神经元的和输入层各神经元的输入修正连 接权。
使得E(w)最小的 whi woh 作为所需的权值
q
运用神经网络进行预测
例:现给出一药品商店一年当中12个月的药品 销售量(单位:箱)如下:
月份 销量 月份 销量 1 2056 7 1873 2 2395 8 1478 3 2600 9 1900 4 2298 10 1500 5 1634 11 2046 6 1600 12 1556
突触
细胞体
细胞核 轴突
神经末梢
树突
那怎样用机器语言来模拟呢?
神经元结构模型
x1
x2 x3
xj
ij
xn
i
yi
xj为输入信号, i为阈值,ij表示与神经元 xj 连接的权值
yi表示输出值
判断 x j ij 是否大于阀值
i
什么是阀值?
临界值。比如有一头驴,往它身上压稻草, 一根一根地压,当压到N根时,还没有被压 倒,又压了一根,倒了,这时所有压在驴 身上的稻草的多少,就是压倒这头驴的阈 值。
BP神经网络原理及应用
数学建模工作室
房恩岳
2012.11.07
Contents
神经网络概述
BP神经网络
应用实例
在matlab中的实现 BP
网络模型改进
神经网络简介
什么是神经网络?
神经网络(NNs)它是一种模 拟动物神经网络行为特征,进 行分布式并行信息处理的算法。 这种网络依靠系统的复杂程度, 通过调整内部大量节点之间相 互连接的关系,从而达到处理 信息的目的。