Package weka.classifiers.bayes.net.estimate

# Class BayesNetEstimator

java.lang.Object
weka.classifiers.bayes.net.estimate.BayesNetEstimator

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

Direct Known Subclasses:
  `MultiNomialBMAEstimator`, `SimpleEstimator`

public class BayesNetEstimator extends Object implements OptionHandler, Serializable, RevisionHandler
BayesNetEstimator is the base class for estimating the conditional probability tables of a Bayes network once the structure has been learned.

Valid options are:

     -A <alpha>
      Initial count (alpha)

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

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `BayesNetEstimator()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `alphaTipText()`
  `double[]`
  `distributionForInstance(BayesNet bayesNet, Instance instance)`
  Calculates the class membership probabilities for the given test instance.
  `void`
  `estimateCPTs(BayesNet bayesNet)`
  estimateCPTs estimates the conditional probability tables for the Bayes Net using the network structure.
  `double`
  `getAlpha()`
  Get prior used in probability table estimation
  `String[]`
  `getOptions()`
  Gets the current settings of the classifier.
  `String`
  `getRevision()`
  Returns the revision string.
  `String`
  `globalInfo()`
  This will return a string describing the class.
  `void`
  `initCPTs(BayesNet bayesNet)`
  initCPTs reserves space for CPTs and set all counts to zero
  `Enumeration<Option>`
  `listOptions()`
  Returns an enumeration describing the available options
  `void`
  `setAlpha(double fAlpha)`
  Set prior used in probability table estimation
  `void`
  `setOptions(String[] options)`
  Parses a given list of options.
  `void`
  `updateClassifier(BayesNet bayesNet, Instance instance)`
  Updates the classifier with the given instance.

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

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

- ## Constructor Details

  - ### BayesNetEstimator

    public BayesNetEstimator()

- ## Method Details

  - ### estimateCPTs

    public void estimateCPTs(BayesNet bayesNet) throws Exception
    estimateCPTs estimates the conditional probability tables for the Bayes Net using the network structure.
    Parameters:
      `bayesNet` - the bayes net to use
    Throws:
      `Exception` - always throws an exception, since subclass needs to be used

  - ### updateClassifier

    public void updateClassifier(BayesNet bayesNet, Instance instance) throws Exception
    Updates the classifier with the given instance.
    Parameters:
      `bayesNet` - the bayes net to use
      `instance` - the new training instance to include in the model
    Throws:
      `Exception` - always throws an exception, since subclass needs to be used

  - ### distributionForInstance

    public double[] distributionForInstance(BayesNet bayesNet, Instance instance) throws Exception
    Calculates the class membership probabilities for the given test instance.
    Parameters:
      `bayesNet` - the bayes net to use
      `instance` - the instance to be classified
    Returns:
      predicted class probability distribution
    Throws:
      `Exception` - always throws an exception, since subclass needs to be used

  - ### initCPTs

    public void initCPTs(BayesNet bayesNet) throws Exception
    initCPTs reserves space for CPTs and set all counts to zero
    Parameters:
      `bayesNet` - the bayes net to use
    Throws:
      `Exception` - always throws an exception, since subclass needs to be used

  - ### listOptions

    public Enumeration<Option> listOptions()
    Returns an enumeration describing the available options
    Specified by:
      `listOptions` in interface `OptionHandler`
    Returns:
      an enumeration of all the available options

  - ### setOptions

    public void setOptions(String[] options) throws Exception
    Parses a given list of options.

    Valid options are:

         -A <alpha>
          Initial count (alpha)

    Specified by:
      `setOptions` in interface `OptionHandler`
    Parameters:
      `options` - the list of options as an array of strings
    Throws:
      `Exception` - if an option is not supported

  - ### getOptions

    public String[] getOptions()
    Gets the current settings of the classifier.
    Specified by:
      `getOptions` in interface `OptionHandler`
    Returns:
      an array of strings suitable for passing to setOptions

  - ### setAlpha

    public void setAlpha(double fAlpha)
    Set prior used in probability table estimation
    Parameters:
      `fAlpha` - representing prior

  - ### getAlpha

    public double getAlpha()
    Get prior used in probability table estimation
    Returns:
      prior

  - ### alphaTipText

    public String alphaTipText()
    Returns:
      a string to describe the Alpha option.

  - ### globalInfo

    public String globalInfo()
    This will return a string describing the class.
    Returns:
      The string.

  - ### getRevision

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