创建贝叶斯线性回归模型对象
要创建用于多元时间序列分析的贝叶斯向量自回归(VARX)模型,请参见bayesvarm
.
创建一个贝叶斯线性回归模型对象(PriorMdl
= bayeslm (NumPredictors
)PriorMdl
)由NumPredictors
预测器,一个截距,和一个扩散,联合先验分布β而且σ2.PriorMdl
是定义先验分布和维数的模板吗β.
指定联合先验分布PriorMdl
= bayeslm (NumPredictors
,'ModelType
”,modelType)modelType
为β而且σ2.对于这个语法,modelType
可以是:
“共轭”
,“semiconjugate”
,或“扩散”
创建一个标准的贝叶斯线性回归先验模型
“mixconjugate”
,“mixsemiconjugate”
,或“套索”
为预测变量选择创建贝叶斯线性回归先验模型
例如,“ModelType”、“共轭”
表示高斯似然的共轭先验,即β|σ2为高斯分布,σ2是逆的。
使用由一个或多个名-值对参数指定的其他选项。例如,您可以指定是否包含回归截距或为联合先验分布指定其他选项PriorMdl
= bayeslm (NumPredictors
,'ModelType
“modelType,名称,值
)modelType
.
如果你指定“ModelType”、“经验”
时,还必须指定BetaDraws
而且Sigma2Draws
名称-值对参数。BetaDraws
而且Sigma2Draws
描述各自的先验分布。
如果你指定“ModelType”,“自定义”
时,还必须指定LogPDF
名称-值对参数。LogPDF
完全表征了联合先验分布。
考虑预测美国实际国民生产总值(gdp)的多元线性回归模型(GNPR
)采用工业生产指数(新闻学会
)、总就业人数(E
)和实际工资(或者说是
).
对所有 , 是一系列均值为0,方差为0的独立高斯扰动吗 .
假设回归系数 还有扰动方差 为随机变量,其先验值和分布未知。在这种情况下,使用无信息的Jefferys先验:联合先验分布与 .
这些假设和数据似然意味着一个可分析处理的后验分布。
为线性回归参数创建一个扩散先验模型,这是默认的模型类型。指定预测器的数量p
.
P = 3;Mdl = bayeslm(p)
Mdl = diffuseblm属性:NumPredictors: 3拦截:1 VarNames: {4 x1细胞}|意味着性病CI95积极的分布 ----------------------------------------------------------------------------- 拦截| 0正(南南)0.500一个β(1)| 0正成正比(南南)0.500一个β(2)| 0正成正比(南南)0.500一个β(3)| 0正成正比(南南)0.500正比于一个Sigma2 |正正(南南)1.000 1 / Sigma2成正比
Mdl
是一个diffuseblm
贝叶斯线性回归模型对象表示回归系数和扰动方差的先验分布。bayeslm
在命令行上显示先前分布的摘要。因为先验是没有信息的,而且模型不包含数据,所以摘要是微不足道的。
如果你有数据,那么你可以通过先验模型来估计后验分布的特征Mdl
和数据估计
.
中的线性回归模型默认扩散先验模型.假设这些先验分布:
. 4 × 1向量的均值是多少 是一个4乘4的正定协方差矩阵。
. 而且 分别是逆伽马分布的形状和比例。
这些假设和数据似然暗示了一个正态-逆伽玛半共轭模型。条件后验在数据似然方面与先验共轭,但边缘后验在分析上是难以处理的。
为线性回归参数创建一个正态-逆伽玛半共轭先验模型。指定预测器的数量p
.
P = 3;Mdl = bayeslm(p,“ModelType”,“semiconjugate”)
Mdl =半导体jugateblm与属性:NumPredictors: 3拦截:1 VarNames: {4x1 cell} Mu: [4x1 double] V: [4x4 double] A: 3 B:1 |意味着性病CI95积极的分布 ------------------------------------------------------------------------------- 拦截| 0 100 [-195.996,195.996]0.500 N(0.00、100.00 ^ 2)β(1)| 0 100 [-195.996,195.996]0.500 N(0.00、100.00 ^ 2)β(2)| 0 100 [-195.996,195.996]0.500 N(0.00、100.00 ^ 2)β(3)| 0 100 [-195.996,195.996]0.500 N(0.00、100.00 ^ 2)Sigma2 | 0.5000 - 0.5000[0.138, 1.616] 1.000搞笑(3.00,1)
Mdl
是一个semiconjugateblm
贝叶斯线性回归模型对象表示回归系数和扰动方差的先验分布。bayeslm
在命令行上显示先前分布的摘要。例如,元素积极的
表示对应参数为正的先验概率。
如果你有数据,那么你可以通过先验模型来估计边缘或条件后验分布的特征Mdl
和数据估计
.
中的线性回归模型默认扩散先验模型.假设这些先验分布:
. 4 × 1向量的均值是多少 是一个4乘4的正定协方差矩阵。假设你有先验知识 V是单位矩阵。
. 而且 分别是逆伽马分布的形状和比例。
这些假设和数据似然暗示了一个正态-逆伽马共轭模型。
为线性回归参数创建一个正态-逆伽马共轭先验模型。指定预测器的数量p
并将回归系数名称设置为相应的变量名称。
P = 3;Mdl = bayeslm(p,“ModelType”,“共轭”,“亩”, -20;4;0.1;2),“V”眼睛(4),...“VarNames”, (“他们”“E”“福”])
Mdl =共轭与属性:NumPredictors: 3拦截:1 VarNames: {4x1 cell} Mu: [4x1 double] V: [4x4 double] A: 3 B:1 |意味着性病CI95积极的分布 ---------------------------------------------------------------------------------- 拦截| -20 0.7071 [-21.413,-18.587]0.000 t(-20.00、0.58 ^ 2,6)IPI | 4 0.7071 [2.587, 5.413] 1.000 t E(4.00、0.58 ^ 2,6)| 0.1000 - 0.7071[-1.313,1.513]0.566吨(0.10、0.58 ^ 2,6)WR | 2 0.7071 [0.587, 3.413] 0.993 t(2.00、0.58 ^ 2,6)Sigma2 | 0.5000 - 0.5000[0.138, 1.616] 1.000搞笑(3.00,1)
Mdl
是一个conjugateblm
贝叶斯线性回归模型对象表示回归系数和扰动方差的先验分布。bayeslm
在命令行上显示先前分布的摘要。虽然bayeslm
为截距和扰动方差分配名称,所有其他系数都有指定名称。
默认情况下,bayeslm
将形状和比例设置为3.
而且1
,分别。假设你已经知道形状和比例是5
而且2
.
的先验形状和比例 到他们假设的值。
Mdl。一个=5;Mdl。B=2
Mdl =共轭与属性:NumPredictors: 3拦截:1 VarNames: {4x1 cell} Mu: [4x1 double] V: [4x4 double] A: 5 B:2 |意味着性病CI95积极的分布 ---------------------------------------------------------------------------------- 拦截| -20 0.3536 [-20.705,-19.295]0.000 t(-20.00、0.32 ^ 2,10)IPI | 4 0.3536 [3.295, 4.705] 1.000 t E(4.00、0.32 ^ 2,10)| 0.1000 - 0.3536[-0.605,0.805]0.621吨(0.10、0.32 ^ 2,10)WR | 2 0.3536 [1.295, 2.705] 1.000 t(2.00、0.32 ^ 2,10)Sigma2 | 0.1250 - 0.0722[0.049, 0.308] 1.000搞笑(5.00,2)
bayeslm
根据形状和规模的变化更新先前的分布摘要。
中的线性回归模型默认扩散先验模型.假设这些先验分布:
是四维t每个分量为50个自由度的分布,相关矩阵为单位矩阵。分布也集中在每个分量都被向量中相应的元素所缩放.
.
bayeslm
将这些假设和数据似然视为对应的后验是难以分析的。
声明一个MATLAB®函数:
接受值为而且在一个列向量中,并接受超参数的值
返回联合先验分布的值,的值而且
函数logPDF = priorMVTIG(params,ct,st,dof,C,a,b)多元t乘以逆伽马的对数密度% priorMVTIG将参数(1:end-1)传递给多元t密度%函数,每个分量的自由度为正%定相关矩阵C. priorMVTIG返回%,两个评估密度。%params:用于计算密度的参数值% m × 1数值向量。%% ct:多元分布分量中心,以(m-1) × 1为单位%数值向量。元素对应于第一个m-1个元素%的参数。%% st:多元t分布分量,以(m-1) × 1为单位%数值(m-1)乘1数值向量。元素对应于参数的前m-1个元素。%% dof:多元t分布的自由度,a%数值标量或(m-1)乘1数值向量。priorMVTIG扩展%使dof = dof*ones(m-1,1)的标量。自由度元素%对应于参数(1:end-1)中的元素。%% C:多元t分布的相关矩阵,an% (m-1)-by-(m-1)对称,正定矩阵。行和%列对应于params(1:end-1)中的元素。%% a:逆gamma形状参数,一个正数值标量。%% b:逆gamma比例参数,一个正标量。%Beta = params(1:(end-1));Sigma2 = params(end);tVal = (beta - ct)./st;mvtDensity = mvtpdf(tVal,C,dof);igDensity = sigma2 ^ (1) * exp (1 / (sigma2 * b)) /(γ(a) * b ^);logPDF = log(mvtDensity*igDensity);结束
创建一个匿名函数,操作如下priorMVTIG
,但只接受参数值,并保持超参数值固定。
Dof = 50;C =眼睛(4);Ct = [-25;4;0;3);St = [10;1;1;1); a = 3; b = 1; prior = @(params)priorMVTIG(params,ct,st,dof,C,a,b);
为线性回归参数创建自定义联合先验模型。指定预测器的数量p
.另外,指定for的函数句柄priorMVTIG
,并传递超参数值。
P = 3;Mdl = bayeslm(p,“ModelType”,“自定义”,“LogPDF”之前,)
Mdl = customblm with properties: NumPredictors: 3截距:1 VarNames: {4x1 cell} LogPDF: @(params)priorMVTIG(params,ct,st,dof,C,a,b)先验由函数定义:@(params)priorMVTIG(params,ct,st,dof,C,a,b)
Mdl
是一个customblm
贝叶斯线性回归模型对象表示回归系数和扰动方差的先验分布。在这种情况下,bayeslm
不在命令行上显示以前分发的摘要。
中的线性回归模型默认扩散先验模型.
假设这些先验分布:
为k= 0,…,3, 拉普拉斯分布的均值为0,标度为 ,在那里 为收缩参数。系数是条件独立的。
. 而且 分别是逆伽马分布的形状和比例。
为贝叶斯线性回归创建一个先验模型bayeslm
.指定预测器的数量p
还有变量名。
P = 3;PriorMdl = bayeslm(p,“ModelType”,“套索”,“VarNames”, (“他们”“E”“福”]);
PriorMdl
是一个lassoblm
贝叶斯线性回归模型对象表示回归系数和扰动方差的先验分布。默认情况下,bayeslm
收缩的属性0.01
到截距1
对模型中的其他系数。
的新值,通过指定3 × 1向量,更改除截距外的所有系数的默认收缩值λ
的属性PriorMdl
.
使收缩10
来新闻学会
而且或者说是
.
因为E
有一个比其他变量大几个数量级的尺度,属性的收缩1 e5
到它。
λ(2:结束)
属性中指定变量对应的系数的收缩量VarNames
的属性PriorMdl
.
PriorMdl。λ=[10;1 e5;10);
加载Nelson-Plosser数据集。为响应和预测器系列创建变量。
负载Data_NelsonPlosserX = DataTable{:, priormll . varnames (2:end)};y = DataTable{:,“GNPR”};
执行贝叶斯套索回归通过传递先验模型和数据估计
,即通过估计的后验分布
而且
.贝叶斯套索回归采用马尔可夫链蒙特卡罗(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经验Sigma2 | 60.1452 11.1180[42.319, 85.085] 1.000经验
绘制后验分布。
情节(PosteriorMdl)
假设缩水率为10,分布E
在0附近密度相当大。因此,E
可能不是一个重要的预测因素。
NumPredictors
- - - - - -预测变量数量贝叶斯多元线性回归模型中预测变量的数量,指定为非负整数。
NumPredictors
必须与您在模型估计或模拟期间指定的预测器数据中的列数相同。
计算模型中预测因子的数量时,排除由拦截
.如果在某个截距项的预测器数据中包含一列1,则将其计算为预测器变量并指定“拦截”,假的
.
数据类型:双
的可选逗号分隔对名称,值
参数。的名字
参数名称和价值
对应的值。的名字
必须出现在引号内。您可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家
.
“ModelType”、“共轭”、“亩”,1:3,‘V’,1000 *眼(3),“一个”,“B”,0.5
的先验分布β
鉴于Sigma2
是具有平均向量的高斯1:3
协方差矩阵眼睛Sigma2 * 1000 * (3)
的分布Sigma2
逆是有形状的吗1
和规模0.5
.
ModelType
- - - - - -的联合先验分布(β,σ2)“扩散”
(默认)|“共轭”
|“semiconjugate”
|“经验”
|“自定义”
|“套索”
|“mixconjugate”
|“mixsemiconjugate”
的联合先验分布(β,σ2),指定为逗号分隔的对,由“ModelType”
和下表中的值。
对于标准贝叶斯回归模型,请在该表中选择一个值。
价值 | 描述 |
---|---|
“共轭” |
法向-逆-共轭模型
|
“semiconjugate” |
法向-逆伽玛半共轭模型
属性可以调整相应的超参数 |
“扩散” |
扩散先验分布
|
“经验” |
自定义先验分布
|
“自定义” |
自定义先验分布
|
对于执行预测变量选择的贝叶斯回归模型,请在本表中选择一个值。
价值 | 描述 |
---|---|
“mixconjugate” |
随机搜索变量选择[1]共轭先验分布
详情请参见 |
“mixsemiconjugate” |
科学价值[1]半导体先验分布
详情请参见 |
“套索” |
贝叶斯套索回归先验分布[3]
|
你选择的先验模型类型取决于你对参数联合分布的假设。你的选择会影响后验估计和推论。详情请参见实现贝叶斯线性回归.
例子:“ModelType”、“共轭”
数据类型:字符
拦截
- - - - - -包含回归模型截距的标志真正的
(默认)|假
标志,用于包含回归模型截距,指定为逗号分隔的对,由“拦截”
和这个表中的一个值。
价值 | 描述 |
---|---|
假 |
从回归模型中排除一个截距。因此,β是一个p -维向量,其中p 的值NumPredictors . |
真正的 |
在回归模型中包含一个截距。因此,β是a (p + 1)-维向量。此规范导致T-by-1的向量作为预估和模拟时预估的预测器数据。 |
如果在某个截距项的预测器数据中包含一列,则指定“拦截”,假的
.
例子:“拦截”,假的
VarNames
- - - - - -预测变量名称用于显示的预测器变量名,指定为逗号分隔的对,由“VarNames”
一个字符串向量或单元格向量的字符向量。VarNames
必须包含NumPredictors
元素。VarNames (
变量名在列中吗j
)j
在估计、模拟或预测期间指定的预测器数据集的。
默认为{“β(1)”、“β(2)”,…,“β(
,在那里p
)}p
的值NumPredictors
.
请注意
不能设置截距或扰动方差的名称。在显示,bayeslm
为拦截提供名称拦截
扰动方差的名称Sigma2
.因此,您不能使用“拦截”
而且“Sigma2”
作为预测器名称。
例子:“VarNames”,(“失业率会”;“CPI”)
数据类型:字符串
|细胞
|字符
μ
- - - - - -高斯先验的平均超参数β0(截距+ NumPredictors,1)
(默认)|数值向量高斯先验的平均超参数β,指定为逗号分隔的对,由“亩”
和一个数值向量。
如果μ
是一个向量,那么它必须是NumPredictors
或NumPredictors + 1
元素。
为NumPredictors
元素,bayeslm
属性的先验平均值NumPredictors
预测因子。预测器对应于预测器数据中的列(在估计、模拟或预测期间指定)。bayeslm
忽略模型中的截距,即,bayeslm
指定任何截距的缺省优先平均值。
为NumPredictors + 1
元素,第一个元素对应于截距的先验均值,所有其他元素对应于预测因子。
例子:“亩”,[1;0.08;2]
数据类型:双
V
- - - - - -条件协方差矩阵高斯先验超参数β1e5*eye(截取+ NumPredictors)
(默认)|对称的正定矩阵条件协方差矩阵超参数的高斯先验β,指定为逗号分隔的对,由“V”
和一个c
——- - - - - -c
对称的正定矩阵。c
可以NumPredictors
或NumPredictors + 1
.
如果c
是NumPredictors
,然后bayeslm
将先验协方差矩阵设置为
bayeslm
属性:截距的默认先验协方差,以及属性V
到数据中预测变量的系数。的行和列V
对应于预测器数据中的列(变量)。
如果c
是NumPredictors + 1
,然后bayeslm
将整个先验协方差设置为V
.第一行和第一列对应截距。所有其他行和列都对应于预测器数据中的列。
缺省值为a公寓前.对于一个自适应前,指定diag(Inf(拦截+ NumPredictors,1))
.自适应先验指示零精度,以便先验分布对后验分布的影响尽可能小。
为ModelType,共轭
,V
先验协方差是β的倍数σ2.
例子:“V”,诊断接头(正(3,1))
数据类型:双
λ
- - - - - -套索正则化参数1
(默认)|正数值标量|正数值向量所有回归系数的套索正则化参数,指定为逗号分隔的对,由“λ”
和一个正数值标量或(拦截
+NumPredictors
)-乘1的正数值向量。较大的值λ
使相应的系数缩小到接近零。
假设X
是一个T
——- - - - - -NumPredictors
预测器数据矩阵,在估计、模拟或预测过程中指定。
如果λ
是一个向量拦截
是真正的
,λ(1)
是截距的收缩,λ(2)
收缩是第一个预测因子的系数吗X (: 1)
,λ(3)
收缩是第二个预测器的系数吗X (:, 2)
、……Lambda(NumPredictors + 1)
收缩是最后一个预测器的系数吗X (:, NumPredictors)
.
如果λ
是一个向量拦截
是假
,λ(1)
收缩是第一个预测因子的系数吗X (: 1)
、……λ(NumPredictors)
收缩是最后一个预测器的系数吗X (:, NumPredictors)
.
如果你提供标量年代
为λ
,则预测因子的所有系数X
收缩年代
.
如果拦截
是真正的
时,截距收缩为0.01
,lassoblm
商店(0.01;* (NumPredictors, 1)]
在λ
.
否则,lassoblm
商店*的(NumPredictors, 1)
在λ
.
例子:“λ”6
数据类型:双
μ
- - - - - -高斯混合先验的分量平均超参数β0(截距+ NumPredictors,2)
(默认)|数字矩阵高斯混合先验的分量平均超参数β,指定为逗号分隔的对,由“亩”
而且一个(拦截+ NumPredictors
)-by-2数值矩阵。第一列包含组件1的先验均值(变量包含域,即γ= 1)。第二列为成分2的先验均值(变量排除制度,即γ= 0)。
如果拦截
是假
,然后μ
有NumPredictors
行。bayeslm
属性的先验平均值NumPredictors
与预测器数据集中的列对应的系数,您在估计、模拟或预测期间指定。
否则,μ
有NumPredictors + 1
元素。第一个元素对应于截距的先验均值,所有其他元素对应于预测变量。
提示
执行SSVS时,使用默认值μ
.
数据类型:双
V
- - - - - -分量方差因子或高斯混合先验方差超参数βrepmat([10 0.1],拦截+ NumPredictors,1)
(默认)|正数值矩阵分量方差因子或高斯混合先验的方差超参数β,指定为逗号分隔的对,由“V”
而且一个(拦截+ NumPredictors
)-乘2的正数值矩阵。第一列为成分1的先验方差因子(变量包含域,即γ= 1)。第二列为成分2的先验方差因子(变量排除制度,即γ= 0)。对于共轭模型(“ModelType”、“mixconjugate”
),V
包含方差因子,对于半共轭模型(“ModelType”、“mixsemiconjugate”
),V
包含差异。
如果拦截
是假
,然后V
有NumPredictors
行。bayeslm
的先验方差因子NumPredictors
与预测器数据集中的列对应的系数,您在估计、模拟或预测期间指定。
否则,V
有NumPredictors + 1
元素。第一个元素对应截距的先验方差因子,所有其他元素对应预测变量。
提示
要执行SSVS,请为区域1指定比区域2更大的方差因子。也就是说,对所有人来说j
,指定V (
>j
, 1)V (
.j
, 2)
有关要指定的值的详细信息V
,请参阅[1].
数据类型:双
概率
- - - - - -变量包含和排除制度的先验概率分布0.5*ones(拦截+ NumPredictors,1)
(默认)|[0,1]中的数值向量|函数处理变量包含和排除制度的先验概率分布,指定为由逗号分隔的对组成“概率”
而且一个(拦截
+NumPredictors
)-by-1的数值向量[0,1],或形式的函数句柄@fcnName
,在那里fcnName
函数名。概率
的先验概率分布γ= {γ1、……γK},:
K=拦截
+NumPredictors
,为回归模型中的系数数。
γk∈{0,1},用于k=1、……K.因此,样本空间的基数为2K.
γk= 1表示变量VarNames
(
包含在模型中,和γk= 0表示该变量被排除在模型之外。k
)
如果概率
是数值向量:
中的变量名对应于VarNames
.对于包含截距的模型,截距包含的先验概率为概率(1)
.
为
= 1,…,K,排除变量的先验概率k
是1 -k
概率(
k
).
在所有变量和截距之间,变量包含区域的先验概率是独立的。
如果概率
是函数句柄,则它表示变量包含区域概率的自定义先验分布。对应的函数必须有这样的声明语句(参数和函数名可以不同):
Logprob = regmeprior (varinc)
logprob
表示先验分布的对数的数值标量。你可以把先验分布写成比例常数。
varinc
是一个K-by-1逻辑向量。元素对应于中的变量名VarNames
并指出对应变量存在的状态。varinc (
=k
)真正的
表明VarName (
包含在模型中,和k
)varinc (
=k
)假
指示它从模型中排除。
您可以包含更多的输入参数,但在调用时必须知道它们bayeslm
.
有关要指定的值的详细信息概率
,请参阅[1].
数据类型:双
|function_handle
相关
- - - - - -的先验相关矩阵β眼睛(拦截+ NumPredictors)
(默认)|数值,正定矩阵的先验相关矩阵β对于混合模型中的两个组件,指定为由逗号分隔的对组成“相关”
而且
一个(拦截
+NumPredictors
)——- (拦截
+NumPredictors
)数值的正定矩阵。因此,分量的先验协方差矩阵
在混合模型中:j
对于共轭(“ModelType”、“mixconjugate”
),sigma2 *诊断接头(sqrt (V (:,
j
))) *相关性*诊断接头(sqrt (V (:,j
)))
对于半导体(“ModelType”、“mixsemiconjugate”
),诊断接头(sqrt (V (:,
j
))) *相关性*诊断接头(sqrt (V (:,j
)))
在哪里sigma2
是σ2而且V
矩阵的系数是方差因子或方差。
中的行和列对应于变量名VarNames
.
默认情况下,回归系数是不相关的,以制度为条件。
请注意
您可以提供任何适当大小的数字矩阵。但是,如果你方的说明不明确,bayeslm
发出警告并将您的规范替换为CorrelationPD
,地点:
相关性pd = 0.5*(相关性+相关性。');
提示
有关要指定的值的详细信息相关
,请参阅[1].
数据类型:双
B
- - - - - -逆先验的尺度超参数σ21
(默认)|积极的标量|正
逆先验的比例超参数σ2,指定为逗号分隔的对,由“B”
一个正标量或正
.
与一个
当保持固定时,逆伽马分布变得更高更集中B
增加。的先验模型σ2大于后验估计时的似然。
此选项不适用于经验或自定义先验分布。
例子:“B”,5
数据类型:双
BetaDraws
- - - - - -来自先验分布的随机样本β随机样本来自先验分布β,指定为逗号分隔的对,由“BetaDraws”
和一个(拦截
+NumPredictors
)———NumDraws
数字矩阵。行对应回归系数:第一行对应截距,随后的行对应预测器数据中的列。列对应于先验分布的连续抽取。
BetaDraws
而且Sigma2Draws
必须有相同数量的列。
为了得到最好的结果,需要大量的样本。
数据类型:双
Sigma2Draws
- - - - - -来自先验分布的随机样本σ2随机样本来自先验分布σ2,指定为逗号分隔的对,由“Sigma2Draws”
还有一个1 ×NumDraws
数字行向量。列对应于先验分布的连续抽取。
BetaDraws
而且Sigma2Draws
必须有相同数量的列。
为了得到最好的结果,需要大量的样本。
数据类型:双
LogPDF
- - - - - -(的联合概率密度函数的对数β,σ2)(的联合概率密度函数的对数β,σ2),指定为逗号分隔的对,由“LogPDF”
和一个函数句柄。
假设logprior
MATLAB的名字是什么®定义(的联合先验分布的函数β,σ2).然后,logprior
必须有这个表格。
函数(logpdf,glpdf] =logprior(参数个数)…结束
logpdf
是一个数字标量,表示(的联合概率密度的对数。β,σ2).
glpdf
是一个(拦截
+NumPredictors
+ 1)-by-1数值向量表示的梯度logpdf
.元素对应于的元素参数个数
.
glpdf
是可选输出参数,只有哈密顿蒙特卡洛采样器(看到了吗hmcSampler
)应用它。如果你知道一些参数的解析偏导数,而不知道其他参数的,那么设置的元素glpdf
对应于未知偏导数南
.MATLAB计算缺失偏导数的数值梯度,这很方便,但采样速度变慢。
参数个数
是一个(拦截
+NumPredictors
+ 1)-by-1数值向量。第一个拦截
+NumPredictors
元素必须对应于的值β,最后一个元素必须对应的值σ2.的第一个元素β是截距,如果存在的话。所有其他元素都对应于预测器数据中的预测器变量,这些变量是您在估计、模拟或预测期间指定的。
例子:LogPDF, @logprior
PriorMdl
-存储先验模型假设的贝叶斯线性回归模型conjugateblm
模型对象|semiconjugateblm
模型对象|diffuseblm
模型对象|mixconjugateblm
模型对象|mixsemiconjugateblm
模型对象|lassoblm
模型对象|…贝叶斯线性回归模型存储先验模型假设,作为此表中的对象返回。
的价值ModelType |
返回贝叶斯线性回归模型对象 |
---|---|
“共轭” |
conjugateblm |
“semiconjugate” |
semiconjugateblm |
“扩散” |
diffuseblm |
“经验” |
empiricalblm |
“自定义” |
customblm |
“mixconjugate” |
mixconjugateblm |
“mixsemiconjugate” |
mixsemiconjugateblm |
“套索” |
lassoblm |
PriorMdl
仅指定线性回归模型的联合先验分布和特征。模型对象是用于进一步使用的模板。为了将数据合并到模型中进行后验分布分析,将模型对象和数据传递给适当的对象函数,例如:估计
或模拟
.
一个贝叶斯线性回归模型处理参数β而且σ2多元线性回归(MLR)模型yt=xtβ+εt作为随机变量。
为次t= 1,…,T:
yt是观察到的响应。
xt是一个1 × (p的观测值的行向量p预测因子。为了适应模型截距,x1t= 1t.
β是a (p的列向量,对应于组成列的变量的回归系数xt.
εt为均值为0的随机扰动,Cov(ε) =σ2我T×T,而ε是一个T-by-1向量包含所有扰动。这些假设意味着数据的可能性是
ϕ(yt;xtβ,σ2)为带均值的高斯概率密度xtβ和方差σ2评估在yt;.
在考虑这些数据之前,您需要考虑联合先验分布假设(β,σ2).在贝叶斯分析中,通过使用从数据的似然性中获得的关于参数的信息来更新参数的分布。结果是关节后分布(β,σ2)或条件后验分布参数的。
[1]乔治,e。I。和r。e。麦卡洛克。"通过吉布斯抽样的变量选择"美国统计协会杂志.第88卷,第423号,1993年,第881-889页。
[2]库普,G. D. J.普瓦里尔,J. L.托比亚斯。贝叶斯计量经济学方法.纽约:剑桥大学出版社,2007年。
[3]帕克、T.和G.卡塞拉。“贝叶斯套索。”美国统计协会杂志.Vol. 103 No. 482, 2008, pp. 681-686。
conjugateblm
|semiconjugateblm
|diffuseblm
|customblm
|empiricalblm
|lassoblm
|mixconjugateblm
|mixsemiconjugateblm
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择一个网站:
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。