首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在BAMBI模型中指定对数正态族

在BAMBI模型中指定对数正态族
EN

Stack Overflow用户
提问于 2019-08-22 18:10:24
回答 2查看 124关注 0票数 0

我正在尝试将一个简单的贝叶斯回归模型应用于一些右偏数据。我想我会试着把家庭分布设为对数正态分布。我正在使用pymc3包装器BAMBI。有没有办法构建一个具有对数正态分布的定制族?

EN

回答 2

Stack Overflow用户

发布于 2019-08-23 11:52:50

这取决于您希望模型的平均函数是什么样子。

如果你想要像这样的模型

![](https://latex.codecogs.com/gif.latex?Y&space;=&space;%5Ctext%7Bexp%7D(%5Calpha&space;+&space;%5Cbeta&space;X%29&space;%5Ctimes&space;%5Cvarepsilon&space;%5C%5C&space;%5Cvarepsilon&space;%5Csim&space;%5Ctext%7BLogNormal%7D(0,&space;%5Csigma%5E2%29)

是的,这很容易实现,只需对Y进行对数变换,然后用正常响应估计通常的线性模型。请注意,在此模型中,Y是预测器X的指数函数,因此在绘制Y与X的关系图(两者均未转换)时,回归线可以向上或向下弯曲。它还具有乘性误差项,因此预测的Y值越大,方差越大。我们可以说,这样的模型具有对数链接功能和对数正态响应。

但是如果你想要像这样的模型

则不能,bambi*目前不支持这种型号。这是一个具有对数正态响应但具有身份链接功能的模型。Y在X上的回归是一条直线,但是误差在沿X的每个点上都具有相同的对数正态分布,因此对于较大的预测Y值,方差不会增加。请注意,这是一个不同寻常的模型,我个人从未见过实际使用过。

*理论上有可能推出自己的定制族(尽管这需要一些轻微的修改),但在bambi中设计的方式最终取决于在statsmodels.genmod中实现的族,目前不包括lognormal。

票数 2
EN

Stack Overflow用户

发布于 2019-08-23 01:23:01

除非我误解了什么,否则我认为您所需要做的就是在fit()调用中指定link='log'。如果你的假设是正确的,指数线性预测将是正态分布的,默认的误差分布是高斯的,所以我认为你不需要为此构建一个定制的族-带有对数链接的默认高斯族应该可以很好地工作。但是,如果这不能解决您的问题,请随时澄清。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57606946

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档