Я использую PyMC3 для запуска байесовских моделей на моих данных.
Я новичок в байесовском моделировании, но, согласно сообщениям в некоторых блогах , Википедии и QA с этого сайта, кажется правильным подход использовать фактор Байеса и критерий BIC, чтобы иметь возможность выбрать, какая модель лучше всего представляет мои данные (та, которая генерирует мои данные).
Чтобы вычислить коэффициент Байеса, мне нужна относительная вероятность для моделей, которые я хочу сравнить. Возможно, это немного смущает меня, но я думаю, что есть два способа получить вероятность (поправьте меня, если я ошибаюсь):
алгебраический способ, когда модель проста: см. страницу примера Байеса в Википедии
числовой способ: это то, что делает PyMC3 с алгоритмами MCMC
Как я могу получить доступ к вероятности и сравнить мои модели в PyMC3? Я нашел model.logp
метод, который в соответствии с документом является «функция плотности вероятности журнала». Могу ли я использовать это, чтобы получить вероятность?
Бонусный вопрос: при сравнении двух моделей вычисляется соотношение между обеими вероятностями. Что произойдет, если вы захотите сравнить несколько моделей?
Конкретный пример PyMC3 был бы очень полезен!
источник