估计

对贝叶斯线性回归模型进行预测变量选择

描述

为了估计标准贝叶斯线性回归模型的后验分布,见估计

例子

PosteriorMdl=估计(PriorMdl,X,y)返回表征的联合后验分布的模型βσ2贝叶斯线性回归模型。估计还执行预测变量选择。

PriorMdl指定的参数的联合先验分布,所述线性回归模型的结构,和可变选择算法。X是预测数据和y是响应数据。PriorMdlPosteriorMdl不是相同的对象类型。

生产PosteriorMdl,估计使用从数据中获得的参数信息更新先验分布。

为NaN数据中的s表示缺失值,其中估计删除使用列表明智的缺失。

例子

PosteriorMdl=估计(PriorMdl,X,y,名称,值)使用由一个或多个名称值对参数中指定的附加选项。例如,'LAMBDA',0.5指定贝叶斯lasso回归的收缩参数值为0.5所有的系数除拦截。

如果您指定Beta版σ-2,然后PosteriorMdlPriorMdl是相等的。

例子

(PosteriorMdl,总结] =估计(___)在前面的语法中使用任何输入参数组合,还返回一个表,其中包括每个参数的以下内容:后验估计、标准错误、95%可信区间和参数大于0的后验概率。

例子

全部收缩

考虑预测美国实际国民生产总值的多元线性回归模型(GNPR)采用工业生产指数的线性组合(新闻学会),总就业(E)和实际工资(WR)。

GNPR t = β 0 + β 1 新闻学会 t + β 2 E t + β 3. WR t + ε t

对所有人 t , ε t 一系列独立的高斯扰动的均值和方差是否为0 σ 2

假设先验分布为:

  • k= 0,...,3, β k | σ 2 它的拉普拉斯分布的均值是0,尺度是 σ 2 / λ ,其中 λ 是收缩的参数。该系数是有条件独立。

  • σ 2 G ( 一个 , B ) 一个 B 为反伽马分布的形状和比例尺。

为贝叶斯lasso回归建立一个先验模型。指定预测器的数量、先前的模型类型和变量名。指定这些铸件热:

  • 0.01截距

  • 10对于新闻学会WR

  • 1 e5对于E因为它的尺度比其他变量大几个数量级

的收缩率的顺序遵循指定的变量名的顺序,但该第一元件是截距的收缩。

p = 3;PriorMdl = bayeslm (p,“ModelType”,'套索',“λ”,(0.01;10;1 e5;10]...'VarNames',(“他们”“E”“WR”]);

PriorMdllassoblm贝叶斯线性回归模型对象表示回归系数和扰动方差的先验分布。

加载Nelson-Plosser数据集。为响应和预测器系列创建变量。

加载Data_NelsonPlosserX = {数据表:,PriorMdl.VarNames(2:结束)};Y = {数据表:,“GNPR”};

通过传递先验模型和数据进行Bayesian lasso回归估计即,通过估计的后验分布 β σ 2 。贝叶斯套索回归使用马尔可夫链蒙特卡洛(MCMC)到样品从后。对于重复性,设置随机种子。

rng (1);PosteriorMdl =估计(PriorMdl,X,Y);
方法:套索MCMC与10000采样得出的观测总数62预测数:4 |均值标准CI95正分布-------------------------------------------------------------------------拦截|-1.3472 6.8160 [-15.169,11.590] 0.427实证IPI |4.4755 0.1646 [4.157,4.799] 1.000实证E |0.0001 0.0002 [-0.000,0.000] 0.796实证WR |3.1610 0.3136 [2.538,3.760] 1.000实证西格玛-2 |60.1452 11.1180 [42.319,85.085] 1.000实证

PosteriorMdl是一个empiricalblm模型对象,其存储从所述后验分布绘制 β σ 2 考虑到数据。估计显示在MATLAB®命令行边缘后验分布的总结。摘要的行对应回归系数和扰动方差,列对应后验分布特征。该特性包括:

  • CI95,其中包含95%贝叶斯均衡可信区间的参数。例如,回归系数的后验概率新闻学会在[4.157,4.799]为0.95。

  • ,其中包含的后验概率,该参数大于0。例如越大,概率截距大于0是0.427

绘制后验分布。

情节(PosteriorMdl)

鉴于收缩,分布E在0附近密度相当大。因此,E可能不是一个重要的预测因素。

默认,估计抽取和丢弃大小为5000的老化样本。然而,一个好的做法是检查绘图的跟踪图,以获得足够的混合和缺少过渡。为每个参数绘制绘制的跟踪图。您可以访问组成分布的绘图(属性)BetaDrawsSigma2Draws)使用点符号。

数字;对于J = 1:(P + 1)副区(2,2,j)的;图(PosteriorMdl.BetaDraws(J,:));标题(sprintf的(' % s ',PosteriorMdl.VarNames {Ĵ}));结束

数字;积(PosteriorMdl.Sigma2Draws);标题(“西格玛-2”);

从图中可以看出,这些图似乎很好地结合在了一起。图中没有可检测到的瞬态或序列相关,图中没有在状态之间跳转。

考虑回归模型选择变量使用贝叶斯套索回归

创建用于执行随机搜索变量选择(SS VS移至)采用现有的模型。假使,假设 β σ 2 取决于(共轭混合模型)。指定预测的数量p以及回归系数的名称。

p = 3;PriorMdl = mixconjugateblm (p,'VarNames',(“他们”“E”“WR”]);

加载Nelson-Plosser数据集。为响应和预测器系列创建变量。

加载Data_NelsonPlosserX = {数据表:,PriorMdl.VarNames(2:结束)};Y = {数据表:,'GNPR'};

通过估计的边缘后验分布来实施SSVS β σ 2 。由于SSVS使用马尔科夫链蒙特卡罗进行估计,因此设置一个随机数种子来重现结果。

rng (1);PosteriorMdl =估计(PriorMdl,X,Y);
方法:用MCMC抽样10000绘制的观测总数62号码预测的:4 |均值标准CI95正分配制度----------------------------------------------------------------------------------拦截|-18.8333 10.1851 [-36.965,0.716] 0.037实证0.8806 IPI |4.4554 0.1543 [4.165,4.764] 1.000实证0.4545 E |0.0010 0.0004 [0.000,0.002] 0.997实证0.0925 WR |2.4686 0.3615 [1.766,3.197] 1.000实证0.1734西格玛-2 |47.7557 8.6551 [33.858,66.875] 1.000实证的NaN

PosteriorMdl是一个empiricalblm模型对象,其存储从所述后验分布绘制 β σ 2 考虑到数据。估计显示命令行中边缘后验分布的摘要。摘要的行对应回归系数和扰动方差,列对应后验分布特征。该特性包括:

  • CI95,其中包含95%贝叶斯均衡可信区间的参数。例如,回归系数的后验概率E(标准化)是在[0.000,0.0.002]为0.95。

  • 政权,其中包含变量包含的边际后验概率( γ = 1 一个变量)。例如,后验概率E应包含在模型是0.0925。

假设变量政权< 0.1应该从模型中删除,结果表明可以将失业率从模型中排除。

默认,估计抽取和丢弃大小为5000的老化样本。然而,一个好的做法是检查绘图的跟踪图,以获得足够的混合和缺少过渡。为每个参数绘制绘制的跟踪图。您可以访问组成分布的绘图(属性)BetaDrawsSigma2Draws)使用点符号。

数字;对于J = 1:(P + 1)副区(2,2,j)的;图(PosteriorMdl.BetaDraws(J,:));标题(sprintf的(' % s ',PosteriorMdl.VarNames {Ĵ}));结束

数字;积(PosteriorMdl.Sigma2Draws);标题(“西格玛-2”);

从图中可以看出,这些图似乎很好地结合在了一起。图中没有可检测到的瞬态或序列相关,图中没有在状态之间跳转。

考虑回归模型和先验分布选择变量使用贝叶斯套索回归

创建3个预测贝叶斯套索回归之前的模型,并指定变量名。指定的收缩值0.01,10,1 e5,10为截距,的系数新闻学会,E,WR

p = 3;PriorMdl = bayeslm (p,“ModelType”,'套索','VarNames',(“他们”“E”“WR”),...“λ”,(0.01;10;1 e5;10]);

加载Nelson-Plosser数据集。为响应和预测器系列创建变量。

加载Data_NelsonPlosserX = {数据表:,PriorMdl.VarNames(2:结束)};Y = {数据表:,“GNPR”};

估计的条件后验分布 β 给出的数据和 σ 2 = 1 0 ,并返回估算汇总表访问的估计。

rng (1);%的再现性[铜牌,SummaryBeta] =估计(PriorMdl,X,Y,“西格玛-2”10);
方法:lasso MCMC采样10000绘制条件变量:Sigma2固定在10个数的观察:62个数的预测:4 |意味着性病CI95积极分配- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -拦截| -8.0643 - 4.1992[-16.384,0.018]0.025经验IPI | 4.4454 - 0.0679[4.312, 4.578] 1.000经验E | 0.0004 - 0.0002[0.000, 0.001] 0.999经验或者说是| 2.9792 - 0.1672[2.651,3.305]1.000经验Sigma2 | 10 0[10.000, 10.000] 1.000经验

估计显示条件后验分布的摘要 β 。因为 σ 2 固定在估计期间10中,在其上的推论是微不足道的。

显示Mdl

Mdl
Mdl = lassoblm属性:NumPredictors: 3拦截:1 VarNames: {4 x1细胞}λ:[4 x1双]A: 3 B: 1 |意味着性病CI95积极分配- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -拦截| 0 100[-200.000,200.000]0.500级混合IPI | 0 0.1000[-0.200, 0.200] 0.500级混合E | 0 0.0000[-0.000, 0.000] 0.500级混合WR | 0 0.1000[-0.200, 0.200] 0.500级混合Sigma2 | 0.5000 - 0.5000[0.138, 1.616] 1.000搞笑(3.00,1)

因为估计计算条件后验分布,它返回模型输入PriorMdl,而不是条件后验,在输出参数列表的第一位置。

显示评估汇总表。

SummaryBeta
SummaryBeta =5×6表意味着性病CI95积极协方差分布__________ __________ ________________________ ________ _________________ _______________________________________________________________________拦截-8.0643 4.1992 -16.384 0.01837 0.0254{‘经验’}0 IPI 4.4454 0.067949 4.312 17.633 0.17621 -0.00053724 0.11705 4.5783 - 1{‘经验’}0.00039896 0.00015673 9.4925 0.17621 0.0046171 -1.4103 e-06 -0.0068855 0 E e-05 0.00070697 - 0.9987 -0.00053724 - -1.4103{‘经验’}e-06 2.4564 e-08 -1.8168 e-05 0的车手00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

SummaryBeta包含条件后验估计。

估计的有条件的后验分布 σ 2 考虑到 β 是的条件后验均值 β | σ 2 , X , y (存储在SummaryBeta.Mean(1:(结束 - 1)))。返回评估汇总表。

condPostMeanBeta = SummaryBeta.Mean(1:(结束 -  1));[〜,SummarySigma2] =估计(PriorMdl,X,Y,“测试版”,condPostMeanBeta);
方法:lasso MCMC采样10000绘制条件变量:Beta固定在-8.0643 4.4454 0.00039896 2.9792观察次数:62预测次数:4 |意味着性病CI95积极分配- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -拦截| -8.0643 - 0.0000[-8.064,-8.064]0.000经验IPI | 4.4454 - 0.0000[4.445, 4.445] 1.000经验E | 0.0004 - 0.0000[0.000, 0.000] 1.000经验或者说是| 2.9792 - 0.0000[2.979,2.979]1.000经验Sigma2 | 56.8314 - 10.2921[39.947, 79.731] 1.000经验

估计的条件后验分布的估计摘要 σ 2 给出的数据和 β condPostMeanBeta。在显示中,推断 β 是微不足道的。

考虑回归模型选择变量使用贝叶斯套索回归

为执行ssv创建一个先验模型。假使,假设 β σ 2 取决于(共轭混合模型)。指定预测的数量p以及回归系数的名称。

p = 3;PriorMdl = mixconjugateblm (p,'VarNames',(“他们”“E”“WR”]);

加载Nelson-Plosser数据集。为响应和预测器系列创建变量。

加载Data_NelsonPlosserX = {数据表:,PriorMdl.VarNames(2:结束)};Y = {数据表:,'GNPR'};

通过估计的边缘后验分布来实施SSVS β σ 2 。由于SSVS使用马尔科夫链蒙特卡罗进行估计,因此设置一个随机数种子来重现结果。抑制估计显示,但返回估计汇总表。

rng (1);[PosteriorMdl,总结]=估计(PriorMdl, X, y,“显示”、假);

PosteriorMdl是一个empiricalblm模型对象,其存储从所述后验分布绘制 β σ 2 考虑到数据。总结为表,列对应后验特征,行对应系数(PosteriorMdl.VarNames)和扰动方差(σ-2)。

显示估计的参数的协方差矩阵(协方差)和倍比例的算法包括每个预测器(政权)。

协方差=摘要(:,“协方差”)
协方差=5×1表协方差______________________________________________________________________拦截IPI 1.0486 0.023815 -1.3637 103.74 1.0486 -0.0031629 0.6791 7.3916 e-05 -8.8792 1.3481 -0.0031629 - -1.3637 -0.030387 - 0.06611 E e-05 e-07 e-05 WR 0.6791 -0.030387 -8.8792 -0.00025044 e-05 Sigma2 0.089039 0.13066 7.3916 0.06611 -0.00025044 0.089039 74.911
制度=摘要(:,“政权”)
制度=5×1表状态为0.8806 IPI 0.4545 E 0.0925 WR 0.1734 Sigma2 NaN

政权包含变量包含的边际后验概率( γ = 1 一个变量)。例如,后验概率E应该包括在模型中的是0.0925。

假设变量政权< 0.1应该从模型中删除,结果表明可以将失业率从模型中排除。

输入参数

全部收缩

用于预测变量选择的贝叶斯线性回归模型,在本表中指定为模型对象。

模型对象 描述
mixconjugateblm 依赖性的,高斯混合物-逆伽马共轭模型预测的SSVs变量选择,通过返回bayeslm
mixsemiconjugateblm 独立的、高斯-混合-反-伽玛半聚模型用于SSVS预测变量的选择,由bayeslm
lassoblm 贝叶斯套索回归模型通过返回bayeslm

多元线性回归模型的预测数据,指定为anumObservations——- - - - - -PriorMdl.NumPredictors数字矩阵。numObservations是观测值的数量和必须等于的长度y

数据类型:

对于多元线性回归模型的响应数据,指定为与数字向量numObservations元素。

数据类型:

名称 - 值对参数

指定可选的用逗号分隔的对名称,值参数。名称是参数的名称和价值是对应的值。名称必须出现引号内。您可以按照任何顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:“Sigma2”, 2指定给定数据和指定扰动方差的回归系数的条件后验分布的估计2

标志来显示Bayes估计总结到命令行,指定为逗号分隔的一对组成的“显示”并在此表中的值。

价值 描述
真正的 估计打印估计信息和一个表格,概括贝叶斯估计到命令行。
估计不打印到命令行。

估计信息包括估计方法、固定参数、观测值和预测量。汇总表包含估计后验均值、标准差(后验方差的平方根)、95%等距可信区间、参数大于0的后验概率,以及对后验分布的描述(如果已知)。对于执行ssv的模型,显示表包含一个列,用于包含变量的概率。

如果您指定Beta版σ-2,然后估计包括您的显示规格。相应的后估计是微不足道的。

例子:“显示”,假

数据类型:逻辑

扰动方差的条件后验分布估计的回归系数值,指定为由“测试版”和(PriorMdl.Intercept+PriorMdl.NumPredictors)×1数值向量。估计估计π(σ2|y,X,β=Beta版),yy,XX,Beta版的值“测试版”。如果PriorMdl.Intercept真正的,然后测试版(1)对应于模型截距。所有其他值对应于组成的列的预测变量XBeta版不能包含任何为NaN值(即,所有系数必须是已知的)。

您不能指定Beta版σ-2同时进行。

默认,估计不计算条件后验的特征吗σ2

例子:“贝塔”,1:3

数据类型:

扰动方差的值为条件后验分布估计的回归系数,指定为逗号分隔对组成“西格玛-2”和一个正数的标量。估计估计的特点π(β|y,X,σ-2),yy,XX,σ-2的值“西格玛-2”

您不能指定σ-2Beta版同时进行。

默认,估计不计算条件后验的特征吗β

例子:“Sigma2”, 1

数据类型:

蒙特卡洛模拟调整样本大小,指定为逗号分隔的一对组成的“NumDraws”一个正整数。估计实际上吸引燃烧- - - - - -NumDraws *样本。因此,估计根据估计NumDraws样本。有关如何估计降低了全蒙特卡洛样品,看算法

例子:e7 NumDraws, 1

数据类型:

从蒙特卡罗样本开始移除的绘制次数,以减少瞬态效应,指定为逗号分隔对组成的“燃烧”和一个非负的标量。有关如何估计降低了全蒙特卡洛样品,看算法

提示

为了帮助您指定适当的老化期的大小,通过指定确定蒙特卡洛样品中的瞬态行为的程度'燃尽的,0,模拟几千观察使用模拟,然后绘制路径。

例子:'燃尽的,0

数据类型:

蒙特卡洛调整样本大小乘法器,指定为逗号分隔的一对组成的“薄”一个正整数。

实际蒙特卡罗样本大小是燃烧+NumDraws*薄。在丢弃老化后,估计丢弃每- - - - - -1绘制,然后保留下一个。有关如何估计降低了全蒙特卡洛样品,看算法

提示

为了减少潜在的大序列相关的蒙特卡洛样品中,或以减少内存消耗的抽奖存储在PosteriorMdl,指定一个较大的值

例子:'薄',5

数据类型:

的回归系数的初始值,指定为逗号分隔对组成“BetaStart”和一个带(PriorMdl.Intercept+PriorMdl.NumPredictors)元素。默认,BetaStart是普通最小二乘估计。

提示

一个好的做法是将运行估计多次使用不同的参数初始值。验证每次运行的解决方案是否收敛于金宝搏官方网站类似的值。

例子:“BetaStart”, [1;2;3]

数据类型:

扰动方差的MCMC样本的初始值,指定为由“Sigma2Start”和一个正数的标量。默认,Sigma2Start是OLS剩余均方误差。

提示

一个好的做法是将运行估计多次使用不同的参数初始值。验证每次运行的解决方案是否收敛于金宝搏官方网站类似的值。

例子:'Sigma2Start',4

数据类型:

输出参数

全部收缩

贝叶斯线性回归模型存储分布特性,返回为mixconjugateblm,mixsemiconjugateblm,lassoblm, 要么empiricalblm模型对象。

  • 如果您不指定其中之一Beta版σ-2(他们的价值观[]), 然后估计更新用数据似然性,以形成后验分布的先验模型。PosteriorMdl的后验分布,是一个empiricalblm模型对象。信息PosteriorMdl存储或显示帮助您决定预测变量是否重要。

  • 如果您指定Beta版σ-2,然后PosteriorMdl=PriorMdl(这两个模型是存储相同属性值的相同对象)。估计不更新先验模型形成后验模型。然而,总结商店条件后验估计。

有关更多详情,请参阅PosteriorMdl,请参阅总结

贝叶斯估计量的摘要,以表的形式返回。总结包含相同的信息作为估计摘要的显示(显示)。行对应于参数,列对应于这些后验特征:

  • 的意思是——后的意思是

  • 标准-后验标准差

  • CI95- 95%equitailed可信区间

  • -参数大于0的后验概率

  • 分配- 参数的边际或条件后验分布的描述中,当公知的

  • 协方差-估计系数和扰动方差的协方差矩阵

  • 政权- 变包含概率对于执行的SSVs模型;低概率表明变量应该从模型中排除

行的名字都在名字PriorMdl.VarNames。最后一行的名称是σ-2

另外,通过PosteriorMdl总结以获得贝叶斯估计的摘要。

更多关于

全部收缩

贝叶斯线性回归模型

一个贝叶斯线性回归模型治疗参数βσ2在多元线性回归(MLR)模型中yt=xtβ+εt为随机变量。

为次t= 1,...,T:

  • yt是观察到的响应。

  • xt是一个1 - (p的观测值的行向量p预测。为了适应模型截距,x1t= 1对于所有t

  • β是(p+ 1)×1对应于该构成的列中的变量回归系数的列向量xt

  • εt为均值为0的随机扰动,Cov(ε)=σ2T×T,而εT包含所有扰动的-乘-1向量。这些假设意味着数据的可能性是

    ( β , σ 2 | y , x ) = Π t = 1 T ϕ ( y t ; x t β , σ 2 )

    ϕ(yt;xtβ,σ2)是高斯概率密度与平均xtβ和方差σ2评估在yt;

在考虑中的数据,并处联合先验分布假设(β,σ2)。在贝叶斯分析中,通过使用从数据的可能性中获得的参数信息来更新参数的分布。结果是联合后验分布(β,σ2) 或者有条件的后验分布的参数。

提示

  • 蒙特卡罗模拟可能会发生变化。如果估计使用蒙特卡罗模拟,然后估计和推断可能会有所不同,当您调用估计多次在看似相等的条件下。在调用之前重新生成估计结果估计通过使用设定的随机数种子rng

算法

这个图显示了估计使用的值减少蒙特卡罗样本NumDraws,,燃烧

矩形表示连续从分配绘制。估计从蒙特卡罗样本中移除白色矩形。剩下的NumDraws黑色矩形构成蒙特卡罗样本。

介绍了R2018b