weka.classifiers.evaluation
Class CostCurve

java.lang.Object
  extended byweka.classifiers.evaluation.CostCurve

public class CostCurve
extends java.lang.Object

Generates points illustrating probablity cost tradeoffs that can be obtained by varying the threshold value between classes. For example, the typical threshold value of 0.5 means the predicted probability of "positive" must be higher than 0.5 for the instance to be predicted as "positive".

Version:
$Revision: 1.6 $
Author:
Mark Hall (mhall@cs.waikato.ac.nz)

Field Summary
static java.lang.String NORM_EXPECTED_COST_NAME
           
static java.lang.String PROB_COST_FUNC_NAME
           
static java.lang.String RELATION_NAME
          The name of the relation used in cost curve datasets
static java.lang.String THRESHOLD_NAME
           
 
Constructor Summary
CostCurve()
           
 
Method Summary
 Instances getCurve(FastVector predictions)
          Calculates the performance stats for the default class and return results as a set of Instances.
 Instances getCurve(FastVector predictions, int classIndex)
          Calculates the performance stats for the desired class and return results as a set of Instances.
static void main(java.lang.String[] args)
          Tests the CostCurve generation from the command line.
private  Instances makeHeader()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

RELATION_NAME

public static final java.lang.String RELATION_NAME
The name of the relation used in cost curve datasets

See Also:
Constant Field Values

PROB_COST_FUNC_NAME

public static final java.lang.String PROB_COST_FUNC_NAME
See Also:
Constant Field Values

NORM_EXPECTED_COST_NAME

public static final java.lang.String NORM_EXPECTED_COST_NAME
See Also:
Constant Field Values

THRESHOLD_NAME

public static final java.lang.String THRESHOLD_NAME
See Also:
Constant Field Values
Constructor Detail

CostCurve

public CostCurve()
Method Detail

getCurve

public Instances getCurve(FastVector predictions)
Calculates the performance stats for the default class and return results as a set of Instances. The structure of these Instances is as follows:

Returns:
datapoints as a set of instances, null if no predictions have been made.
See Also:
TwoClassStats

getCurve

public Instances getCurve(FastVector predictions,
                          int classIndex)
Calculates the performance stats for the desired class and return results as a set of Instances.

Parameters:
classIndex - index of the class of interest.
Returns:
datapoints as a set of instances.

makeHeader

private Instances makeHeader()

main

public static void main(java.lang.String[] args)
Tests the CostCurve generation from the command line. The classifier is currently hardcoded. Pipe in an arff file.

Parameters:
args - currently ignored