Image logo Bob conference 2019.

Tutorial: 16:20-17:50 (deutsch)

Christoph Schmalhofer

Einstieg in die Probabilistische Programmierung

Die letzten Jahre hat Probabilistisches Programmieren Fahrt aufgenommen. Es wird mehr geforscht, publiziert, konferiert, entwickelt und auch angewendet.

Der Einstieg ist durch die Integration in Mainstream-Sprachen wie Haskell, Scala und Python einfach geworden.

Probabilistische Programme sind lernfähige Simulationen

Kurz vorgestellt - alte Bekannte als Probabilistische Programme:

  • Naive Bayes
  • Markov-Kette
  • Bayes-Netze
  • Gauß-Prozesse

Basics:

  • Eigenbau einer diskreten Wahrscheinlichkeitsmonade (Scala)
  • die Sampling-Variante von Rainier (Scala))
  • Olegs Freie Wahrscheinlichkeitsmonade (Haskell))

Kurze Vorstellung der Algorithmen:

  • MCMC
  • Variational Bayesian Methods

Deep Probabilistic Programming: kann Tensorflow Probability wirklich mehr?

Erfahrungsbericht - Probabilistische Logik für Fahrzeugkonfiguration:

  • Principle of Explosion: “ex falso quodlibet”
  • Markov-Logic mit Figaro (Scala)

Christoph Schmalhofer

Christoph Schmalhofer ist Software-Entwickler/Architekt bei InNuce Solutions in Hamburg.

Er hat Philosophie und Physik studiert und arbeitet seit 20 Jahren in der Software-Entwicklung. Er hat unter anderem ein OODBMS, Kreditrating-Software und einen Fahrzeugkonfigurator mitentwickelt.