简而言之:
我需要建立贝叶斯逻辑回归,为某些系数设置严格的负先验分布,并在模型外定义它们。没有pm.Bound
怎么办?
说明:
我需要使用pymc3创建贝叶斯逻辑回归,其中的某些系数肯定会低于0。因为pymc3没有提供反映分布的选项(例如,使用pm.Lognormal
肯定高于零并通过乘以反映出来) -1),我需要进行回归,其中具有这些负系数的要素将为负(因为系数将为正),因此无法使用pm.glm.GLM.from_formula
。但是,如果使用likelihood = pm.Bernoulli()
,则无法使用先前的分布,因为我在模型外部定义它们,因此必须将它们设置为pm.Lognormal.dist(...)
。在回归中使用此类系数可得出AssertionError: <class 'pymc3.distributions.continuous.Lognormal'>
。有什么可能的解决方案?预先感谢!