pymc3 负二项式回归解释 mu 和 alpha
pymc3 negative binomial regression interpretation of mu and alpha
我对 python pymc3
包的负二项式回归的解释感到困惑。我不确定如何解释 GLM 中的 mu
和 alpha
。这里我有一个简单的向量,我想为自己找到NB回归模型:
# The data
y = [100,200,300,400,50,300,60,89,90,100,100]
data = {'y':y, 'x':[1]*len(y)}
basic_model = pm.Model()
with basic_model:
fml = 'y~x'
pm.glm.GLM.from_formula(formula=fml, data=data, family=pm.glm.families.NegativeBinomial())
# draw 500 posterior samples
trace = pm.sample(500)
summary = pm.summary(trace, varnames=rvs)[['mean','hpd_2.5','hpd_97.5']]
print(summary)
然后我得到如下输出:
mean hpd_2.5 hpd_97.5
Intercept -281.884463 -684.069010 718.375125
x 287.000388 -714.168056 689.477911
mu 26.674426 3.526181 63.358150
alpha 2.461808 1.353676 3.452103
我了解到 Intercept
和 x
部分是 中的 y = exp(-281.884463*287.000388*x)
。
但是mu
和alpha
怎么解释呢?我尝试使用 stats.gamma.rvs(alpha, scale=mu / alpha, size=size)
,但直方图看起来有些偏差。谢谢!
因此,alpha
和 mu
参数是 Exponential distribution 的参数,其中 mu
是均值,alpha
是 gamma 参数。所以在指数分布中,1/gamma 是均值,1/(gamma^2) 是方差,如果 mu
是均值,则意味着 mu / alpha
是 [=16= 中所述的方差] 在函数调用中。
思考的方式是这样的:
泊松分布和指数分布之间存在一个有趣的(关键)关系。如果您期望每个时间单位的平均 gamma 事件,则事件之间的平均等待时间呈指数分布,参数为 gamma(因此平均等待时间为 1/gamma),每个时间单位内计数的事件数为参数为 gamma 的泊松分布。
我希望这能让它更清楚一点,并让您对如何思考它有一些直觉。
我对 python pymc3
包的负二项式回归的解释感到困惑。我不确定如何解释 GLM 中的 mu
和 alpha
。这里我有一个简单的向量,我想为自己找到NB回归模型:
# The data
y = [100,200,300,400,50,300,60,89,90,100,100]
data = {'y':y, 'x':[1]*len(y)}
basic_model = pm.Model()
with basic_model:
fml = 'y~x'
pm.glm.GLM.from_formula(formula=fml, data=data, family=pm.glm.families.NegativeBinomial())
# draw 500 posterior samples
trace = pm.sample(500)
summary = pm.summary(trace, varnames=rvs)[['mean','hpd_2.5','hpd_97.5']]
print(summary)
然后我得到如下输出:
mean hpd_2.5 hpd_97.5
Intercept -281.884463 -684.069010 718.375125
x 287.000388 -714.168056 689.477911
mu 26.674426 3.526181 63.358150
alpha 2.461808 1.353676 3.452103
我了解到 Intercept
和 x
部分是 y = exp(-281.884463*287.000388*x)
。
但是mu
和alpha
怎么解释呢?我尝试使用 stats.gamma.rvs(alpha, scale=mu / alpha, size=size)
,但直方图看起来有些偏差。谢谢!
因此,alpha
和 mu
参数是 Exponential distribution 的参数,其中 mu
是均值,alpha
是 gamma 参数。所以在指数分布中,1/gamma 是均值,1/(gamma^2) 是方差,如果 mu
是均值,则意味着 mu / alpha
是 [=16= 中所述的方差] 在函数调用中。
思考的方式是这样的:
泊松分布和指数分布之间存在一个有趣的(关键)关系。如果您期望每个时间单位的平均 gamma 事件,则事件之间的平均等待时间呈指数分布,参数为 gamma(因此平均等待时间为 1/gamma),每个时间单位内计数的事件数为参数为 gamma 的泊松分布。
我希望这能让它更清楚一点,并让您对如何思考它有一些直觉。