whitelists.and.blacklists: Whitelists and blacklists in structure learning

whitelists-blacklistsR Documentation

Whitelists and blacklists in structure learning

Description

How whitelists and blacklists are used in structure learning.

Constraint-based Algorithms

Constraint-based algorithms support arc whitelisting and blacklisting as follows:

  • blacklisted arcs are never present in the learned graph.

  • arcs whitelisted in one direction only (i.e. A \rightarrow B is whitelisted but B \rightarrow A is not) have the respective reverse arcs blacklisted, and are always present in the learned graph.

  • arcs whitelisted in both directions (i.e. both A \rightarrow B and B \rightarrow A are whitelisted) are present in the learned graph, but their direction is set by the learning algorithm.

Any arc whitelisted and blacklisted at the same time is assumed to be whitelisted, and is thus removed from the blacklist.

Score-based Algorithms

Score-based algorithms support arc whitelisting and blacklisting as follows:

  • blacklisted arcs are never present in the learned graph.

  • arcs can only be whitelisted in a single direction, and are always present in the learned graph; it is not possible to whitelist arcs in both directions.

Hybrid Algorithms

Hybrid algorithms use constraint-based (or pairwise mutual information) algorithms in the restrict phase and score-based algorithms in the maximize phase. Hence whitelists and blacklists are supported as follows:

  • whitelists and blacklists should be specified for the algorithm used in the restrict phase.

  • if the whitelist contains any undirected arc, its consistent extension is used instead in the maximize phase.

Pairwise Mutual Information Algorithms

In algorithms that learn undirected graphs, such as ARACNE and Chow-Liu, arcs are treated as being whitelisted or blacklisted in both directions even if only one direction is listed in the whitelist or blacklist. Again blacklisted arcs are never present in the learned graph and whitelisted arcs are guaranteed to be present in the learned graph.


bnlearn documentation built on Sept. 11, 2024, 8:27 p.m.