BP神经网络在项目风险识别、评估中的应用_第1页
BP神经网络在项目风险识别、评估中的应用_第2页
BP神经网络在项目风险识别、评估中的应用_第3页
BP神经网络在项目风险识别、评估中的应用_第4页
BP神经网络在项目风险识别、评估中的应用_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上BP神经网络在项目风险识别、评估中的应用摘 要现今不断提倡改革、创新、发展的社会中,新型项目群涌而起,项目风险识别、评估作为项目管理领域中一个重要的组成部分,正在受到越来越多的重视。面临着众多的选择,我们如何挑选出投资风险最少,最稳定,最具有可行性的项目这显得极为重要,对此我们以软件项目、企业管理项目以及个人信贷风险这三个极具代表性的项目为例,提出基于 BP神经网络的项目风险评估模型。首先 ,构建相应项目风险识别的模型 ;其次 ,在识别模型基础上建立了多种风险指标在内的项目风险评估指标体系 ;再次 ,利用 BP神经网络建立了风险评估模型 ;最后 ,通过 MATLAB实

2、例证明该风险评估模型的有效性和可行性。关键词:软件项目风险识别与评估;企业管理项目风险识别与评估;个人信贷风险识别与评估; BP神经网络; 自评分:85目 录991 引 言一个典型的BP网络主要由输入层、隐层和输出层组成。BP网络具备任意精度的函数逼近能力,所以,神经元网络为项目风险评估模型提供了一个可行的构造和表达方式。BP网络学习过程是由信号的正向传播与误差的反向传播两个过程组成。正向传播时,把用于项目风险评估的各项指标属性值归一化处理后作为输入样本从输入层传入,经各隐层逐层处理后传向输出层,若输出层的实际输出与期望输出不符,则转入误差的反向传播阶段。误差反传是将输出误差以某种形式通过隐层

3、向输入层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号即作为修正各单元权值的依据。信号正向传播与误差反向传播的各层权值调整是周而复始的,权值不断调整的过程,也是网络的学习训练过程。此过程一直训练到网络输出的误差减少到可以接受的程度,或进行到预先设定的学习次数为止,最终以系统的输出作为评价的目标。风险评估过程从方案阶段的中期开始, 并在其后续诸阶段一直持续下去; 随着软件开发项目的进展, 评估会不断地深化。风险评估的过程(图一) 主要包括两个阶段:a) 项目风险识别。它是指对项目各个方面和各个关键性过程进行考察研究, 从而识别并记录有关风险的过程。风险识别是风险评

4、估过程的第一步, 它的基本任务就是搜寻整个项目, 找出那些会妨碍项目实现其目标的风险事件。b) 项目风险分析。它是指对已辨识出的各类风险事件进行考察研究以进一步细化风险描述, 从而找出风险致因并确定影响。其目的是搜集这些风险的足够信息, 以判断各类风险发生概率以及各类风险一旦发生将对项目性能、进度、费用造成的后果。当有了这些信息后, 就可以根据项目自身的准则确定风险等级。项目风险管理计划编制风险分析风险计划风险识别风险跟踪风险控制风险数据库经验学习图一2三种项目风险与评估2.1 软件项目风险识别与评估软件项目是生活中更新最快,量最多,风险最大的项目之一,在现今信息社会项目风险识别与评估中极具代

5、表性,他的整个过程不是一次性行为,而是有规律地贯穿整个项目中。任何能进行潜在问题识别的信息源都可用于风险识别,信息源有主观和客观两种。客观的信息源包括过去项目中记录的经验及表示当前项目进行情况的文件;主观信息源是基于有经验的专家的经验判断。根据需要, 本文在以往的软件开发项目中选取10 个已有结果的项目作为样本, 如表1 所示, 每个项目的17 种风险指标已经计算得到, 表2 表示4 个测试项目的17 种风险指标。在模拟实验中, 本文采用MATLAB 7.0 作为软件平台。表一 训练样本项目12345678910I10.30.30.50.50.70.10.30.50.10.5I20.30.50

6、.30.70.50.10.30.50.30.5I30.30.30.30.50.30.10.30.30.30.3I40.10.50.30.70.50.30.30.30.30.1I50.10.50.30.50.30.10.30.50.10.5I60.10.30.30.70.70.10.30.10.30.5I70.10.50.50.50.70.30.10.30.30.5I80.30.50.30.30.50.30.50.50.10.5I90.30.30.50.50.70.10.30.30.30.5I100.10.30.30.50.50.10.10.30.10.3I110.30.50.30.30.70.

7、30.30.30.10.3I120.50.30.30.50.50.10.30.50.50.7I130.30.70.30.30.50.70.10.30.30.5I140.10.50.10.70.90.30.50.30.10.3I150.30.10.50.30.30.10.70.50.50.1I160.50.30.50.50.70.30.30.10.50.7I170.50.30.10.50.70.30.50.70.30.7风险0.110.650.420.70.860.080.360.410.210.72登记表二 测试样本项目1234I10.30.50.50.3I20.10.30.30.5I30.5

8、0.50.30.5I40.50.50.30.7I50.30.70.30.5I60.50.50.10.3I70.30.10.50.5I80.30.30.50.3I90.30.30.30.3I100.10.50.10.3I110.30.30.70.3I120.50.70.50.3I130.70.50.30.1I140.10.30.10.1I150.30.50.30.5I160.10.50.50.3I170.50.10.10.7风险0.010.450.180.16等级将表1 中的10 个训练样本输入神经网络模型, 其模型输出结果与实际结果间的误差随训练次数的增加而减小, 误差变化如图2 所示。图二

9、网络训练误差变化曲线图当训练次数达到500 次时, 图二显示训练样本项目风险的误差达到10 - 3 , 此时BP 神经网络模型达到预设精度。用该模型来测试表2 的项目风险, 将表2 中的数据输入网络模型, 经过运算后, 输出结果为 0. 0100 0. 4504 0. 1801 0. 1601 , 与风险实际结果 0. 01 0. 45 0. 18 0. 16 相比较, 其准确率也达到了10 - 3 的预定水平。假设某软件开发项目风险预测的各个指标值为 0. 1, 0. 3, 0. 3, 0. 3, 0. 1, 0. 1, 0. 5, 0. 3, 0. 5, 0. 3, 0. 1, 0.1,

10、0. 3, 0. 1, 0. 3, 0. 1 , 经过该BP 神经网络模型预测此项目的风险水平为级。因此, 在得到某软件开发项目的17 种风险指标值之后, 利用本文的基于BP神经网络的风险评估模型可以预测项目总风险水平属于低风险、中等风险还是高风险, 给项目决策者提供一个较客观评价指标, 进而提高软件项目应对风险的科学性。2.2 企业项目风险识别与评估企业项目风险管理作为项目管理九个领域中一个重要的组成部分,之所以重要,显然是由于项目管理所必然面临的不确定因素。根据对项目的定义,任何项目都有其某种程度的唯一性或特殊性。项目管理区别于企业一般运营管理的关键一点,在于项目管理所面临的各种变化因素。

11、内部和外部的变化,主动和被动的变化,可以预见的和不可预见的变化,为项目带来风险,为项目管理带来难度,迫使企业管理层和项目经理增强风险意识、预先制定或临时采取应对措施。我们认为项目管理的最终风险值是由生产成本超过预算、管理费用超过预算,意外支出、工期延误、产品质量、技术风险、士气低落、骨干人员流失等若干事件的风险值综合求得,并据此构筑项目风险BP神经网络。BP神经网络风险识别模型将沿以下流程进行计算:1)权值和阈值初始化。随机给出权值|Wij|、|Vjt|和|Qj|、|Rt|的初始值,计算器归零。2)给定输入信号Ak,(k1,2,m)和期望输出信号Tk(k1,2,q)。3)计算神经网络前向传播信

12、号。隐节点的输入输出:Sj= WijYj QjBj = f(Sj) (j = 1,p)输出节点的输入输出:Lj = Vjt Rt Zt = f (Lt) (t = 1,q)实际输出节点和目标值之间的误差:E = et = 0.5 * ( At Zt) (At Zt)4)各层次权值和阈值的修正。如果误差不能满足误差精度要求,从输出层开始,误差信号将沿连接通路反向传播,以修正权值和阈值。5)随机抽取一个学习模式(样本)提供给网络,返回第3)步,直至n个模式(训练样本)全部训练完毕。6)重新从n个模式中随机选取一个模式返回第3)步进行训练,直至训练误差达到误差精度()要求,训练结束。7)把模型输出风

13、险进行分类。 具体等级分为三级:无警示、轻警示、重警示,并用绿、黄、红三种颜色表示。绿灯区表示项目运营综合指标所反映的实际运行值与目标值基本一致,运行良好;黄灯区表示项目运营综合指标所反映的实际运行值与目标值偏离较大,要引起企业的警惕。若采取一定的措施可转为绿灯区,若不重视可在短期内转为红灯区;红灯区则表示这种偏离超过企业接受的可能,并给企业带来整体性的重大损失。2.3 个人消费信贷风险识别与评估由07年末信贷问题引起的次贷金融危机,至今仍使世界经济淹没在低迷的海洋当中,由中可见消费信贷所带来的风险极为严峻,由于数据的局限性,我们选择了信贷中的个人信贷来作为本节对象。下面是某商业银行根据历史情

14、况,总结有关的贷款案例16个数据。如表三所示。表三 某商业银行贷款人员贷款情况序号月收入生活费房水电其他支出最终情况19025300否210040500否3200607020否43001205010否540077310是65001005010是76001204020是87001606020是980028014070否109002206020是111000540180156否1212003006040是13140034010060是141600660180220否151800900180180否16200050010060是1. 输入输出节点数确定输入向量由四维向量X=(x1,x2,x3,x4)

15、T组成,分别表示月收入、生活费、房水电、其他;隐层输出向量为Y=(y1,y2)T,输出层输出向量为0或者1,期望输出向量为0或者1,其中1 表示予以贷款,0 表示不予贷款。2. 隐层神经元数目及权值的确定输入层到隐层之间的权值矩阵由公式WEN/(1+log2N)知,可以用W=( w1,w2,w3,w4)表示,隐层中含两个隐节点(根据m=(nl)-2,其中m 为隐节点数,n为输入层节点数,L为输出节点数), 隐层到输出层之间的权值矩阵用V =(v1,v2) 表示。3. 网络结构模型(如图三)图三 神经网络结构模型在隐节点一定的情况下,为获得好的泛化能力,存在着一个最佳训练次数。因此,训练时将训练

16、与测试交替进行,每训练一次记录一次训练均方误差,然后保持网络的权值不变,用测试数据正向运行网络,记录测试均方误差。经过运算得到:误差函数E = 9. 9915e - 005 ,最佳训练次数k = 334 ;隐层到输出层之间的权值矩阵:W = 1.1906 - 2.3964 2.4135 - 0.8343- 1.2468 2.8212 4.1430 - 0.1607输入层到隐层之间的权值矩阵:V = (4. 3874 - 5. 8699) 。训练结果如图四。(其中,横坐标表示训练次数k ,纵坐标表示误差E)图四 训练次数与均方误差对应图由此我们可以得出如,银行现有三个贷款申请人,其相关数据如表四

17、 所示。序号月收入生活费房水电其他支出最终情况128045200?298030015050?3150060020050?利用以上得出的神经网络模型,对现有信贷申请人的申请情况进行判别,结果如下:o1 = 0. 9297 , o2 = 0. 0629 , o3 = 0. 0054由于在模型中我们用1 表示予以贷款,0 表示不予贷款,根据以上三个输出结果,我们可以看到,由于o1 = 0. 9297 ,接近1 ,因此,对于申请人1可以贷款;而o2 = 0. 0629 , o3 = 0. 0054 ,都接近0 ,表明对于申请人2 与申请人3 不宜贷款。小 结运用神经网络系统能够很好地避免一般统计方法和

18、模糊评判的隶属度和权重分配不易准确确定的问题,大幅度提高了预测精确度和可靠性。应用神经网络分析风险的方法可以根据总风险值按照大小程度对管段进行有效的排序,对各个项目的风险进行了评估,有助于我们规避风险,为决策提供良好的依据。参考文献 1曾国坚,何五星. 银行风险论M. 北京:中国计划出版社,1995.2韩力群.人工神经网络理论、设计及应用M.北京:化学工业出版社,2002.3 Jiawei Hart ,Micheline Kamber.数据挖掘概念与技术M.范明,孟小峰,等,译.北京:机械工业出版社,2001.4王春峰,万海晖,张维. 基于神经网络技术的商业银行信用风险评估J . 系统工程理论与实践,199

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论