8
8
9
9
# DeeProb-kit
10
10
11
- ** DeeProb-kit** is a general-purpose Python library providing a collection of deep probabilistic models (DPMs) which
12
- are easy to use and extend.
13
- It also includes efficiently implemented learning techniques, inference routines and statistical algorithms.
14
- The availability of a representative selection of the most common DPMs in a single library makes it possible to combine
15
- them in a straightforward manner, a common practice in deep learning research nowadays, which however is still missing
16
- for certain class of models.
17
- Moreover, ** DeeProb-kit** provides high-quality fully-documented APIs, and it will help the community to accelerate research
18
- on DPMs as well as improve experiments' reproducibility.
11
+ DeeProb-kit is a unified library written in Python consisting of a collection of deep probabilistic models (DPMs) that
12
+ are tractable and exact representations for the modelled probability distributions. The availability of a representative
13
+ selection of DPMs in a single library makes it possible to combine them in a straightforward manner, a common practice
14
+ in deep learning research nowadays. In addition, it includes efficiently implemented learning techniques, inference
15
+ routines, statistical algorithms, and provides high-quality fully-documented APIs. The development of DeeProb-kit will
16
+ help the community to accelerate research on DPMs as well as to standardise their evaluation and better understand how
17
+ they are related based on their expressivity.
19
18
20
19
## Features
21
20
22
21
- Inference algorithms for SPNs. [ ^ 1 ] [ ^ 4 ]
23
22
- Learning algorithms for SPNs structure. [ ^ 1 ] [ ^ 2 ] [ ^ 3 ] [ ^ 4 ] [ ^ 5 ]
24
- - Chow-Liu Trees (CLT) as SPN leaves. [ ^ 12 ] [ ^ 13 ]
23
+ - Chow-Liu Trees (CLT) as SPN leaves. [ ^ 13 ]
24
+ - Cutset Networks (CNets) with various learning criteria. [ ^ 12 ]
25
25
- Batch Expectation-Maximization (EM) for SPNs with arbitrarily leaves. [ ^ 14 ] [ ^ 15 ]
26
26
- Structural marginalization and pruning algorithms for SPNs.
27
27
- High-order moments computation for SPNs.
@@ -35,17 +35,18 @@ on DPMs as well as improve experiments' reproducibility.
35
35
36
36
The collection of implemented models is summarized in the following table.
37
37
38
- | Model | Description |
39
- | ------------| ----------------------------------------------------|
40
- | Binary-CLT | Binary Chow-Liu Tree (CLT) |
41
- | SPN | Vanilla Sum-Product Network |
42
- | MSPN | Mixed Sum-Product Network |
43
- | XPC | Random Probabilistic Circuit |
44
- | RAT-SPN | Randomized and Tensorized Sum-Product Network |
45
- | DGC-SPN | Deep Generalized Convolutional Sum-Product Network |
46
- | MAF | Masked Autoregressive Flow |
47
- | NICE | Non-linear Independent Components Estimation Flow |
48
- | RealNVP | Real-valued Non-Volume-Preserving Flow |
38
+ | Model | Description |
39
+ | -------------| ----------------------------------------------------|
40
+ | Binary-CLT | Binary Chow-Liu Tree (CLT) |
41
+ | Binary-CNet | Binary Cutset Network (CNet) |
42
+ | SPN | Vanilla Sum-Product Network |
43
+ | MSPN | Mixed Sum-Product Network |
44
+ | XPC | Random Probabilistic Circuit |
45
+ | RAT-SPN | Randomized and Tensorized Sum-Product Network |
46
+ | DGC-SPN | Deep Generalized Convolutional Sum-Product Network |
47
+ | MAF | Masked Autoregressive Flow |
48
+ | NICE | Non-linear Independent Components Estimation Flow |
49
+ | RealNVP | Real-valued Non-Volume-Preserving Flow |
49
50
50
51
## Installation
51
52
@@ -67,6 +68,19 @@ A collection of code examples and experiments can be found in the [examples](exa
67
68
directories respectively.
68
69
Moreover, benchmark code can be found in the [ benchmark] ( benchmark ) directory.
69
70
71
+ ## Cite
72
+
73
+ ```
74
+ @misc{loconte2022deeprob,
75
+ doi = {10.48550/ARXIV.2212.04403},
76
+ url = {https://arxiv.org/abs/2212.04403},
77
+ author = {Loconte, Lorenzo and Gala, Gennaro},
78
+ title = {{DeeProb-kit}: a Python Library for Deep Probabilistic Modelling},
79
+ publisher = {arXiv},
80
+ year = {2022}
81
+ }
82
+ ```
83
+
70
84
## Related Repositories
71
85
72
86
- [ SPFlow] ( https://github.com/SPFlow/SPFlow )
0 commit comments