Skip to content

Commit 32e620b

Browse files
committed
docs
1 parent ca90618 commit 32e620b

File tree

120 files changed

+1157
-724
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

120 files changed

+1157
-724
lines changed

docs/render_alg_docs.py

Lines changed: 24 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -162,23 +162,42 @@ def info_to_small_table():
162162
# This is the module part
163163

164164
module_str = "\n\n"
165+
166+
meta_description = ""
167+
if info["meta_description"] == info["title"]:
168+
meta_description = content.replace("\n", " ").replace("\r", " ").replace("\t", " ").replace('"', "'")
169+
else:
170+
meta_description = info["meta_description"]
171+
165172
module_str += """
166173
.. meta::
167174
:title: {}
168175
:description: {}
169-
""".format(info["title"], content.replace("\n", " ").replace("\r", " ").replace("\t", " ").replace('"', "'"))
170-
# :keywords: causal discovery, causal discovery algorithm, Benchpress, graphical models, probabilistic graphical models, structure learning, benchmarking, graph estimation, graph learning, graph structure, structure learning algorithms, {}, {}
176+
""".format(info["title_full"], meta_description)
177+
171178
module_str += "\n\n"
172179
module_str += ".. _"+p.name+": \n\n"
180+
#module_str +="" + p.name +" - " + info["title_full"] +" \n"
181+
#module_str +="-"*len(p.name) + "-"*4 + "-"*len(info["title_full"]) + "-"*4 + "\n"
182+
183+
173184
module_str +="" + p.name +" \n"
174-
module_str +="-"*len(p.name) + "-"*4 + "\n"
185+
module_str +="*"*len(p.name) + "*"*4 + "\n"
186+
187+
175188

176189
module_str += "\n"
177-
module_str += ".. rubric:: "+ info["title"]
190+
#module_str += ".. rubric:: "+ info["title_full"]
191+
#module_str += info["title_full"] + "\n"
192+
#module_str +="-"*len(info["title_full"]) + "-"*4 + "\n"
178193
module_str += "\n\n"
179194
module_str += info_to_table(info, p)
180195
module_str += "\n\n"
181-
module_str += ".. rubric:: Description"
196+
module_str +="" + info["title_full"] +" \n"
197+
module_str +="-"*len(info["title_full"]) + "-"*4 + "\n"
198+
199+
200+
#module_str += ".. rubric:: " + info["title_full"]
182201
if content != "":
183202
module_str += "\n\n"
184203
module_str += content

docs/source/conf.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,8 +85,8 @@
8585
# a list of builtin themes.
8686
#
8787
html_theme = 'sphinx_rtd_theme'
88-
html_title = 'Benchpress causal discovery platform'
89-
html_short_title = 'Benchpress causal discovery platform'
88+
html_title = 'Benchpress'
89+
html_short_title = 'Benchpress'
9090

9191
# Add any paths that contain custom static files (such as style sheets) here,
9292
# relative to this directory. They are copied after the builtin static files,

docs/source/index.rst

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
66
77
.. meta::
8-
:title: Benchpress: Scalable Open-Source Software for Causal Discovery
9-
:description: Benchpress: A flexible, platform-independent open-source tool for developing, executing, and benchmarking causal discovery algorithms. Scales effortlessly across cores, servers, clusters, grids, and cloud environments for seamless performance.
8+
:title: Benchpress: Scalable Open-Source Causal Discovery
9+
:description: Benchpress is a platform-independent open-source software to develop, execute, and benchmark causal discovery algorithms.
1010
.. toctree::
1111
:hidden:
1212
:glob:
@@ -29,7 +29,7 @@
2929

3030
.. toctree::
3131
:hidden:
32-
:maxdepth: 3
32+
:maxdepth: 1
3333
:name: Modules
3434
:caption: Modules
3535

@@ -66,17 +66,17 @@
6666

6767
------------------------
6868

69-
##################################
70-
Benchpress
71-
##################################
69+
#############################################################
70+
Scalable and open-source causal discovery
71+
#############################################################
7272

7373
Describing the relationship between the variables in a study domain and modelling
7474
the data generating mechanism is a fundamental problem in many empirical sciences.
7575
`Probabilistic graphical models <https://en.wikipedia.org/wiki/Graphical_model>`_ are one common approach to tackle the problem.
76-
Learning the graphical structure for such models (sometimes called causal discovery) is computationally challenging and a fervent
76+
Learning the graphical structure for such models, referred to as **structure learning** or **causal discovery**, is computationally challenging and a fervent
7777
area of current research with a plethora of algorithms being developed.
7878
To facilitate the access to the different methods we present Benchpress, a scalable and platform-independent `Snakemake <https://snakemake.github.io/>`_ workflow to **run**, **develop**, and to create reproducible **benchmarks**
79-
of **structure learning algorithms** for probabilistic graphical models.
79+
of **structure learning algorithms** for probabilistic graphical models.
8080
Benchpress is interfaced via a simple `JSON <https://www.json.org/json-en.html>`_-file, which makes it accessible for all users, while the code is
8181
designed in a fully modular fashion to enable researchers to contribute additional methodologies.
8282
Benchpress provides an interface to a large number of state-of-the-art

docs/source/structure_learning_algorithms/athomas_jtsamplers.rst

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@
99
.. _athomas_jtsamplers:
1010

1111
athomas_jtsamplers
12-
----------------------
12+
**********************
13+
1314

14-
.. rubric:: Chordal graph samplers
1515

1616
.. list-table::
1717

@@ -35,7 +35,9 @@ athomas_jtsamplers
3535

3636

3737

38-
.. rubric:: Description
38+
Chordal graph samplers
39+
--------------------------
40+
3941

4042
Abstract :footcite:p:`10.2307/43304539`: Full Bayesian computational inference for model determination in undirected graphical models is currently restricted to decomposable graphs or other special cases, except for small-scale problems, say up to 15 variables. In this paper we develop new, more efficient methodology for such inference, by making two contributions to the computational geometry of decomposable graphs. The first of these provides sufficient conditions under which it is possible to completely connect two disconnected complete subsets of vertices, or perform the reverse procedure, yet maintain decomposability of the graph. The second is a new Markov chain Monte Carlo sampler for arbitrary positive distributions on decomposable graphs, taking a junction tree representing the graph as its state variable.
4143

docs/source/structure_learning_algorithms/bdgraph.rst

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@
99
.. _bdgraph:
1010

1111
bdgraph
12-
-----------
12+
***********
13+
1314

14-
.. rubric:: BDgraph
1515

1616
.. list-table::
1717

@@ -35,7 +35,9 @@ bdgraph
3535

3636

3737

38-
.. rubric:: Description
38+
BDgraph
39+
-----------
40+
3941

4042

4143

docs/source/structure_learning_algorithms/bidag_itsearch.rst

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@
99
.. _bidag_itsearch:
1010

1111
bidag_itsearch
12-
------------------
12+
******************
13+
1314

14-
.. rubric:: Iterative MCMC
1515

1616
.. list-table::
1717

@@ -35,7 +35,9 @@ bidag_itsearch
3535

3636

3737

38-
.. rubric:: Description
38+
Iterative MCMC
39+
------------------
40+
3941

4042
This is a hybrid score-based optimisation technique based on Markov chain Monte Carlo
4143
schemes :footcite:t:`doi:10.1080/10618600.2021.2020127`. The algorithm starts from a skeleton obtained

docs/source/structure_learning_algorithms/bidag_order_mcmc.rst

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@
99
.. _bidag_order_mcmc:
1010

1111
bidag_order_mcmc
12-
--------------------
12+
********************
13+
1314

14-
.. rubric:: Order MCMC
1515

1616
.. list-table::
1717

@@ -35,7 +35,9 @@ bidag_order_mcmc
3535

3636

3737

38-
.. rubric:: Description
38+
Order MCMC
39+
--------------
40+
3941

4042
This technique relies on a Bayesian perspective on structure learning, where the score of a DAG
4143
is defined as its posterior distribution. To overcome the limitation of simple structure-based

docs/source/structure_learning_algorithms/bidag_partition_mcmc.rst

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@
99
.. _bidag_partition_mcmc:
1010

1111
bidag_partition_mcmc
12-
------------------------
12+
************************
13+
1314

14-
.. rubric:: Partition MCMC
1515

1616
.. list-table::
1717

@@ -35,7 +35,9 @@ bidag_partition_mcmc
3535

3636

3737

38-
.. rubric:: Description
38+
Partition MCMC
39+
------------------
40+
3941

4042
Abstract:
4143
Acyclic digraphs are the underlying representation of Bayesian networks, a widely used class of probabilistic graphical models. Learning the underlying graph from data is a way of gaining insights about the structural properties of a domain. Structure learning forms one of the inference challenges of statistical graphical models. Markov chain Monte Carlo (MCMC) methods, notably structure MCMC, to sample graphs from the posterior distribution given the data are probably the only viable option for Bayesian model averaging. Score modularity and restrictions on the number of parents of each node allow the graphs to be grouped into larger collections, which can be scored as a whole to improve the chain’s convergence. Current examples of algorithms taking advantage of grouping are the biased order MCMC, which acts on the alternative space of permuted triangular matrices, and nonergodic edge reversal moves. Here, we propose a novel algorithm, which employs the underlying combinatorial structure of DAGs to define a new grouping. As a result convergence is improved compared to structure MCMC, while still retaining the property of producing an unbiased sample. Finally, the method can be combined with edge reversal moves to improve the sampler further. Supplementary materials for this article are available online.

docs/source/structure_learning_algorithms/bnlearn_fastiamb.rst

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@
99
.. _bnlearn_fastiamb:
1010

1111
bnlearn_fastiamb
12-
--------------------
12+
********************
13+
1314

14-
.. rubric:: Fast IAMB
1515

1616
.. list-table::
1717

@@ -35,7 +35,9 @@ bnlearn_fastiamb
3535

3636

3737

38-
.. rubric:: Description
38+
Fast IAMB
39+
-------------
40+
3941

4042
From bnlearn: a variant of IAMB which uses speculative stepwise forward selection to reduce the number of conditional independence tests.
4143

docs/source/structure_learning_algorithms/bnlearn_gs.rst

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@
99
.. _bnlearn_gs:
1010

1111
bnlearn_gs
12-
--------------
12+
**************
13+
1314

14-
.. rubric:: Grow-shrink
1515

1616
.. list-table::
1717

@@ -35,7 +35,9 @@ bnlearn_gs
3535

3636

3737

38-
.. rubric:: Description
38+
Grow-shrink
39+
---------------
40+
3941

4042
The grow-shrink (GS) algorithm is based on the Markov blanket of the nodes in a DAG. For
4143
a specific node, the Markov blanket it the set of nodes which conditioning upon renders it

0 commit comments

Comments
 (0)