bertdv / AIP-5SSB0

5SSB0 -- Adaptive Information Processing course notes
Other
11 stars 5 forks source link

Adaptive Information Processing

Bert de Vries and Tjalling Tjalkens.
Eindhoven University of Technology, Dept. of Electrical Engineering .
Corr. to bert.de.vries@tue.nl

This site contains materials for course 5SSB0 (Adaptive Information Processing) at TU/e.

Read-only versions

You can view the lecture notes through the links below:

Opening the lecture notes locally

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"])

Running the lecture notes on JuliaBox.com

Follow these instructions to run the code examples from the lecture notes online through JuliaBox.

  1. (Create account) Go to https://www.juliabox.com/, create an account and log in.

  2. (Install required packages) Go to the Console tab, and then start a Julia shell by typing julia.

    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.

  3. (Import lecture notes into JuliaBox) Go to the Sync tab, and add the lecture notes git repository through the following actions:

    1. Paste https://github.com/bertdv/AIP-5SSB0.git in the Git Clone URL field
    2. Click with the mouse in the branch field. You should get master in the branch field and AIP-5SSB0 in the juliabox field.
    3. 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.

Creating a PDF bundle of all lessons

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-bundler

to obtain a bundle.pdf file containing all lessons in the output directory.

Running Jupyter using the Docker image

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.0

Then open the URL Jupyter reports in a browser, substituting 0.0.0.0 with localhost.

License

Creative Commons License
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