Depois de fazer algumas pesquisas sobre o tópico, notei um déficit surpreendente de pacotes de inferência e bibliotecas que dependem de métodos de passagem de mensagens ou otimização para Python e R.
Que eu saiba, esses métodos são extremamente úteis. Por exemplo, apenas para uma propagação de crenças da Bayes Network (dirigida, acíclica) deve ser capaz de fornecer respostas exatas. No entanto, a maioria dos softwares de inferência disponíveis on-line (por exemplo, STAN, BUGS, PyMC) depende dos métodos do MCMC.
No caso de Python, até onde sei, nem o PyMC, nem o scikit-learn nem o model stats incluem algoritmos de inferência variados, como propagação de crenças, métodos de transmissão de mensagens ou qualquer uma de suas variantes.
Por que é que? Esses métodos são menos utilizados na prática porque são vistos não tão poderosos ou genéricos quanto seus colegas do MCMC? ou É simplesmente uma questão de falta de mão de obra e tempo?
fonte
Respostas:
Você já olhou para Edward ? A API de inferência suporta, entre outras coisas, inferência variacional:
KL(p∥q)
fonte