文 / Emily Fertig、Joshua V. Dillon、Wynn Vonnegut、Dave Moore 和 TensorFlow Probability 团队
本文将介绍 TensorFlow Probability 中新的联合分布变分推断工具,展示如何在回归模型中使用这些工具估计权重的贝叶斯可信区间。
-
TensorFlow Probability
https://tensorflow.google.cn/probability/
概述
变分推断 (Variational Inference, VI) 将近似贝叶斯推断转换为优化问题,并寻求一个“代理 (Surrogate)”后验分布,使 KL 与真后验散度最小化。基于梯度的 VI 通常比 MCMC 方法更快,与模型参数的优化自然组合,并提供模型证据的下限,可直接用于模型比较、收敛诊断和可组合推断。
TensorFlow Probability (TFP) 提供了快速、灵活和可扩展的 VI 工具,自然融入 TFP 堆栈。这些工具可以通过线性变换或归一化流引起的协方差结构构建代理后验。
VI 可用于估计回归模型参数的贝叶斯可信区间 (Credible Intervals),以估计各种处理或观察到的特征对目标结果的影响。可信区间根据参数以观察数据为条件的后验分布,给定参数的先验分布的假设,以一定的概率约束未观察到的参数的值。
本文演示了如何使用 VI 获得贝叶斯线性回归模型参数的可信区间,该模型用于测量家庭中的氡水平(使用 Gelman et al.'s (2007) Radon dataset;参见 Stan 中的类似示例)。我们演示了 TFP JointDistributions 如何与双射器结合以建立和拟合两种类型的表达性代理后验:
-
由块矩阵变换的标准正态分布。矩阵可以反映后验的某些分量之间的独立性和其他分量之间的依赖性,放宽均值场或全方差后验的假设。
-
一个更复杂、容量更大的逆自回归流 (Inverse Autoregressive Flow) 。
-
Gelman et al.'s (2007) Radon dataset
http://www.stat.columbia.edu/~gelman/arm/ -
类似示例
https://mc-stan.org/users/documentation/case-studies/radon.html#Correlations-among-levels
训练代理后验,并与均值场代理后验基线结果进行比较。下图显示了三个 VI 代理后验得到的四个模型参数的可信区间,以及用于比较的汉密尔顿蒙特卡洛 (Hamiltonian Monte Carlo) 算法。
您可以在此 Google Colab 中跟进和了解所有详细信息。
示例:氡测量的贝叶斯分层线性回归
氡是一种放射性气体,通过地面的接触点进入房屋。这种致癌物质是非吸烟者患肺癌的主要原因。不同家庭的氡水平差异很大。
EPA 对 8 万间房屋的氡水平进行了研究。两个重要的预测因素是:
-
测量的楼层(地下室的氡含量较高)
-
县级铀水平(与氡水平正相关)
预测按县分组的房屋的氡水平是贝叶斯分层建模中的一个经典问题,由Gelman 和 Hill (2006) 提出。我们感兴趣的是位置(县,Countyi)对明尼苏达州房屋氡水平影响的可信