PyMC
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]- ↑ 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
- ↑ Salvatier J, Wiecki TV, Fonnesbeck C. (2016) Probabilistic programming in Python using PyMC3. PeerJ Computer Science 2:i55 doi:10.7717/peerj-cs.55
- ↑ Martin (2016). Bayesian Analysis with Python (en en), Packt Publishing Ltd, pp. 31–60. ISBN 9781785889851.
- ↑ Martin; Kumar, {{{nom2}}}; Lao, {{{nom3}}} (2021). Bayesian Modeling and Computation in Python (en en), CRC-press, pp. 1–420. ISBN 9780367894368.
- ↑ Davidson-Pilon (2015-09-30). Bayesian Methods for Hackers: Probabilistic Programming and Bayesian Inference (en en), Addison-Wesley Professional. ISBN 9780133902921.
- ↑ «documentation» (en en). Consultat el 2017-09-20.
- ↑ «The Algorithms Behind Probabilistic Programming». Consultat el 2017-03-10.
- ↑ «[1]», NumFOCUS | Open Code = Better Science. Consultat el 2017-03-10.
- ↑ «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.
- ↑ 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.
- ↑ «Inferring the effectiveness of government interventions against COVID-19».Science.371(6531)
- eabd9338.doi:10.1126/science.abd9338.
- ↑ Systrom. «Rt.live Github repository». Rt.live. Consultat el 2021-01-10.
- ↑ «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.
- ↑ «Asymmetry in serial femtosecond crystallography data».Acta Crystallographica Section A.73(2)
- 93–101.ISSN 2053-2733.doi:10.1107/s2053273316018696.
- ↑ «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.
- ↑ «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.
- ↑ (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.
- ↑ «Age and Growth of An Outbreaking Acanthaster cf. solaris Population within the Great Barrier Reef».Diversity.9(1)
- 18.doi:10.3390/d9010018.
- ↑ «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.
- ↑ (2015).«Predicting climate-driven regime shifts versus rebound potential in coral reefs».Nature.518(7537)
- 94–97.doi:10.1038/nature14140.
- ↑ «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.
- ↑ (2011).«Subthalamic nucleus stimulation reverses mediofrontal influence over decision threshold».Nature Neuroscience.14(11)
- 1462–1467.doi:10.1038/nn.2925.
- ↑ «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.
- ↑ «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.
- ↑ Plantilla:Cita llistade correu
- ↑ Developers. «Theano, TensorFlow and the Future of PyMC». PyMC Developers. Consultat el 2019-01-25.
- ↑ «The Future of PyMC3, or: Theano is Dead, Long Live Theano». PyMC Developers. Consultat el 2021-01-10.
- ↑ Bradbury. «JAX». GitHub. Consultat el 2021-01-10.
- ↑ «PyMC Timeline». PyMC Timeline. Consultat el 2021-01-10.
- ↑ «The No-U-Turn Sampler: Adaptively Setting Path Lengths in Hamiltonian Monte Carlo».Journal of Machine Learning Research.15
- pp. 1593–1623.
- ↑ «Automatic Variational Inference in Stan».1506(3431)
Referències
[editar | editar còdic]
- Este artícul conté una traducció derivada de «PyMC» de Wikipedia en castellà publicada baix la Llicència de documentació lliure de GNU i la Llicència Creative Commons Reconeiximent-CompartirIgual 4.0 Internacional.