weka.attributeSelection

## Class HoldOutSubsetEvaluator

- java.lang.Object
- - weka.attributeSelection.ASEvaluation
  - - weka.attributeSelection.HoldOutSubsetEvaluator

- All Implemented Interfaces:
    java.io.Serializable, SubsetEvaluator, CapabilitiesHandler, CapabilitiesIgnorer, CommandlineRunnable, RevisionHandler
  Direct Known Subclasses:
    ClassifierSubsetEval

      public abstract class HoldOutSubsetEvaluator
      extends ASEvaluation
      implements SubsetEvaluator

  Abstract attribute subset evaluator capable of evaluating subsets with respect to a data set that is distinct from that used to initialize/ train the subset evaluator.
  Version:
    $Revision: 8034 $
  Author:
    Mark Hall (mhall@cs.waikato.ac.nz)
  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `HoldOutSubsetEvaluator()`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract double` | `evaluateSubset(java.util.BitSet subset, Instance holdOut, boolean retrain)` Evaluates a subset of attributes with respect to a single instance.
    `abstract double` | `evaluateSubset(java.util.BitSet subset, Instances holdOut)` Evaluates a subset of attributes with respect to a set of instances.

    - ### Methods inherited from class weka.attributeSelection.ASEvaluation

      `buildEvaluator, clean, doNotCheckCapabilitiesTipText, forName, getCapabilities, getDoNotCheckCapabilities, getRevision, makeCopies, postExecution, postProcess, preExecution, run, runEvaluator, setDoNotCheckCapabilities`

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

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

    - ### Methods inherited from interface weka.attributeSelection.SubsetEvaluator

      `evaluateSubset`

- - ### Constructor Detail

    - #### HoldOutSubsetEvaluator

          public HoldOutSubsetEvaluator()

  - ### Method Detail

    - #### evaluateSubset

          public abstract double evaluateSubset(java.util.BitSet subset,
                                                Instances holdOut)
                                         throws java.lang.Exception

      Evaluates a subset of attributes with respect to a set of instances.
      Parameters:
        `subset` - a bitset representing the attribute subset to be evaluated
        `holdOut` - a set of instances (possibly seperate and distinct from those use to build/train the evaluator) with which to evaluate the merit of the subset
      Returns:
        the "merit" of the subset on the holdOut data
      Throws:
        `java.lang.Exception` - if the subset cannot be evaluated

    - #### evaluateSubset

          public abstract double evaluateSubset(java.util.BitSet subset,
                                                Instance holdOut,
                                                boolean retrain)
                                         throws java.lang.Exception

      Evaluates a subset of attributes with respect to a single instance.
      Parameters:
        `subset` - a bitset representing the attribute subset to be evaluated
        `holdOut` - a single instance (possibly not one of those used to build/train the evaluator) with which to evaluate the merit of the subset
        `retrain` - true if the classifier should be retrained with respect to the new subset before testing on the holdOut instance.
      Returns:
        the "merit" of the subset on the holdOut instance
      Throws:
        `java.lang.Exception` - if the subset cannot be evaluated