org.android.activityminer.logic.evaluation
Class CrossValidationStrategy

Package class diagram package CrossValidationStrategy
java.lang.Object
  extended by org.android.activityminer.logic.evaluation.CrossValidationStrategy
All Implemented Interfaces:
ValidationStrategy

public final class CrossValidationStrategy
extends Object
implements ValidationStrategy

Implementation off the k-fold cross validation based evaluation strategy.


Field Summary
private  double avgPredictionTime
          The average prediction time.
private  double avgTrainingTime
          The average training time per sample.
private  long[] classIds
          The set to store the available activity classes in
private  Set<Set<TrainingActivity>> evaluationSets
          The equal sized evaluation sets to be used for training and test set creation.
private  int k
          The cross validation fold count
private  double maxPredictionTime
          The maximum prediction time for a sample.
private  double minPredictionTime
          The minimum prediction time for a sample.
 
Constructor Summary
CrossValidationStrategy(int k)
          Constructor
 
Method Summary
 EvaluationResult eval(Set<FeatureTypes> visibleAttributes, Classifier classifier)
          Does evaluate the classification results for the given classifier and visible attributes.
 double getAvgPreditionTime()
          Getter for the average time to predict an activity
 double getAvgTrainingTime()
          Getter for the average time to train an activity sample.
 String getDescription()
          Getter for the evaluation strategy description.
 double getMaxPreditionTime()
          Getter for the maximum prediction time
 double getMinPreditionTime()
          Getter for the minimum prediction time
 void prepare(List<TrainingActivity> trainingActivities)
          Method for preparation with the set of training activities.
 boolean validateEvaluationSet()
          Validation method for evaluation set initialization.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

k

private final int k
The cross validation fold count


avgTrainingTime

private double avgTrainingTime
The average training time per sample.


avgPredictionTime

private double avgPredictionTime
The average prediction time.


minPredictionTime

private double minPredictionTime
The minimum prediction time for a sample.


maxPredictionTime

private double maxPredictionTime
The maximum prediction time for a sample.


evaluationSets

private Set<Set<TrainingActivity>> evaluationSets
The equal sized evaluation sets to be used for training and test set creation.


classIds

private long[] classIds
The set to store the available activity classes in

Constructor Detail

CrossValidationStrategy

public CrossValidationStrategy(int k)
Constructor

Parameters:
k - the cross validation fold count
Method Detail

getDescription

public final String getDescription()
Description copied from interface: ValidationStrategy
Getter for the evaluation strategy description.

Specified by:
getDescription in interface ValidationStrategy
Returns:
the description of the evaluation strategy.

prepare

public final void prepare(List<TrainingActivity> trainingActivities)
Description copied from interface: ValidationStrategy
Method for preparation with the set of training activities.

Specified by:
prepare in interface ValidationStrategy
Parameters:
trainingActivities - the set of training activities.

eval

public final EvaluationResult eval(Set<FeatureTypes> visibleAttributes,
                                   Classifier classifier)
Description copied from interface: ValidationStrategy
Does evaluate the classification results for the given classifier and visible attributes.

Specified by:
eval in interface ValidationStrategy
Parameters:
visibleAttributes - the visible attributes for evaluation
classifier - the classifier to use for evaluation
Returns:
the evaluation result

validateEvaluationSet

public final boolean validateEvaluationSet()
Validation method for evaluation set initialization.

Returns:
true if set is initialized with data

getAvgPreditionTime

public double getAvgPreditionTime()
Description copied from interface: ValidationStrategy
Getter for the average time to predict an activity

Specified by:
getAvgPreditionTime in interface ValidationStrategy
Returns:
the average time to predict an activity

getAvgTrainingTime

public double getAvgTrainingTime()
Description copied from interface: ValidationStrategy
Getter for the average time to train an activity sample.

Specified by:
getAvgTrainingTime in interface ValidationStrategy
Returns:
the average time to train an activity sample

getMaxPreditionTime

public double getMaxPreditionTime()
Description copied from interface: ValidationStrategy
Getter for the maximum prediction time

Specified by:
getMaxPreditionTime in interface ValidationStrategy
Returns:
the maximum time to predict an activity

getMinPreditionTime

public double getMinPreditionTime()
Description copied from interface: ValidationStrategy
Getter for the minimum prediction time

Specified by:
getMinPreditionTime in interface ValidationStrategy
Returns:
the minimum time to predict an activity