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: 1.4 $
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`
`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 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