Class TANStructuralLearning

  • All Implemented Interfaces:
    StructuralLearning

    public final class TANStructuralLearning
    extends Object
    implements StructuralLearning
    A structural learning algorithm for Bayesian networks based on the Tree augmented naive Bayes (TAN) algorithm.

    This algorithm uses tests (e.g. mutual information) conditional on a target to build a spanning tree, which is then directed to construct a Bayesian network with additional links added from the target. Often used for classification of the target.

    • Constructor Detail

      • TANStructuralLearning

        public TANStructuralLearning()
    • Method Detail

      • learn

        public StructuralLearningOutput learn​(EvidenceReaderCommand evidenceReaderCommand,
                                              List<Node> nodes,
                                              StructuralLearningOptions options)
        Learn the structure (links) of a Bayesian network.
        Specified by:
        learn in interface StructuralLearning
        Parameters:
        evidenceReaderCommand - Can create a reader which iterates round the data used to learn the network.
        nodes - The nodes to be considered for links.
        options - Options for the structural learning algorithm.
        Returns:
        The output generated by the structural learning algorithm.
      • learn

        public StructuralLearningOutput learn​(EvidenceReaderCommandFactory readerCommandFactory,
                                              List<Node> nodes,
                                              StructuralLearningOptions options)
        Learn the structure (links) of a Bayesian network.
        Specified by:
        learn in interface StructuralLearning
        Parameters:
        readerCommandFactory - Creates new evidence reader commands, which may be partitioned for use in cross validation.
        nodes - The nodes to be considered for links.
        options - Options for the structural learning algorithm.
        Returns:
        The output generated by the structural learning algorithm.