-
-
Notifications
You must be signed in to change notification settings - Fork 16
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
e80d85d
commit dba2911
Showing
3 changed files
with
174 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
on: [push] | ||
|
||
jobs: | ||
paper: | ||
runs-on: ubuntu-latest | ||
name: Paper Draft | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
- name: Build draft PDF | ||
uses: openjournals/openjournals-draft-action@master | ||
with: | ||
journal: jose | ||
# This should be the path to the paper within your repo. | ||
paper-path: paper/paper.md | ||
- name: Upload | ||
uses: actions/upload-artifact@v1 | ||
with: | ||
name: paper | ||
# This is the output path where Pandoc will write the compiled | ||
# PDF. Note, this should be the same directory as the input | ||
# paper.md | ||
path: paper/paper.pdf |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,96 @@ | ||
|
||
@software{Quarto:2022, | ||
author = {Allaire, J.J. and Teague, Charles and Scheidegger, Carlos and Xie, Yihui and Dervieux, Christophe}, | ||
doi = {10.5281/zenodo.5960048}, | ||
month = jan, | ||
title = {{Quarto}}, | ||
url = {https://github.com/quarto-dev/quarto-cli}, | ||
version = {1.2}, | ||
year = {2022} | ||
} | ||
|
||
@article{kumar:2019, | ||
doi = {10.21105/joss.01143}, | ||
url = {https://doi.org/10.21105/joss.01143}, | ||
year = {2019}, publisher = {The Open Journal}, | ||
volume = {4}, number = {33}, | ||
pages = {1143}, | ||
author = {Ravin Kumar and Colin Carroll and Ari Hartikainen and Osvaldo Martin}, | ||
title = {ArviZ a unified library for exploratory analysis of Bayesian models in Python}, | ||
journal = {Journal of Open Source Software} } | ||
|
||
@book{martin:2018, | ||
edition = {2 edition}, | ||
title = {Bayesian {Analysis} with {Python}: {Introduction} to {Statistical} {Modeling} and {Probabilistic} {Programming} {Using} {PyMC3} and {ArviZ}}, | ||
shorttitle = {Bayesian {Analysis} with {Python}}, | ||
publisher = {Packt Publishing}, | ||
author = {Martin, Osvaldo}, | ||
month = dec, | ||
year = {2018}, | ||
} | ||
|
||
@book{martin:2021, | ||
doi = {10.1201/9781003019169}, | ||
url = {https://doi.org/10.1201/9781003019169}, | ||
address = {Boca Raton}, | ||
title = {Bayesian {Modeling} and {Computation} in {Python}}, | ||
isbn = {978-0-367-89436-8}, | ||
author = {Martin, Osvaldo A. and Kumar, Ravin and Lao, Junpeng}, | ||
month = dec, | ||
year = {2021}, | ||
} | ||
|
||
@book{martin:2024, | ||
title = {Bayesian {Analysis} with {Python}: {A} {Practical} {Guide} to probabilistic modeling}, | ||
edition = {3rd Edition}, | ||
shorttitle = {Bayesian {Analysis} with {Python}}, | ||
publisher = {Packt Publishing}, | ||
author = {Martin, Osvaldo}, | ||
month = Jan, | ||
year = {2024}, | ||
} | ||
|
||
@article{Capretto:2022, | ||
title={Bambi: A Simple Interface for Fitting Bayesian Linear Models in Python}, | ||
volume={103}, | ||
url={https://www.jstatsoft.org/index.php/jss/article/view/v103i15}, | ||
doi={10.18637/jss.v103.i15}, | ||
number={15}, | ||
journal={Journal of Statistical Software}, | ||
author={Capretto, Tomás and Piho, Camen and Kumar, Ravin and Westfall, Jacob and Yarkoni, Tal and Martin, Osvaldo A}, | ||
year={2022}, | ||
pages={1–29} | ||
} | ||
|
||
@article{pymc:2023, | ||
title={PyMC: A Modern and Comprehensive Probabilistic Programming Framework in Python}, | ||
author={Abril-Pla, Oriol and Andreani, Virgile and Carroll, Colin and Dong, Larry and Fonnesbeck, Christopher J. and Kochurov, Maxim and Kumar, Ravin and Lao, Jupeng and Luhmann, Christian C. and Martin, Osvaldo A. and Osthege, Michael and Vieira, Ricardo and Wiecki, Thomas and Zinkov, Robert}, | ||
journal={PeerJ Computer Science}, | ||
volume={9}, | ||
pages={e1516}, | ||
year={2023}, | ||
doi={10.7717/peerj-cs.1516} | ||
} | ||
|
||
@article{Icazatti:2023, | ||
doi = {10.21105/joss.05499}, | ||
url = {https://doi.org/10.21105/joss.05499}, | ||
year = {2023}, | ||
publisher = {The Open Journal}, | ||
volume = {8}, | ||
number = {89}, | ||
pages = {5499}, | ||
author = {Alejandro Icazatti and Oriol Abril-Pla and Arto Klami and Osvaldo A. Martin}, | ||
title = {PreliZ: A tool-box for prior elicitation}, | ||
journal = {Journal of Open Source Software}, | ||
} | ||
@misc{gelman:2020, | ||
title={Bayesian Workflow}, | ||
author={Andrew Gelman and Aki Vehtari and Daniel Simpson and Charles C. Margossian and Bob Carpenter and Yuling Yao and Lauren Kennedy and Jonah Gabry and Paul-Christian Bürkner and Martin Modrák}, | ||
year={2020}, | ||
eprint={2011.01808}, | ||
archivePrefix={arXiv}, | ||
primaryClass={stat.ME} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
--- | ||
title: 'Course Materials for an Introduction to Bayesian Modeling in Spanish' | ||
tags: | ||
- Python | ||
- Bayesian statistics | ||
- Bayesian modeling | ||
- Exploratory analysis of Bayesian models | ||
authors: | ||
- name: Osvaldo A Martin | ||
orcid: 0000-0001-7419-8978 | ||
corresponding: true | ||
affiliation: 1 | ||
affiliations: | ||
- name: IMASL-CONICET. Universidad Nacional de San Luis. San Luis, Argentina | ||
index: 1 | ||
date: 19 Decemeber 2023 | ||
bibliography: paper.bib | ||
--- | ||
|
||
# Summary | ||
|
||
|
||
*Modelado Bayesiano: Una introducción al modelado probabilista* is a course aimed at advanced undergraduate students or graduate students of STEM with little to no prior knowledge of statistics. The course consists of 8 units and is taught in Spanish. The material has been used under several modalities, including intense 5-day courses, semester-long courses, and both in-person and remote learning. Besides the exercises at the end of each chapter, students are encouraged to explore the examples by changing the values of variables, using their datasets, collaborating with classmates, etc. The material is hosted online using Quarto [@Quarto:2022]. | ||
|
||
|
||
# Statement of need | ||
|
||
Bayesian statistics has emerged as a highly flexible and powerful technique, witnessing increased adoption in recent years. In contrast, there is a lack of widespread courses at the university level specifically addressing Bayesian methods, and when they do they tend to be very heavy on the theoretical side, and/or computational tools are absent or they tend to be outdated. Furthermore, the challenge intensifies when considering the limited availability of resources in Spanish. While English-language resources and courses exist, they are often geared toward first-world audiences and can be prohibitively expensive for students and professionals in Latin America. This linguistic and economic disparity exacerbates the exclusion of a significant portion of the scientific and academic community that could greatly benefit from Bayesian statistics. We believe this course contributes to the democratization of Bayesian statistics by providing a free and accessible resource in Spanish. | ||
|
||
|
||
# Target Audience | ||
|
||
The course is aimed at graduate students or advanced undergrad students of STEM careers, with working knowledge of Python or a similar language. In our experience, students with no prior knowledge of Python, but knowledge of high-level languages like R or Julia, can also follow the course with little extra guidance. | ||
|
||
# Content | ||
|
||
The main objective of the course is to provide students with a practical understanding of Bayesian modeling, allowing them to formulate models that address specific scientific questions. It is intended as the first Bayesian course. It seeks to familiarize students with key computational tools, especially PyMC [@pymc:2023], ArviZ [@kumar:2019], Bambi @Capretto:2022, and Preliz [@Icazatti:2023], to perform Bayesian data analysis effectively. However, the focus is on practical statistical ideas and hence the material could be easily adapted to use a different set of tools even from other programming languages like R or Julia. Additionally, the course content encompasses basic concepts of probability, Bayesian inference, probabilistic programming, generalized linear models, hierarchical models, sampling diagnostics, variable selection, and model selection. All these concepts are discussed under the framework of the Bayesian workflow [@gelman:2020] and notions of exploratory analysis of Bayesian models. In summary, the course is designed to equip students with the skills and knowledge necessary to effectively and critically apply Bayesian statistics. | ||
|
||
|
||
The full course includes both lectures and practical lab sessions, emphasizing a project-based approach. Encouragement is given for students to utilize their datasets during the course. To complete the course, students are required to work on a final project. Collaborative work in pairs is actively encouraged, but individual projects are also allowed. Students must apply the acquired knowledge to their datasets or find openly available datasets (with guidance from tutors if needed). They must develop at least two alternative models, conduct thorough analyses, perform sampling diagnostics, and articulate and defend their conclusions. Whenever feasible, students are expected to present their results to their peers. This format helps students to apply the concepts to their domain problems and encourages discussion of modeling decisions, conclusions, and motivations for the analysis. | ||
|
||
Student feedback has been very positive and many of the examples and problems originally designed for this course have been further developed into the books *Bayesian with Python* [@martin:2018; @martin:2024] and *Bayesian Modeling and Computation in Python* [@martin:2021], usually the examples are first tested and evaluated with students and then included in the books. | ||
|
||
# Conclusions | ||
|
||
Altogether, this material offers a practical and conceptual introduction to Bayesian modeling. By providing a free and comprehensive resource in Spanish, the course contributes significantly to the democratization of Bayesian statistics, fostering a diverse and inclusive community of learners well-equipped to apply these advanced statistical methods in their scientific endeavors. | ||
|
||
# Acknowledgments | ||
|
||
We would like to thank Pablo Garay for his help proofreading the material and all the students who have taken this course and provided valuable feedback. We also thank the many contributors to the open-source software packages used in this course. We received the support of: | ||
|
||
* the National Agency of Scientific and Technological Promotion (ANPCyT), Grant PICT-02212. | ||
* the National Scientific and Technical Research Council (CONICET), Grant PIP-0087. | ||
|
||
# References |