pgm17
这部分讨论决策理论与 PGM 的关系,一个主要的思路就是将决策与 PGM 的 inference 完美的融合在一起。
MEU
为了引入决策理论中的 maximum expected utility 原则,我们先引入一些概念:
- lottery(彩票)是一个结果与概率的映射关系,用户对不同的 lottery 的偏好能显示其对风险的不同评估方式
- 决策问题一般有一组结果 ,一组行为 ,结果的概率模型,即给定某个行为后,得到结果上的一个分布(lottery),一个 utility function,它给出用户对不同结果的偏好
所谓的 MEU 原则是
事实上也有做其他的选择的原则的,比如 min max risk,最大风险最小化
我们这里只考虑前者。那么一般说来合理的 utility function 要求满足,
- orderability,即对任意两个 lottery,或者选其一或者两个倾向一样
- transitivity,即如果两两比较 ,则有
- continuity,即若 ,则存在 使得 与 compound lottery
- monoticity,若 ,则
- substitutability,若 ,则这两个 lottery 可替换:
- decomposability,
可证明对满足以上六点的 lottery 存在 utility function 使得 当且仅当 。这里 。
一般说来一个 utility function 对 money 的曲线一般是单调增,在正象限是 concave 的,表示 diminishing utility,这一般表示的是 risk averse:即选择带随机的收益和无随机的收益(两者平均 utility 相等)两种 lottery 的时候会倾向后者。与此相反有 risk seeking 和 risk neutral,前者是 convex 的而后者是线性函数。但是很多时候人并不是一成不变或者一味有理智的,他们的 utility function 可能会变化。但是实际情况下的 outcome 可能并不是 money 这么简单,我们往往面对的是多个 attribute 造成的影响建立对应的 utility model。简单的说这是一个多元函数如何能写出表达式的问题。事实上,如果这些 attribute 满足某些性质,我们可以将这个函数 decompose 成为若干 attribute 上各自的 utility。为此我们引入一些概念,
- 如 是 attributes 的一个 partition,称 是 preferentially independent of ,当且仅当对任意 ,给定 时有 ,当且仅当给定 时也有
- 以上是说这个 attribute 的 partition 之间有这样一个无关性,其中一个取定不会影响另外一个的 preference,我们可以将其延拓到分布上,为此引入 conditional preference structure,当 对任意 成立时,记为
- 这样我们就可以定义 utility independence,即对任意 如果两个 lottery 的 preference 是恒定的
可以证明:如果 attributes 是 utility independent of ,当且仅当 。这个定理的推论是,如果每个子集 满足它和它的补集是 utility independent 的,当且仅当存在以下分解
或者
这也就是说 utility function 的最终形式大约是一个关于 attributes 子集上 utility function 的 multilinear function。如果我们只考虑相加这种形式(后者)往往会降低我们的 utility function modeling power,但是它也有一些自己的特点,比如所谓 additive independence,就是说对任意的 attribute margin 来说发现两个 lottery 的 preference 都是一样的,这种情况下的 utility function 必然能写成每个 attribute 上 utility function 的和。类似我们可以定义 conditional additive independence,这是在给定某个 attribute 值(如 )的情况下任两个 lottery 的 preference 在任意两个 margin 上(如 )是一致的,这时的 utility function 会 decompose 成为几个 utility function,即 。事实上我们甚至可以用 MRF 表示 CAI-map,这样 utility function 的 decomposition 也会变成对应几个 clique 上 utility function 的和。事实上上述要求 disjoint attribute 可以被松弛,这称为 generalized additive independence,对应情况下的 utility function 分解仍然成立。
一个基本的求解 MEU 的策略是使用 decision tree,根据每个随机变量的取值进行分叉,最后得到每个 leaf 上的 utility function value,这样一来最优的 decision 就是能导致走到 utility 最高的 leaf 上的策略。而另一种也就是前面提到对 BN 的扩展是在 BN 中加入 decision variable(对应 action)和 utility variable(对应最终的 utility),而原先的 r.v.s 称为 chance variable。这个新的图模型称为 influence diagram。很快我们就可以发现 MEU 实际上就是要求 或者对应有一定的 observation 时要求 。这里 utility function 是对应节点 的父节点的(确定性)函数。影响 action variable 的 edge 也叫 information edge,而我们需要的 decision rule 。通常我们求解 MEU 策略和前面的 inference 过程也呈现了某种相似之处。我们分几种情况讨论
- 如果没有 decision variable,我们只需要 marginalize 所有的东西就得到了 expected utility
- 如果只有一个 decision variable,记为 ,那么我们可以 marginalize 掉除了 以外的东西,即得到的函数为 ,这样取
- 如果有多个,可以采用 iterated optimization algorithm,即每次固定别的 decision rule,更新当前的,这种算法在某些特定条件下能收敛到全局最优,一个充分的条件是满足 perfect recall,即存在某个 r.v.s 的顺序使得按照这个顺序走的时候后面的 decision variable 的 parent 必须在之前的 decision variable 及其 parent 里面。
为了更好地刻画什么时候 local optimal 的 decision 能够导致 global 的 optimal decision,我们需要研究改变某个 decision rule 时如何会不影响到其他的 decision rule(这样各自保持最优),这样以上 iterated optimization algorithm 就能减少迭代次数。为此引入了 strategically relevant 和 s-reachability 的概念,并证明两者的等价,可以证明满足 perfect recall 性质对应的 relevance graph 一定是 acyclic 的。那么实际上如果 relevance graph 本身是 acyclic 的直接用 iterated optimization algorithm 也定能获得最优解。
在 marginalize 其他的 r.v.s 的时候注意到 information edge 的作用(传递有用的 message),而某些信息其实是对 MEU 无用的,这一般是不存在一条 active trail 会产生的现象(此时称为 irrelevant information edge),去掉 irrelevant edge 不会改变 optimal decision。
一个很重要的问题是我们是否能通过某种方式确定某个观测对决定的影响。对单个 decision observation 而言,我们可以使用所谓 value of perfect information 来衡量,即增加一条 information edge 从该 r.v. 到 decision variable 后 MEU 的变化,记为 ,可以证明这个值不小于零。也就是说知道更多决策不会变差。多个的情况会变复杂很多,一般只能用近似。
——————
And it came to pass at that time, that Abimelech and Phichol the chief captain of his host spoke to Abraham, saying, God is with you in all that you do:
pgm17的更多相关文章
随机推荐
- Mybatis学习总结(四)——输入映射和输出映射
在前面几篇文章的例子中也可以看到mybatis中输入映射和输出映射的身影,但是没有系统的总结一下,这篇博客主要对这两个东东做一个总结.我们知道mybatis中输入映射和输出映射可以是基本数据类型.ha ...
- python之字符串、列表和元组
先简单的了解一下两个相关概念 模块 python中的模块需要使用特殊的命令import来导入.格式:模块.函数.如下: 在确定自己不会导入多个同名函数的情况下,可以使用import命令的另外一种形式: ...
- Java的运算符--与(&)、非(~)、或(|)、异或(^)详解
一.计算机中存储的都是补码 java也是如此: System.out.println(Integer.toBinaryString(2)); System.out.println(Integer.to ...
- 解密:Python风靡全宇宙,首要原因竟是它?
就让我们从近年来大数据的兴起说起,为你娓娓道来Python火爆的真正原因. 郁闷的大数据程序员 随着大数据的崛起,大多数行业发现自己进入了一种恐慌状态:他们花费了大量的时间和金钱来建立他们的大数据渠道 ...
- C#中byte[]类型转换为其它类型
我们这里就举byte[]类型和long类型的转换,其它数据类型用BitConverter类以此类推: /// <summary> /// 字节数组转换为long类型 /// </su ...
- CF797F Mice and Holes 贪心、栈维护DP
传送门 首先\(\sum c\)有些大,考虑将其缩小降低难度 考虑一个贪心:第一次所有老鼠都进入其左边第一个容量未满的洞(如果左边没有就进入右边第一个未满的洞),第二次所有老鼠都进入其右边第一个容量未 ...
- JS-详解算数运算符"+"
二元加法运算符“+”可以对两个数字做加法,也可以做字符串连接操作: 当两个操作数都是数字或都是字符串的时候,计算结果是显而易见的.然而对于其他情况来说,则要进行一些必要的类型转换,并且运算符的行为依赖 ...
- [UWP 自定义控件]了解模板化控件(2.1):理解ContentControl
UWP的UI主要由布局容器和内容控件(ContentControl)组成.布局容器是指Grid.StackPanel等继承自Panel,可以拥有多个子元素的类.与此相对,ContentControl则 ...
- Node 系列之url模块
引入 url: const url = require("url"); 用于URL解析.处理等操作的解决方案 1.url.parse(urlStr[, parseQueryStri ...
- Linux内核分析第二周:操作系统是如何工作的
第一讲 函数调用堆栈 计算机是如何工作的? (总结)——三个法宝 1,存储程序计算机工作模型,计算机系统最最基础性的逻辑结构: 2,函数调用堆栈,高级语言得以运行的基础,只有机器语言和汇编语言的时候堆 ...