Deep Probabilistic Programming Course @ DIKU

Overview

Syllabus

Part I - Introduction to Deep Probabilistic Programming

Week Topic Exercise Links
1 Introduction to Bayesian Inference Read Pattern Recognition and Machine Learning (PRML), Sections 1.1-1.3, 1.5-1.6 & 2-2.3.4 (inclusive ranges), Intro to Bayesian updating paper, and Pyro paper.

Form up groups and ask a question for each chapter/paper you have read.
Pattern Recognition and Machine Learning

Bayesian Updating Paper

Pyro Paper
2 Variational Inference Read the Variational Inference paper and Pyro tutorials on Stochastic Variational Inference (SVI). Ask three questions about them.

Use Pyro’s Variational Inference support to implement the kidney cancer model. See worksheet and Bayesian Data Analysis 3rd Edition (BDA3) Section 2.7.
Variational Inference Paper

Worksheet

Bayesian Data Analysis

Pyro SVI tutorial: Part I and Part II

Pyro Website
3 Hamiltonian Monte Carlo Read paper on Hamiltonian Monte Carlo and blog post on gradient-based Markov Chain Monte Carlo (MCMC). Look at the source code for Mini-MC.

Ask a question each for HMC, the Mini-MC implementation and discrete variable marginalization.

Implement Bayesian Change-point model in Pyro using NUTS.
Hamiltonian Monte Carlo Paper

Gradient-based MCMC

Mini-MC implementation

Change-point model

Pyro NUTS Example
4 Hidden Markov Models and Discrete Variables. Read Paper on Hidden Markov Models and ask three questions about it.

Read Pyro tutorials on Discrete Variables and Gaussian Mixture Models.

Read Pyro Hidden Markov Model code example and describe in your own words what the different models do.

Add amino acid prediction output to the TorusDBN HMM and show that the posterior predictive distribution of the amino acids matches the one found in data.
Hidden Markov Models

Pyro Discrete Variables Tutorial

Pyro Gaussian Mixture Model Tutorial

Pyro Hidden Markov Model Example

TorusDBN

Optional: Epidemological Inference via HMC
5 Bayesian Regression Models Read PRML Chapter 3 on Linear Models.

Ask 3 questions about the chapter.

Read the Pyro tutorials on Bayesian Regression.

Solve the weather check exercise in the worksheet.
Pyro Bayesian Regression: Part I, Part II

Worksheet
6 Variational Auto-Encoders Read Variational Auto Encoders (VAE) foundations Chapters 1 & 2, and Pyro tutorial on VAE. Ask three questions about the paper and tutorial.

Implement Frey Faces model from VAE paper in Pyro. Rely on the existing VAE implementation (see tutorial link).
Variational Auto Encoders Foundations

Pyro Tutorial on VAE
7 Deep Generative Models Read one of these papers: Interpretable Representation VAE, Causal Effect VAE, Deep Markov Model or DRAW (one paper per group).

Try out the relevant Pyro or PyTorch implementation on your choice of relevant dataset which was not used in the paper.

Make a small (10 minute) presentation about the paper and your experiences with the implementation.
Deep Markov Model

Interpretable Representation VAE

Causal Effect VAE

DRAW

Part II - Deep Probabilistic Programming Project

The second part of the course concerns applying the techniques learned in the first part, as a project solving a practical problem. We have several types of projects depending on the interests of the student.

For those interested in boosting their CV and potentially getting a student job, we warmly recommend working with one of our industrial partners on a suitable probabilistic programming project. For those interested in working with a more academic-oriented project, we have different interesting problems in Computer Science and Biology.

Industrial Projects

Company Area Ideas
 Relion Shift-planning AI Shift planning based on worker availability, historical sales data, weather and holidays.

Employee satisfaction quantification based on previously assigned shifts.

Employee shift assignment based on wishes and need
Paperflow Invoice Recognition AI Talk to us
Hypefactors Media and Reputation Tracking AI Talk to us
‹Your Company› ‹Your Area› Interested in collaboration with our group? contact Ahmad Salim to hear more!

Academic Projects

Type Description Notes/Links
Computer Science Implement a predictive scoring model for your favourite sports game, inspired by FiveThirtyEight. FiveThirtyEight Methodology and Models
Computer Science  Implement a ranking system for your favourite video or board game, inspired by Microsoft TrueSkill. Microsoft TrueSkill Model

Can be implemented in Infer.NET using Expectation Propagation
Computer Science Use Inference Compilation in PyProb to implement a CAPTCHA breaker or a Spaceship Generator Inference Compilation and PyProb. You can use the experimental PyProb bindings for Java.

CAPTCHA breaking with Oxford CAPTCHA Generator.

Spaceship Generator
Computer Science Implement asterisk corrector suggested by XKCD XKCD #2337: Asterisk Correction
Computer Science Implement an inference compilation based program-testing tool like QuickCheck or SmallCheck Inference Compilation

QuickCheck

SmallCheck
Computer Science Magic: The Gathering, Automated Deck Construction. Design a model that finds a good deck automatically based on correlations in existing deck design. Ideas like card substitution models could be integrated too. Magic: The Gathering - Meta Site
Computer Science Use probabilistic programming to explore ideas for solving Eternity II (No $2 million prize anymore, but still interesting from a math point of view) Eternity II
Biology Auto-Encoders or Deep Markov Models for Protein Folding Deep Markov Model

Pyro Deep Markov Model
Biology Inference Compilation for Ancestral Reconstruction Inference Compilation and PyProb. Talk to us for details.
Biology Recurrent Causal Effect VAE for modelling mutations in proteins Talk to us for details.

Recommendations

  • Sometimes sampling can be slow on the CPU for complex models, so try using Google Colab and GPUs and see if that provides an improvement.

Acknowledgements

This course has been developed by Thomas Hamelryck and Ahmad Salim Al-Sibahi. Thanks to Ola Rønning for suggesting the Variational Auto Encoders Foundations paper instead of Auto-Encoding Variational Bayes which we originally proposed to read on week 3. Thanks to Richard Michael for testing out the course and provide us with valuable feedback on the content!

A comprehensive list of published machine learning applications to cosmology

ml-in-cosmology This github attempts to maintain a comprehensive list of published machine learning applications to cosmology, organized by subject ma

George Stein 290 Dec 29, 2022
Pytorch implementation of the paper "Optimization as a Model for Few-Shot Learning"

Optimization as a Model for Few-Shot Learning This repo provides a Pytorch implementation for the Optimization as a Model for Few-Shot Learning paper.

Albert Berenguel Centeno 238 Jan 04, 2023
This project helps to colorize grayscale images using multiple exemplars.

Multiple Exemplar-based Deep Colorization (Pytorch Implementation) Pretrained Model [Jitendra Chautharia](IIT Jodhpur)1,3, Prerequisites Python 3.6+ N

jitendra chautharia 3 Aug 05, 2022
Code for paper: Group-CAM: Group Score-Weighted Visual Explanations for Deep Convolutional Networks

Group-CAM By Zhang, Qinglong and Rao, Lu and Yang, Yubin [State Key Laboratory for Novel Software Technology at Nanjing University] This repo is the o

zhql 98 Nov 16, 2022
This code is 3d-CNN model that can predict environmental value

Predict-environmental-value-3dCNN This code is 3d-CNN model that can predict environmental value. Firstly, I built a model that can create a lot of bu

1 Jan 06, 2022
Official Implementation of Few-shot Visual Relationship Co-localization

VRC Official implementation of the Few-shot Visual Relationship Co-localization (ICCV 2021) paper project page | paper Requirements Use python = 3.8.

22 Oct 13, 2022
Sign Language Translation with Transformers (COLING'2020, ECCV'20 SLRTP Workshop)

transformer-slt This repository gathers data and code supporting the experiments in the paper Better Sign Language Translation with STMC-Transformer.

Kayo Yin 107 Dec 27, 2022
A PyTorch Implementation of Neural IMage Assessment

NIMA: Neural IMage Assessment This is a PyTorch implementation of the paper NIMA: Neural IMage Assessment (accepted at IEEE Transactions on Image Proc

yunxiaos 418 Dec 29, 2022
The Pytorch implementation for "Video-Text Pre-training with Learned Regions"

Region_Learner The Pytorch implementation for "Video-Text Pre-training with Learned Regions" (arxiv) We are still cleaning up the code further and pre

Rui Yan 0 Mar 20, 2022
A Simple LSTM-Based Solution for "Heartbeat Signal Classification and Prediction" in Tianchi

LSTM-Time-Series-Prediction A Simple LSTM-Based Solution for "Heartbeat Signal Classification and Prediction" in Tianchi Contest. The Link of the Cont

KevinCHEN 1 Jun 13, 2022
2021 CCF BDCI 全国信息检索挑战杯(CCIR-Cup)智能人机交互自然语言理解赛道第二名参赛解决方案

2021 CCF BDCI 全国信息检索挑战杯(CCIR-Cup) 智能人机交互自然语言理解赛道第二名解决方案 比赛网址: CCIR-Cup-智能人机交互自然语言理解 1.依赖环境: python==3.8 torch==1.7.1+cu110 numpy==1.19.2 transformers=

JinXiang 22 Oct 29, 2022
Jigsaw Rate Severity of Toxic Comments

Jigsaw Rate Severity of Toxic Comments

Guanshuo Xu 66 Nov 30, 2022
3D Pose Estimation for Vehicles

3D Pose Estimation for Vehicles Introduction This work generates 4 key-points and 2 key-edges from vertices and edges of vehicles as ground truth. The

Jingyi Wang 1 Nov 01, 2021
Code for KDD'20 "An Efficient Neighborhood-based Interaction Model for Recommendation on Heterogeneous Graph"

Heterogeneous INteract and aggreGatE (GraphHINGE) This is a pytorch implementation of GraphHINGE model. This is the experiment code in the following w

Jinjiarui 69 Nov 24, 2022
TensorRT examples (Jetson, Python/C++)(object detection)

TensorRT examples (Jetson, Python/C++)(object detection)

Nobuo Tsukamoto 53 Dec 22, 2022
CodeContests is a competitive programming dataset for machine-learning

CodeContests CodeContests is a competitive programming dataset for machine-learning. This dataset was used when training AlphaCode. It consists of pro

DeepMind 1.6k Jan 08, 2023
Optical machine for senses sensing using speckle and deep learning

# Senses-speckle [Remote Photonic Detection of Human Senses Using Secondary Speckle Patterns](https://doi.org/10.21203/rs.3.rs-724587/v1) paper Python

Zeev Kalyuzhner 0 Sep 26, 2021
Google Brain - Ventilator Pressure Prediction

Google Brain - Ventilator Pressure Prediction https://www.kaggle.com/c/ventilator-pressure-prediction The ventilator data used in this competition was

Samuele Cucchi 1 Feb 11, 2022
Demo code for paper "Learning optical flow from still images", CVPR 2021.

Depthstillation Demo code for "Learning optical flow from still images", CVPR 2021. [Project page] - [Paper] - [Supplementary] This code is provided t

130 Dec 25, 2022
Add gui for YoloV5 using PyQt5

HEAD 更新2021.08.16 **添加图片和视频保存功能: 1.图片和视频按照当前系统时间进行命名 2.各自检测结果存放入output文件夹 3.摄像头检测的默认设备序号更改为0,减少调试报错 温馨提示: 1.项目放置在全英文路径下,防止项目报错 2.默认使用cpu进行检测,自

Ruihao Wang 65 Dec 27, 2022