mulan.evaluation.measure
Class MacroPrecision

java.lang.Object
  extended by mulan.evaluation.measure.MeasureBase
      extended by mulan.evaluation.measure.BipartitionMeasureBase
          extended by mulan.evaluation.measure.LabelBasedBipartitionMeasureBase
              extended by mulan.evaluation.measure.LabelBasedPrecision
                  extended by mulan.evaluation.measure.MacroPrecision
All Implemented Interfaces:
Serializable, MacroAverageMeasure, Measure

public class MacroPrecision
extends LabelBasedPrecision
implements MacroAverageMeasure

Implementation of the macro-averaged precision measure.

Version:
2010.11.05
Author:
Grigorios Tsoumakas
See Also:
Serialized Form

Field Summary
 
Fields inherited from class mulan.evaluation.measure.LabelBasedBipartitionMeasureBase
falseNegatives, falsePositives, numOfLabels, trueNegatives, truePositives
 
Constructor Summary
MacroPrecision(int numOfLabels)
          Constructs a new object with given number of labels
 
Method Summary
 String getName()
          Gets the name of a measure.
 double getValue()
          Gets the value of a measure.
 double getValue(int labelIndex)
          Returns the precision for a label
 
Methods inherited from class mulan.evaluation.measure.LabelBasedPrecision
getIdealValue
 
Methods inherited from class mulan.evaluation.measure.LabelBasedBipartitionMeasureBase
reset, updateBipartition
 
Methods inherited from class mulan.evaluation.measure.BipartitionMeasureBase
updateInternal
 
Methods inherited from class mulan.evaluation.measure.MeasureBase
makeCopy, toString, update
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MacroPrecision

public MacroPrecision(int numOfLabels)
Constructs a new object with given number of labels

Parameters:
numOfLabels - the number of labels
Method Detail

getValue

public double getValue()
Description copied from interface: Measure
Gets the value of a measure. The measure is incrementally cumulated for learner's prediction by each Measure.update(MultiLabelOutput, boolean[]) call. The value returned by the method, returns sum of all update calls divided by the number of calls (average of all measures for all predictions).

Specified by:
getValue in interface Measure
Returns:
the average measure value computed so far

getName

public String getName()
Description copied from interface: Measure
Gets the name of a measure.

Specified by:
getName in interface Measure
Returns:
the name of a measure.

getValue

public double getValue(int labelIndex)
Returns the precision for a label

Specified by:
getValue in interface MacroAverageMeasure
Parameters:
labelIndex - the index of a label (starting from 0)
Returns:
the precision for the given label