Class NaiveBayesMultinomialUpdateable

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.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: 14252 $
    Author:
    Andrew Golightly (acg4@cs.waikato.ac.nz), Bernhard Pfahringer (bernhard@cs.waikato.ac.nz), Eibe Frank (eibe@cs.waikato.ac.nz)
    See Also:
    Serialized Form
    • Constructor Detail

      • NaiveBayesMultinomialUpdateable

        public NaiveBayesMultinomialUpdateable()
    • Method Detail

      • globalInfo

        public java.lang.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 java.lang.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:
        java.lang.Exception - if the classifier has not been generated successfully
      • updateClassifier

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

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

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