【AI基础:深度学习】33、概率图模型指南:从贝叶斯网络到深度信念网络

内容分享6天前发布
2 0 0

【AI基础:深度学习】33、概率图模型指南:从贝叶斯网络到深度信念网络

引言:概率图模型——连接“图”与“概率”的智能框架

在深度学习主导人工智能领域之前,概率图模型(Probabilistic Graphical Models, PGMs) 曾是处理不确定性、建模复杂依赖关系的“核心工具”。它巧妙融合了图论的直观性(用节点表示变量、边表示依赖)与概率论的严谨性(用概率分布量化不确定性),为高维变量系统的建模、推理与学习提供了统一框架。

如今,尽管深度学习在感知任务中表现卓越,但概率图模型的“可解释性”“推理能力”与“先验知识融合能力”仍不可替代——更重要的是,两者的深度融合(如深度信念网络DBN、变分自编码器VAE)已成为生成模型、结构化学习的重要方向。

本文将以“图与概率的协同”为核心,系统整合概率图模型的基础理论(贝叶斯网络、马尔可夫随机场)、核心算法(推理与学习)、与深度学习的融合(DBN、RBM)及实战代码,辅以Mermaid示意图,带读者从“理论理解”到“工程落地”,全面掌握这一兼具“可解释性”与“泛化能力”的AI框架。

一、概率图模型基础:图与概率的完美协同

概率图模型的本质是“用图结构简化概率计算”——通过显式的图结构表示变量间的条件独立性,将高维联合概率分布分解为低维局部概率的乘积,从而解决“维度灾难”问题。

1.1 核心定义:什么是概率图模型?

概率图模型是一类用图结构表示随机变量间依赖关系的概率模型,其核心构成包含三部分:

图结构:无向图或有向图,节点表示随机变量(离散/连续),边表示变量间的直接依赖关系;
参数:量化变量间的依赖强度,如贝叶斯网络的“条件概率分布(CPD)”、马尔可夫随机场的“势函数”;
推理算法:从模型中推导未知变量的概率(如边际概率、条件概率),是模型落地的关键。

概率图模型的“简化逻辑”示例:

假设我们有4个变量:“下雨(R)”“洒水(S)”“草地湿(W)”“滑倒(F)”。若直接建模联合概率P(R,S,W,F)P(R,S,W,F)P(R,S,W,F),需24=162^4=1624=16个参数(假设均为二值变量);但通过图结构(如“R→W,S→W,W→F”),可分解为P(R)P(S)P(W∣R,S)P(F∣W)P(R)P(S)P(W|R,S)P(F|W)P(R)P(S)P(W∣R,S)P(F∣W),仅需2+2+4+2=102+2+4+2=102+2+4+2=10个参数——参数数量随变量数呈“线性增长”而非“指数增长”,这正是图结构的价值。

1.2 概率图模型的两大分类:贝叶斯网络 vs 马尔可夫随机场

根据图结构的“有向/无向”,概率图模型可分为两大阵营,其核心差异体现在“依赖关系的方向性”与“概率分解方式”:

两大模型的核心对比(Mermaid图+表格)

flowchart TD
    A[概率图模型(PGMs)] --> B[贝叶斯网络(Bayesian Networks)]
    A --> C[马尔可夫随机场(Markov Random Fields, MRF)]
    
    %% 贝叶斯网络特性
    B --> B1[有向无环图(DAG)]
    B --> B2[表示“因果关系”(如“下雨→草地湿”)]
    B --> B3[联合概率=条件概率乘积]
    B --> B4[适合生成式任务(如数据生成、因果推理)]
    
    %% 马尔可夫随机场特性
    C --> C1[无向图(允许环路)]
    C --> C2[表示“相关关系”(如“相邻像素颜色相似”)]
    C --> C3[联合概率=势函数乘积/配分函数]
    C --> C4[适合判别式任务(如图像分割、序列标注)]
    
    style B fill:#87CEEB,stroke:#333,opacity:0.9
    style C fill:#FFB6C1,stroke:#333,opacity:0.9
    note over B,C: 核心差异:有向vs无向,因果vs相关,分解方式不同
对比维度 贝叶斯网络(有向图) 马尔可夫随机场(无向图)
图结构 有向无环图(DAG),边有方向 无向图(可含环路),边无方向
依赖关系 强调“因果关系”(如“洒水→草地湿”是主动行为) 强调“相关关系”(如“相邻像素颜色相似”是相互约束)
联合概率分解 基于父节点的条件概率乘积(无配分函数) 基于最大团的势函数乘积(需配分函数归一化)
条件独立性判断 基于“D-分离(D-Separation)”规则 基于“马尔可夫性”(局部/全局/成对)
典型应用 医疗诊断(因果推理)、金融风控(风险归因) 图像分割(空间约束)、序列标注(CRF)
推理复杂度 精确推理在DAG中较高效,环路会增加复杂度 无向图的环路普遍,精确推理更依赖近似算法

1.3 概率图模型的建模三步框架

无论哪种概率图模型,其建模流程均遵循“表示→推理→学习”的三步框架,这是概率图模型的通用方法论:

建模三步框架(Mermaid图)

flowchart LR
    subgraph 概率图模型建模三步框架
        direction TB
        A[1. 表示(Representation)] --> B[2. 推理(Inference)] --> C[3. 学习(Learning)]
        
        %% 第一步:表示
        A1[定义图结构] --> A
        A2[确定变量类型(离散/连续)] --> A
        A3[定义局部概率(CPD/势函数)] --> A
        style A fill:#90EE90,stroke:#333
        
        %% 第二步:推理
        B1[目标:计算边际/条件概率] --> B
        B2[精确推理(变量消除、信念传播)] --> B
        B3[近似推理(蒙特卡洛、变分推理)] --> B
        style B fill:#87CEEB,stroke:#333
        
        %% 第三步:学习
        C1[参数学习(从数据估计CPD/势函数)] --> C
        C2[结构学习(从数据优化图结构)] --> C
        C3[结合先验知识(专家规则融入)] --> C
        style C fill:#FFB6C1,stroke:#333
    end
    
    note over A: 核心是“用图结构编码变量依赖”,降低后续计算复杂度
    note over B: 推理是“利用模型回答概率查询”,是模型落地的核心
    note over C: 学习是“从数据优化模型”,让模型适配真实数据分布

二、贝叶斯网络:因果关系的形式化表达

贝叶斯网络(Bayesian Networks,也称信念网络)是概率图模型中最经典的有向图模型,其核心价值在于将“因果关系”转化为可计算的概率模型,广泛应用于需要“归因分析”的场景(如医疗诊断、故障排查)。

2.1 贝叶斯网络的定义与结构

贝叶斯网络是一个有向无环图(Directed Acyclic Graph, DAG),满足以下两个条件:

节点与变量一一对应:每个节点代表一个随机变量(如“下雨R”“洒水S”“草地湿W”),变量可离散(如R∈{是,否})或连续(如“温度”);
边与依赖关系一一对应:有向边X→YX→YX→Y表示“X是Y的直接原因”(如“下雨→草地湿”),X称为Y的“父节点(Parent)”,Y称为X的“子节点(Child)”;
局部概率模型:每个节点都关联一个“条件概率分布(Conditional Probability Distribution, CPD)”,表示该节点在“父节点所有可能取值组合”下的概率(如P(W∣R,S)P(W|R,S)P(W∣R,S)表示“下雨”和“洒水”组合下“草地湿”的概率)。

经典示例:“草地湿”贝叶斯网络(Mermaid图)

flowchart TD
    subgraph 贝叶斯网络示例:草地湿原因分析
        direction LR
        R[下雨 R<br/>(二值:是/否)] --> W[草地湿 W<br/>(二值:是/否)]
        S[洒水 S<br/>(二值:是/否)] --> W
        W --> F[滑倒 F<br/>(二值:是/否)]
        
        %% 条件概率分布(CPD)标注
        note over R: P(R=是)=0.3<br/>P(R=否)=0.7
        note over S: P(S=是)=0.2<br/>P(S=否)=0.8
        note over W: P(W=是|R=是,S=是)=1.0<br/>P(W=是|R=是,S=否)=0.9<br/>P(W=是|R=否,S=是)=0.8<br/>P(W=是|R=否,S=否)=0.0
        note over F: P(F=是|W=是)=0.4<br/>P(F=是|W=否)=0.01
    end
    
    style R,S fill:#87CEEB,stroke:#333
    style W fill:#FFB6C1,stroke:#333
    style F fill:#90EE90,stroke:#333
    note over R,W: 边R→W表示“下雨是草地湿的直接原因”
    note over S,W: 边S→W表示“洒水是草地湿的直接原因”

2.2 贝叶斯网络的核心优势:联合概率分解

贝叶斯网络的最大价值在于将高维联合概率分布分解为低维局部条件概率的乘积,从而大幅降低概率计算的复杂度。其分解依据是“节点与其非后代节点在给定父节点时条件独立”(局部马尔可夫性)。

联合概率分解公式

对于包含nnn个变量X1,X2,…,XnX_1,X_2,…,X_nX1​,X2​,…,Xn​的贝叶斯网络,其联合概率分布可分解为:
P(X1,X2,…,Xn)=∏i=1nP(Xi∣Parents(Xi))P(X_1,X_2,…,X_n) = prod_{i=1}^n P(X_i mid ext{Parents}(X_i))P(X1​,X2​,…,Xn​)=i=1∏n​P(Xi​∣Parents(Xi​))
其中Parents(Xi) ext{Parents}(X_i)Parents(Xi​)是节点XiX_iXi​的所有父节点集合,若XiX_iXi​无父节点(根节点),则Parents(Xi) ext{Parents}(X_i)Parents(Xi​)为空,此时P(Xi∣Parents(Xi))=P(Xi)P(X_i mid ext{Parents}(X_i)) = P(X_i)P(Xi​∣Parents(Xi​))=P(Xi​)(边际概率)。

示例:“草地湿”网络的联合概率分解

以“R(下雨)、S(洒水)、W(草地湿)、F(滑倒)”为例,联合概率P(R,S,W,F)P(R,S,W,F)P(R,S,W,F)可分解为:
P(R,S,W,F)=P(R)×P(S)×P(W∣R,S)×P(F∣W)P(R,S,W,F) = P(R) imes P(S) imes P(W mid R,S) imes P(F mid W)P(R,S,W,F)=P(R)×P(S)×P(W∣R,S)×P(F∣W)

原始联合概率需24=162^4=1624=16个参数(二值变量);
分解后仅需222(R)+2+2+2(S)+4+4+4(W|RS)+2+2+2(F|W)=10=10=10个参数,参数数量减少37.5%,且变量数越多,分解优势越明显。

2.3 贝叶斯网络的条件独立性:D-分离规则

条件独立性是贝叶斯网络“简化计算”的核心逻辑——通过图结构判断变量间的独立关系,避免冗余计算。贝叶斯网络的条件独立性判断依赖D-分离(D-Separation)规则,其本质是“通过观察某些节点,阻断变量间的信息传递”。

三种基础结构的条件独立性(Mermaid图+规则)

贝叶斯网络的所有复杂结构均可分解为三种基础结构,其D-分离规则如下:

1. 顺连结构(X→Z→Y):“因果链”的独立性

flowchart LR
    X[X] --> Z[Z] --> Y[Y]
    style Z fill:#FF6347,stroke:#333,color:#fff
    note over X,Z,Y: 顺连结构:X是Z的原因,Z是Y的原因

规则:若观察到Z,则X与Y条件独立(X⊥Y∣ZX perp Y mid ZX⊥Y∣Z);若未观察到Z,则X与Y不独立。
例子:“下雨(X)→草地湿(Z)→滑倒(Y)”,若已知“草地湿(Z=是)”,则“下雨(X)”与“滑倒(Y)”独立——无论是否下雨,只要草地湿,滑倒概率都是0.4。

2. 分连结构(X←Z→Y):“共同原因”的独立性

flowchart LR
    X[X] <- Z[Z] -> Y[Y]
    style Z fill:#FF6347,stroke:#333,color:#fff
    note over X,Z,Y: 分连结构:Z是X和Y的共同原因

规则:若观察到Z,则X与Y条件独立(X⊥Y∣ZX perp Y mid ZX⊥Y∣Z);若未观察到Z,则X与Y不独立。
例子:“打喷嚏(X)←感冒(Z)→发烧(Y)”,若已知“感冒(Z=是)”,则“打喷嚏(X)”与“发烧(Y)”独立——无论是否打喷嚏,发烧概率仅由感冒决定;若未知Z,则打喷嚏会增加感冒的概率,进而增加发烧的概率,X与Y相关。

3. 汇连结构(X→Z←Y):“共同结果”的独立性(关键反直觉结构)

flowchart LR
    X[X] -> Z[Z] <- Y[Y]
    style Z fill:#FF6347,stroke:#333,color:#fff
    note over X,Z,Y: 汇连结构:Z是X和Y的共同结果

规则:若未观察到Z及其后代,则X与Y条件独立(X⊥Y∣∅X perp Y mid emptysetX⊥Y∣∅);若观察到Z或其后代,则X与Y不独立(信息传递被激活)。
例子:“下雨(X)→草地湿(Z)←洒水(Y)”,若未知Z(草地是否湿),则“下雨(X)”与“洒水(Y)”独立;若已知Z=是(草地湿),则X与Y负相关——若已知草地湿,且发现“没下雨(X=否)”,则“洒水(Y=是)”的概率会升高(从0.2→0.8/(0.3×0.9 + 0.7×0.8)=0.8/0.83≈0.96),这一现象称为“解释消除(Explaining Away)”。

2.4 贝叶斯网络的推理:从模型中回答概率查询

推理是贝叶斯网络的“核心功能”,指“给定部分变量的观测值(证据),计算其他变量的边际概率或条件概率”。根据计算精度,推理可分为精确推理近似推理

2.4.1 精确推理:变量消除法(Variable Elimination)

变量消除法是最直观的精确推理算法,其核心思想是“通过逐步消除非查询变量,将联合概率简化为查询变量的概率”,步骤如下:

步骤示例:查询“草地湿(W=是)”的边际概率P(W=是)P(W=是)P(W=是)

确定联合概率分解式:P(R,S,W)=P(R)P(S)P(W∣R,S)P(R,S,W) = P(R)P(S)P(W|R,S)P(R,S,W)=P(R)P(S)P(W∣R,S)(暂忽略F,简化计算);
目标:计算P(W=是)=∑R,SP(R)P(S)P(W=是∣R,S)P(W=是) = sum_{R,S} P(R)P(S)P(W=是|R,S)P(W=是)=∑R,S​P(R)P(S)P(W=是∣R,S)
消除非查询变量R:对每个S,计算∑RP(R)P(W=是∣R,S)sum_R P(R)P(W=是|R,S)∑R​P(R)P(W=是∣R,S):

当S=是时:∑RP(R)P(W=是∣R,S=是)=P(R=是)×1.0+P(R=否)×0.8=0.3×1.0+0.7×0.8=0.86sum_R P(R)P(W=是|R,S=是) = P(R=是)×1.0 + P(R=否)×0.8 = 0.3×1.0 + 0.7×0.8 = 0.86∑R​P(R)P(W=是∣R,S=是)=P(R=是)×1.0+P(R=否)×0.8=0.3×1.0+0.7×0.8<

© 版权声明

相关文章

暂无评论

none
暂无评论...