Alignment API and Server 4.0

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

java.lang.Object
  extended by fr.inrialpes.exmo.align.impl.BasicEvaluator
      extended by fr.inrialpes.exmo.align.impl.eval.PRecEvaluator
All Implemented Interfaces:
Evaluator
Direct Known Subclasses:
SemPRecEvaluator

public class PRecEvaluator
extends BasicEvaluator
implements Evaluator

Evaluate proximity between two alignments. This function implements Precision/Recall/Fallout. The first alignment is thus the expected one.

Version:
$Id: PRecEvaluator.java 1390 2010-03-29 17:37:55Z euzenat $
Author:
Jerome Euzenat

Field Summary
protected  double fallout
           
protected  double fmeasure
           
protected  int nbcorrect
           
protected  int nbexpected
           
protected  int nbfound
           
protected  double overall
           
protected  double precision
           
protected  double recall
           
protected  long time
           
 
Fields inherited from class fr.inrialpes.exmo.align.impl.BasicEvaluator
align1, align2, result
 
Constructor Summary
PRecEvaluator(Alignment align1, Alignment align2)
          Creation Initiate Evaluator for precision and recall
 
Method Summary
protected  double computeDerived()
           
 double eval(Properties params)
          The formulas are standard: given a reference alignment A given an obtained alignment B which are sets of cells (linking one entity of ontology O to another of ontolohy O').
 double eval(Properties params, Object cache)
          Run the evaluation between the two ontologies.
 int getCorrect()
           
 int getExpected()
           
 double getFallout()
           
 double getFmeasure()
           
 int getFound()
           
 double getOverall()
           
 double getPrecision()
           
 double getRecall()
           
 long getTime()
           
 String HTMLString()
           
 void init()
           
 void write(PrintWriter writer)
          This now output the results in Lockheed format.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

precision

protected double precision

recall

protected double recall

fallout

protected double fallout

overall

protected double overall

fmeasure

protected double fmeasure

time

protected long time

nbexpected

protected int nbexpected

nbfound

protected int nbfound

nbcorrect

protected int nbcorrect
Constructor Detail

PRecEvaluator

public PRecEvaluator(Alignment align1,
                     Alignment align2)
              throws AlignmentException
Creation Initiate Evaluator for precision and recall

Parameters:
align1 - : the reference alignment
align2 - : the alignment to evaluate The two parameters are transformed into URIAlignment before being processed Hence, if one of them is modified after initialisation, this will not be taken into account.
Throws:
AlignmentException
Method Detail

init

public void init()

eval

public double eval(Properties params)
            throws AlignmentException
The formulas are standard: given a reference alignment A given an obtained alignment B which are sets of cells (linking one entity of ontology O to another of ontolohy O'). P = |A inter B| / |B| R = |A inter B| / |A| F = 2PR/(P+R) with inter = set intersection and |.| cardinal. In the implementation |B|=nbfound, |A|=nbexpected and |A inter B|=nbcorrect.

Specified by:
eval in interface Evaluator
Throws:
AlignmentException

eval

public double eval(Properties params,
                   Object cache)
            throws AlignmentException
Description copied from interface: Evaluator
Run the evaluation between the two ontologies. Returns a double (between 0 and 1) providing an idea of the proximity The additional argument allows to cache the ontologies if necessary //@deprecated The OntologyCache is now internal, use eval( params ) instead

Specified by:
eval in interface Evaluator
Throws:
AlignmentException

computeDerived

protected double computeDerived()

HTMLString

public String HTMLString()

write

public void write(PrintWriter writer)
           throws IOException
This now output the results in Lockheed format.

Specified by:
write in interface Evaluator
Overrides:
write in class BasicEvaluator
Throws:
IOException

getPrecision

public double getPrecision()

getRecall

public double getRecall()

getOverall

public double getOverall()

getFallout

public double getFallout()

getFmeasure

public double getFmeasure()

getExpected

public int getExpected()

getFound

public int getFound()

getCorrect

public int getCorrect()

getTime

public long getTime()

Alignment API and Server 4.0

(C) INRIA & friends, 2003-2010