0 引言
当建设项目投资需求金额很大,业主通常可采用项目融资的方式建设。由于项目融资时间长、规模大、参与方多、结构复杂,导致融资风险极大,它直接关系到项目融资能否成功以及项目能否进行建设。因此,有效的风险管理通常能够较好的防范或者是降低风险带来的损失,而在风险管理过程中,风险评价则是非常重要的一个环节,所以选择合适的风险评价模型就起到了关键性的作用。本文研究采用了基于BP神经网络的模糊综合评判模型。该模型既考虑到了风险评价具有模糊性,也利用了神经网络具有较好的学习能力、加速权重的学习调整的优点。
1 基于BP神经网络的模糊综合评判模型
基于BP神经网络的模糊综合评判模型是指在BP神经网络评价系统的基础上引入模糊逻辑,使其能够直接处理一些模糊性的信息。它的基础模型是三层BP神经网络模型,在基础模型的输人层前增加了模糊语言量化层,从而能够处理那些模糊语言描述的信息,同时能让模糊化处理、规则与推理转换成神经网络的学习,综合评判模型如图1所示。
图1 基于BP神经网络的模糊综合评判模型
1.1 模糊信息输入量化层
通过模糊信息的输入量化层预处理之后,就能将模糊概念融入到BP神经网络中。模糊信息的评价指标值不是反映的分值大小,而是反映出对某些模糊评价观念隶属度的高低。
BP神经网络模型前置的模糊信息输入量化层将指标的特征值转化为其隶属度,转换过程如下:
根据定量因素指标的属性,因素指标对最优评价的隶属度分别为以下三种情况:
1)指标属性越大越优
v■=■■(1)
2)指标属性越小越优
v■=■t(2)
3)指标属性适中为优
v■=ew(3)
在上式中,v■指第i个指标对最优评价的隶属度,取值范围是[0,1];U■指第i个指标的指标值;当t=1即为线性分布; w=-■■ ;U■指最优指标值。
1.2 BP神经网络结构
1.2.1 BP神经网络的学习原理
BP神经网络是一种多层次反馈型网络,所使用的是有“导师”的学习算法。网络由一个输入层、若干个隐含层和一个输出层组成,每层都有一个或多个神经元节点,下层每个神经元与上层每个神经元都实现权连接,输入信号先向前传播到隐含层节点,经过函数作用,再把隐含节点的输出信号传播到输出节点,如果输出层得不到期望的输出,则反向传播,将误差信号沿原来的连接通道返回,通过修改各层神经元权值,使得误差信号最小。
1.2.2 BP神经网络的结构设计
1)输入层节点数
输入层节点数是指评价指标个数。实际应用中,输入节点的数目由风险因素的数目来决定,使输入层数据的全面性得到了有效保证。
2)隐含层层数及节点数
隐含层的作用主要是从输入的样本信息中提取特征。增加隐含层层数可以降低误差、提高精度,但同时也使网络复杂化,从而增加网络权值的训练时间。当采用S型函数作为激活函数时,一个隐含层就能满足实现需要的判决分类,所以目前很多评价模型都选用1个隐含层。
隐含层节点的作用主要是从输入的样本中提取并储存其内在规律。若隐含层节点数量过少,可能训练不出网络或者网络不够“强壮”,不能识别以前没遇到过的样本,容错性差;但节点数量过多,又会使学习时间过长误差也不一定最佳,还容易出现“过度吻合”的问题,降低了网络泛化的能力。通过大量实践研究,目前已获得比较科学的节点数量计算公式。最佳隐含层节点数量公式:
N=■+a(4)
在上式中,N为最佳隐含层节点数,n为网络输入层输入节点数,m为网络输出层输出节点数,a为1-10之间的一个常数。
输出层节点数由评价结果的需要来确定。
3)训练次数
最佳的训练次数能使建立好的模型获得较好的泛化能力。为了得到最佳的训练次数,可将样本数据分为训练集和测试集,训练集用来训练修改BP神经网络的权值,直到输出结果与期望值之间的误差满足要求,其原理如图1所示。经过一定数量的训练次数后,网络的训练误差和测试误差随着训练次数的增加而减少,但当训练次数超过某一值后,测试误差会随着训练次数的增加而增加。在神经网络训练的过程中,设定好时间间隔,测试网络误差并记录下权值,当发现测试误差开始增加时,就已达到最佳的训练次数。
1.2.3 BP神经网络的算法
BP神经网络主要分为网络的学习过程和网络的检验过程,也就是用一定数量的样本数据训练网络(学习过程),然后用一定数量的样本数据对训练好的网络进行测试(检验过程)。每一样本具体算法过程如下:
1)原始数据通过输入量化层的模糊转换后,输入网络,给出相应的期望值。并给w■,v■,T■,θ■随机赋一个较小的值, 其中w■是输入层节点ai到隐含层节点br的连接权值,v■是隐含层节点br到输出层节点cj间的连接权值,T■是隐含层节点的阀值,θ■是输出层节点的阀值。
2)隐含层节点的输出计算为:br=f■w■a■+T■;输出层节点的输出计算为:cj=f■v■b■+θ■
其中f(·)为神经元输入与输出之间的转换函数。Sigmoid型函数由于对线性和非线性问题都能很好的适应,应用也最为广泛,所以本文模型采用此函数,其函数形式如下:
f(x)=■
3)计算输出层节点输出c■与期望输出的误差,令:d■=c■(1-c■)·(c■■■■-c■);向隐含层节点反向分配误差,令:e■=b■·(1-b■)·(■v■·d■)
4)调整隐含层与输出层节点间连接权值v■及输出层节点阀值θ■:
v■=v■+a·b■·d■;θ■=θ■+a·d■(0 调整输入层与隐含层节点间连接权w■及隐含层节点阀值T■:
w■=w■+a·ai·e■;T■=T■+a·e■(0 5)重复步骤(2)~(4),直至EAV变得足够小:EAV=■■■(c■■-c■)■其中p为训练样本的个数,EAV为学习的目标函数。
2 应用举例
以工程项目风险评价来说明该模型的应用。
2.1 工程项目风险评价指标体系
根据全面性、独立性、可比性和准确性相结合的原则,参考大量相关文献资料,并运用德尔菲(Delphi)法咨询多位实践经验丰富的专家
[1] [2] 下一页
,建立一套较为合理、系统的业主项目融资风险评价指标体系,并为各指标分配权值。建立好的指标体系如下所示。上一页 [1] [2]