Class MultiNomialBMAEstimator

java.lang.Object
weka.classifiers.bayes.net.estimate.BayesNetEstimator
weka.classifiers.bayes.net.estimate.MultiNomialBMAEstimator
All Implemented Interfaces:
Serializable, OptionHandler, RevisionHandler

public class MultiNomialBMAEstimator extends BayesNetEstimator
Multinomial BMA Estimator.

Valid options are:

 -k2
  Whether to use K2 prior.
 
 -A <alpha>
  Initial count (alpha)
 
Version:
$Revision: 12470 $
Author:
Remco Bouckaert (rrb@xm.co.nz)
See Also:
  • Constructor Details

    • MultiNomialBMAEstimator

      public MultiNomialBMAEstimator()
  • Method Details

    • globalInfo

      public String globalInfo()
      Returns a string describing this object
      Overrides:
      globalInfo in class BayesNetEstimator
      Returns:
      a description of the classifier suitable for displaying in the explorer/experimenter gui
    • estimateCPTs

      public void estimateCPTs(BayesNet bayesNet) throws Exception
      estimateCPTs estimates the conditional probability tables for the Bayes Net using the network structure.
      Overrides:
      estimateCPTs in class BayesNetEstimator
      Parameters:
      bayesNet - the bayes net to use
      Throws:
      Exception - if number of parents doesn't fit (more than 1)
    • updateClassifier

      public void updateClassifier(BayesNet bayesNet, Instance instance) throws Exception
      Updates the classifier with the given instance.
      Overrides:
      updateClassifier in class BayesNetEstimator
      Parameters:
      bayesNet - the bayes net to use
      instance - the new training instance to include in the model
      Throws:
      Exception - if the instance could not be incorporated in the model.
    • initCPTs

      public void initCPTs(BayesNet bayesNet) throws Exception
      initCPTs reserves space for CPTs and set all counts to zero
      Overrides:
      initCPTs in class BayesNetEstimator
      Parameters:
      bayesNet - the bayes net to use
      Throws:
      Exception - doesn't apply
    • isUseK2Prior

      public boolean isUseK2Prior()
      Returns:
      boolean
    • setUseK2Prior

      public void setUseK2Prior(boolean bUseK2Prior)
      Sets the UseK2Prior.
      Parameters:
      bUseK2Prior - The bUseK2Prior to set
    • distributionForInstance

      public double[] distributionForInstance(BayesNet bayesNet, Instance instance) throws Exception
      Calculates the class membership probabilities for the given test instance.
      Overrides:
      distributionForInstance in class BayesNetEstimator
      Parameters:
      bayesNet - the bayes net to use
      instance - the instance to be classified
      Returns:
      predicted class probability distribution
      Throws:
      Exception - if there is a problem generating the prediction
    • listOptions

      public Enumeration<Option> listOptions()
      Returns an enumeration describing the available options
      Specified by:
      listOptions in interface OptionHandler
      Overrides:
      listOptions in class BayesNetEstimator
      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:

       -k2
        Whether to use K2 prior.
       
       -A <alpha>
        Initial count (alpha)
       
      Specified by:
      setOptions in interface OptionHandler
      Overrides:
      setOptions in class BayesNetEstimator
      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
      Overrides:
      getOptions in class BayesNetEstimator
      Returns:
      an array of strings suitable for passing to setOptions
    • getRevision

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