跳转至

贝叶斯网络(Bayesian Network)

独立(Indenpendence)

  • 两者(随机变量)之间互不影响 \(\(\forall x,y:P(x,y)=P(x)P(y)\Longrightarrow X \perp Y\)\) \(\(\forall x,y:P(x|y)=P(x)\Longrightarrow x \perp y\)\) \(\(\forall x,y:P(y|x)=P(y)\Longrightarrow x \perp y\)\)
  • 可以将投掷硬币的情况写成如下,极大减少了数据量

条件独立(Conditional Independence)

  • 对于未知的环境,条件独立是我们最基础的和最直接的了解形式
  • \(X\)\(Y|Z\)条件独立:\(X \perp \!\!\! \perp Y|Z\)
    • 当且仅当Z发生时,知道X发生是否无助于知道Y发生与否 \(\(\forall x,y,z:P(x,y|z)=P(x|z)P(y|z) \Longrightarrow X\perp \!\!\! \perp Y|Z\)\) \(\(\forall x,y,z:P(x|z,y)=P(x|z)\)\)
  • 链式法则:\(P(X_1,X_2,...,X_n)=P(X_1)P(X_2|X_1)P(X_3|X_1,X_2)...\)
  • \(P(Traffic, Rain, Umbrella)\)
    • 链式法则:\(P(Traffic, Rain, Umbrella) = P(Rain)P(Traffic|Rain)P(Umbrella|Rain, Traffic)\)
    • 由于\(Traffic\perp \!\!\! \perp Umbrella|Rain\)\(P(Traffic, Rain, Umbrella) = P(rain)P(Traffic|Rain)P(Umbrella|Rain)\)

贝叶斯网络:表示(Bayesian Network:Representation)

联合分布的缺点

  • 在随机变量较多的时候,数据量大
  • 难以一次从经验上学习关于多个变量的任何东西

贝叶斯网络

  • 贝叶斯网络:使用简单的方式(有向无环图(DAG))表达复杂的联合分布概率模型 image.png
    • 结点:随机变量
      • 每个节点具有一个条件概率分布
      • Each node is conditionally independent of all its ancestor nodes in the graph, given all of its parents
      • \(A_1,A_2,...,A_N\)为X的双亲以存储\(P(X|A_1,A_2,...,A_N)\)
    • 弧:因果关系或非条件独立
  • 贝叶斯网络与条件独立:(\(P(x_1,x_2,...,x_n)=\prod^{n}_{i=1}P(x_i|parents(X_i))\)\)
    • 案例:\(P(+cavity,+catch,-toothache)=P(+cavity)·P(+catch|+cavity)·P(-toochache|+cavity)\)
  • 大小
    • 联合分布概率模型:\(2^n\)
    • n个节点且每个节点最多k个双亲的贝叶斯网络:\(n*2^{k+1}\)

贝叶斯网络:条件独立(Conditional Indenpendence)

  • D-separation
    • 研究三元组的独立性
    • 通过多个三元组研究复杂的情况
  • 分类:
    • Causal Chains
      • \(X\perp\!\!\!\perp Y|Z\)
    • Common Cause
      • \(X\perp\!\!\!\perp Y|Z\)
    • Common Effect
      • \(X\perp\!\!\!\!\!\!\!\!\not\perp Y|Z,X\perp Y\)
  • Active/Inactive Paths ^84522f
  • 可达性
    • 方法:将证据节点涂上阴影,再查看两个节点之间的路径
    • 判断:如果两个节点之间的所有三元组均为Inactive Paths,则两个节点代表的随机变量条件独立
    • 示例:
  • 不同的贝叶斯网络可能指向相同的独立性:
  • 一个贝叶斯网络可能不存在任何独立性

贝叶斯网络:推导(Probabilistic Inference)

  • Inference:从一个联合分布概率模型中计算其他想要的概率

枚举推理(Inference by Enumeration)

- 步骤: - Select the entries consistent with the evidence - Sum out H to get joint of Query and evidence(Marginalize) - Normalize - 案例:

变量剔除(Variable Elimination)

  • 在枚举推理中,在去除其他隐变量之前,加入了完整的联合分布概率,导致枚举推理运行效率低
  • 变量剔除:交叉加入并且即时进行边缘化操作

因子(Factors)

  • Joint Distribution:\(P(X,Y)\)
    • 和为1
    • 包含了x,y的所有条目
  • Selected Joint\(P(x,Y)\)
    • 联合概率分布的一部分
    • 包含固定的x,所有的y的条目
    • 和为\(P(x)\)

      大写字母的数量=表的维度数

  • Single Conditional\(P(Y|x)\)
    • \(x\)条件下的所有\(P(y|x)\)
    • 和为1
  • Family of conditionals\(P(Y|X)\)
    • 所有的\(P(y|x)\)条目
    • 和为\(|X|\)
  • Specified Family\(P(y|X)\)
    • 固定\(y\)的所有\(P(y|x)\)条目

两种方案对比

Inference by Enumeration

  • Join all factors

\(\(\forall r,t:P(r,t)=P(r)·P(t|r)\)\) - Eliminate

Variable Elimination

- 一般情况下,变量剔除的顺序会极大影响计算的复杂度 - 案例: 1. 法一:

贝叶斯网络:取样(Sampling)

  • 取样(Sampling):取样是一个重复模拟的过程
  • 基本思路:
    • 从取样的分布S中抽取N个样本
    • 计算近似的概率
    • 收敛至正确的概率
  • 意义:
    • 学习:从不知道的分布中获得样本
    • 推断:获得样本比直接计算正确的概率要快

Prior Sampling

- 产生各个样本的概率为:\(\(S_{PS}(x_1...x_n)=\prod^n_{i=1}P(x_i|Parents(X_i))=P(x_1...x_n)\)\) - 当样本数量足够多后,获得的概率就会收敛于真实值 - 案例:

Rejection Sampling

  • 如果有一个预先确定好的evidence,在选择采样结果时,可以忽略不符合evidence的样本 image.png
  • 问题:
    • 当evidence几乎不可能时,会拒绝大量的样本,产生大量无用的样本
    • 在取样时,evidence并没有被利用

Likelihood Weighting

  • 思路:处理evidence,让所有的样本都符合evidence
    • weight bt probability of evidence given parents image.png
  • 针对z取样,e为evidence\(\(\begin{aligned} S_{WS}(z,e)=\prod^l_{i=1}P(z_i|Parents(Z_i)) \\ w(z,e)=\prod^m_{i=1}P(e_i|Parents(E_i)) \\ P(z,e)=S_{WS}(z,e)·w(z,e) \end{aligned}\)\)
  • 优缺点:
    • 优点:
      • 考虑了evidence
      • 更好的反映了在evidence影响下的世界
    • 缺点:
      • evidence可能会影响下游的随机变量的选择,导致出现错误的结果

Gibbs Sampling

  • 步骤:
    1. 确定evidence
    2. 初始化其他随机变量(随机初始化)
    3. 重复:
      1. 随机选择一个非evidence变量\(X\)
      2. \(P(X|all\ other\ variables)\)中取样