Welcome to the GitHub repo for the Bayesian Statistics and Data Analysis at Uppsala University. This repo contains all necessary material and information for the course.
The course is build upon a similar course given at Aalto University. This course can be found here.
The course is given to second-year master students in the Statistics masters program and interested PhD students.
This course has a strong emphasis in computational aspects of Bayesian data analysis and using the latest computational tools.
See course syllabus with course goals here.
The basic prerequisites can be summarized in:
- Basic probability theory:
- probability, probability density function (pdf), distribution,
- sum, product rule, and Bayes’ rule
- expectation, mean, variance, median
- Some linear algebra and calculus
- Basic programming in R (main language) or Python
You can find a rough course plan with reading instructions here. More detailed reading instructions can be found here.
You can find the course schedule on TimeEdit here (search for course code 2ST128).
The course is graded with U (Underkänd/Fail), G (Godkänd/Pass), VG (väl godkänd/Pass with distinction).
To pass, you should pass all assignments and the mini-project at the set deadline.
On each assignment, if everything is correct (>90% of points), a VG point will be awarded. Similarly on the mini-project, if it is considered to be very good, 2 VG points can be awarded. A total of 7 or more VG points is needed to get VG on the course.
Grades are not subject to appeal. However, a grading decision must be reassessed if it is clearly incorrect. Grades can never be lowered. If students want grades to be reassessed, they should contact the course administration who will distribute a form for reassessment the students have to fill out.
If you fail or drop-out from the course you will need to re-take all assignments and redo the mini-project next time the course is given.
There are two follow up deadlines (or follow-up corrections) during the course. First, the assignments can be submitted again at the deadline of the project work. Then additional submissions of assignments will be corrected. Also, roughly one month after the end of the course, assignments can be turned in again. Assignments submitted in after the first deadline cannot get VG.
The project can also be turned in a second time a month after the end of the course. Then the student(s) need to submit both a project report, a PDF with presentation slides and a link to a video presentation of the mini-project. Projects submitted in after the first deadline cannot get VG.
In the case not anyone can attend the oral presentation known in advance, you can still pass and get a VG if you submit the project report, slides and a recorded video presentation 23.59 before the day of the presentation.
Below are the main references for the course.
- BDA3: Gelman, A., Carlin, J. B., Stern, H. S., Dunson, D. B., Vehtari, A., & Rubin, D. B. (2013). Bayesian Data Analysis (3rd edition) available for non-commercial purposes here
- TH04: O'Hagan, Tony. "Dicing with the unknown." Significance 1.3 (2004): 132-133. online
- VGG17: Vehtari, A, Gelman, A and Gabry, J. "Practical Bayesian model evaluation using leave-one-out cross-validation and WAIC." Statistics and computing 27.5 (2017): 1413-1432. online
Optional literature
- G17: Gelman. "Should we worry about rigged priors? A long discussion" (2017) online
- H21: Harrell. "Bayesian vs. Frequentist Statements About Treatment Efficacy" (2021) online
- SDT20: Stan Development Team "Prior choice recommendations" (2022) online
- VSGYG19: Vehtari, Simpson, Gelman, Yuling and Gabry "Pareto smoothed importance sampling" (2019) arXiv preprint arXiv:1507.02646, online
- M17: McElreath, "Markov Chains: Why Walk When You Can Flow?" (2017), online
- VGSCB19: Vehtari, Gelman, Simpson, Carpenter, Bürkner, "Rank-normalization, folding, and localization: An improved Rˆ for assessing convergence of MCMC" (2019) online
- B17: Betancourt "Diagnosing Biased Inference with Divergences" (2017) online
- B96: Bernardo "The Concept of Exchangeability and its Applications" (1996) online
- B20: Hiearchical modeling online
Below are some suggested complementary reading for the interested student.
- For regression models, their connection to statistical testing and causal analysis see Gelman, Hill and Vehtari, “Regression and Other Stories”.
- Richard McElreath’s Statistical Rethinking, 2nd ed book is easier than BDA3 and the 2nd ed is excellent. Statistical Rethinking doesn’t go as deep in some details, math, algorithms and programming as BDA course. Richard’s lecture videos of Statistical Rethinking: A Bayesian Course Using R and Stan are highly recommended even if you are following BDA3.
- For background prerequisites some students have found chapters 2, 4 and 5 in Kruschke, “Doing Bayesian Data Analysis” useful.
Aki Vehtari at Aalto University has recorded lectures with very similar content as the content presented in the course.
- AV10, Computational probabilistic programming
- AV11, Introduction to uncertainty and modelling
- AV21, Basics of Bayesian inference (1)
- AV22, Basics of Bayesian inference (2)
- AV31, Multiparameter models
- AV41, Monte Carlo
- AV42, Monte Carlo
- AV51, Markov Chain Monte Carlo
- AV52, Markov Chain Monte Carlo
- AV61, Probabilistic programming
- AV62, Probabilistic programming
- AV71, Hiearchical models
- AV72, Hiearchical models
- AV81, Model evaluation
- AV82, Model evaluation
- AV83, Model evaluation
- AV91, Decision analysis
- Stan YouTube channel contains good introductions to Stan and some basic suggestions on how to fit models
Online course discussions will be held at Studium.
Most lectures will be held on campus. There might be a guest lecture that will be held over Zoom. The computer lab will be held through zoom to facilitate many sessions.
You can find information and support for students on Zoom here.
Main Teacher: Måns Magnusson
Teaching assistant: Väinö Yrjänäinen
The course consists of rougly 8 blocks (weeks) of material. Each week consists of the following (expected workload in parenthesis):
- One to two lecture(s) and computer labs (approx. 2-4h per week)
- Online video material and reading assignments (approx. 2-6 h per week)
- An individual computer assignment (approx. 10-12 h per week)
Each week an individual computer assignment is done with a focus on computational aspects of Bayesian Statistics. Each assignment is completed individually and should follow the computer assignment_template. There is also a LaTeX template that can be used on Overleaf.
We also supply a Google Colab assignment template with all R packages installed (or rather code to install them). This is an alternative if there are problems with getting the code to run locally. The template can be found here or can be open directly in Google Colab here.
Students should return the computer assignments no later than Sunday 23.59 each week. A second possibility to turn in assignments is possible after the end of the course. For a detailed list of deadlines, see the course plan.
There are two complementary turn-ins of assignments, the last day of the course and roughly 2-4 weeks after the course ends. After the last possible time to turn in the assignment no more chances will be given. In this case, you will be failed on the course and you will need to retake the course next year.
Each assignment will be graded and evaluated within 10 working days.
Students are not allowed to show your assignments (text or code) to anyone. Only discuss the assignments with other students. The student that show their assignment to anyone else could also be considered to cheat. Similarly, on zoom labs, only screen share when you are in a separate zoom room with teaching assistants.
A guest lecture will be given on by Ph.D. student Valentin Zulj.
The last two weeks will focus on a course project where 2-3 students choose their data and will conduct a Bayesian data analysis of the given data.
You can find details and instructions on the project work here.
Frequently asked questions will be collected here.