bidag_order_mcmc

Order MCMC

Package

BiDAG

Version

2.1.4

Language

R

Docs

here

Paper

Friedman and Koller[1], Kuipers et al.[2]

Graph type

DAG, CPDAG

Docker

bpimages/bidag:2.1.4

Module folder

bidag_order_mcmc

Description

This technique relies on a Bayesian perspective on structure learning, where the score of a DAG is defined as its posterior distribution. To overcome the limitation of simple structure-based MCMC schemes, Friedman and Koller[1] turned to a score defined as the sum of the posterior scores of all DAG which are consistent with a given topological ordering of the nodes. One can then run a Metropolis-Hasting algorithm to sample from the distribution induced by the order score, and later draw a DAG consistent with the order. This strategy substantially improves convergence with respect to earlier structure MCMC scheme, though it unfortunately produces a biased sample on the space of DAGs. The implementation considered in Benchpress is a hybrid version with the sampling performed on a restricted search space initialised with constraint-based testing and improved with a score-based search Kuipers et al.[2].

Some fields described

  • input_algorithm_id Algorithm to use for initial search space. This should be the ID of another algorithm object. It corresponds to the original startspace parameter in the R package.

Example JSON

[
  {
    "id": "omcmc_itmap-bge",
    "input_algorithm_id": "itsearch_map-bge_am01_endspace",
    "plus1": true,
    "scoretype": "bge",
    "chi": null,
    "edgepf": null,
    "aw": null,
    "am": [
      0.01,
      0.1,
      0.05
    ],
    "alpha": 0.01,
    "gamma": 1,
    "stepsave": null,
    "iterations": null,
    "MAP": true,
    "cpdag": false,
    "timeout": null,
    "mcmc_seed": 1,
    "threshold": 0.5,
    "mcmc_estimator": "threshold",
    "burnin_frac": 0.5
  },
  {
    "id": "omcmc_itmap-bde",
    "plus1": true,
    "input_algorithm": "itsearch_map-bde",
    "scoretype": "bde",
    "chi": [
      0.01,
      0.1,
      1,
      2
    ],
    "edgepf": 2,
    "aw": null,
    "am": null,
    "alpha": 0.05,
    "gamma": 1,
    "stepsave": null,
    "iterations": null,
    "MAP": true,
    "cpdag": false,
    "mcmc_seed": 1,
    "threshold": [
      0.5
    ],
    "burnin_frac": 0,
    "mcmc_estimator": "threshold",
    "timeout": null
  }
]