Skip to content

Commit 34925db

Browse files
committed
updated md files
1 parent 1ceeb3d commit 34925db

File tree

2 files changed

+39
-24
lines changed

2 files changed

+39
-24
lines changed

README.md

+34-20
Original file line numberDiff line numberDiff line change
@@ -8,20 +8,20 @@
88

99
# DeeProb-kit
1010

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

2019
## Features
2120

2221
- Inference algorithms for SPNs. [^1] [^4]
2322
- 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]
2525
- Batch Expectation-Maximization (EM) for SPNs with arbitrarily leaves. [^14] [^15]
2626
- Structural marginalization and pruning algorithms for SPNs.
2727
- High-order moments computation for SPNs.
@@ -35,17 +35,18 @@ on DPMs as well as improve experiments' reproducibility.
3535

3636
The collection of implemented models is summarized in the following table.
3737

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

5051
## Installation
5152

@@ -67,6 +68,19 @@ A collection of code examples and experiments can be found in the [examples](exa
6768
directories respectively.
6869
Moreover, benchmark code can be found in the [benchmark](benchmark) directory.
6970

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+
7084
## Related Repositories
7185

7286
- [SPFlow](https://github.com/SPFlow/SPFlow)

examples/README.md

+5-4
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,18 @@ The following table contains a description about them and a code complexity rang
1010
The *Complexity* column consists of a measure that roughly represents how many features of the library are used, as well as
1111
the expected time required to run the script.
1212

13-
| Example | Description | Complexity |
13+
| Example | Description | Complexity |
1414
|-----------------------|-----------------------------------------------------------------------------------|:----------:|
1515
| naive_model.py | Learn, evaluate and print statistics about a naive factorized model. ||
1616
| spn_plot.py | Instantiate, prune, marginalize and plot some SPNs. ||
17-
| clt_plot.py | Learn a Binary CLT and plot it. ||
17+
| clt_plot.py | Learn a Binary-CLT and plot it. ||
18+
| cnet_bd.py | Learn a Binary-CNet using the BDeu score criteria. ||
1819
| spn_moments.py | Instantiate and compute moments statistics about the random variables. ||
1920
| sklearn_interface.py | Learn and evaluate a SPN using the scikit-learn interface. ||
2021
| spn_custom_leaf.py | Learn, evaluate and serialize a SPN with a user-defined leaf distribution. ||
21-
| clt_to_spn.py | Learn a Binary CLT, convert it to a structured decomposable SPN and plot it. ||
22+
| clt_to_spn.py | Learn a Binary-CLT, convert it to a structured decomposable SPN and plot it. ||
2223
| spn_clt_em.py | Instantiate a SPN with Binary CLTs, apply EM algorithm and sample some data. | ⭐⭐ |
23-
| clt_queries.py | Learn a Binary CLT, plot it, run some queries and sample some data. | ⭐⭐ |
24+
| clt_queries.py | Learn a Binary-CLT, plot it, run some queries and sample some data. | ⭐⭐ |
2425
| ratspn_mnist.py | Train and evaluate a RAT-SPN on MNIST. | ⭐⭐ |
2526
| dgcspn_olivetti.py | Train, evaluate and complete some images with DGC-SPN on Olivetti-Faces. | ⭐⭐ |
2627
| dgcspn_mnist.py | Train and evaluate a DGC-SPN on MNIST. | ⭐⭐ |

0 commit comments

Comments
 (0)