Package weka.classifiers.bayes.net

# Class ADNode

java.lang.Object
weka.classifiers.bayes.net.ADNode

All Implemented Interfaces:
  `Serializable`, `RevisionHandler`, `TechnicalInformationHandler`

public class ADNode extends Object implements Serializable, TechnicalInformationHandler, RevisionHandler
The ADNode class implements the ADTree datastructure which increases the speed with which sub-contingency tables can be constructed from a data set in an Instances object. For details, see:

Andrew W. Moore, Mary S. Lee (1998). Cached Sufficient Statistics for Efficient Machine Learning with Large Datasets. Journal of Artificial Intelligence Research. 8:67-91.

BibTeX:

     @article{Moore1998,
        author = {Andrew W. Moore and Mary S. Lee},
        journal = {Journal of Artificial Intelligence Research},
        pages = {67-91},
        title = {Cached Sufficient Statistics for Efficient Machine Learning with Large Datasets},
        volume = {8},
        year = {1998}
     }

Version:
  $Revision: 10153 $
Author:
  Remco Bouckaert (rrb@xm.co.nz)
See Also:
  - Serialized Form

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `Instance[]`
  `m_Instances`
  list of Instance children (either m_Instances or m_VaryNodes is instantiated)
  `int`
  `m_nCount`
  count
  `int`
  `m_nStartNode`
  first node in VaryNode array
  `VaryNode[]`
  `m_VaryNodes`
  list of VaryNode children

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ADNode()`
  Creates new ADNode

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `getCounts(int[] nCounts, int[] nNodes, int[] nOffsets, int iNode, int iOffset, boolean bSubstract)`
  get counts for specific instantiation of a set of nodes
  `String`
  `getRevision()`
  Returns the revision string.
  `TechnicalInformation`
  `getTechnicalInformation()`
  Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.
  `static void`
  `main(String[] argv)`
  for testing only
  `static ADNode`
  `makeADTree(int iNode, ArrayList<Integer> nRecords, Instances instances)`
  create sub tree
  `static ADNode`
  `makeADTree(Instances instances)`
  create AD tree from set of instances
  `static VaryNode`
  `makeVaryNode(int iNode, ArrayList<Integer> nRecords, Instances instances)`
  create sub tree
  `void`
  `print()`
  print is used for debugging only and shows the ADTree in ASCII graphics

  ### Methods inherited from class java.lang.Object

  `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### m_VaryNodes

    public VaryNode[] m_VaryNodes
    list of VaryNode children

  - ### m_Instances

    public Instance[] m_Instances
    list of Instance children (either m_Instances or m_VaryNodes is instantiated)

  - ### m_nCount

    public int m_nCount
    count

  - ### m_nStartNode

    public int m_nStartNode
    first node in VaryNode array

- ## Constructor Details

  - ### ADNode

    public ADNode()
    Creates new ADNode

- ## Method Details

  - ### getTechnicalInformation

    public TechnicalInformation getTechnicalInformation()
    Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.
    Specified by:
      `getTechnicalInformation` in interface `TechnicalInformationHandler`
    Returns:
      the technical information about this class

  - ### makeVaryNode

    public static VaryNode makeVaryNode(int iNode, ArrayList<Integer> nRecords, Instances instances)
    create sub tree
    Parameters:
      `iNode` - index of the lowest node in the tree
      `nRecords` - set of records in instances to be considered
      `instances` - data set
    Returns:
      VaryNode representing part of an ADTree

  - ### makeADTree

    public static ADNode makeADTree(int iNode, ArrayList<Integer> nRecords, Instances instances)
    create sub tree
    Parameters:
      `iNode` - index of the lowest node in the tree
      `nRecords` - set of records in instances to be considered
      `instances` - data set
    Returns:
      ADNode representing an ADTree

  - ### makeADTree

    public static ADNode makeADTree(Instances instances)
    create AD tree from set of instances
    Parameters:
      `instances` - data set
    Returns:
      ADNode representing an ADTree

  - ### getCounts

    public void getCounts(int[] nCounts, int[] nNodes, int[] nOffsets, int iNode, int iOffset, boolean bSubstract)
    get counts for specific instantiation of a set of nodes
    Parameters:
      `nCounts` - - array for storing counts
      `nNodes` - - array of node indexes
      `nOffsets` - - offset for nodes in nNodes in nCounts
      `iNode` - - index into nNode indicating current node
      `iOffset` - - Offset into nCounts due to nodes below iNode
      `bSubstract` - - indicate whether counts should be added or substracted

  - ### print

    public void print()
    print is used for debugging only and shows the ADTree in ASCII graphics

  - ### main

    public static void main(String[] argv)
    for testing only
    Parameters:
      `argv` - the commandline options

  - ### getRevision

    public String getRevision()
    Returns the revision string.
    Specified by:
      `getRevision` in interface `RevisionHandler`
    Returns:
      the revision