Package weka.classifiers.evaluation

# Class MarginCurve

java.lang.Object
weka.classifiers.evaluation.MarginCurve

All Implemented Interfaces:
  `RevisionHandler`

public class MarginCurve extends Object implements RevisionHandler
Generates points illustrating the prediction margin. The margin is defined as the difference between the probability predicted for the actual class and the highest probability predicted for the other classes. One hypothesis as to the good performance of boosting algorithms is that they increaes the margins on the training data and this gives better performance on test data.

Version:
  $Revision: 1.11 $
Author:
  Len Trigg (len@reeltwo.com)

## Constructor Summary

Constructors
Constructor
Description
`MarginCurve()`

## Method Summary

Modifier and Type
Method
Description
`Instances`
`getCurve(FastVector predictions)`
Calculates the cumulative margin distribution for the set of predictions, returning the result as a set of Instances.
`String`
`getRevision()`
Returns the revision string.
`static void`
`main(String[] args)`
Tests the MarginCurve generation from the command line.

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### MarginCurve

public MarginCurve()

## Method Details

### getCurve

public Instances getCurve(FastVector predictions)
Calculates the cumulative margin distribution for the set of predictions, returning the result as a set of Instances. The structure of these Instances is as follows:

- Margin contains the margin value (which should be plotted as an x-coordinate)
- Current contains the count of instances with the current margin (plot as y axis)
- Cumulative contains the count of instances with margin less than or equal to the current margin (plot as y axis)

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

### getRevision

public String getRevision()
Returns the revision string.

Specified by:
  `getRevision` in interface `RevisionHandler`
Returns:
  the revision

### main

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

Parameters:
  `args` - currently ignored