Class NaiveBayesMultinomialUpdateable

All Implemented Interfaces:
Serializable, Cloneable, Classifier, UpdateableClassifier, BatchPredictor, CapabilitiesHandler, CapabilitiesIgnorer, CommandlineRunnable, OptionHandler, RevisionHandler, TechnicalInformationHandler, WeightedInstancesHandler

public class NaiveBayesMultinomialUpdateable extends NaiveBayesMultinomial implements UpdateableClassifier
Class for building and using an updateable multinomial Naive Bayes classifier. For more information see,

Andrew Mccallum, Kamal Nigam: A Comparison of Event Models for Naive Bayes Text Classification. In: AAAI-98 Workshop on 'Learning for Text Categorization', 1998.

The core equation for this classifier:

P[Ci|D] = (P[D|Ci] x P[Ci]) / P[D] (Bayes rule)

where Ci is class i and D is a document.

BibTeX:

 @inproceedings{Mccallum1998,
    author = {Andrew Mccallum and Kamal Nigam},
    booktitle = {AAAI-98 Workshop on 'Learning for Text Categorization'},
    title = {A Comparison of Event Models for Naive Bayes Text Classification},
    year = {1998}
 }
 

Valid options are:

-output-debug-info
If set, classifier is run in debug mode and may output additional info to the console.

-do-not-check-capabilities
If set, classifier capabilities are not checked before classifier is built (use with caution).

-num-decimal-laces
The number of decimal places for the output of numbers in the model.

-batch-size
The desired batch size for batch prediction.

Version:
$Revision: 14250 $
Author:
Andrew Golightly (acg4@cs.waikato.ac.nz), Bernhard Pfahringer (bernhard@cs.waikato.ac.nz), Eibe Frank (eibe@cs.waikato.ac.nz)
See Also:
  • Constructor Details

    • NaiveBayesMultinomialUpdateable

      public NaiveBayesMultinomialUpdateable()
  • Method Details

    • globalInfo

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

      public void buildClassifier(Instances instances) throws Exception
      Generates the classifier.
      Specified by:
      buildClassifier in interface Classifier
      Overrides:
      buildClassifier in class NaiveBayesMultinomial
      Parameters:
      instances - set of instances serving as training data
      Throws:
      Exception - if the classifier has not been generated successfully
    • updateClassifier

      public void updateClassifier(Instance instance) throws Exception
      Updates the classifier with information from one training instance.
      Specified by:
      updateClassifier in interface UpdateableClassifier
      Parameters:
      instance - the instance to be incorporated
      Throws:
      Exception - if the instance cannot be processed successfully.
    • toString

      public String toString()
      Returns a string representation of the classifier.
      Overrides:
      toString in class NaiveBayesMultinomial
      Returns:
      a string representation of the classifier
    • getRevision

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

      public static void main(String[] argv)
      Main method for testing this class.
      Parameters:
      argv - the options