All Implemented Interfaces:
LogicalOperator

public final class SVMPredictor extends AbstractPredictor
Operator responsible for classification based on a SVM PMML model. This supports either CSVC SVMs or one-class SVMs. We distinguish the two cases by the presence of PMMLModelSpec.getTargetCols(). If there are zero target columns, it is assumed to be a one-class SVM. Otherwise, there must be exactly of column of type TokenTypeConstant.STRING, in which case it is a CSVC SVM.

For CSVC SVMs, the PMML is expected to contain SupportVectorMachine's with SupportVectorMachine#getTargetCategory() and SupportVectorMachine#getAlternateTargetCategory() populated. Each of the SVM's are evaluated, adding a "vote" to either target category or alternate target category. The predicted value is that receiving the most votes.

For one-class SVMs, target category and alternate target category will be ignored. The result will either be "-1" if the SupportVectorMachine evaluated to a number less that zero or "1" if greater than zero.

NOTE: this operator is non-parallel

  • Field Details

  • Constructor Details

    • SVMPredictor

      public SVMPredictor()
      Creates a new SVMPredictor.
  • Method Details