de.jstacs.classifiers.performanceMeasures
Class FalsePositiveRateForFixedSensitivity

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.AbstractNumericalTwoClassPerformanceMeasure
                  extended by de.jstacs.classifiers.performanceMeasures.FalsePositiveRateForFixedSensitivity
All Implemented Interfaces:
NumericalPerformanceMeasure, PerformanceMeasure, GalaxyConvertible, Storable, Cloneable

public class FalsePositiveRateForFixedSensitivity
extends AbstractNumericalTwoClassPerformanceMeasure
implements NumericalPerformanceMeasure

This class implements the false positive rate for a fixed sensitivity. The false positive rate is defined as $\frac{FP}{TN+FP}$ and the sensitivity is defined as $\frac{TP}{TP+FN}$. The classification threshold for computing false positive rate is chosen such that the classifier yields at least the specified sensitivity. This measure corresponds to a specific point on the ROCCurve.

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
FalsePositiveRateForFixedSensitivity()
          Constructs a new instance of the performance measure FalsePositiveRateForFixedSensitivity with empty parameter values.
FalsePositiveRateForFixedSensitivity(double sensitivity)
          Constructs a new instance of the performance measure FalsePositiveRateForFixedSensitivity with given sensitivity.
FalsePositiveRateForFixedSensitivity(StringBuffer xml)
          The standard constructor for the interface Storable.
 
Method Summary
 NumericalResultSet compute(double[] sortedScoresClass0, double[] weightsClass0, double[] sortedScoresClass1, double[] weightsClass1)
          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.AbstractNumericalTwoClassPerformanceMeasure
compute, compute, compute
 
Methods inherited from class de.jstacs.classifiers.performanceMeasures.AbstractTwoClassPerformanceMeasure
getAllowedNumberOfClasses
 
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
 
Methods inherited from interface de.jstacs.classifiers.performanceMeasures.NumericalPerformanceMeasure
compute, compute, compute
 
Methods inherited from interface de.jstacs.classifiers.performanceMeasures.PerformanceMeasure
getAllowedNumberOfClasses
 

Constructor Detail

FalsePositiveRateForFixedSensitivity

public FalsePositiveRateForFixedSensitivity()
Constructs a new instance of the performance measure FalsePositiveRateForFixedSensitivity with empty parameter values.


FalsePositiveRateForFixedSensitivity

public FalsePositiveRateForFixedSensitivity(double sensitivity)
                                     throws Exception
Constructs a new instance of the performance measure FalsePositiveRateForFixedSensitivity with given sensitivity.

Parameters:
sensitivity - the sensitivity for which the false positive rate should be computed
Throws:
Exception - if the internal parameters can not be created or the value can not be set

FalsePositiveRateForFixedSensitivity

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

Parameters:
xml - the XML representation as StringBuffer
Throws:
NonParsableException - if the FalsePositiveRateForFixedSensitivity 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[] 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
Specified by:
compute in class AbstractNumericalTwoClassPerformanceMeasure
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[]...)