de.jstacs.classifiers.performanceMeasures
Class PRCurve

java.lang.Object
  extended by de.jstacs.parameters.ParameterSet
      extended by de.jstacs.classifiers.performanceMeasures.AbstractPerformanceMeasure
          extended by de.jstacs.classifiers.performanceMeasures.AbstractTwoClassPerformanceMeasure
              extended by de.jstacs.classifiers.performanceMeasures.PRCurve
All Implemented Interfaces:
PerformanceMeasure, GalaxyConvertible, Storable, Cloneable
Direct Known Subclasses:
AucPR

public class PRCurve
extends AbstractTwoClassPerformanceMeasure

This class implements the precision-recall curve and its area under the curve. The precision-recall curve is the plot of precision (also called positive predictive value, $\frac{TP}{TP+FP}$) against recall (also called sensitivity, $\frac{TP}{TP+FN}$) for all possible classification thresholds. If you are only interested in the area under this curve, you can use AucPR instead.

Author:
Jan Grau, Jens Keilwagen

Nested Class Summary
 
Nested classes/interfaces inherited from class de.jstacs.parameters.ParameterSet
ParameterSet.ParameterList
 
Field Summary
static double minStepSize
          The minimum step size between supporting points
static String NAME
          The name of the performance measure return by getName()
 
Fields inherited from class de.jstacs.parameters.ParameterSet
errorMessage, parameters, parent
 
Constructor Summary
PRCurve()
          Constructs a new instance of the performance measure PRCurve.
PRCurve(StringBuffer xml)
          The standard constructor for the interface Storable.
 
Method Summary
 ResultSet compute(double[] sortedScoresClass0, double[] weightClass0, double[] sortedScoresClass1, double[] weightClass1)
          This method allows to compute the performance measure of given sorted score ratios.
 String getName()
          The method returns the name of the performance measure.
 
Methods inherited from class de.jstacs.classifiers.performanceMeasures.AbstractTwoClassPerformanceMeasure
compute, getAllowedNumberOfClasses
 
Methods inherited from class de.jstacs.classifiers.performanceMeasures.AbstractPerformanceMeasure
compute, compute, 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
 

Field Detail

NAME

public static final String NAME
The name of the performance measure return by getName()

See Also:
Constant Field Values

minStepSize

public static double minStepSize
The minimum step size between supporting points

Constructor Detail

PRCurve

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


PRCurve

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

Parameters:
xml - the XML representation as StringBuffer
Throws:
NonParsableException - if the PRCurve 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 ResultSet compute(double[] sortedScoresClass0,
                         double[] weightClass0,
                         double[] sortedScoresClass1,
                         double[] weightClass1)
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.

Parameters:
sortedScoresClass0 - the sorted score ratios of class 0
weightClass0 - the weights of the sequences of class 0 sorted along with the scores sortedScoresClass0
sortedScoresClass1 - the sorted score ratios of class 1
weightClass1 - 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[]...)