谷歌提出深度概率编程语言 Edward

简介:

Edward 官网对这门新语言的描述是:Edward 是一个用于概率建模、推理和评估的 Python 库。它是一个用于快速实验和研究概率模型的测试平台,其涵盖的模型范围从在小数据集上的经典层次模型到在大数据集上的复杂深度概率模型。Edward 融合了以下三个领域:贝叶斯统计学和机器学习、深度学习、概率编程。

它支持以下方式的建模:

定向图模型

神经网络(通过 Keras 和 TensorFlow Slim 等库)

条件特定的无向模型

贝叶斯非参数和概率程序

它支持以下方式的推理:

变分推理(Variational inference)

黑箱变分推理

随机变分推理

包容 KL 散度(Inclusive KL divergence):text{KL}(p|q)KL(p∥q)

最大后验估计

蒙特卡洛(Monte Carlo)

哈密尔顿蒙特卡罗(Hamiltonian Monte Carlo)

随机梯度 Langevin 动态

Metropolis-Hastings

推理的组成

期望最大化(Expectation-Maximization)

伪边界和 ABC 方法(Pseudo-marginal and ABC methods)

消息传递算法(Message passing algorithms)

它支持以下的模型评估和推理:

基于点的评估(Point-based evaluations)

后验预测检查(Posterior predictive checks)

Edward 构建于 TensorFlow 之上。它支持诸如计算图、分布式训练、CPU/GPU 集成、自动微分等功能,也可以用 TensorBoard 可视化。

以下是介绍论文的摘要介绍:

论文标题:深度概率编程(DEEP PROBABILISTIC PROGRAMMING)

image

摘要

我们提出了一种图灵完备的概率编程语言 Edward。Edward 构建于两种组合式表示的基础上——随机变量和推理(random variables and inference)。通过将推理看作「第一类公民」,与建模(modeling)一样,我们表明概率编程可以做到和传统深度学习一样灵活和有计算效率。

对于灵活性,Edward 让我们可以使用从点估计(point estimation)到变分推理和 MCMC 等各种可组合的推理方法来拟合相同的模型。此外,Edward 还可以将建模表征复用作推理的一部分,这能促进丰富的变分模型和生成对抗网络的设计。

对于效率,Edward 集成到了 TensorFlow 之中,在已有的概率系统基础上提供了显著的加速。比如,在基准 logistic 回归任务上,Edward 至少比 Stan 和 PyMC3 快 35 倍。

引言

深度神经网络的本质是组合式的(compositional)。用户可以以创造性的方式来将层连接起来,而无需担忧如何去执行测试(前向传播)或推理(基于梯度的优化,通过反向传播和自动微分)。在这篇论文中,我们为概率变成设计组合式表示(compositional representations)。概率编程让用户可以将生成概率模型指定为程序(program),然后将这些模型「编译(compile)」为推理过程(inference procedures)。概率模型本质上也是组合式的,而之前的大部分工作都集中在通过组合随机变量来构建丰富的概率程序上(Goodman et al., 2012; Ghahramani, 2015; Lake et al., 2016)。

但很少有研究考虑过用于推理的类似的组合性。相反,现在大多数已有的概率编程语言都将推理引擎当作从模型中抽象出来的黑箱来处理。这些方法不能代表在复用模型表征的概率推理中的最新进展。比如,在变分推理(Kingma & Welling, 2014; Rezende & Mohamed, 2015; Tran et al., 2016b)和生成对抗网络(Goodfellow et al., 2014)上的进展已经变得非常重要了。

我们提出了一种图灵完备的概率编程语言 Edward。Edward 构建于两种组合表示的基础上——随机变量和推理(random variables and inference)。我们给出了如何将 Edward 集成到已有的计算图框架(如 TensorFlow)中的方法。TensorFlow 这样的框架能够「免费」提供分布式训练、并行性、向量化和 GPU 支持等计算优势。我们还表明 Edward 可以如何让我们轻松使用从点估计(point estimation)到变分推理和 MCMC 等各种可组合的推理方法来拟合相同的模型。通过将推理看作「第一类公民」,与建模(modeling)一样,我们表明概率编程可以做到和传统深度学习一样灵活和有计算效率。比如,我们的哈密尔顿蒙特卡罗(Hamiltonian Monte Carlo)实现比现有的软件快 35 倍。
image

图 1:Beta-Bernoulli 程序(左)与其计算图(右)。从图中取 x 会生成一个有 50 个元素的二值向量

image

图 2:用于一个 28×28 像素图像的数据集的变自编码器:(左)图模型,其中虚线表示推理模型;(右)概率程序,带有 2 层神经网络

image

图 3:贝叶斯 RNN:(左)图模型;(右)概率程序。该程序的时间步骤未指定;其为循环使用了一个符号(tf.scan)

image

图 4:(左)变分推理;(右)蒙特卡洛

image

图 5: 生成式对抗网络:(左侧)概率图模型(右侧)概率程序。加入一些假数据以及训练其判别式模型,能不断强化该生成模型

image

图 6:LDA 文档主题生成模型,隐含狄利克雷分布 (Blei et al., 2003)

image

图 7: 高斯矩阵分解

文章转载自 开源中国社区 [http://www.oschina.net]

目录
相关文章
|
8月前
|
机器学习/深度学习 算法 数据可视化
机器学习模型中特征贡献度分析:预测贡献与错误贡献
本文将探讨特征重要性与特征有效性之间的关系,并引入两个关键概念:预测贡献度和错误贡献度。
752 3
|
4月前
|
机器学习/深度学习 人工智能 算法
NeurIPS 2024:自我纠错如何使OpenAI o1推理能力大大加强?北大、MIT团队给出理论解释
在人工智能领域,大型语言模型(LLMs)的自我纠错能力正成为研究热点。北京大学和麻省理工学院的研究团队在NeurIPS 2024上发表的研究,通过基于上下文学习的理论分析,揭示了Transformer模型中关键设计在自我纠错中的作用,并提出了“Checking as Context”策略,应用于缓解社会偏见和防御LLM越狱攻击,显著提升了模型性能。然而,研究主要基于简化设置和合成数据集,存在局限性。
119 26
|
4月前
|
机器学习/深度学习 人工智能 算法
Transformer打破三十年数学猜想!Meta研究者用AI给出反例,算法杀手攻克数学难题
《PatternBoost: Constructions in Mathematics with a Little Help from AI》提出了一种结合传统搜索算法和Transformer神经网络的PatternBoost算法,通过局部搜索和全局优化交替进行,成功应用于组合数学问题。该算法在图论中的Ramsey数研究中找到了更小的反例,推翻了一个30年的猜想,展示了AI在数学研究中的巨大潜力,但也面临可解释性和通用性的挑战。论文地址:https://arxiv.org/abs/2411.00566
128 13
|
9月前
|
机器学习/深度学习 存储 自然语言处理
天啊!深度神经网络中 BNN 和 DNN 基于存内计算的传奇之旅,改写能量效率的历史!
【8月更文挑战第12天】深度神经网络(DNN)近年在图像识别等多领域取得重大突破。二进制神经网络(BNN)作为DNN的轻量化版本,通过使用二进制权重和激活值极大地降低了计算复杂度与存储需求。存内计算技术进一步提升了BNN和DNN的能效比,通过在存储单元直接进行计算减少数据传输带来的能耗。尽管面临精度和硬件实现等挑战,BNN结合存内计算代表了深度学习未来高效节能的发展方向。
127 1
|
11月前
|
机器学习/深度学习 人工智能 算法
谷歌DeepMind:GPT-4高阶心智理论彻底击败人类!第6阶推理讽刺暗示全懂了
【6月更文挑战第10天】谷歌DeepMind团队的最新论文显示,GPT-4在高阶心智理论任务中超越了人类水平,这是AI在理解和推理人类心理状态上的重大突破。研究人员通过MoToMQA测试套件评估了大型语言模型,发现GPT-4在第6阶推理上超过成人表现。这一进展意味着AI能更好地理解用户意图,提升交互体验,但也引发了关于操纵与控制人类以及模型是否真正理解心理状态的担忧。论文链接:https://arxiv.org/pdf/2405.18870
148 3
|
12月前
|
数据采集 人工智能 自然语言处理
谷歌DeepMind发布Gecko:专攻检索,与大7倍模型相抗衡
【4月更文挑战第12天】谷歌DeepMind的Gecko模型以小巧身形(256维)展现出媲美大型语言模型的检索性能,且在MTEB基准测试中超越768维模型。采用两步蒸馏法训练,适用于多任务及硬件环境,尤其在多语言处理上表现出色。尽管训练成本高、泛化能力待优化,但其创新为文本嵌入技术带来新可能。
189 7
谷歌DeepMind发布Gecko:专攻检索,与大7倍模型相抗衡
|
12月前
|
算法 数据挖掘 关系型数据库
有限混合模型聚类FMM、广义线性回归模型GLM混合应用分析威士忌市场和研究专利申请数据
有限混合模型聚类FMM、广义线性回归模型GLM混合应用分析威士忌市场和研究专利申请数据
|
算法 测试技术
向外搜索(OS)算法是一种新算法,旨在为改进进化算法的收敛性提供多种形式(Matlab代码实现)
向外搜索(OS)算法是一种新算法,旨在为改进进化算法的收敛性提供多种形式(Matlab代码实现)
126 0
|
机器学习/深度学习 算法 知识图谱
浙大团队将化学知识引入机器学习,提出可外推、可解释的分子图模型预测反应性能
浙大团队将化学知识引入机器学习,提出可外推、可解释的分子图模型预测反应性能
287 0
谷歌、DeepMind新研究:归纳偏置如何影响模型缩放?
谷歌、DeepMind新研究:归纳偏置如何影响模型缩放?
152 0