Używam PyMC3 do uruchamiania modeli bayesowskich na moich danych.
Jestem nowy w modelowaniu bayesowskim, ale według niektórych postów na blogach , Wikipedii i kontroli jakości z tej witryny wydaje się, że poprawnym podejściem jest zastosowanie współczynnika Bayesa i kryterium BIC, aby móc wybrać model najlepiej reprezentujący moje dane (ten, który generuje moje dane).
Aby obliczyć współczynnik Bayesa, potrzebuję względnego prawdopodobieństwa modeli, które chcę porównać. To może być dla mnie trochę mylące, ale myślę, że są dwa sposoby na uzyskanie prawdopodobieństwa (popraw mnie, jeśli się mylę):
algebraiczny sposób, gdy model jest prosty: patrz przykład Wikipedii strona czynnik Bayesa
sposób numeryczny: to właśnie robi PyMC3 z algorytmami MCMC
Jak mogę uzyskać dostęp do prawdopodobieństwa, a więc porównać moje modele w PyMC3? Znalazłem model.logp
metodę, która według doktora jest „logarytmiczną funkcją gęstości prawdopodobieństwa”. Czy mogę to wykorzystać, aby uzyskać prawdopodobieństwo?
Pytanie dodatkowe: gdy porównuje się dwa modele, oblicza się stosunek obu prawdopodobieństw. Co się stanie, jeśli chcesz porównać kilka modeli?
Konkretny przykład PyMC3 byłby bardzo pomocny!
źródło