git clone
the repository andcd
into the root directory.- For the exercise Jupyter notebooks
- create a virtual environment (recommended) e.g. with venv, conda or other.
- install python dependencies with
pip install -r requirements.txt
in a virtual environment. Note: the fake-data-for-learning package has some non-python dependencies; see its installation instructions.
Slides are built as part of the repo's ci-cd pipeline, and can be accessed by clicking on the Artifacts
section of a workflow run, as in the below screenshot
Examples and exercises: graphical models, probability polytopes, and simpson's paradox
In the exercise notebooks and requirements.txt
you see which python packages I used in creating and solving the exercises, though this list is far from exhaustive. Below are some (additional) python packages that may be useful
I follow a semantic-versioning-like convention for releases of <workshop-year>.<minor>.<patch>
. For now, the minor
value will be an incrementing integer; as the module being developed in this repo is not planned to be pushed to pypi, I won't be very strict, and will likely keep minor
at 0 even if the api changes. If it looks like I would ever give more than one workshop a year, the minor
value could be used for the month of the workshop.
If the release is for a new workshop year, then first manually change the version in the code-base to <new-year>.0.0
. This release need not be a tagged release, as it is the same as the final release of the previous workshop in an earlier year.
Once an initial release has been created for a new workshop, create subsequent tagged releases by using bump2version.
Note: I do not follow Semantic Versioning for this project. For the first digit (in semver, major
), I use the year of the target workshop, and for the last (in semver patch
), I increment when a chunk of work is done towards giving the workshop. The middle digit (in semver, minor
) stays on 0 until I give the workshop, when it bumps to 1. Fixes to the given workshop get reflected in the patch versions yyyy.1.<patch-version>
.
Fix typos in discrete geometry slides, including definition of d-separation
Refactor introduction and concluding lectures, as well as their exercises
Add simpson's paradox content and exercises to the discrete geometry lecture
Add ci tests of package and notebooks for mac and windows (latest) operating systems
Add github actions workflow for automated testing, with unit, notebook-run and latex-slides-build
Add github actions job for continuous delivery of slide artifacts
Add example of model selection pipeline for artificial credit scoring data
Add initial exercises and methods for Simpson's paradox.
Created prior to the above versioning scheme, workshop at University of Ljublana in February, 2020.