DSL_pc

<< Click to Display Table of Contents >>

Navigation:  Reference Manual > Learning >

DSL_pc

Header file: pc.h


DSL_pc();

The default constructor.


int Learn(const DSL_dataset &ds, DSL_pattern &pat, 

    DSL_progress *progress = NULL) const;

Based on the specified data set, creates a graph using the PC algorithm and stores the graph edges in the specified DSL_pattern. Each variable in the data set is represented by a node in the pattern after learning is complete. Returns DSL_OKAY on success or an error code on failure.

The output of the PC algorithm (DSL_pattern object) can be converted to DSL_network with uniform probability distributions with a call to DSL_pattern::ToNetwork.

The optional argument progress can be used to stop the learning by returning false from DSL_progress::Tick method, which is called periodically within the main loop of the learning algorithm. In such a case, the Learn method returns DSL_INTERRUPTED.


int maxAdjacency;

Maximum number of neighbors of a node (similar, although not identical, to in-degree of the resulting network). Defaults to 8.


int maxSearchTime;

Maximum search time (in seconds) for the learning to run. Elapsed time is checked after each iteration is complete. Defaults to zero, meaning no time limit.


double significance;

Statistical significance threshold (alpha value) used in classical independence tests on which the PC algorithm rests. Defaults to 0.05.


DSL_bkgndKnowledge bkk;

Background knowledge used to constrain the network structures created by structure learning algorithm. Empty by default.