Bert de Vries and Tjalling Tjalkens.
Eindhoven University of Technology, Dept. of Electrical Engineering .
Corr. to [email protected]
This site contains materials for course 5SSB0 (Adaptive Information Processing) at TU/e.
You can view the lecture notes through the links below:
- 0 - Introduction
- 1 - Machine Learning Overview
- 2 - Probability Theory Review
- 3 - Bayesian Machine Learning
- 4 - Working with Gaussians
- 5 - Density Estimation
- 6 - Linear Regression
- 7 - Generative Classification
- 8 - Discriminative Classification
- 9 - Clustering with Gaussian Mixture Models
- 10- The EM Algorithm
- 11- Continuous Latent Variable Models - PCA and FA
- 12- Dynamic Latent Variable Models
- 13- Factor Graphs and Message Passing Algorithms
To open the lecture notes in IJulia, download the .ipynb files to your computer and start a Jupyter notebook by
$ jupyter notebook
You will now get a new page in your browser with a list of available notebooks. Alternatively, if you don't have Julia/Jupyter installed on your system, you can use JuliaBox to run the notebooks (see exact instructions below).
To run the interactive code examples in the lecture nodes, the following Julia packages are required: Cubature, DataFrames, Distributions, Interact, PyPlot, Optim. To install the required packages, execute:
map(Pkg.add, ["Cubature", "DataFrames", "CSV", "Distributions", "Interact", "PyPlot", "Optim", "SpecialFunctions"])Follow these instructions to run the code examples from the lecture notes online through JuliaBox.
-
(Create account) Go to https://www.juliabox.com/, create an account and log in.
-
(Install required packages) Go to the
Consoletab, and then start a Julia shell by typingjulia.In the Julia shell, execute the following command to install all required packages:
map(Pkg.add, ["Cubature", "DataFrames", "CSV", "Distributions", "Interact", "PyPlot", "Optim", "SpecialFunctions"])
Afterwards, type
exit()to quit Julia. -
(Import lecture notes into JuliaBox) Go to the
Synctab, and add the lecture notes git repository through the following actions: -
Paste
https://github.com/bertdv/AIP-5SSB0.gitin theGit Clone URLfield -
Click with the mouse in the
branchfield. You should getmasterin thebranchfield andAIP-5SSB0in thejuliaboxfield. -
Press the "+" button.
You can now open the lecture notes by going to the Jupyter tab (press the refresh button if the folder AIP-5SSB0 does not show up). Navigate to a specific lesson and click the .ipynb file to open the notebook.
Install Docker from https://www.docker.com.
Finally from the root directory of the project issue
$ docker build -t aip-5ssb0-bundler .
$ docker run --rm \
--volume ${PWD}/lessons:/aip-5ssb0-bundler/lessons \
--volume ${PWD}/output:/aip-5ssb0-bundler/output \
aip-5ssb0-bundlerto obtain a bundle.pdf file containing all lessons in the output directory.
Sometimes it may be convenient or necessary to get access to Jupyter while it's running inside the Docker image. The following procedure can be used to achieve this:
$ docker run --rm -it \
--volume ${PWD}/lessons:/aip-5ssb0-bundler/lessons \
--volume ${PWD}/output:/aip-5ssb0-bundler/output \
--publish 8888:8888 \
aip-5ssb0-bundler jupyter notebook --ip 0.0.0.0Then open the URL Jupyter reports in a browser, substituting
0.0.0.0 with localhost.
Adaptive Information Processing (5SSB0) by Bert de Vries, Tjalling Tjalkens and Marco Cox is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License
