Alignment API and Server 4.1.${version.update}

fr.inrialpes.exmo.align.impl.eval
Class PRGraphEvaluator

java.lang.Object
  extended by fr.inrialpes.exmo.align.impl.eval.GraphEvaluator
      extended by fr.inrialpes.exmo.align.impl.eval.PRGraphEvaluator

public class PRGraphEvaluator
extends GraphEvaluator

Compute the precision recall graph on 11 points

Version:
$Id: PRGraphEvaluator.java 1529 2010-10-12 10:03:49Z euzenat $ This works perfectly correctly. I mention below the point which are mentionned as design points in a forecoming Exmotto entry: [R=0%] What should be P when R is 0% (obviously 100%) [R=100%] What should be P when R=100% is unreachable [Interp.] How is a chaotic curve interpolated Note: a very interesting measure is the MAP (mean average precision) which is figuratively the area under the curve and more precisely the average precision obtained for each correspondence in the reference alignment. The problem is that it can only be valid if the compared alignment has provided all the correspondences in the reference. Otherwise, it would basically be: SUM_c\in correct( P( c ) ) / nbexpected NOTE: This should be adapated for other notions of Precision and Recall
Author:
Jerome Euzenat

Field Summary
private  double map
           
private  int STEP
           
private  double sumprecisions
           
 
Fields inherited from class fr.inrialpes.exmo.align.impl.eval.GraphEvaluator
cellSet, invalid, nbexpected, points
 
Constructor Summary
PRGraphEvaluator()
           
 
Method Summary
 Vector<Pair> eval()
          Compute precision and recall graphs.
 Vector<Pair> eval(Properties params)
          Compute precision and recall graphs.
 Vector<Pair> evalOldStyle()
          Returns a list of Precision at recall points (Pairs) From an ordered vector of cells with their correctness status
 Vector<Pair> evalOpenEnded()
          Returns a list of Precision at recall points (Pairs) From an ordered vector of cells with their correctness status
 double getGlobalResult()
          Retuns a simple global evaluation measure if any
 double getMap()
           
 void write(PrintWriter writer)
          This output the result
 String xlabel()
           
 String ylabel()
           
 
Methods inherited from class fr.inrialpes.exmo.align.impl.eval.GraphEvaluator
getStep, ingest, initCellSet, isCorrect, isValid, nbCells, setStep, writePlot, writeXMLMap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

STEP

private int STEP

map

private double map

sumprecisions

private double sumprecisions
Constructor Detail

PRGraphEvaluator

public PRGraphEvaluator()
Method Detail

eval

public Vector<Pair> eval()
Compute precision and recall graphs.

Specified by:
eval in class GraphEvaluator

eval

public Vector<Pair> eval(Properties params)
Compute precision and recall graphs.

Specified by:
eval in class GraphEvaluator

evalOpenEnded

public Vector<Pair> evalOpenEnded()
Returns a list of Precision at recall points (Pairs) From an ordered vector of cells with their correctness status


evalOldStyle

public Vector<Pair> evalOldStyle()
Returns a list of Precision at recall points (Pairs) From an ordered vector of cells with their correctness status


write

public void write(PrintWriter writer)
           throws IOException
This output the result

Throws:
IOException

getMap

public double getMap()

getGlobalResult

public double getGlobalResult()
Description copied from class: GraphEvaluator
Retuns a simple global evaluation measure if any

Specified by:
getGlobalResult in class GraphEvaluator

xlabel

public String xlabel()
Specified by:
xlabel in class GraphEvaluator

ylabel

public String ylabel()
Specified by:
ylabel in class GraphEvaluator

Alignment API and Server 4.1.${version.update}

(C) INRIA & friends, 2003-${curryear}