L11 Bayes Nets
-
Conditional Independence
- X在给定Z的条件下与Y条件独立,当且仅当:\(\forall x,y,z \ \ P(x | y, z) = P(x | z)\) or \(\forall \ \ x,y,z \ \ P(x, y | z) = P(x | z) P(y | z)\)
- 分析 条件独立性的例子 --- smoke\ fire \ alarm
- 我们可以想象 在 给定 smoke的情形下,alarm 与 fire 独立
- 因此直接判断条件独立性,需要根据事件经验(比如上述smoke与alarm的绑定,alarm概率只与smoke有关)和定义来判断
- 我的理解是相关事件之间存在拓扑关系,所谓 条件独立而原不独立类似于两个事件有相关性,但是该相关性是基于中间事件来相关的,比如 \(F->S-> A\) ,F对A的影响是靠S得到的,因此S一旦给定,F、A就独立了
-
利用 条件概率的游戏 --- GhostBuster(鬼怪猎人)
- 类似于扫雷,但是我们是要找到鬼怪在哪里而不是避开它
- 它会有一个带 noise 的sensor,点开一个块 红是ghost、橙ghost在1-2、黄ghost在3-4、绿ghost在5+,基于条件完善每块未点开出ghost的概率会改变,我们选择概率最大的点,逐渐找到ghost
- 对该游戏进行建模 \(C_{x,y}\) 表示 \((x,y)\) 位置的颜色,\(G\) 表示ghost的位置
- \(C_{1,1}\) 与 \(C_{1,2}\) 并不是独立的,但是在给定G的情况下, \(C_{1,1}\) 与 \(C_{1,2}\) 独立,其余以此类推
- 因此:\(P(G,C_{1,1},...,C_{x,y})=P(G)P(C_{1,1}|G)P(C_{1,2}|G,C_{1,1})....=P(G)P(C_{1,1}|G)P(C_{1,2}|G)...\)
-
Bayes Nets 贝叶斯网络
- 贝叶斯网络是==一种使用简单条件分布描述复杂联合分布(模型)的技术==,属于图模型
- 使用局部因果/条件独立性:
- 世界由许多变量组成
- 每个变量只与少数其他变量局部相互作用
- 表示方法 --- 图模型表述
- node 表示 变量 比如 火、烟
- arc 表示 变量直接影响另一个变量
- 任何在同一连通图中的node都是有相关性的,而没有直接相连的可以具备条件独立性(它们之间的node就是给定条件),而不在同一连通图的就是独立事件
- 将下面的 Bayes Nets 积 和 Chain Rules结合得出 \(P(x_i|x_1,...,x_{i-1})=P(x_i|parent(x_i))\) 即它的断言是每个变量在其父母给定的情况下,对其非后裔条件独立
-
Bayes Nets Syntax
- 一组节点,每个节点对应一个变量X
- 有向无环图
- Bayes Nets 的构建其实是很依据人类先验知识的,比如上述的 火、烟、警报 构成 \(F->S->A\) 结构就是由于 \(F\) 会导致 \(S\),而 \(S\) 会导致 \(A\)
- 给定图中每个节点在其父变量条件下的条件分布
- CPT(条件概率表):每一行是其父值给定下的子分布
- 每个CPT中自由参数的数量:
- 父node依次可取值数量为 d1,..., dk
- 子node可取值数量为d
- 由于每行表格和必然为1,因此 自由参数量为 \((d-1)\prod_{i=1}^k d_i\)
- 因此 贝叶斯网 = 拓扑(图)+ 局部条件概率(CPTs)
-
贝叶斯网将联合分布编码为每个变量条件分布的乘积:\(P(x_1,x_2,...)=\prod_i P(x_i|Parent(x_i))\)
-
贝叶斯网络本质上是对联合分布的简化
- 想象 有 N 个 node 且每个node有d个取值的联合分布,其可能世界大小 \(d^N\)
- 而如果经过贝叶斯网络化,形成 k 个父节点(思考CPT,假设某个node有k个父节点,则其一个CPT的自由参数为 \(d^k(d-1)\)),那么可能世界就是 \(O(N*d^k)\)
-
Causality 因果
- 由上面的讨论 Bayes Net 的构建往往基于人类先验,即基于 causality 因果关系,这样构成的 Bayes Net 往往更简单且容易得到CPTs,但是 Bayes Net 中的箭头不一定表示 causality,它的拓扑结构就是表示断言 --- 每个变量在其父母给定的情况下,对其非后裔条件独立