2013-12-19 5 views
0

Ответы на вопрос, который должен был быть здесь, а не на старые группы Google, Я искал параметризацию линейной модели с распределенной бета-версией в PyMC, которую предложил Крис Фоннебек являются:Бета-распределенная линейная модель в PyMC

«просто перепараметризация беты, где \ альфа = \ му \ фита и \ бета = (1- \ мю) \ Phi Таким образом, все, что вам нужно будет что-то вроде:. new_beta = Lambda ('new_beta', лямбда x = x, mu = mu, phi = phi: beta_like (x, mu * phi, (1-mu) * phi))

, что здорово - мой следующий вопрос - элемент линейной модели, который, как мне кажется, hould будет \ му, например:

$$ \ мю = \ ехр (B_0 + b_1x) $$

и с помощью гаммы-распределенных \ Фи:

phi = Gamma('phi', alpha=0.001, beta=0.001) 

Является ли это правильно ? NB мы на PyMC2 здесь

Thanks Аарон

ответ

0

Это зависит от того, как вы хотите, чтобы ваша линейная модель влияет на бета-модели. Поскольку у вас есть mu, описанный здесь, это не среднее значение бета, его просто нормализующая константа среднего значения. Если вы хотите, альфа и бета, описанный как среднее значение и дисперсия бета, это что-то вроде следующего:

alpha = mu * (mu*(1-mu)/var - 1) 
beta = (1 - mu) * (mu*(1-mu)/var - 1) 

Может быть, более простой подход был бы с точки зрения среднего mu и размера выборки nu:

alpha = mu * nu 
beta = (1-mu) * nu 
+0

Отлично, я попробую и отправлю отчет. Большое спасибо! –

Смежные вопросы