Stan (programari)
Stan és un llenguatge de programació probabilístic per a inferència estadística escrit en C++. El llenguatge Stan s'utilitza per especificar un model estadístic (bayesià) amb un programa imperatiu que calcula la funció de densitat de probabilitat logarítmica.[1]
Stan té llicència sota la nova llicència BSD. Stan rep el seu nom en honor a Stanislaw Ulam, pioner del mètode Montecarlo.
Stan va ser creat per un equip de desenvolupament format per 34 membres que inclou Andrew Gelman, Bob Carpenter, Matt Hoffman i Daniel Lee.[2]
Interfícies
[modifica]Es pot accedir al propi llenguatge Stan a través de diverses interfícies: [3]
- CmdStan: un executable de línia d'ordres per a l'intèrpret d'ordres,
- CmdStanR i rstan - biblioteques de programari R,
- CmdStanPy i PyStan: biblioteques per al llenguatge de programació Python,
- CmdStan.rb - biblioteca per al llenguatge de programació Ruby,
- MatlabStan: integració amb l'entorn de computació numèrica MATLAB,
- Stan.jl: integració amb el llenguatge de programació Julia,
- StataStan: integració amb Stata.
A més, es proporcionen interfícies de nivell superior amb paquets que utilitzen Stan com a backend, principalment en llenguatge R : [4]
- rstanarm proporciona un reemplaçament directe per als models freqüentistes proporcionats per la base R i lme4 utilitzant la sintaxi de la fórmula R;
- brms proporciona una àmplia gamma de models lineals i no lineals utilitzant la sintaxi de la fórmula R;
- profeta proporciona procediments automatitzats per a la previsió de sèries temporals.
Algorismes
[modifica]Stan implementa algorismes de la cadena de Màrkov Monte Carlo (MCMC) basats en gradients per a inferència bayesiana, mètodes bayesians variacionals estocàstics i basats en gradients per a inferència bayesiana aproximada i optimització basada en gradients per a l'estimació de màxima probabilitat penalitzada.
- Algoritmes MCMC:
- Hamiltonià Montecarlo (HMC)
- No-U-Turn sampler (NUTS), una variant de l'HMC i del motor MCMC predeterminat de Stan
- Algorismes d'inferència variacional:
- Inferència variacional de diferenciació automàtica
- Algoritmes d'optimització:
- BFGS de memòria limitada (algorisme d'optimització predeterminat de Stan)
- Algorisme de Broyden–Fletcher–Goldfarb–Shanno
- Aproximació de Laplace per a estimacions clàssiques d'error estàndard i posteriors bayesians aproximats
Referències
[modifica]- ↑ «Stan» (en anglès). [Consulta: 24 març 2024].
- ↑ «Stan: A Probabilistic Programming Language» (en anglès). [Consulta: 24 març 2024].
- ↑ «Stan Docs - Stan User’s Guide» (en anglès). [Consulta: 24 març 2024].
- ↑ Gabry, Jonah. «The current state of the Stan ecosystem in R» (en anglès). Statistical Modeling, Causal Inference, and Social Science. [Consulta: 25 agost 2020].