DSL_abn

<< Click to Display Table of Contents >>

Navigation:  Reference Manual > Learning >

DSL_abn

Header file: abn.h


DSL_abn();

The default constructor.


int Learn(DSL_dataset &ds, DSL_network &net,

    DSL_progress *progress = NULL,

    double *bestScore = NULL, int *bestIteration = NULL,

    double *emLogLik = NULL) const;

Creates a network structure using the Augmented Naive Bayes (ABN) algorithm, then learns its parameters with EM from the specified data set. Each variable in the data set is represented by a node in the network after learning is complete. Returns DSL_OKAY on success or an error code on failure.

The algorithm produces an acyclic directed graph with the class variable being the parent of all the other (feature) variables and additional connections between the feature variables.

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


std::string classvar;

Identifier of the class variable. If the class variable identifier is not specified or there is no variable with the specified identifier in the data set, the Learn method fails.


bool feature_selection;

If true, invokes an additional function that removes from the feature set those features that do not contribute enough to the classification.


int maxParents;

int maxSearchTime;

int nrIteration;

double linkProbability;

double priorLinkProbability;

int priorSampleSize;

int seed;

See the DSL_bs reference. The ABN algorithm uses Bayesian Search internally, and can be fine tuned using options of  the Bayesian Search algorithm.