Package weka.classifiers.evaluation
Class MarginCurve
java.lang.Object
weka.classifiers.evaluation.MarginCurve
- All Implemented Interfaces:
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 -
Method Summary
Modifier and TypeMethodDescriptiongetCurve
(FastVector predictions) Calculates the cumulative margin distribution for the set of predictions, returning the result as a set of Instances.Returns the revision string.static void
Tests the MarginCurve generation from the command line.
-
Constructor Details
-
MarginCurve
public MarginCurve()
-
-
Method Details
-
getCurve
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
Returns the revision string.- Specified by:
getRevision
in interfaceRevisionHandler
- Returns:
- the revision
-
main
Tests the MarginCurve generation from the command line. The classifier is currently hardcoded. Pipe in an arff file.- Parameters:
args
- currently ignored
-