2015-09-30 25 views
2

我試圖使用PyMC3實現分類變量及其交互作用的分層模型。在R,該公式將採取類似的形式:PyMC3中的分層建模分類變量交互

y ~ x1 + x2 + x1:x2 

然而,在本教程https://pymc-devs.github.io/pymc3/GLM-hierarchical/#partial-pooling-hierarchical-regression-aka-the-best-of-both-worlds他們明確地說,GLM不玩分層造型美觀大方呢。

那麼我怎麼去添加x1:x2項呢?它會是一個具有兩個分類父母(x1和x2)的分類變量嗎?

回答

3

您可以手動將交互項添加到線性模型中。你將不得不添加3個迴歸係數(貝塔斯)和一個截距。然後你可以估計你的y,可能性如下:

y = pm.Normal('regression', 
       mu=intercept + beta_x1 * data_x1 + beta_x2 * data_x2 + beta_interaction * data_x1 * data_x2, 
       sd=sigma, 
       observed=data_y) 

這些參數本身都可以有hyperpriors來構建分層模型。