autoweka
Class ClassifierRunner

java.lang.Object
  extended by autoweka.ClassifierRunner

public class ClassifierRunner
extends java.lang.Object

Class that is responsible for actually running a WEKA classifier from start to finish using the Auto-WEKA argument format. Note that this class can leak memory epically bad if it 'terminates' the classifier, so this should always be called in a sub process from your main work to prevent memouts


Nested Class Summary
static class ClassifierRunner.EvaluatorThread
           
 
Constructor Summary
ClassifierRunner(java.util.Properties props)
          Prepares a runner with the specified properties.
 
Method Summary
protected  void disableOutput()
           
protected  void enableOutput()
           
 ClassifierResult evaluateClassifierOnTesting(AbstractClassifier classifier, java.lang.String instanceStr, java.lang.String resultMetric, float evaluateClassifierOnInstances)
          Have a pre-trained classifier and want to get another set of testing data out of it? Use this
 InstanceGenerator getInstanceGenerator()
          Kind of a hack, since this lets us look at what instances we should be running
 ClassifierResult run(java.lang.String instanceStr, java.lang.String resultMetric, float timeout, java.lang.String mSeed, java.util.List<java.lang.String> args)
          Public interface to running a classifier specified in the Auto-WEKA format of arguments to generate a classifier result
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ClassifierRunner

public ClassifierRunner(java.util.Properties props)
Prepares a runner with the specified properties. Importantly, you must define 'instanceGenerator' and 'datasetString', while optional properties are 'verbose', 'onlyTest' and 'disableOutput'

Method Detail

getInstanceGenerator

public InstanceGenerator getInstanceGenerator()
Kind of a hack, since this lets us look at what instances we should be running


run

public ClassifierResult run(java.lang.String instanceStr,
                            java.lang.String resultMetric,
                            float timeout,
                            java.lang.String mSeed,
                            java.util.List<java.lang.String> args)
Public interface to running a classifier specified in the Auto-WEKA format of arguments to generate a classifier result


evaluateClassifierOnTesting

public ClassifierResult evaluateClassifierOnTesting(AbstractClassifier classifier,
                                                    java.lang.String instanceStr,
                                                    java.lang.String resultMetric,
                                                    float evaluateClassifierOnInstances)
Have a pre-trained classifier and want to get another set of testing data out of it? Use this


disableOutput

protected void disableOutput()

enableOutput

protected void enableOutput()