weka.classifiers.pmml.consumer

## Class PMMLClassifier

- java.lang.Object
- - weka.classifiers.AbstractClassifier
  - - weka.classifiers.pmml.consumer.PMMLClassifier

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, Classifier, BatchPredictor, CapabilitiesHandler, CapabilitiesIgnorer, CommandlineRunnable, OptionHandler, PMMLModel, RevisionHandler
  Direct Known Subclasses:
    GeneralRegression, NeuralNetwork, Regression, RuleSetModel, SupportVectorMachineModel, TreeModel

      public abstract class PMMLClassifier
      extends AbstractClassifier
      implements java.io.Serializable, PMMLModel

  Abstract base class for all PMML classifiers.
  Version:
    $Revision: 8034 $
  Author:
    Mark Hall (mhall{[at]}pentaho{[dot]}com)
  See Also:
    Serialized Form

- - ### Field Summary

    - ### Fields inherited from class weka.classifiers.AbstractClassifier

      `BATCH_SIZE_DEFAULT, NUM_DECIMAL_PLACES_DEFAULT`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `buildClassifier(Instances data)` Throw an exception - PMML models are pre-built.
    `void` | `done()` Signal that a scoring run has been completed.
    `java.lang.String` | `getCreatorApplication()` Get the name of the application that created this model
    `Instances` | `getDataDictionary()` Get the data dictionary.
    `java.lang.String` | `getFieldsMappingString()` Get a textual description of the mapping between mining schema fields and incoming data fields.
    `Logger` | `getLog()` Get the logger.
    `MiningSchema` | `getMiningSchema()` Get the mining schema for this model.
    `java.lang.String` | `getPMMLVersion()` Get the PMML version used for this model.
    `void` | `mapToMiningSchema(Instances dataSet)` Map mining schema to incoming instances.
    `void` | `setCreatorApplication(org.w3c.dom.Document doc)` Set the name of the application (if specified) that created this model
    `void` | `setLog(Logger log)` Set a logger to use.
    `void` | `setPMMLVersion(org.w3c.dom.Document doc)` Set the version of PMML used for this model.

    - ### Methods inherited from class weka.classifiers.AbstractClassifier

      `batchSizeTipText, classifyInstance, debugTipText, distributionForInstance, distributionsForInstances, doNotCheckCapabilitiesTipText, forName, getBatchSize, getCapabilities, getDebug, getDoNotCheckCapabilities, getNumDecimalPlaces, getOptions, getRevision, implementsMoreEfficientBatchPrediction, listOptions, makeCopies, makeCopy, numDecimalPlacesTipText, postExecution, preExecution, run, runClassifier, setBatchSize, setDebug, setDoNotCheckCapabilities, setNumDecimalPlaces, setOptions`

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

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

- - ### Method Detail

    - #### setPMMLVersion

          public void setPMMLVersion(org.w3c.dom.Document doc)

      Set the version of PMML used for this model.
      Specified by:
        `setPMMLVersion` in interface `PMMLModel`
      Parameters:
        `doc` - the Document encapsulating the pmml

    - #### setCreatorApplication

          public void setCreatorApplication(org.w3c.dom.Document doc)

      Set the name of the application (if specified) that created this model
      Specified by:
        `setCreatorApplication` in interface `PMMLModel`
      Parameters:
        `doc` - the Document encapsulating the pmml

    - #### getDataDictionary

          public Instances getDataDictionary()

      Get the data dictionary.
      Returns:
        the data dictionary

    - #### getMiningSchema

          public MiningSchema getMiningSchema()

      Get the mining schema for this model.
      Specified by:
        `getMiningSchema` in interface `PMMLModel`
      Returns:
        the mining schema

    - #### getPMMLVersion

          public java.lang.String getPMMLVersion()

      Get the PMML version used for this model.
      Specified by:
        `getPMMLVersion` in interface `PMMLModel`
      Returns:
        the PMML version

    - #### getCreatorApplication

          public java.lang.String getCreatorApplication()

      Get the name of the application that created this model
      Specified by:
        `getCreatorApplication` in interface `PMMLModel`
      Returns:
        the name of the creating application or null if not specified in the pmml.

    - #### setLog

          public void setLog(Logger log)

      Set a logger to use.
      Specified by:
        `setLog` in interface `PMMLModel`
      Parameters:
        `log` - the logger to use

    - #### getLog

          public Logger getLog()

      Get the logger.
      Specified by:
        `getLog` in interface `PMMLModel`
      Returns:
        the logger (or null if none is being used)

    - #### buildClassifier

          public void buildClassifier(Instances data)
                               throws java.lang.Exception

      Throw an exception - PMML models are pre-built.
      Specified by:
        `buildClassifier` in interface `Classifier`
      Parameters:
        `data` - the Instances to learn from
      Throws:
        `java.lang.Exception` - if something goes wrong

    - #### done

          public void done()

      Signal that a scoring run has been completed. Resets the initialized state to false so that a subsequent scoring run will trigger the mapping of the mining schema to incoming instances. If not called after a scoring run, then the classifier will assume that the current mapping is still valid.

    - #### mapToMiningSchema

          public void mapToMiningSchema(Instances dataSet)
                                 throws java.lang.Exception

      Map mining schema to incoming instances.
      Parameters:
        `dataSet` - the structure of the incoming Instances
      Throws:
        `java.lang.Exception` - if something goes wrong

    - #### getFieldsMappingString

          public java.lang.String getFieldsMappingString()

      Get a textual description of the mapping between mining schema fields and incoming data fields.
      Returns:
        a description of the fields mapping as a String or null if no mapping has been constructed yet.