基于BP神经网络的信用评级模型.docx

基于BP神经网络的信用评级模型.docx

ID:57643279

大小:202.94 KB

页数:10页

时间:2020-08-29

基于BP神经网络的信用评级模型.docx_第1页
基于BP神经网络的信用评级模型.docx_第2页
基于BP神经网络的信用评级模型.docx_第3页
基于BP神经网络的信用评级模型.docx_第4页
基于BP神经网络的信用评级模型.docx_第5页
资源描述:

《基于BP神经网络的信用评级模型.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、BP神经网络模型概要说明BP(BackPropagation)网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。BP神经网络模型拓扑结构包括输入层(input)、隐层(hidelayer)和输出层(outputlayer)(如图5.2所示)。2.相关理论BP算法由数据流的前向计算(正向传播)和误差信

2、号的反向传播两个过程构成。正向传播时,传播方向为输入层→隐层→输出层,每层神经元的状态只影响下一层神经元。若在输出层得不到期望的输出,则转向误差信号的反向传播流程。通过这两个过程的交替进行,在权向量空间执行误差函数梯度下降策略,动态迭代搜索一组权向量,使网络误差函数达到最小值,从而完成信息提取和记忆过程。1989年RobertHecht—Nielon证明了对于任何在闭区间的一个连续函数都可以用一个隐层的BP网络来逼近,因而一个3层的BP网络可以完成任意的N维到M维的映射,因此在BP网络中多采用单隐层网络。下面我们以三层神经网络为例来说明BP网络的标准学习算法。BP算法信号的正向传播设定

3、BP网络的输入层有n个神经元,隐含层有p个神经元,输出层有q个神经元,输入层与隐层之间的权值为,隐层与输出层之间的权值为。隐层的传递函数为f1(·),输出层的传递函数为f2(·),则隐层节点的输出为        输出层节点的输出为:      至此BP网络就完成了n维空间向量对m维空间的近似映射。误差的反向传播1)定义误差函数输入个学习样本,用来表示。第个样本输入到网络后得到输出(j=1,2,…m)。采用平方型误差函数,于是得到第p个样本的误差Ep :                     式中:为期望输出。对于个样本,全局误差为: 2)输出层权值和隐含层权值的变化求出误差关于各个

4、权重的偏导数,根据最速下降法得到误差的变化率:其中为学习率,以此公式不断修正权重和阈值,以使误差函数E达到最小精度,当误差达到预设精度或学习次数大于设定的最大次数,则结束算法,否则,选取下一个学习样本及对应的期望输出,继续前面的步骤进行。BP算法的改进BP算法理论具有依据可靠、推导过程严谨、精度较高、通用性较好等优点,但标准BP算法存在以下缺点:收敛速度缓慢;容易陷入局部极小值;难以确定隐层数和隐层节点个数。在实际应用中,BP算法很难胜任,因此出现了很多改进算法,例如利用动量法改进BP算法,自适应调整学习速率,动量-自适应学习速率调整算法,L-M学习规则等,这些改进算法在matlab中

5、对应不同的训练函数。注意事项神经元节点数的选择网络的输入与输出结点数是由实际问题的本质决定的,与网络性能无关.网络训练前的一个关键步骤是确定隐层结点数L,网络的隐节点数决定了网络的规模,而网络的规模与其性能密切相关。神经网络的规模越大,网络中的自由参数就越多;反之,网络中的自由参数就越少。当网络规模过小,容易导致欠拟合;网络规模过大,则容易导致过拟合。隐层结点数的选择与其说具有科学性,不如说更具有技巧性,往往与输入数据中隐含的特征因素有关。L的选择可以通过一些经验公式,比如其中m、几分别为输入结点数目与输出结点数。实际中,可以先通过经验公式确定隐层节点数的一个大体范围,然后变化隐含层节

6、点数,每次增加一个节点并考察误差值,当误差值显著增大时停止增加隐含层节点,此时的节点数就是最优的节点数。传递函数的选择工具箱提供了三种传递函数:Log—sigmoid、tan—sigmoid和线性函数purelin.前两种为非线性函数,分别将x(-∞,+∞)的输入压缩为y[0,1]和y[-1,+1]的输出.因此,对非线性问题,输入层和隐层多采用非线性传递函数,输出层采用线性函数,以保持输出的范围,就非线性传递函数而言,若样本输出均大于零时,多采用Log-sigmoid函数,否则,采用Tan—sigmoid函数.对线性系统而言,各层多采用线性函数。数据预处理和后期处理如果对神经网络的输入

7、和输出数据进行一定的预处理,可以加快网络的训练速度,一般均采用归一化处理:将每组数据都变为-1至1之间数,matlab中使用的函数是mapminmax。BP网络模型的算法框图4.Matlab程序BP神经网络设计的一般过程①数据预处理为了提高神经网络的训练效率,在某些情况下需要对“输入-目标”样本集数据作必要的预处理,利用mapminmax函数可以对输入输出数据归一化处理,使其落入[-1,1]之间。方法如下:%input_train,output

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。