深度学习中的结构化概率模型 - 从图模型中采样篇

序言

在深度学习的广阔领域里,结构化概率模型占据了举足轻重的地位,它们为处理复杂数据结构和高维数据空间提供了强大的工具。这些模型不仅能够捕捉数据之间的依赖关系,还能生成符合数据分布的新样本,为机器学习应用注入了无限的创意与可能。其中,从图模型中采样是理解和利用结构化概率模型的核心技术之一。图模型,如贝叶斯网络、马尔可夫随机场等,通过节点表示变量,边表示变量间的依赖关系,构建了一个直观且强大的框架来描述复杂数据的统计特性。从图模型中采样,意味着我们能够基于这个框架生成符合其定义的概率分布的随机样本,这些样本在训练数据不足或需要进行创造性扩展时尤为宝贵。

从图模型中采样

  • 图模型同样简化了从模型中采样的过程。
  • 有向图模型的一个优点是,可以通过一个简单高效的被称作是原始采样 ( Ancestral Sampling \text{Ancestral Sampling} Ancestral Sampling) 的过程从由模型表示的联合分布中抽取样本。
  • 其基本思想是将图中的变量 x i \text{x}_i xi 使用拓扑排序,使得对于所有 i i i 和 j j j,如果 x i \text{x}_i xi是 x j \text{x}_j xj 的一个父亲结点,则 j j j 大于 i i i。
    • 然后可以按此顺序对变量进行采样。
    • 换句话说,我们可以首先采 x 1 ∼ P ( x 1 ) \text{x}_1 \sim P(\text{x}_1) x1∼P(x1),然后采 x 2 ∼ P ( x 2 ∣ P a G ( x 2 ) ) \text{x}_2 \sim P(\text{x}2 \mid P{a\mathcal{G}}(\text{x}_2)) x2∼P(x2∣PaG(x2)),以此类推,直到最后我们从 P ( x n ∣ P a G ( x n ) ) P(\text{x}n \mid P{a\mathcal{G}}(\text{x}_n)) P(xn∣PaG(xn)) 中采样。
    • 只要从每个条件分布 x i ∼ P ( x i ∣ P a G ( x i ) ) x_i \sim P(\text{x}i \mid P{a\mathcal{G}}(\text{x}_i)) xi∼P(xi∣PaG(xi)) 中采样都是很容易的,那么很容易从整个模型中抽样。
    • 拓扑排序操作保证我们可以按照深度学习中的结构化概率模型 - 使用图来描述模型结构篇 - 公式1中条件分布的顺序依次采样。
    • 如果没有拓扑排序,我们可能会尝试在其父节点可用之前对该变量进行抽样。
  • 对于一些图,可能有多个拓扑排序。原始采样可以使用这些拓扑排序中的任何一个。
  • ++原始采样++ 通常非常快(假设从每个条件分布中采样都是很容易的)并且方便。
    • 原始采样的一个缺点是其仅适用于有向图模型。
    • 另一个缺点是它并不是每次采样都是条件采样操作。
    • 当我们希望从有向图模型中变量的子集中抽样时,给定一些其他变量,我们经常要求所有给定的条件变量在图中比要抽样的变量的顺序要早。
    • 在这种情况下,我们可以从模型分布指定的局部条件概率分布进行抽样。
    • 否则,我们需要采样的条件分布是给定观测变量的后验分布。
    • 这些后验分布在模型中通常没有明确指定和参数化。
    • 推断这些后验分布的代价可能是昂贵的。在这种情况下的模型中,原始采样不再有效。
  • 不幸的是,原始采样仅适用于有向模型。
    • 我们可以通过将无向模型转换为有向模型来实现从无向模型中抽样,但是这通常需要解决棘手的推断问题(以确定新有向图的根节点上的边缘分布),或者需要引入许多边从而会使得到的有向模型变得难以处理。
    • 从无向模型抽样,而不首先将其转换为有向模型的做法似乎需要解决循环依赖的问题。
    • 每个变量与每个其他变量相互作用,因此对于抽样过程没有明确的起点。
    • 不幸的是,从无向模型中抽取样本是一个昂贵的多次迭代的过程。
    • 理论上最简单的方法是Gibbs采样 ( Gibbs Sampling \text{Gibbs Sampling} Gibbs Sampling)。
    • 假设我们在一个 n n n 维向量的随机变量 x \textbf{x} x 上有一个图模型。
    • 我们迭代地访问每个变量 x i x_i xi,在给定其他变量的条件下从 p ( x i ∣ x − i ) p(\text{x}i \mid \text{x}{−i}) p(xi∣x−i)中抽样。
    • 由于图模型的分离性质,抽取 x i x_i xi 的时候我们可以等价地仅对 x i \text{x}_i xi 的邻居条件化。
    • 不幸的是,在我们遍历图模型一次并采样所有 n n n 个变量之后,我们仍然无法得到一个来自 p ( x ) p(\textbf{x}) p(x) 的客观样本。
    • 相反,我们必须重复该过程并使用它们邻居的更新值对所有 n n n 个变量重新取样。
    • 在多次重复之后,该过程渐近地收敛到正确的目标分布。
    • 很难确定样本何时达到所期望分布的足够精确的近似。

总结

在图模型中进行采样,是深度学习及结构化概率模型研究中的一个关键步骤,它不仅深化了我们对数据内在结构和生成机制的理解,还为数据增强、模拟仿真、艺术创作等领域开辟了新途径。通过精心设计的采样算法,如 Gibbs \text{Gibbs} Gibbs(吉布斯采样)、 MCMC \text{MCMC} MCMC(马尔可夫链蒙特卡洛)等,我们能够高效地探索图模型定义的复杂概率空间,生成既多样又逼真的样本。随着计算能力的提升和算法的不断优化,从图模型中采样将变得更加高效和精确,进一步推动深度学习及相关领域的发展,为我们解决复杂现实问题提供更加有力的支持。

往期内容回顾

深度学习中的结构化概率模型 - 使用图来描述模型结构篇

相关推荐
Re.不晚3 分钟前
Java入门15——抽象类
java·开发语言·学习·算法·intellij-idea
CSDN云计算9 分钟前
如何以开源加速AI企业落地,红帽带来新解法
人工智能·开源·openshift·红帽·instructlab
艾派森20 分钟前
大数据分析案例-基于随机森林算法的智能手机价格预测模型
人工智能·python·随机森林·机器学习·数据挖掘
hairenjing112322 分钟前
在 Android 手机上从SD 卡恢复数据的 6 个有效应用程序
android·人工智能·windows·macos·智能手机
小蜗子26 分钟前
Multi‐modal knowledge graph inference via media convergenceand logic rule
人工智能·知识图谱
SpikeKing39 分钟前
LLM - 使用 LLaMA-Factory 微调大模型 环境配置与训练推理 教程 (1)
人工智能·llm·大语言模型·llama·环境配置·llamafactory·训练框架
为什么这亚子1 小时前
九、Go语言快速入门之map
运维·开发语言·后端·算法·云原生·golang·云计算
黄焖鸡能干四碗1 小时前
信息化运维方案,实施方案,开发方案,信息中心安全运维资料(软件资料word)
大数据·人工智能·软件需求·设计规范·规格说明书
1 小时前
开源竞争-数据驱动成长-11/05-大专生的思考
人工智能·笔记·学习·算法·机器学习
ctrey_1 小时前
2024-11-4 学习人工智能的Day21 openCV(3)
人工智能·opencv·学习