de.jstacs.classifiers.performanceMeasures
Class ClassificationRate

java.lang.Object
  extended by de.jstacs.parameters.ParameterSet
      extended by de.jstacs.classifiers.performanceMeasures.AbstractPerformanceMeasure
          extended by de.jstacs.classifiers.performanceMeasures.ClassificationRate
All Implemented Interfaces:
NumericalPerformanceMeasure, PerformanceMeasure, GalaxyConvertible, Storable, Cloneable

public class ClassificationRate
extends AbstractPerformanceMeasure
implements NumericalPerformanceMeasure

This class implements the classification rate, i.e. $\frac{TP + TN}{N}$.

Author:
Jan Grau, Jens Keilwagen

Nested Class Summary
 
Nested classes/interfaces inherited from class de.jstacs.parameters.ParameterSet
ParameterSet.ParameterList
 
Field Summary
 
Fields inherited from class de.jstacs.parameters.ParameterSet
errorMessage, parameters, parent
 
Constructor Summary
ClassificationRate()
          Constructs a new instance of the performance measure ClassificationRate.
ClassificationRate(StringBuffer xml)
          The standard constructor for the interface Storable.
 
Method Summary
 NumericalResultSet compute(double[][][] classSpecificScores)
          This method allows to compute the performance measure of given class specific scores.
 NumericalResultSet compute(double[][][] classSpecificScores, double[][] weights)
          This method allows to compute the performance measure of given class specific scores.
 NumericalResultSet compute(double[] sortedScoresClass0, double[] sortedScoresClass1)
          This method allows to compute the performance measure of given sorted score ratios.
 NumericalResultSet compute(double[] sortedScoresClass0, double[] weightsClass0, double[] sortedScoresClass1, double[] weightsClass1)
          This method allows to compute the performance measure of given sorted score ratios.
 int getAllowedNumberOfClasses()
          This method returns the allowed number of classes.
 String getName()
          The method returns the name of the performance measure.
 
Methods inherited from class de.jstacs.classifiers.performanceMeasures.AbstractPerformanceMeasure
findSplitIndex, findThreshold, getCollectionOfAllMeasures, getWeight, simpleWeights
 
Methods inherited from class de.jstacs.parameters.ParameterSet
clone, fromGalaxy, fromXML, getAllParameterNames, getComment, getComment, getErrorMessage, getIndex, getName, getName, getNumberOfParameters, getParameterAt, getParameterForName, getParent, hasDefaultOrIsSet, initParameterList, initParameterList, isAtomic, isComparable, parametersLoaded, reset, setParent, toGalaxy, toXML
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ClassificationRate

public ClassificationRate()
Constructs a new instance of the performance measure ClassificationRate.


ClassificationRate

public ClassificationRate(StringBuffer xml)
                   throws NonParsableException
The standard constructor for the interface Storable. Constructs a ClassificationRate out of an XML representation.

Parameters:
xml - the XML representation as StringBuffer
Throws:
NonParsableException - if the ClassificationRate could not be reconstructed out of the StringBuffer xml
Method Detail

getName

public String getName()
Description copied from interface: PerformanceMeasure
The method returns the name of the performance measure.

Specified by:
getName in interface PerformanceMeasure
Specified by:
getName in class AbstractPerformanceMeasure
Returns:
the name of the performance measure

compute

public NumericalResultSet compute(double[] sortedScoresClass0,
                                  double[] sortedScoresClass1)
Description copied from interface: PerformanceMeasure
This method allows to compute the performance measure of given sorted score ratios. This method can only be used for binary classifiers.

Specified by:
compute in interface NumericalPerformanceMeasure
Specified by:
compute in interface PerformanceMeasure
Overrides:
compute in class AbstractPerformanceMeasure
Parameters:
sortedScoresClass0 - the sorted score ratios of class 0
sortedScoresClass1 - the sorted score ratios of class 1
Returns:
a result set containing the results of the performance measure
See Also:
PerformanceMeasure.compute(double[], double[], double[], double[])

compute

public NumericalResultSet compute(double[][][] classSpecificScores)
Description copied from interface: PerformanceMeasure
This method allows to compute the performance measure of given class specific scores.

Specified by:
compute in interface NumericalPerformanceMeasure
Specified by:
compute in interface PerformanceMeasure
Overrides:
compute in class AbstractPerformanceMeasure
Parameters:
classSpecificScores - the scores; first dimension = data sets, second dimension = sequences of the data set, third dimension classes of the classifier
Returns:
a result set containing the results of the performance measure
See Also:
PerformanceMeasure.compute(double[][][], double[][])

compute

public NumericalResultSet compute(double[] sortedScoresClass0,
                                  double[] weightsClass0,
                                  double[] sortedScoresClass1,
                                  double[] weightsClass1)
Description copied from interface: NumericalPerformanceMeasure
This method allows to compute the performance measure of given sorted score ratios. This method can only be used for binary classifiers.

Specified by:
compute in interface NumericalPerformanceMeasure
Specified by:
compute in interface PerformanceMeasure
Parameters:
sortedScoresClass0 - the sorted score ratios of class 0
weightsClass0 - the weights of the sequences of class 0 sorted along with the scores sortedScoresClass0
sortedScoresClass1 - the sorted score ratios of class 1
weightsClass1 - the weights of the sequences of class 1 sorted along with the scores sortedScoresClass1
Returns:
a result set containing the results of the performance measure
See Also:
de.jstacs.utils.ToolBox#sortAlongWith(double[], double[]...)

compute

public NumericalResultSet compute(double[][][] classSpecificScores,
                                  double[][] weights)
Description copied from interface: NumericalPerformanceMeasure
This method allows to compute the performance measure of given class specific scores.

Specified by:
compute in interface NumericalPerformanceMeasure
Specified by:
compute in interface PerformanceMeasure
Parameters:
classSpecificScores - the scores; first dimension = data sets, second dimension = sequences of the data set, third dimension classes of the classifier
weights - the weights for all sequence in all data sets
Returns:
a result set containing the results of the performance measure

getAllowedNumberOfClasses

public int getAllowedNumberOfClasses()
Description copied from interface: PerformanceMeasure
This method returns the allowed number of classes. For many performance measures this number is fixed, e.g. for AUC-ROC the number is 2. If the number is not fixed the method returns 0, e.g. for the classification rate.

Specified by:
getAllowedNumberOfClasses in interface PerformanceMeasure
Returns:
the allowed number of classes
See Also:
AbstractClassifier.getNumberOfClasses()