This website provides materials, exercises and further readings for the lectures "Probabilistic Graphical Models" and "Deep Learning".

## Probabilistic Graphical Models

Lecture Slides

Python Code
Jupyter Python notebooks for the vehicle localization example from the lecture:
Note: You can either look at the results of the Jupyter notebooks directly in your browser or execute & modify the Jupyter notebooks yourself. For executing the Jupyter notebook, download bp.ipynb, install Jupyter (see Jupyter documentation) and execute the code. If you don't want to install Jupyter you can also visit https://try.jupyter.org/, upload the notebook and run the Python interpreter directly in your browser.

Exercise
• Modify the Python program bp.ipynb for a vehicle localization scenario with 4 lanes.
• Modify the Python program bp.ipynb for localizing two vehicles simultaneously. Introduce a new set of random variables representing the second vehicle and change the factor graph accordingly. Introduce additional pairwise factors which penalize the event of collision between the two vehicles.

Literature

## Deep Learning

Lecture Slides

Exercise
• Consider the logistic regression setup: a neural network with 2 input variables, 1 output variable and no hidden layers. Calculate the derivative required for implementing gradient descent with respect to the model parameters. Assume a sigmoid activation function.
• Implement a simple gradient descent algorithm for learning the model parameters. Train your model on the dataset below. Visualize the decision boundary.

x1     x2     y
2.7810 2.5505 0
1.4654 2.3621 0
3.3965 4.4002 0
1.3880 1.8502 0
3.0640 3.0053 0
7.6275 2.7592 1
5.3324 2.0886 1
6.9225 1.7710 1
8.6754 0.2420 1
7.6737 3.5085 1

• Add two hidden layers with 10 neurons, calculate the gradient update equations and implement the gradient descent algorithm. Visualize the decision boundary. What do you observe?

Literature