You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by pk...@apache.org on 2013/06/04 15:10:55 UTC
svn commit: r1489425 -
/uima/sandbox/ruta/trunk/ruta-ep-addons/src/main/java/org/apache/uima/ruta/cde/utils/EvaluationMeasures.java
Author: pkluegl
Date: Tue Jun 4 13:10:55 2013
New Revision: 1489425
URL: http://svn.apache.org/r1489425
Log:
UIMA-2859
- use better measures: mse, spearmans, pearsons, cosine
Modified:
uima/sandbox/ruta/trunk/ruta-ep-addons/src/main/java/org/apache/uima/ruta/cde/utils/EvaluationMeasures.java
Modified: uima/sandbox/ruta/trunk/ruta-ep-addons/src/main/java/org/apache/uima/ruta/cde/utils/EvaluationMeasures.java
URL: http://svn.apache.org/viewvc/uima/sandbox/ruta/trunk/ruta-ep-addons/src/main/java/org/apache/uima/ruta/cde/utils/EvaluationMeasures.java?rev=1489425&r1=1489424&r2=1489425&view=diff
==============================================================================
--- uima/sandbox/ruta/trunk/ruta-ep-addons/src/main/java/org/apache/uima/ruta/cde/utils/EvaluationMeasures.java (original)
+++ uima/sandbox/ruta/trunk/ruta-ep-addons/src/main/java/org/apache/uima/ruta/cde/utils/EvaluationMeasures.java Tue Jun 4 13:10:55 2013
@@ -25,7 +25,9 @@ import java.util.ArrayList;
import java.util.Locale;
import org.apache.commons.math3.linear.ArrayRealVector;
+import org.apache.commons.math3.stat.correlation.PearsonsCorrelation;
import org.apache.commons.math3.stat.correlation.SpearmansCorrelation;
+import org.apache.commons.math3.stat.inference.ChiSquareTest;
import org.apache.commons.math3.stat.inference.TestUtils;
public class EvaluationMeasures {
@@ -39,14 +41,17 @@ public class EvaluationMeasures {
y[index] = resultPair[1];
index++;
}
+ double mse = meanSquareError(x, y);
double spearmans = new SpearmansCorrelation().correlation(x, y);
- double pairedT = TestUtils.pairedT(x, y);
+ double pearsons = new PearsonsCorrelation().correlation(x, y);
double cosine = cosine(x, y);
+ mse = round(mse);
spearmans = round(spearmans);
- pairedT = round(pairedT);
+ pearsons = round(pearsons);
cosine = round(cosine);
- String report = "cosine=" + cosine + " spearmans=" + spearmans + " pairedT=" + pairedT;
+ String report = "mse=" + mse + " spearmans=" + spearmans + " pearsons=" + pearsons + " cosine="
+ + cosine;
return report;
}
@@ -74,4 +79,16 @@ public class EvaluationMeasures {
}
return cosine(x, y);
}
+
+ public static double meanSquareError(double[] x, double[] y) {
+ double sum = 0;
+ for (int i = 0; i < x.length; i++) {
+ double xi = x[i];
+ double yi = y[i];
+ double diff = xi - yi;
+ sum += (diff * diff);
+ }
+ return sum / x.length;
+ }
+
}