Anar al contingut

PyMC

De L'Enciclopèdia, la wikipedia en valencià

PyMC (anteriorment conegut com PyMC3) és un paquet de Python per a la modelació estadística bayesiano i l'aprenentage automàtic provabilístic. Oferix varis algoritmes d'inferència principalment métodos Monte Carlo via cadena de Markov i Inferència Variacional.[1][2][3][4][5] PyMC ha segut reescrit des de zero de la versió anterior del software PyMC2.[6] A diferència de la versió anterior, que usava extensions de Fortran per a realisar càlculs, PyMC utilisa PyTensor, una biblioteca de Python que permet definir, optimisar i evaluar de manera eficient expressions matemàtiques que involucren apanys multidimensionales. A partir de la versió 3.8, PyMC utilisa ArviZ per a realisar gràfics, diagnòstic i evaluacions estadístiques. PyMC i Stan són els dos llenguages de programació provabilística més populars.[7] PyMC és un proyecte de còdic obert, desenrollat per la comunitat i patrocinat fiscalmente NumFOCUS.[8]


PyMC s'ha utilisat per a resoldre problemes d'inferència en varis dominis científics, inclosa l'astronomia,[9][10] epidemiologia,[11][12] biologia molecular,[13] cristalografia,[14][15] química,[16] ecologia[17][18] i psicologia.[19] Les versions anteriors de PyMC també es varen usar àmpliament, per eixemple, en ciència del clima,[20] salut pública,[21] neurociencia,[22] i parasitología.[23][24]


Des de que Theano anunciara plans per a interrompre el seu desenroll en 2017,[25] l'equip de PyMC va evaluar TensorFlow Probability com backend computacional,[26] pero va decidir en 2020 fer-se càrrec del desenroll de Theano.[27] Gran part del còdic base de Theano s'ha refactorizado i s'ha afegit la compilació a través de JAX[28] i Numba. L'equip de PyMC ha llançat el backend computacional revisat, en el nom de PyTensor i continua en el desenroll de PyMC.[29]

Motors d'inferència

[editar | editar còdic]

PyMC implementa varis algoritmes de Monte Carlo (MCMC) via cadena de Markov basats en gradient i no basats en gradient per a l'inferència Bayesiana i métodos variacionales basats en gradient.

  • Algoritmes basats en MCMC:
    • No-U-Turn Sampler[30] (NUTS) és un tipo de Hamiltonian Monte Carlo, i és el motor predeterminat de PyMC per a variables contínues
    • Metropolis–Hastings, el motor predeterminat de PyMC per a variables discretes
    • Mont Carlo seqüencial (Sequential Monte-Carlo) para posteriors estàtics i per a càlcul bayesiano aproximat
  • Algoritmes d'inferència variacional:
    • Inferència variacional de caixa negra[31]

Atres llectura

[editar | editar còdic]

Vore també

[editar | editar còdic]
  • Stan és un llenguage de programació provabilístic per a inferència estadística escrit en C++
  • ArviZ una biblioteca de Python per a l'anàlisis exploratori de models Bayesianos

Referències

[editar | editar còdic]
  1. Abril-Pla O, Andreani V, Carroll C, Dong L, Fonnesbeck CJ, Kochurov M, Kumar R, Lao J, Luhmann CC, Martin OA, Osthege M, Vieira R, Wiecki T, Zinkov R. (2023) PyMC: a modern, and comprehensive probabilistic programming framework in Python. PeerJ Comput. Sci. 9:i1516 doi:10.7717/peerj-cs.1516
  2. Salvatier J, Wiecki TV, Fonnesbeck C. (2016) Probabilistic programming in Python using PyMC3. PeerJ Computer Science 2:i55 doi:10.7717/peerj-cs.55
  3. Martin (2016). Bayesian Analysis with Python (en en), Packt Publishing Ltd, pp. 31–60. ISBN 9781785889851.
  4. Martin; Kumar, {{{nom2}}}; Lao, {{{nom3}}} (2021). Bayesian Modeling and Computation in Python (en en), CRC-press, pp. 1–420. ISBN 9780367894368.
  5. Davidson-Pilon (2015-09-30). Bayesian Methods for Hackers: Probabilistic Programming and Bayesian Inference (en en), Addison-Wesley Professional. ISBN 9780133902921.
  6. «documentation» (en en). Consultat el 2017-09-20.
  7. «The Algorithms Behind Probabilistic Programming». Consultat el 2017-03-10.
  8. «[1]», NumFOCUS | Open Code = Better Science. Consultat el 2017-03-10.
  9. «On the Fermi-GBM Event 0.4 s after GW150914».The Astrophysical Journal Letters.827(2)
    L38.ISSN 2041-8205.doi:10.3847/2041-8205/827/2/L38.
  10. Hilbe, Joseph M.; Souza, {{{nom2}}}; Ishida, {{{nom3}}} (2017-04-30). Bayesian Models for Astrophysical Data: Using R, JAGS, Python, and Stan (en en), Cambridge University Press. ISBN 9781108210744.
  11. «Inferring the effectiveness of government interventions against COVID-19».Science.371(6531)
    eabd9338.doi:10.1126/science.abd9338.
  12. Systrom. «Rt.live Github repository». Rt.live. Consultat el 2021-01-10.
  13. «Dose-Dependent Regulation of Alternative Splicing by MBNL Proteins Reveals Biomarkers for Myotonic Dystrophy».PLOS Genetics.12(9)
    i1006316.ISSN 1553-7404.doi:10.1371/journal.pgen.1006316.
  14. «Asymmetry in serial femtosecond crystallography data».Acta Crystallographica Section A.73(2)
    93–101.ISSN 2053-2733.doi:10.1107/s2053273316018696.
  15. «Estimating the difference between structure-factor amplitut using multivariate Bayesian inference».Acta Crystallographica Section A.72(3)
    406–411.ISSN 2053-2733.doi:10.1107/S2053273316003430.
  16. «Detection of methylation, acetylation and glycosylation of protein residues by monitoring13C chemical-shift changes: A quàntum-chemical study».PeerJ.4
    i2253.ISSN 2167-8359.doi:10.7717/peerj.2253.
  17. (2017).«Evaluation of Bayesian source estimation methods with Prairie Grass observations and Gaussian plume model: A comparison of likelihood functions and distance measures».Atmospheric Environment.152
    519–530.doi:10.1016/j.atmosenv.2017.01.014.
  18. «Age and Growth of An Outbreaking Acanthaster cf. solaris Population within the Great Barrier Reef».Diversity.9(1)
    18.doi:10.3390/d9010018.
  19. «Peripheral Visual Cues: Their Fate in Processing and Effects on Attention and Temporal-Order Perception».Frontiers in Psychology.7ISSN 1664-1078.doi:10.3389/fpsyg.2016.01442.
  20. (2015).«Predicting climate-driven regime shifts versus rebound potential in coral reefs».Nature.518(7537)
    94–97.doi:10.1038/nature14140.
  21. «National, Regional, and Global Trends in Infertility Prevalence Since 1990: A Systematic Analysis of 277 Health Surveys».PLOS Medicine.9(12)
    i1001356.ISSN 1549-1676.doi:10.1371/journal.pmed.1001356.
  22. (2011).«Subthalamic nucleus stimulation reverses mediofrontal influence over decision threshold».Nature Neuroscience.14(11)
    1462–1467.doi:10.1038/nn.2925.
  23. «A Long Neglected World Malaria Map: Plasmodium vivax Endemicity in 2010».PLOS Neglected Tropical Diseases.6(9)
    i1814.ISSN 1935-2735.doi:10.1371/journal.pntd.0001814.
  24. «Global numbers of infection and disease burden of soil transmitted helminth infections in 2010».Parasites & Vectors.7
    37.ISSN 1756-3305.doi:10.1186/1756-3305-7-37.
  25. Plantilla:Cita llistade correu
  26. Developers. «Theano, TensorFlow and the Future of PyMC». PyMC Developers. Consultat el 2019-01-25.
  27. «The Future of PyMC3, or: Theano is Dead, Long Live Theano». PyMC Developers. Consultat el 2021-01-10.
  28. Bradbury. «JAX». GitHub. Consultat el 2021-01-10.
  29. «PyMC Timeline». PyMC Timeline. Consultat el 2021-01-10.
  30. «The No-U-Turn Sampler: Adaptively Setting Path Lengths in Hamiltonian Monte Carlo».Journal of Machine Learning Research.15
    pp. 1593–1623.
  31. «Automatic Variational Inference in Stan».1506(3431)


Referències

[editar | editar còdic]