贝叶斯决策树(精选8篇)
贝叶斯决策树 篇1
0 引言
随着计算机网络的快速发展,尤其是开放性的计算机网络,越来越多的计算机系统遭受着入侵威胁。因此,网络安全系统日益受到人们的重视和研究[1]。入侵是指那些试图绕开计算机系统安全机制的活动[2]。目前,主要的入侵形式有攻击者通过互联网或者内部访问系统、得到官方授权的用户尝试获得和滥用非授权的权限。因此,入侵可以被认为是威胁网络资源安全性、可用性和机密性的一系列活动。
入侵检测(Intrusion Detection)系统是防火墙之后的第二道安全防线,它能够在发现可疑传输时发出警报或者采取主动反应措施,全方位检测网络攻击,是一种主动防御技术[3]。与防火墙相比,它是一种积极主动的安全防护技术。入侵检测技术主要有异常入侵检测和误用入侵检测2种类型。异常入侵检测是指使用计算机资源判断异常行为进行检测入侵,它尝试用定量的方式描述那些可以接受的行为特征,以区分正常的和非正常的入侵行为。误用入侵检测通过预先定义的入侵行为监视系统的运行,从中找出符合预先定义规则的入侵行为。
入侵检测使用数据挖掘方法,主要有决策树(DT)、朴素贝叶斯(NB)[4]、神经网络(NN)、支持向量机(SVM)[5]、k临近(KNN)、模糊逻辑模型[6]。目前的入侵检测系统存在许多问题,比如低检测率,不同类型攻击的检测率差别较大,误检率较高。入侵检测系统的另一个困难是在实时高速网络中进行检测,这是因为高速网络要求入侵检测系统在非常短的时间内处理海量数据。另外,由于有不相关和冗余属性的存在,有必要选择有效的属性。因为不相关和冗余属性会使检测过程复杂化,同时也会降低检测率。一些额外属性也可能增加运算时间,影响检测率。
本文提出一种基于贝叶斯和决策树的入侵检测方法。该方法可以处理连续属性和缺失的属性值,降低训练数据中的噪声,与单独使用朴素贝叶斯或决策树的入侵检测系统相比,具有较高的检测率。
1 朴素贝叶斯方法
贝叶斯理论就是依据新的信息从先验概率求得后验概率的一种方法,其关键是利用概率表示各种形式的不确定性[7]。朴素贝叶斯分类器是一种经常用到的分类器。
假设数据样本是一个有n维特征的向量X={x1,x2,…,xn},有n个属性分别为A1,A2,…,An,属性值分别为b1,b2,…,bn,m个类分别为C1,C2,…,Cm。若有一个未知样本B,朴素贝叶斯分类将预测B属于最高后验概率的那个类。
根据贝叶斯公式:
式中:P(Ci)为类Ci的先验概率;P(bi|Ci)为条件概率。
通常情况,使用单纯的贝叶斯方法没有考虑属性对检测结果的影响,因此,会在一定程度上出现分类误差[8]。为了解决这一问题,对训练集在训练之前先进行特征选择。常用的特征选择方法有信息增益[9]、卡方检验等,然而这些方法并不能全面衡量各个特征属性对分类意义的影响大小。本文使用基于特征相似度的特征提取方法来降低数据维数,提高分类效率。
2 决策树方法
决策树[10]是数据挖掘中的一种分类方法,它是一个预测模型,代表的是对象属性与对象值之间的一种映射关系。使用决策树进行决策的过程就是从根节点开始,测试待分类项中相应的特征属性,并按照其值选择输出分支,直到到达叶子节点,将叶子节点存放的类别作为决策结果。决策树的核心是在各级节点上选择属性时,通过计算信息增益来选择属性。具体步骤如下。
假设有一个集合D,m个不同类别Cj,freq(Cj,D)为类Cj在D中出现的次数,则对一个给定样本集合F的信息熵的期望为
令属性A将决策树分为n个子集{T1,T2,…,Tn},对于一个子集Ti ,其样本集的期望是Info(Ti)。 则属性A划分当前样本集合期望的信息熵为
式中:|Ti|为Ti的样本个数;|T|为划分之前的样本总数。
由式(2)和式(3)得出信息增益值为
InformationGain(Ai)=Info(D)-Info(T) (4)
ID3算法作为决策树分类最经典的算法,其最大的不足是分裂属性选取时的多值偏向问题,而现实中属性值数量与属性重要性之间并无必然联系,因此,通常会出现归纳出不正确知识的问题[8]。
3 基于贝叶斯和决策树的入侵检测方法
3.1 数据预处理
基于贝叶斯和决策树的入侵检测方法首先遍历整个训练集,找出是否有多个拷贝的样本,如果发现,只保留1个(假设如果2个样本的所有属性值相等,那么这2个样本相等)。然后,将训练集中连续的属性离散化。
3.2 基于相似度的特征提取
相似度是指2个对象的相似程度,它是数学的一个概念。概率统计中的相关系数经常用来刻画2个随机变量的分布相似程度。
记
3.3 分类器训练
对于一个训练集D,包含属性{A1,A2,…,An}。每一个属性Ai包括以下属性值{Ai1,Ai2,…,Ain}。这些属性值可以是离散的或者连续的。训练集包含一些类集C,C={C1,C2,…,Cm},训练集中的每个样本有一个专属的类Cj。对经过数据预处理的训练集,提取每一类的特征,计算先验概率P(Cj)和条件概率P(Aij|Cj)。然后,假设样本ei的各个属性相互独立,使用朴素贝叶斯公式P(ei|Cj)=∏k=1→pP(Aij|Cj)对训练集中所有的例子进行分类。估计样本ei在每个类的概率,取具有最大的后验概率的类为该样本的归属类。对所有的样本分类完毕后,更新每个样本的所属类值。使用更新后的类值重新计算先验概率和条件概率,再次对训练集的每个样本分类。如果存在误分类的样本,则计算样本集的每个属性的信息增益。选择训练集中信息增益最大的属性Ai,依据Ai的属性值将训练集分成子数据集。计算每一个子数据集先验概率和条件概率,并且使用它们各自的概率对该子数据集中的样本进行分类。如果有任何样本或者任何子集被错误划分,那么计算子集属性的信息增益,在子集中选择有着最大信息增益的属性,使用该属性将子集再划分成子子集。然后为每一个子子集重新计算先验概率和条件概率,并且使用它们的概率分类每一个子子集。重复这个过程直到所有的样本都被正确划分。检测方法终止后,每一个数据集的先验概率和条件概率被保存起来,用来对测试样本进行分类。基于贝叶斯和决策树的入侵检测方法流程如图1所示。
4 实验结果及分析
使用如下环境验证本文提出方法的检测效果:系统Windows7,CPU(Core i5 2.3 GHz), 内存为2 GB, 编程工具为Matlab R2010a,入侵检测数据集使用KDD99数据集。KDD99数据集主要有5大类:1个正常类(Normal)和4个主要攻击类,即DOS、U2R、R2L、Probe。其中DOS选取ping-of-death, syn_flood, smurf;U2R选取buffer_overflow, xterm;R2L选取guess_password, imap, snmpguess;Probe选取port-scan, ping-sweep, saint, mscan, ntifoscan。实验结果如表1 所示。
%
本文提出的入侵检测方法将朴素贝叶斯和决策树结合起来,对数据样本首先进行相似度特征提取,在不影响样本分类的情况下,保留数据样本中的关键属性,消除数据冗余。从表1可看出,与传统的朴素贝叶斯和决策树单独使用时比较,本文提出的入侵检测方法的检测率有明显提升。
5 结语
基于贝叶斯和决策树的入侵检测方法很好地降低了数据冗余和维数,有效减少了数据的计算量。同时使用2次朴素贝叶斯分类来确定存在二义性的分类,然后使用决策树的信息增益来确定属性划分子类,从而建立了基于朴素贝叶斯和决策树的分类模型。实验结果验证了该方法的可行性,具有很好的检测效果。
参考文献
[1]马晓春.数据挖掘技术在网络入侵检测系统中的研究和应用[D].西安:西北工业大学,2005.
[2]LIPPMANN R,HAINES J W,FRIED D J,et al.1999 DARPA off-line intrusion detection evaluation[J].Computer Networks,2000,34(4):579-595.
[3]BARBARD,COUTO J,JAJODIA S.ADAM:A method for exploring the use of data mining in intrusion detection[J].SIGMOD,2001,30(4):15-24.
[4]AMOR,BENFERHAT S,ELOUEDI Z,et al.Decision trees in intrusion detection systems[C]//Proceeding of2004ACM Symposium on Applied Computing,2004.
[5]MUKKAMALA S,JANOSKI G,SUNG A H.Intrusion detection using neural networks and support vector machines[C]//Proceeding of the IEEE International Joint Conference on Neural Networks,2002.
[6]LUO J,BRIDGES S M.Mining fuzzy association rules and fuzzy frequency episodes for intrusion detection[J]International Journal of Intelligent Systems,2000,15(8):687-703.
[7]MICHALSKI R S,CARBONELL J,MITCHE L T.Machine Learning:An artificial intelligence approach[M].San Mateo:Morgan Kaufmann,1983:463-482.
[8]黄宇达,王迤冉.基于朴素贝叶斯与ID3算法的决策树分类[J].计算机工程,2012,38(14):41-43,47.
[9]何慧,苏一丹,覃华.基于信息增益的贝叶斯入侵检测模型优化的研究[J].计算机工程与科学,2006,28(6):38-40.
[10]QUINLAN J R.Induction of decision trees[J].Machine Learning,1986,1(1):81-106.
贝叶斯决策树 篇2
随着电网规模的扩大,产生的报警信息量也日益增长,呈现给调度员的报警信息也越来越复杂。根据对某电网调度自动化系统粗略统计显示,正常情况下每天大约有几千甚至上万条报警信息涌入控制中心,一旦电网发生故障,一秒钟内就有几百条报警信息上传。由于远动系统、通信系统和测量设备在运行中的异常以及必要的设备检修,导致在上传的报警信息中还包含大量的噪声数据。这些报警噪声数据虽然也反映了某个时刻电网发生的事件,但并非电网真实状态,它们的存在会导致调度员不能及时掌握电网正确的工作状态,加重调度员的工作负担。因此,对电网报警信息去噪是非常必要的。
电网报警信息去噪的重要目的是快速准确地剔除噪声数据,为进一步提取有用的电网报警知识奠定基础,减轻调度员的工作量。常用的方法[1]主要有残差搜索法、估计辨识法、非二次准则法等方法,这种方法计算量极大,因此经常会发生错误辨识。文献[2]基于决策树分类器对噪声数据进行辨识,但仅仅考虑了电网报警信息中遥信信息,未考虑遥测信息。文献[3]在使用决策树时归纳出了新的属性,提高了去噪准确率,但未能与其他电网数据相联系,同时未对决策树算法进行优化。
鉴于以上分析,本文提出基于贝叶斯决策树的电网报警信息去噪方法。根据电网自身特点,将报警信息与OMS中的检修记录以及SCADA中的遥测值相关联,去除错误报警信息;将贝叶斯算法与决策树算法相结合,采用贝叶斯决策树对报警信息进行去噪,得到电网报警信息去噪决策树。
1 贝叶斯决策树算法
1.1 算法简介
在决策树C4.5算法的基础上,加入贝叶斯节点[4],该决策树成为贝叶斯决策树。贝叶斯决策树模型示意图如图1所示。
贝叶斯节点取值为0或f。如果取值为0代表该节点不需要进行任何计算,可以直接根据条件将样本划入某一类别;如果取值为f则代表该节点需要通过计算把函数f的取值求出来,这里的函数f的取值,使用朴素贝叶斯公式求得。如果贝叶斯节点需要求出f的取值,则分类类别的选择必须依赖于下面2点:1)属性测试条件a;2)函数f的取值。
1.2 信息增益率和贝叶斯节点f值的计算方法
设S为样本数据集合,样本数目为s,属性数目为m,设si是ci中样本个数,对样本S分类所需的信息期望为:
式中:pi=si/s,,即某样本属于的概率。
由属性A划分子集的期望信息或熵为
式中:A={a1,a2…an}为测试属性,ai为A的属性值,这些属性值将样本集合S划分为{S1,…,Sn},其中Sj包含了样本集中属性A的取值为ai的样本;sij是子集sj中类C的样本数。
对于子集sij,有:
其中,Pij=Sij/sj,即sj中样本属于类Ci的概率。
若以A为分类属性,则得到的信息增益为:
其中,G (A)为利用属性A的值进行分类所导致的期望压缩。
属性A的信息增益率为:
其中,为利用属性A的值划分样本的分割信息量[5]。
贝叶斯定理[4]为当选择某事件面临不确定性时,在某一时刻假定知道此事件会发生的概率,此概率称为先验概率,然后根据不断获取的新的信息修正此概率,修正之后的概率称为后验概率。该原理就是根据新的信息从先验概率得到后验概率。
先验概率表示为:
属性A1,A3,…,An将数据样本X划分为n个样本子集,用X={x1,x2,…,xn}表示。假设有m个类C1,C2,...,Cm,给定一个未分类的数据样本X,分类器将X分为具有最高后验概率的类。也就是说,朴素贝叶斯分类将未知的样本分给Ci(i=1,…,m),当且仅当P(Ci X)>P(Cj|X)(j=1,…i-1,i+1,…,m)。由贝叶斯定理,后验概率表示为
由于P(X)对于所有类为常数,只需要P(Ci)P(X|Ci)最大即可。为了简化计算,假设属性值相互独立(属性间不存在依赖关系),那么P(X|Ci)可表示为:
式中:P(Xin|Ci)为条件概率。
贝叶斯节点的f值即为最大的后验概率取值,并将该事件划分到最大后验概率所属的类中。
1.3 算法描述
贝叶斯决策树形成的算法描述[6]如下:
算法:使用贝叶斯决策树
输入:将数据预处理表中的2/3数据作为一个训练数据集合sample,表示为{x1,x2,…,xs},其中,每个数据具有m个属性,表示为集合。
输出:一棵决策树
方法:
(1)确定要生成的类的数目k和各类别Ci(i=1,…,k),类别可以根据事先给定的数据的特征或属性来确定;
(2)若attribute_set不为空,利用信息增益率的方法,计算属性集合attribute_set中的各个属性的信息增益率;
(3)若属性选择无二义性,即通过比较之后,可以选择出信息增益率取值为最大的属性root_attribute,标记为树的中间节点N;若当多个属性的信息增益率相等时,选择信息增益最大的属性为属性root_attribute,标记为树的中间节点N;
(4)属性root_attribute中每个已知属性取值ai,若属性值ai分类无二义性,贝叶斯节点取值为0,并由节点N长出1个条件root_attribute=ai的分枝;
(5)设si为samples中root_attribute=ai的1个划分;
(6)若si为空,加上1个树叶,标记为sample中的1个类别;
(7)否则,转(2)。
(8)否则,按某种原则对xi进行分类,若xi确定对应某一类别cj,则划分到此类;否则,若xi不能确定分到某个类别,而是与某些类别相关,则根据先验信息先把它置于某一类,然后计算出后验概率。最后,根据得到的后验概率,将xi划分到最大的后验概率所属的类中;
(9)选取贝叶斯节点的f值为后验概率;
(10)转到(2)。
贝叶斯决策树算法的核心思想是:
(1)若属性选择无二义性,选择信息增益率最大的属性作为分类属性;若属性选择存在二义性,即存在属性具有相同的信息增益率,选择信息增益最大的属性作为分类属性。
(2)对于能够确定数据对象属于哪个分类的类别,在该属性的分支中,选择贝叶斯节点值为0。对于无法确定数据对象属于哪个分类的类别,如由于根据“持续时间短”无法确定数据为何种类别,则选择贝叶斯节点的f值。f值的选取主要是来确定其先验概率,再根据概率判断将其分到哪些类别中,然后利用贝叶斯原理进行进一步处理。最后,确定其后验概率,比较所属各个类别的后验概率之后,选取后验概率为最大值的类别,该类别即成为数据对象所属的类别。
2 电网报警信息中的噪声数据过滤
2.1 形成报警信息记录表
从某省电力公司采集了从2012年11月1日到20 1 3年4月30日6个月共801 257条报警信息记录,并从调度运行管理系统(OMS)和数据采集与监视控制系统(SCAD A)中抽取相同时间内与报警信息相关的检修记录以及遥测值。
对采集的数据进行预处理:
(1)删去报警记录表中调度员不关心的报警信息。
各个变电站的预告信号是对现场各类异常的告警,报发次数最多,同时调度员对其利用最低,所以删除各类预告报警信息。报警信息中存在一种报警类型为SOE,这是报警事件的顺序记录,可从报警信息中删除。
(2)根据统计得到的报警信息,每日报发次数与噪声数据的关系,设定合适的门槛值,去掉明显的噪声数据。设定每日报发次数大于30次的报警信息为明显噪音数据。
(3)将OMS中遥测值的变化信息,用作对电网报警信息是否错误的辅助判别手段,以此来实现对电网报警信息的辅助判别,去掉错误的报警信息。
在实际运行中,遥信和遥测总是相关的。发生遥信变位(开关变位、开关事故跳闸)时,相关的遥测值必然会发生变化。遥测值数据是一个稳态值,无法反映电网故障时的瞬间变化,但是可以通过SCADA对动作保护相关的断路器、电气设备在电网故障时的遥测值的记录,得出故障前后2个采样周期内的测量值的变化。如果第一个采样周期内的测量值不为零而第二个采样周期内的测量值为零,则可以判断此遥测值对应的电气设备断路器跳闸或开关发生正常变位。
(4)当有报警信息为接地信号时,可以与相关的母线相电压变化相结合,判断报警信息是否为错误报警。
对采集数据进行预处理后,剔除了相当一部分明显噪声数据,剩下491 354条报警信息,形成报警信息记录表。
电网报警信息去噪流程图如图2所示。
2.2 形成报警信息数据预处理表
对报警信息记录表进行进一步处理,包括连续属性离散化、归纳分类属性等,最终选择报发间隔、持续时间、检修记录、连续报发为分类属性,类别属性为正常数据和噪声数据2类。
(1)检修记录:用来表示当前报警事件是否由正常检修引起。为了进行有效地分类,设定有、无2个属性。若属性值为有,直接判定为噪声数据。
(2)报发间隔[3]:用来表示报警信息报发的时间间隔,其属性值为广泛的离散值,为了进行有效的分类,将它提升到更高的概念层次,设定了长、中、短3个属性值。
(3)持续时间[3]:本次异常的持续时间,其属性值为范围广泛的离散值,为了进行有效的分类,将它提升到更高的概念层次,设定了长、中、短3个属性值。
(4)连续报发:用来表示该报警信息前一天是否报发过。为了进行有效分类,设定是、否2个属性。
经过数据预处理后形成报警信息数据预处理表。
2.3 利用贝叶斯决策树算法得到报警信息去噪决策树
针对数据预处理表中的491 354条报警信息记录,建立含400 000条记录的挖掘库和含91 354条记录的测试库。本文应用贝叶斯决策树算法对挖掘库的记录进行分析,建立的报警信息去噪决策树如图3所示。
根据每个属性的信息增益率,可以得到决策树;对于具有相同信息增益率的属性,取信息增益最大的属性作为测试属性;对于按照某一条件无法确定其分类的记录,可根据朴素贝叶斯算法,确定其分类。计算4个属性的信息增益率分别为
g(检修记录)=0.166 8
g(持续时间)=0.063 3
g(报发间隔)=0.060 4
g(连续报发)=0.032 1
由于检修记录的信息增益率最高,因此,它首先作为测试属性进行分类。按照信息增益率的大小确定之后每层的测试属性,最后得到去噪决策树如图3所示。
2.4 报警信息噪声滤除方法对比分析
为了验证所生成的去噪决策树模型的有效性,采用测试库的样本数据进行检验,得到的分类正确率为98.24%。使用测试数据进行检验,一共91 354条,其中噪声数据为10 216条,改进算法形成的去噪决策树滤除了9 350条,去噪率为91.52%。
利用本文方法得到报警信息预处理表,然后采用朴素贝叶斯算法进行去噪分类,准确率为90.98%,准确率不及贝叶斯决策树算法。
文献[3]中采用决策树算法,去噪率达到90.32%,准确率不及采用贝叶斯决策树算法。同时,虽然贝叶斯决策树算法效率稍低于决策树算法,但由于本文将报警数据与OMS中的检修记录以及SCADA中的遥测值相关联进行了数据预处理,去除了尽1/3的报警记录。而文献[3]并没有,因此在采集相同数量报警信息的情况下,去噪分类时间反而有所缩短。
3 结论
本文提出基于贝叶斯决策树的电网报警信息去噪方法。根据电网自身的特点,将报警信息与OMS中的检修记录,以及SCADA中的遥测值相结合,并归纳出新的分类属性,缩减了去噪时间;使用贝叶斯决策树算法对报警信息进行去噪,既能解决朴素贝叶斯算法无法生成规则的缺陷,又能改进决策树算法属性分类存在二义性的缺陷,使得分类精度更高,提高了报警信息去噪率。本文为电网报警信息处理提出了一种思路和方法。
参考文献
[1]包永金.基于支持向量机的电力系统不良数据在线检测辨识与修正[J].四川电力技术,2013,36(1):59-63.
[2]潘莉.数据挖掘技术在SCADA告警信息分析中的应用研究[D].北京:华北电力大学,2006.
[3]晁进.基于数据挖掘技术的电网智能报警系统的研究[D].北京:华北电力大学,2011.
[4]樊建聪,张问银,梁永全.基于贝叶斯方法的决策树分类算法[J].计算机应用,2005,25(12):2882-2884.
[5]TAN P N.MICHAEL S.VIPIN K.Introduction to Data Mining[M].范明,范宏建,译.北京:人民邮电出版社,2006.
贝叶斯决策树 篇3
为提高对战场态势判断的准确性,从而提升指挥引导战斗机的效率,提出运用贝叶斯方法对敌机态势进行估计的方法.首先介绍了贝叶斯决策的基本原理、基于最小错误率的.贝叶斯决策规则,以及基于最小风险的贝叶斯决策规则.其次,对两种决策规则分别进行仿真,在情况不明的状态下,可以得到比较合理的决策结果.最后说明了在判明战场态势的情况下如何进行指挥引导解算.
作 者:杨建广 王瑾 卢霞 YANG Jian-guang WANG Jin LU Xia 作者单位:杨建广,YANG Jian-guang(空军工程大学电讯工程学院,西安,710077)王瑾,WANG Jin(空军工程大学科研部,西安,710051)
风险投资中的最小贝叶斯风险决策 篇4
寻求贝叶斯决策函数有两条路径,一条是使后验风险最小,一条是使贝叶斯风险最小。实际中,人们常使用后验风险途径,因为它的计算相对简单和方便,本文我们使用的实际上正是后验风险准则。
在不同的先验分布假设下,参数的贝叶斯决策量一般是不同的。本文旨在通过在各种不同的先验分布条件下进行参数的贝叶斯决策,最终比较并探讨各种情况下贝叶斯决策的优良性问题。
一、提出问题
设想有一投资公司对某一项目已经投入100万元。现在决定是追加投资100万或是保持原投资不变,还是将已经投入的100万撤回。若在一年后该项投资的收益会因市场的变化而不同,如果一年后的市场对该项投资分为有利和不利两种情况。且根据以往的经验有利和不利两种情况发生的概率分别为:0.7和0.3。有利时可获利30%,不利时会损失40%。在这种情况下,寻求最小贝叶期风险决策。如果该公司投资前用5万元聘请一名投资顾问,该顾问在未来有利的情况下预测的准确率为85%,不利时预测的准确率是90%。这时,最小贝叶期风险决策又是什么?投资公司是否有必要聘请这位投资顾问?
用θ=θ1表示未来市场情况对该项投资有利,用θ=θ2表示未来市场情况对该项投资不利。分别用a=a1,a=a2,a=a3表示追加投资100万,投资不变和撤回原来投入的100万。这样决策空间为:。损失函数如下表
用R(d)表示用d作为
决策函数时的贝叶斯风险函数,则R(d)=EL(θ,d)。R(d)。与R(θ,d)的不同这处在于此时θ也是随机变量,其先验概率为:
(1)先考虑不聘请专家,公司做所可能采取的决策有:。即这时的决策函数空间:R(d2)=EL(θ,d2)=30×P(θ=θ1)+40×P(θ=θ2)=33
R(d3)=EL(θ,d3)=60×P(θ=θ1)+0×P(θ=θ2)=42
由此可见,决策函数d1的贝叶斯风险最小。故做决策就是由d1来确定。那追加投资100万。采取这种决策所面临贝叶斯风险为:24万元。
(2)如果聘请了专家,并且用ξ=x1表示专家认为未来市场情况对该项目投资有利,用ξ=x2表示专家认为未来市场情况对该项目投资不利。根据θ先验概率及全概率公式可得出:
这时公司所可能采用的决策函数有:
即此时的决策函数空间:{d1,d2,d3,d4,d5,d6,d7,d8,d9}。根据相关信息知道:P(ξ=x1|θ=θ1)=0.85 P(ξ=x2|θ=θ2)=0.90所以容易得出:P(ξ=x2|θ=θ1)=0.15 P(ξ=x1θ=θ2)=0.10由此可以进一步得到θ的后验概率为:
同理,R(d3(ξ))=42:R(d4(ξ))=16.35:R(d5(ξ))=40.65:R(d6(ξ))=25.35:R(d7(ξ))=49.65:R(d8(ξ))=8.7:R(d9(ξ))=57.3
最小贝叶斯决策为d8,即:若专家认为未来市场情况对该项目投资有利,则追加投资100万,否则撤资。
二、结果
综合上述分析结果发现,若不请顾问,则选取的投资方式为追加100万,承担的平均风险为24万元;而聘请顾问后,当选取追加的投资方式时,承担的风险为8.7万元,加上聘请顾问需要花费的5万元,共计13.7万元。所以结论是应该聘请顾问。
三、结论
从以上的实例分析我们可知,在从事经济活动中,决策前对有关的随机状态因素事先能够获得的信息愈多,愈可靠,则据此做出的最优决策愈可靠,其期望效益值也可能愈高。反之,若能够获得的信息愈少,愈不可靠,则得到的最优决策的可靠性愈差,期望效益值也可能愈低。而且根据情况选择适合的风险决策方法,也会让你的据侧达到事半功倍的效果。
风险决策时方案选择决定于外界环境状态,而这种状态是无法确知的,更不受决策者控制,但通过判断、调查和实验,可以获得有关信息。此时利用统计决策方法便可制订出较合理的风险投资决策。贝叶斯决策属于风险型决策,决策者虽不能控制客观因素的变化,但却可掌握其变化的可能状况及各状况的分布概率,并利用期望值即未来可能出现的平均状况作为决策准则。由于决策者对客观因素变化状况的描述不确定,所以在决策时会给决策者带来风险。但是完全确定的情况在现实中几乎不存在,贝叶斯决策不是使决策问题完全无风险,而是通过其他途径增加信息量使决策中的风险减小。由此可以看出,贝叶斯决策是一种比较实际可行的方法。
参考文献
[1]Liang F,Paulo R,Molina G,Clyde M,Berger J.Mixtures of g-priors for Bayesian variable selection[J].Amer.Statist Assoc,2008, 481(103):410-423.
[2]Giorgi E D.Reward-risk portfolio selection and stochastic dominance[J].Journal of Banking & Finance,2005,29(4):895-926.
[6]冯为民,朱俊,李嘉荣.贝叶斯方法在房地产风险决策中的应用研究.重庆建筑大学学报2006,28:111-114.
贝叶斯决策树 篇5
随着计算机技术与人工智能的发展, 用计算机进行文本图像自动处理越来越引起人们的重视。对文本图像分割就是计算机自动提取图像中的文字内容以便进行下一步的识别和分类。目前文本图像分割方法大多针对灰度图像[1,2], 没有充分地利用图像中的彩色信息, 对于一些特殊文档图像 (如印章) 变换到HIS颜色模型再进行阈值分割能取得比较好效果[3], 但是HIS颜色变换涉及非线性运算, 需消耗大量计算时间, 并且大多数文本图像在HIS颜色模型下信息的聚类程度反而不及RGB模型。现依据最小错误率风险的贝叶斯决策, 提出了一种基于RGB颜色模型的多颜色空间的图像分割方法, 在多个颜色分量空间中选择最优的阈值进行分割, 从而能够自动处理复杂的文本图像背景。
1 最小风险贝叶斯决策数学模型
图像分割也可视为一种文字与格线背景的两类的分类问题, 类别状态是一个随机变量, 因而某种状态的出现包含了概率因素[4]。在两分类 (设类别为ω1和ω2) 问题中, 设先验概率为和表征类特征的参数为x, 由贝叶斯公式[5]:
得到的条件概率称为后验概率, 表示当观测特征值为x时它属于类ωi的概率。最小错误率贝叶斯决策规则分割阈值即可表述为
即依据阈值T进行文本图像分割, 能够在单一概率分布下取得相对最小的分割错误率。
2 多颜色空间贝叶斯决策的图像分割
2.1 贝叶斯参数估计
Gauss分布是所有分布函数中描述文本图像统计信息的最佳分布[1], 将类条件概率密度函数用高斯分布描述, 其中μi与μi为待估计参数。
利用图像各颜色分量的直方图信息, 采用最小二乘法拟合直方图曲线估计出该颜色分量上两类分布的四个参数μ1, 2与σ1, 2, 之后便可由式 (2) 求得单一颜色分量下的最小风险分割阈值。如果所有颜色分量上的拟合参数出现μ1=μ2, σ1=σ2的情况, 则表明文字与背景格线颜色相同, 此时采用霍夫变换去除格线;否则采用多颜色空间阈值优化方法去除背景以避免霍夫变换去格线时造成的格线与文字交叠区域丢失。
2.2 多颜色空间阈值优化
分别在R、G、B颜色空间中计算出的贝叶斯分类阈值TR, TG, TB仅仅是在单一颜色空间中的局部最优阈值。设R, G, B空间中各自的贝叶斯决策错误概率为ER、EG、EB, 取min (Pe) =min (ER, EG, EB) 。记d=μ2-μ1, 近似的先验概率取P (ω1) =则有:
Q (x) 为标准正态分布的右尾函数, Q (-x) =1-Q (x) , 显然Pe随d的增大单调减小。根据R、G、B空间中d值大小, 选择最优颜色空间与阈值进行图像分割, 可使图像分割的错误概率达到最小的min (Pe) 。
3 实验与小结
将本文提出的基于多颜色空间贝叶斯决策的图像分割方法与传统灰度图像分割方法比较, 部份实验结果比较如图1。原图当中字符与彩色格线的灰度近似, 单一的灰度图像分割方法往往不能取得十分满意效果;相比传统方法, 本方法能达到更良好的分割效果。
图像分割是计算机文档自动处理的重要步骤, 本文研究了基于多颜色空间贝叶斯决策的图像分割方法, 取得了较为理想的应用效果, 同时该方法有一定普遍性, 也易于延伸用于其它领域中的彩色图像分割。
参考文献
[1]Dawoud A, Kamel M·Iterative model-based binarization algorithm for cheque images.Int J Document Anal Recognit, 2002;15:28—38
[2]张德贤, 郭小波, 刘永平·笔迹鉴别预处理与特征抽取技术研究·微计算机信息, 2006;22 (5) :309—312
[3]赵永涛, 李志敏, 王洪建, 等.印章识别中的图像预处理研究.仪器仪表学报, 2004;25 (4) :401—403
[4]包晓敏, 江亚明.基于最小错误率贝叶斯决策的苹果图像分割·农业工程学报, 2006;55 (5) :122—124
贝叶斯分析法在风险决策中的应用 篇6
(一)风险决策概念
风险的基本含义是损失的不确定性。但是,对于这一基本概念的出发点和关注点不同,它在不同人眼中的定义也各不相同。由于本文主要探讨风险决策问题,故把风险定义为不确定性。而这种不确定性又可以分为客观的不确定性和主观的不确定性。客观的不确定性是实际结果与预期结果的离差,它可以使用统计学工具加以度量。主观的不确定性是个人对客观风险的评估,它同个人的知识、经验、精神和心理状态有关,不同的人面临相同的客观风险时会有不同的主观的不确定性。每一个风险单位面临的风险都是纷繁复杂的,而应对一种特定的风险可以采用的方法又是多种多样的。为达到以最小投入获得最大安全保障目标,必须在所有的对策中选择最佳组合,这就是风险决策过程中的重要内容。风险决策的前期工作都是为决策工作提供必要的信息资料和决策依据,以帮助风险管理人员制定尽可能科学、合理的风险决策。
(二)风险决策意义与原则
决策工作在风险管理中的关键作用可从决策本身的内涵中得到体现:其一,风险决策取决于风险管理宗旨,风险决策对应于风险管理目标,是实现风险管理目标的保障和基础,必须确保所采取的风险决策能达到以最少的费用支出获得最大的安全保障这一管理目标。其二,风险决策是对各种风险管理方法的优化组合和综合运用,从宏观的角度制订总体行动方案。风险管理计划的编制要依据风险管理目标,分析风险因素、风险程度,了解可供选择的方法的利弊及成本,在综合评价后做出合理的选择和组合。同时,风险本身所具有的一些特性,如客观存在性、偶然性和多变性,使风险决策具有区别于其他一般管理决策的特点。为保证风险管理目标的实现,风险管理决策应该坚持全面周到原则、量力而行原则、成本效益比较原则及注重运用商业保险,但不忽视其他方法的原则。
二、贝叶斯分析法理论说明
(一)基本思想
贝叶斯决策分析就是在不完全情报下,对部分未知的状态用主观概率估计,然后用贝叶斯公式对发生概率进行修正,最后再利用期望值和修正概率做出最优决策。贝叶斯决策理论方法是统计模型决策中的一个基本方法。其基本思想是:(1)已知含有未知参数的概率密度表达式以及未知参数先验概率;(2)利用先验分布计算其后验概率;(3)根据后验概率求参数贝叶斯决策。寻求贝叶斯决策函数有两条路径,一条是使后验风险最小,一条是使贝叶斯风险最小。
(二)相关模型与计算方法
贝叶斯分析法的相关模型及计算方法可以简述为:设A1,A2,…An,为一完备事件组,事件B仅在完备事件组中某一事件发生时才发生,而且P(B)>0,在事件B出现的条件下,事件Ai出现的条件概率用P(Ai/B)表示,则由如下贝叶斯公式求出P(Ai/B):
上式中P(B/Ai)表示在事件Ai发生的条件下B发生条件概率,P(B)是事件B发生的全概率,即:
对于贝叶斯决策,先进行先验分析,也就是详尽列出决策矩阵或决策树,对各种状态发生的概率和条件结果都要加以估计或测算,但如果人们有可能进一步收集信息,就有可能使决策进行得更有把握一些。所谓决策树,是组织和表示决策者所面临的各种决定和不确定问题的一个系统化方法。通过对一个不确定事件所有可能出现数值结果的加权平均值的计算,得出预期的货币值,从而根据择优原则,进行评估和选择的决策方法。本文也会将贝叶斯分析法体现在决策树分析过程中,进行对不确定事件风险决策的应用与研究。
(三)案例说明
下文以一个投资示例来表明贝叶斯分析法的基本思想。
吉姆有10万元资金,如果用于某项开发事业,估计成功的概率为96%,成功时可获利12%,若一旦失败,将丧失全部资金。如果把资金存入银行,可得稳定利息6%。此外,吉姆发现使用咨询公司可以得到一些信息上的帮助,咨询费用为500元。本文将该咨询公司的意见实施结果列出来,如表1所示。吉姆经过考虑,决定去咨询公司咨询,虽然他知道这些信息只能供参考,如果咨询公司的意见是可以投资开发这项事业,问:吉姆现在应该如何决定?
本例中,存在投资成功(S)和投资失败(F)两种状态,各状态的先验概率为:
本例中,针对咨询公司意见实施结果,设事件Y为可以投资,N为不可以投资。则此时有:
此时,利用贝叶斯公式,计算出两种投资状态发生的后验概率。事实上,吉姆更关心如果咨询公司意见为可以投资的情况下,投资成功和投资失败这两种状态发生的概率。即有:
同理,咨询意见为不宜投资的情况下,投资成功和投资失败的概率分别可计算为:
根据计算分析可以推断,在咨询意见为不宜投资的情况下,吉姆将把资金存入银行。故根据后验概率调整计算结果,可得到在咨询意见为可以投资的情况下,投资于开发事业的货币的期望收益值(EMV1)为:
存入银行的货币期望收益值(EMV2)为:
因此,从计算结果中选出最大者10544元,即通过贝叶斯决策方法调整出的最优方案为投资于开发事业。而基于最大货币期望收益值准则,决策结果也是投资于开发事业。
上述风险决策的分析过程将贝叶斯决策分析的应用原理及计算方法加以说明,同时,在这个过程中,也看到了贝叶斯分析法在决策中的重要应用作用。
三、风险决策中贝叶斯风险分析的具体应用
(一)提出问题
某套待售房屋要价是40万美元,并且上市仅仅一天。有一个客户A打算购买此房屋,他的经纪人B说明在当天看了这套房子的客户中,至少有20个以上的客户想购买这套房子。B还补充,另外一个经纪人打算当天下午商谈有关这套房子的购买事宜。B劝告A如果决定购买,出价应该接近40万美元的要价。如果另一个购买这套房子的竞争者出相近的价格,那么销售商通常要求购买房子的客户第二天给出最终的价格。
针对这一情况,客户A认为房子40万美元可以考虑。如果他购买这套房子成功,他给这套房子的“情感值”赋值为1万美元。也就是说,如果可接受市场价格为40万美元,他需要花41万美元购买这套房子。因此,如果他以39万美元成功地购买了这套房子,这套房子的最终获益结果值为2万美元。当然,如果他们并没有成功购买这套房子,那么这套房子的结果值将仅为0美元。客户A对于他仅仅是一个竞争的参与者的概率也赋值为0.3。
他已经决定考虑选择以下三种价格中的一个:39万美元、40万美元或40.5万美元。他估计,如果他仅仅是一个竞争的参与者,那么花费39万美元价格的概率是0.40,花费40万元价格的概率是0.60,花费40.5万美元价格的概率为0.90。
然而,如果还有其他的竞争者,A假设销售商要求他第二天呈送最终的价格。在这种情况下,他将不得不重新考虑做出决定:他可以取消购买计划,呈上相同的购买计划,或者再增加5000美元的购买计划。他认为在多个竞争者存在的情况下,花费39万美元价格的概率是0.20,花费39.5万美元价格的概率是0.30,花费40万美元价格的概率是0.50,花费40.5万美元价格的概率是0.70,花费41万美元价格的概率是0.80。
(二)解决问题
为了客观做出购买这套房子的决策,试想客户A选择运用贝叶斯风险决策方法,将不同决策的结果进行预测,并构建决策树模型来帮助他作出决定。可以根据前面的思路进行决策分析,将贝叶斯分析法的结果体现在决策树模型中来,如图1所示。
由上述决策树的分析方法,可以清楚地看到在面临每一种不确定事件的时候,即需要做出风险决策的时候,都是给定一个概率,根据各事件发生的可能性不同和所得的结果值不同,又可以进一步运用贝叶斯风险决策方法,将不同的事件结果值和相对应的发生概率相结合,求出不同风险决策结果所带来的货币加权平均值,根据这种结果,就可以对决策有一个清晰的认识,并对决策事件价值有一个初步的评估,具有相当的参考意义。
为了说明决策树求解过程中的思路,就客户A选择出价39万美元的决策进行分析:在这个事件中,风险决策事件为“购房报价决策问题”,所采取的方法为“贝叶斯风险决策法”,将不确定事件的结果尽量明晰化,将损失减少到最小,以期利益最大化。
故:设购房者中只有客户A一人,而没有其他的竞争者,表示为:
由于该房子在A心理价位最高可达41万美元,故如果客户可以出价39万美元购到房子,获益的心理结果值如描述所说为2万美元,这种结果发生即房产商接受这种价位的概率为0.4,表示为P(one-39)=0.4,故若客户A在没有其他竞争购买者,出价39万美元所获得的风险决策价值Y(one-39)的计算结果是:
若客户A不是唯一的购房者,也就是说A还有竞争者,则需要二次竞价。此时,A仍出价39万美元,即此时获益的心理结果值仍为2万美元,但房产商买给A的概率降为0.2,即P(multi-39)=0.2,未成功竞价,1-P(multi-39)=0.8,此时
另一种情况,A为了得到房子,准备增加5000美元,即同理有P(multi-39.5)=0.3,且此时获益的心理结果值为1.5万美元(41-39.5=1.5),则有
由上述计算结果,看到若存在二次竞价时,增加5000美元报价的风险决策价值4500美元高于使用原价39万美元的风险决策价值,即此种情况下,客户A的决策应为增加5000美元的报价,获得4500美元的风险决策价值。
综上所述,就可以求出,客户A在第一次报价,报出39万美元的风险决策均值为:
上述贝叶斯分析法计算将客户A第一次报价为39万美元的决策各种结果及需要二次报价的情况下应作出的最优决策进行了估值,这个过程在决策树中明显地体现了出来,并且,客户A如果选择初次报价为40万美元或41.5万美元的决策价值的计算方法,也与上述计算分析过程同理,这里不再赘述,仅将这两种决策的最终风险决策价值列出,即分别为:
Y(first-40)=5300(美元)
Y(first-40.5)=3800(美元)
可见:Y(first-39)>Y(first-40)>Y(first-40.5)
结合决策树的分析,不难得出结论:选择第一种方案即第一次报价39万美元,若需二次报价,则再加5000美元即达39.5万美元的方案为最优决策。至此,此购房问题的风险决策问题得以分析解决,并为风险决策者客户A提供了在众多选择中有可能使得风险最小化且利益最大化的参考意见。
四、结论
基于上述对日常购房事宜风险决策的分析可以看出,贝叶斯风险决策方法充分利用了不确定事件发生的概率及其与各种事件可能发生结果的关系,使人们在一项不确定事项面前做决策有了一定的把握性和认知性,将零散的信息经过数理统计计算的方式,以货币收益值的形式表现得一目了然,有助于决策者客观做出决策。然而,运用这种方式也不是完美无缺的。对于先验概率的估计,每个决策者可能会有不同的风险偏好程度,即赋予的概率值不一定具有实际的参考性和科学性。同时,面对事件考虑的决策往往是有限的,不一定能够考虑到所有可能的事项,并且事项之间的相互影响也未必能通过贝叶斯方法完全考虑周全,故这些局限也需要在以后的研究和运用中需要特别注意且进一步解决和改善的。
参考文献
[1]何江妮、王玟:《浅谈贝叶斯风险决策分析》,《新疆师范大学学报》2006年第12期。
[2]冯为民、朱俊、李嘉荣:《贝叶斯方法在房地产风险决策中的应用研究》,《重庆建筑大学学报》2006年第2期。
一种新的贝叶斯树分类器及其应用 篇7
通过分类器,可以对需要分类的实例分配类别标签,由于贝叶斯方法具有坚实的数学理论基础及综合先验信息和数据样本信息的能力,使其成为研究热点之一。
朴素贝叶斯分类器(NB)基于较强的限定(属性变量之间条件独立),在某些应用领域性能很差。TAN对NB进行了有效的改进,既有朴素贝叶斯分类器的简单性,又有比朴素贝叶斯分类器更好的分类性能。决策树分类器将训练集分隔成越来越小的数据集,必然造成概率估计可靠性的下降,并且还存在重复子树的问题。NBTree是NB和决策树的有效结合,具有较好的分类性能。
本文基于NB的改进算法TAN和NBTree,提出了新的基于决策树的贝叶斯网络分类器的改进模型TTree。
1 贝叶斯网络分类器
贝叶斯网络分类方法[1]是在给定描述实例X的属性值(α1,α2,…,αn)的条件下,得到其最可能隶属的类别(C)的目标值Label:
目前已经有很多NB的改进方法[2]。例如:Kononenko提出的半朴素贝叶斯分类器;Langley和Sage提出的属性约减分类器;Pazzani提出的结构化的贝叶斯分类器;Webb和Pazzani提出的概率修正法;Friedman、Goldszmidt、Sahami等通过放松NB的独立性假设改进其性能(树扩展朴素贝叶斯网络分类器—TAN,扩展贝叶斯网络分类器—BAN,贝叶斯多网分类器—BMN,通用贝叶斯网络分类器—GBN等);Kohavi提出了基于决策树的朴素贝叶斯分类器—NBTree;WEBB等提出了一种懒惰式学习法;Mark Hall提出了通过学习一组决策树分类器对属性加权建立Naïve-Bayes分类器(AWNB)的方法[3]等。
通过删除某些属性建立分类器,降低了分类准确率。懒惰式学习方法要求有较高的存储区域,当训练实例集很大时,严重影响其分类速度。用一组决策树给属性赋权值的方法依赖于所建的决策树个数和数据集。NBTree[4]算法具有比NB和决策树更好的分类准确性,特别是对于大数据量的实例集。由于该算法基于NB,必然会在某些应用中降低分类准确率。
2 改进的贝叶斯树分类器
下面提出的TTree算法,是对NBTree算法的有效改进。
2.1 TTree分类器描述
TTree首先通过决策树对数据集进行分割,在为节点选择属性时,如果该节点的实例数小于某一阈值,则停止增加节点,否则,采用5-CV TAN分类器,先对当前节点实例集进行分类,获得分类的错误数Error(n),然后对各个属性用5-CV TAN计算其子集的分类错误总数Error(Ai),如果相对误差率小于某一阈值,那么选取Error(Ai)最小的Ai作为节点属性。
为了减小模型复杂度,在节点添加强弱规则判断。如果叶节点的数据集Di绝大部分(99%)的数据Dl arg subsei属于同一类别Ck,则该节点属于强规则,不需要建立TAN分类器;否则,属于弱规则,需要在该叶节点建立TAN分类器。
在某节点建立TAN分类器时,如果从根节点到该节点的路径中的某些属性变量为离散型,则该节点的分类器可以不包含这些属性变量,这样就有效地提高了计算效率。
2.2 TTree学习算法
TTree(A,Dtraing)
input:A //数据集的属性变量
Dtrain //参加训练的数据集
output:一个TTree分类器模型
Step1:根据当前节点的数据集,判断当前节点是否为强规则,是则停止分裂,如果为非根节点则不需要在该叶节点建立TAN分类器,开始判断下一节点,如果已经遍历所有的节点,则算法结束;
Step2:用5折交叉验证(5-CV)TAN对当前节点的数据集Dm建立分类模型GlobalModelm;
Step3:如果数据集的实例数Sizeof(Dm)小于30,则停止分割该节点的数据集,节点分类模型为GlobalModelm,返回Step1,处理下一节点;
Step4:获得分类的错误实例个数Error(n);
Step5:对于每个属性Ai进行分析,对连续型属性值用最小熵计算一个分割阈值,按照属性变量的值采用C4.5算法对节点数据集分割得到子集subset(Ai,j),对每个subset(Ai,j)分别建立TAN分类器,并获得分类错误数Error(Aij);
Step6:将每个属性Ai分割子集的分类错误数Error(Aij)相加赋予该属性,记为Error(Aij),并获得分类错误最小的属性Aj;
Step7:如果相对错误率(Error(n)-Error(Ai))/Error(n)小于5%,则停止分裂,该节点分类器为GlobalModelm;
Step8:将分类错误最小的属性Aj作为新的节点,如果已经遍历所有节点,则结束;否则返回Step1。
2.3 算法性能分析
给定m个实例,n个属性变量,k个类别标签,TTree的算法复杂度为O(m·n3·k)。实际应用中,如果属性变量的个数n远小于O(log m),那么算法用在交叉验证选择属性的时间将远小于实例分类的时间,所以该算法适合于对大数据量的实例集分类。由于该算法基于TAN,因此对小的实例集分类准确率较低。
3 实 验
实验的目的是将TTree分类器与NBTree、C4.5、TAN、NB4种基本的分类器进行比较,分析TTree的性能。实验数据选自UCI资源库的20个数据集,表1列出了每个数据集的实例个数、测试数据集等信息。所有实验都是在Weka系统上完成的。其中部分采用数据集的三分之二作为训练集,剩余的三分之一作为测试集,多数采用10折交叉验证。
表2列出了在每个实例集上5种分类器的分类准确率。可以看出,TTree在大部分实例集上取得了很好的分类性能,在准确率上要优于NBTree分类器,且TTree的平均准确率最高。其中对于solar和labor两个实例集建立的TTree只含有一个TAN网络,是TTree的一种特殊情况。
4 TTree在电信CRM中的应用
客户关系管理CRM是以客户为中心,通过完善的客户服务和深入的客户分析来满足客户的要求[5]。
本文对客户的在线时长进行初步探索,建立模型的数据采用某电信公司已流失客户的基本资料信息和行为信息数据,选取了10000个客户数据。准确地预测客户的在线时长是非常困难的,一个有效和可行的方法是预测客户是长期客户还是短期客户。由于数据仅含33个月内流失的客户信息,根据电信CRM文档,简单地将12个月内流失的客户定义为短期客户(S),12个月以后流失的客户定义为长期客户(L)。
经ETL对数据处理后,选取客户的年龄、性别、所在地区、婚姻状况、开户费用、套餐费用、缴费方式、帐户余额、累积欠费费用、信用度、大客户标识等19个属性进行分类建模。TTree建立的模型如图1所示。图中矩形代表TAN分类器,椭圆形代表树节点。实验证明,用TTree建立的分类模型准确率达到81.1750%,而用NBTree建立的分类模型准确率仅有78.2558%,该分类准确率达到了该电信企业的要求。
5 结 论
NBTree是一种基于决策树的贝叶斯混合分类器,经Kohavi实验证明,NBTree在很多应用领域具有比C4.5和NB高的分类准确率。本文提出了TTree分类算法,通过实验证明,该算法有比NBTree更好的分类性能。最后将TTree应用到电信CRM中,对预测客户的在线时长进行探索,建立分类模型,得到了比NBTree高的分类准确率,而且模型易于理解。
参考文献
[1]Tom MMitchell.Machine Learning[M].China Machine Press,2003:112-142.
[2]Zheng Z,Webb G.Lazy learning of Bayesian rules[J].Machine Learn-ing.2000,41(1):53-84.
[3]Mark Hall.A Decision Tree-Based Attribute Weighting Filter for Na veBayes[D].The University of Waikato,Hamiltonm,2006.
[4]Kohavi R.Scaling up the accuracy of Naive-Bayes classifiers:A deci-sion-tree hybrid[A].Proceedings of the Second International Confer-ence on Knowledge Discovery and Data Mining,1996:202-207.
贝叶斯决策树 篇8
研发产业以及研发开发过程的特殊性,使得研发产品在开发周期中存在着许多不确定的风险因素,这些风险因素的存在,常常导致研发项目失败。根据Standish Group对美国公司的一项调查,只有28%的研发项目在预定的时间和预算内完成[1]。
解决上述问题的可行方法是引入风险管理技术。研发项目的风险管理包括风险的识别、风险评估、风险应对和风险监控,其中风险评估是做好风险管理,保证研发项目成功率中非常重要的一环。研发项目风险管理之父Barry Boehm在研发项目风险评估的系统化定义与分析方面做了开创性的工作,他以风险的影响大小来量化风险,从而对已知风险进行优先级排序,进而控制风险。他将风险影响水平定义为:风险当量(RE)=P×C,其中,P是出现不如意结果的可能性,C是不如意结果发生带来的后果[2]。这是目前研发企业进行项目风险管理所用到的最简单、适用的方法,在此基础上很多专家学者和企业,又在风险当量中考虑到了风险的可控性指标。
随后,国内外相继开发了各种风险评估技术:定性分析方法(如专家判断法)、AHP方法(层次分析法)[3]、模糊综合评判方法[3]、灰色评价方法[4]等。继Pearl于1986年提出采用贝叶斯网络(Bayesian Networks)来研究不确定性知识的表达和推理后,贝叶斯网络也逐渐被应用于研发项目风险评估:Chin-Feng Fan和Yuan-Chang Yu就应用贝叶斯网络进行研发项目风险管理[5],唐爱国等也将贝叶斯网络应用于研发项目风险评估中[6],并取得很好的效果。金俊丽等将遗传算法和EM算法与贝叶斯网络结合起来,有效减少了人为构建贝叶斯网络及其参数带来的主观性,使研发风险评估更加科学、合理[7]。
但是,由于研发项目风险管理理论体系还不完善,而且贝叶斯网络模型的设计和计算比较复杂,还不能普遍应用于研发项目风险评估中。基于此,本文提出一种基于贝叶斯风险决策理论的研发项目风险评估方法,它以贝叶斯理论最基础也是最根本的贝叶斯概率公式为理论基础进行研究,大大减少了模型计算的工作量,并有效地弥补了先验概率精确度低的问题,提高了研发项目风险评估的准确度,为风险评估提供了一种简便而科学的方法[8]。
1 贝叶斯风险决策理论
1.1 理论基础
在进行风险决策时,在有历史数据时,决策者可以根据已有的历史数据通过类比法分析出风险发生的概率;在没有历史数据或历史数据不充分时,决策者往往会根据专家判断法,由根据专家的知识经验对未来可能发生事件的概率做出主观判断。但是,这并不足以反映客观现实情况,这时就需要对专家判断的概率进行修正,而贝叶斯网络就是一种修正先验概率的科学方法。
贝叶斯概率公式表述如下:
设有n个事件Xi(i=1,2,…,n),它们组成一个完整的事件集合,而存在另一个事件Y,只在任一Xi发生时与其同时发生。设已知Xi发生的概率为P(Xi),事件Y在Xi发生的条件下发生的概率为P(YXi),由此可得事件Y发生的概率P(Y)为:
undefinedXi) (1)
则可推出:
undefined (2)
式(1)和式(2)就是贝叶斯网络中最基础的贝叶斯概率公式。在公式中,由于P(Xi)是先验概率,而P(Y/Xi)就是所要求的概率,即后验概率。
简单地说,贝叶斯风险决策理论就是利用先验概率和相关的条件概率得出后验概率,并基于后验概率进行决策。由于先验知识得到的先验概率并不是很准确,贝叶斯决策方法就是修正了先验概率,使得决策更加完善和科学。
1.2 贝叶斯风险决策
贝叶斯风险决策是依据事件状态的先验分布和后果的损失函数进行分析的,通过推理得到贝叶斯风险最小的决策规则,这就是最佳风险决策。下面以一个随机事件Y为例说明如何进行贝叶斯风险决策[9,10,11]。
(1)定义一个先验分布π(θ),以及一个决策函数δ(Y),则相应的损失函数为L(θ,δ(Y))。
然后,定义风险函数如下。
R(θ,δ)A Eθ[L(θ,δ(Y))]=∫YL(θ,δ(Y))dPθ(Y) (3)
则称
R(δ)A∫R(θ,δ)π(θ)d(θ) (4)
就是贝叶斯风险。
而
R(δY)A∫L(θ,δ(Y))π(δY)dθ (5)
就成为贝叶斯后验风险。根据积分次序的可交换性和Fatou引理可以证明:当supR(δ)<∞时,贝叶斯决策函数和贝叶斯后验决策函数是等价的,因此,根据后验风险准则来寻求贝叶斯风险决策解即可。
2 基于贝叶斯风险决策理论的研发项目风险评估模型
对于风险决策来说,贝叶斯网络为风险决策者提供了一种更加精确科学的决策方法,即遵循贝叶斯风险最小原则。在研发项目中,由于存在很多不明确风险,而项目人力和物力有限,因此只能着重控制风险发生概率高和风险发生后损失大的风险事件,这与贝叶斯风险决策理论是相通的,只不过这里要找到贝叶斯风险中最大的几项风险。
由于项目中的风险评估与风险决策中的风险分析有所不同,所以需要重新建立研发项目风险评估模型,其具体操作如下:
(1)定义先验概率分布,由于研发项目发展较晚,并没有较完备的风险数据资料,所以这里可以由专家进行判断。
(2)给出相关的条件概率参数,并结合先验概率计算出相应的后验概率。
(3)定义风险损失函数(风险严重性:指风险对项目造成的危害程度)。由于研发项目风险评估与风险决策不同,这里的风险损失将依据表1所示的原则进行定义[12],根据风险对项目工作量增加程度的大小分为5级。
需要说明的一点是,本文对于风险严重性的确定标准,是以工作量作为标准来进行的。在对研发项目进行风险评估时,还可以以成本或其他指标作为衡量的标准,而且这一标准的确立应根据研发组织的实际情况而定,并没有统一的标准。
(4)将贝叶斯后验风险概率与相应的风险严重性等级相乘可得到最终的贝叶斯风险,并根据风险大小进行排序以便风险控制。
3 实例验证(实际应用)
下面将以某研发项目需求风险为例对其应用效果进行说明。将需求风险命名为Y,其影响因素有以下几个:X1需求变动风险、X2需求不明确风险、X3需求变化管理风险,并建立相应的贝叶斯网络。案例中风险评估的目的是对需求风险中的3个子风险大小进行排序,进而找到风险最大的风险事件,并着重对其进行控制。
(1)根据专家判断,赋予3个子风险事件先验概率,分别为:
P(X1)=(0.7,0.3);
P(X2)=(0.6,0.4);
P(X3)=(0.4,0.6);
(2)根据专家知识赋予相应的条件概率参数,分别为:
P(X/X1)=0.7;
P(X/X2)=0.8;
P(X/X3)=0.6;
进而依据公式(2)可以计算出3项风险的后验风险分别为:
P(X1/X)=0.405;
P(X2/X)=0.397;
P(X3/X)=0.198;
(3)依据表1确定的风险严重性判别准则,并根据基于DELPHI的专家判断法得出3项风险的严重性等级权值分别为:3、4、1。
(4)可以得到最终的贝叶斯风险值排序,如表2所示。
根据分析可知,需求不明确风险和需求变动风险的贝叶斯风险值较大,项目经理应着重对其进行控制,如有必要甚至需要改变计划,而需求变化管理风险的贝叶斯风险值较小,不用投入太多的成本和人力。
为验证本文所示方法的客观性和有效性,在对本文中的案例进行风险评估时,除了用本文中的方法,同时还运用了另外一种常用的风险优先级确定方法来对其进行评估。即通过评估出该项目风险的概率(风险可能发生的程度)和严重性,并将概率乘以严重性,确定风险的优先级,风险优先级也称之为风险系数,是指风险对项目造成的影响,定义为风险严重性权值和风险可能性权值的乘积,必要时也可以考虑到项目风险的可控性,乘上风险的可控性系数。风险概率的确定如表3所示,评估的优先级顺序如表4所示。
从表4可见,其判断结果与本文的判断结果差别非常大,而项目的实际运行结果表明,本文所研究方法的评估结果更加接近项目的实际情况。对风险进行有效的评估后,就可以根据风险评估的结果对风险进行监督和控制。通常情况下,风险响应的措施如下:对于风险优先级比较低的项目,如表4中的“需求变化管理风险”,项目采取的措施是不予响应,因为对于低等级的风险进行响应,固然会提高项目的安全度,但项目付出了额外的成本,不必要也不划算;对于优先级处于中等级的风险,由项目经理负责响应,项目内部制定补救、缓解措施,如表4中的“需求不明确风险”;而对于高等级的风险,因其会对项目及企业造成重大影响,因此由公司高管直接参与制定补救、缓解措施,并亲自审批风险管理措施,如对于表4中的“需求变动风险”。这样才能确保项目既不付出额外的成本,但又能确保项目有序、安全的完成。
根据风险识别和评估的结果对于风险的管理一般分为4个层次:危机管理(风险已经造成麻烦后才着手处理它们)、风险缓解(事先制定好风险发生后的补救措施,但不制定任何的防范措施)、着力预防(将风险识别和风险防范作为软件项目的一部分加以规划和执行)、消灭根源(识别和消灭可能产生风险的根源)。根据这4个层次的划分,我们应该根据风险评估的结果对风险进行预防,但同时我们也必须认识到不是所有的风险都能够预防的,所以还必须建立一个应付意外事件的计划。所以正确地对项目风险进行评估,确定项目的风险系数和优先级,是制定合理风险应对措施和进行风险监控的基础,也是关系到项目成败的重要一环。
4 结语
总之,研发项目风险管理是研发开发过程中一项非常重要的工作,是关系到研发项目成败与否的一个很重要的因素。研发项目风险管理主要包括项目风险的识别、评估、应对和控制4项主要活动,即首先要识别出项目的风险,评估风险之间的关系及风险发生的可能性、后果及影响范围,根据评估的结果制定风险应对计划,并对风险进行跟踪和控制。研发项目评估的主要目的是量化项目开发活动中可能碰到的各类风险,估计风险的可能性和对项目开发的影响程度,划分风险的优先级,为制定项目风险管理计划及对风险进行监控提供依据和参考。由此可见风险评估在研发项目风险管理中起着非常重要的作用,是风险管理成败与否的关键。
本文主要通过采取基于贝叶斯风险决策理论的研发项目风险评估模型来对研发项目中的风险进行评估。实践证明,该方法比较简单有效,且容易实施,大大降低了模型的工作量,采用这一模型可以有效地弥补先验概率精确度低的问题,提高了研发项目风险评估的准确度,为风险控制提供了更加可靠的依据。
该方法存在的不足之处是有些数据的获得依赖于专家知识,鲁棒性比较差,下一步将通过调研企业的实际数据,引入建立在实际数据基础上的更为客观的评估方法。
参考文献
[1].Project Failure and Success Research Report[R].Standish Group International Chaos,2005
[2].Boehm B W.Software risk management:Principlesand practices[J].Software,IEEE,1991,8(1):32~41
[3].段秉乾,司春林.基于模糊层次分析法的产品创新风险评估模型[J].同济大学报(自然科学报),2008,36(7):1002~1005
[4].庞庆华.一种软件项目风险的灰色评价方法及应用[J].科学技术与工程,2009,23(9):7162~7165
[5].Chin-Feng Fan,Yuan-Chang Yu.BBN-basedsoftware project risk management[J].The Journal of Systemsand Software,2004,(73):193~203
[6].唐爱国,王如龙,胡春华.贝叶斯网络在软件项目风险评估中的应用[J].计算机工程与应用,2010,46(7):62~65
[7].金俊丽,赵川,杨洁.基于EM-GA改进贝叶斯网络的研究及应用[J].计算机应用研究,2010,27(4):1360~1362
[8].N.Fenton,M.Neil.Making decisions:using Bayes-ian nets and MCDA[J].Knowledge-based systems,2001,14:307~325
[9].Rajendra P.Srivastava.An introduction to evidentialreasoning for decision making under uncertainty:Bayesian andbelief function perspectives[J].International Journal of Ac-counting Information Systems,2011,12:126~135
[10].Xiaomo Jiang,Sankaran Mahadevan.Bayesian risk-based decision method for model validation under uncertainty[J].Reliability Engineering and System Safety,2007,92:707~718
[11].朱慧明,韩玉启.贝叶斯多元统计推断理论[M].科学出版社,2006:41~44