贝叶斯网络基本概念 CS188 Note12 学习笔记 更好的阅读体验问题引入在Note11中我们提及到了联合分布,我们先要想的就是一个问题如果我们有n个变量每个变量有d种取值那联合概率表一共需要d n d^ndn行这是一个非常庞大的数据量这时候就引入了贝叶斯网络。贝叶斯网络通过利用条件概率的概念来避免这一个问题它并非将信息存储在一个巨大的表格中而是将概率分布分布在多个较小的条件概率表中并且搭配一个有向无环图使用( Directed acyclic graph )简称为DAGBayes NetABayes Netis defined as:Adirected acyclic graph (DAG)where each node represents a random variable.Each node has aconditional probability table (CPT)that stores:The probability of the variable given its parents:P ( X ∣ P a r e n t s ( X ) ) P(X∣Parents(X))P(X∣Parents(X))The CPT includes columns for each parent, the variable itself, and the probability.DAG体现了条件独立性假设这张图能让我们对联合分布进行分解。需要注意的是箭头并不代表两个随机变量之间存在着因果关系它们只是表示着概率上有关联联合概率计算公式给定一个贝叶斯网络所有变量的取值组合的联合概率为P ( X 1 , X 2 , … , X n ) ∏ i 1 n P ( X i ∣ Parents ⁡ ( X i ) ) \begin{align*} P(X_1,X_2,\dots,X_n) \prod_{i1}^{n} P\bigl(X_i \mid \operatorname{Parents}(X_i)\bigr) \end{align*}P(X1​,X2​,…,Xn​)​i1∏n​P(Xi​∣Parents(Xi​))​Bayes Net实例Variables (all binary):B: Burglary occursE: Earthquake occursA: Alarm goes offJ John callsM: Mary callsDAG根据联合概率计算公式我们可以得知P ( − b , − e , a , j , − m ) P ( − b ) ⋅ P ( − e ) ⋅ P ( a ∣ − b , − e ) ⋅ P ( j ∣ a ) ⋅ P ( − m ∣ a ) \large \begin{align*} P(-b,-e,a,j,-m) P(-b)\cdot P(-e)\cdot P(a\mid -b,-e)\cdot P(j\mid a)\cdot P(-m\mid a) \end{align*}P(−b,−e,a,j,−m)​P(−b)⋅P(−e)⋅P(a∣−b,−e)⋅P(j∣a)⋅P(−m∣a)​总的来说一个好的模型可能无法涵盖所有的变量甚至无法涵盖变量之间的所有相互作用。但是通过在图的结构中做出假设性设定我们能够开发出极其高效的推理技术这些技术往往比诸如枚举推理之类的简单方法更具实际应用价值。