机器学习&数据挖掘笔记_22(PGM练习六:制定决策)

 

  前言:html

  本次实验是将一些简单的决策理论和PGM推理结合,实验内容相对前面的图模型推理要简单些。决策理论采用的是influence diagrams,和常见图模型本质同样,git

其中的决策节点也能够用CPD来描述,作决策时通常是采用最大指望效用准则(MEU)。实验内容参考参考的内容是coursera课程:Probabilistic Graphical Models中的assignment 5. 实验code可参考网友的:code.github

 

  实验中一些函数简单说明:dom

  Fnew = VariableElimination(F, Z):wordpress

  给定factorlist F和须要消除的变量集Z,采用sum-product的方法消除这些变量后获得factor集Fnew.内部需调用函数EliminateVar()。函数

  EU = SimpleCalcExpectedUtility(I):spa

  实验1的内容。I为influence diagrams中的全部factor,包含I.RandomFactors、 I.DecisionFactors、 I.UtilityFactors三种。计算时能够把RandomFactors和DecisionFactors结合在一块儿,看出是一个BN,而后对该BN进行变量消除,将那些不是效用节点父节点的变量消除掉,获得的factor中就只包含效用节点父节点了。code

最后将其与UtilityFactors相乘就能够获得指望效用了,计算公式以下:orm

  

  EUF = CalculateExpectedUtilityFactor( I ):htm

  实验2的内容。EUF是指指望效用factor. 将前面的EU计算公式变形后以下:

    

  而所求的EUF就是公式中的:

  注意与实验1中的SimpleCalcExpectedUtility()区分开来,这里是消除掉与决策节点无关的那些变量(实验1消除的是与效用节点无关的变量)。因此EUF中的var只剩下决策节点及其父节点。

  [MEU OptimalDecisionRule] = OptimizeMEU( I ):

  实验3的内容。求的MEU为最大指望效用。除决策factor中的变量外,其它变量组合的每个assignment下,决策D下的不一样决策将获得不一样的效用,此

assignment下固然是取效用最大的那个决策。所以这样就好构成一个新的factor,为OptimalDecisionRule.factor中全部的val之和就为MEU. 该函数内部须要调用CalculateExpectedUtilityFactor().

  [MEU OptimalDecisionRule] = OptimizeWithJointUtility( I ):

  实验4的内容。该实验处理参数和实验3同样,不一样的是这里须要处理有多个效用节点的情形。由于效用值具备可加性,因此只需将这些效用节点所在的factor相加起来构成一个新的效用factor,而后直接调用OptimizeMEU()输出就ok了。

  [MEU OptimalDecisionRule] = OptimizeLinearExpectations( I ):

  实验5的内容。所完成的功能和实验4是同样的,函数接口也相同,只是采用的方法不一样。实验4中是先将全部的效用factor相加,而后采用实验3的函数来计算。而实验5是直接将效用计算公式变形,以下:

   

  先将EUF整合,而后采用相似OptimizeMEU()的方法来求解。

 

  相关知识点:

  Arrhythmogenic Right Ventricular Dysplasia (ARVD): 心律失常性右室心肌病

  implantable cardioverter defibrillator(ICD):植入型心律转复除颤器,与手术治疗ARVD有关。

  ARVD的influence diagrams以下:

      

  其中的ARVD变量节点为X,其表示是否得有ARVD;它受先验X3影响;对ARVD的一些观察结果用T表示;决策变量为D(有时候也用A表示),决定是否进行ICD手术,

它与T相关;节点O为是否出现bad outcome,由X和D决定;最后的效用节点D由O和D决定。

  简单决策包括下面几个部分:一个动做序列A,通常用矩形表示;一个状态序列X,通常用椭圆表示;一个分布P(X|A);一个效用函数U(X,A);效用节点U通常用菱形表示。

  Expected utility(指望效用)表示作出某个决策后的指望效用,效用值不必定是几率,它是一个实数,能够为负。其计算公式以下:

   

  MEU(最大指望效用):也就是说作出某个决策后获得的效用最大。此时的决策a计算公式为:

      

  Information edge:指那些与动做节点相连的状态节点之间的edge.这些information edge构成了一个决策规则,用CPD来描述。有information edge的指望效用计算

公式为:

  

  对应的最大指望效用计算公式为:

  

  决策理论能够将PGM中的一些inference方法引进来。

  多属性效用函数(Multi-Attribute Utilities):一般状况下效用值受多个变量影响,能够将这些变量整合到一个效用函数中。关于多属性效用函数更详细的理解可参考网友demonstrate 的 blog:PGM 读书笔记节选(十七).

  效用不能单纯从几率上来看,效用函数应该能体现用户对结果的偏好,它通常需考虑作决策时的风险。

  VPI(value of perfect information ):增长一条information edge到决策变量先后的MEU变化量。VPI>=0成立。

 

  参考资料:

       实验code可参考网友的:code

  coursera课程:Probabilistic Graphical Models 

       Daphne Koller,Probabilistic Graphical Models Principles and Techniques书籍第22章

       网友demonstrate 的 blog:PGM 读书笔记节选(十七)

相关文章
相关标签/搜索