You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opennlp.apache.org by co...@apache.org on 2017/08/31 12:10:55 UTC
[opennlp] branch master updated: OPENNLP-1125: Change misclassified
report layout for LanguageDetector
This is an automated email from the ASF dual-hosted git repository.
colen pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/opennlp.git
The following commit(s) were added to refs/heads/master by this push:
new f82b5b5 OPENNLP-1125: Change misclassified report layout for LanguageDetector
f82b5b5 is described below
commit f82b5b57840389fcfdc4f16cb75703361d6ea059
Author: William D C M SILVA <co...@apache.org>
AuthorDate: Tue Aug 29 09:45:54 2017 -0300
OPENNLP-1125: Change misclassified report layout for LanguageDetector
---
.../LanguageDetectorEvaluationErrorListener.java | 7 +++++++
.../tools/langdetect/LanguageDetectorEvaluatorTest.java | 14 +++++++++++++-
2 files changed, 20 insertions(+), 1 deletion(-)
diff --git a/opennlp-tools/src/main/java/opennlp/tools/cmdline/langdetect/LanguageDetectorEvaluationErrorListener.java b/opennlp-tools/src/main/java/opennlp/tools/cmdline/langdetect/LanguageDetectorEvaluationErrorListener.java
index 073ef31..eeec89d 100644
--- a/opennlp-tools/src/main/java/opennlp/tools/cmdline/langdetect/LanguageDetectorEvaluationErrorListener.java
+++ b/opennlp-tools/src/main/java/opennlp/tools/cmdline/langdetect/LanguageDetectorEvaluationErrorListener.java
@@ -44,6 +44,7 @@ public class LanguageDetectorEvaluationErrorListener extends
*/
public LanguageDetectorEvaluationErrorListener(OutputStream outputStream) {
super(outputStream);
+ printStream.println("Expected\tPredicted\tContext");
}
@Override
@@ -51,4 +52,10 @@ public class LanguageDetectorEvaluationErrorListener extends
printError(reference, prediction);
}
+ @Override
+ protected void printError(LanguageSample referenceSample, LanguageSample predictedSample) {
+ printStream.println(String.join("\t", referenceSample.getLanguage().getLang(),
+ predictedSample.getLanguage().getLang(),
+ referenceSample.getContext()));
+ }
}
diff --git a/opennlp-tools/src/test/java/opennlp/tools/langdetect/LanguageDetectorEvaluatorTest.java b/opennlp-tools/src/test/java/opennlp/tools/langdetect/LanguageDetectorEvaluatorTest.java
index 8bdd71b..5e8b2ea 100644
--- a/opennlp-tools/src/test/java/opennlp/tools/langdetect/LanguageDetectorEvaluatorTest.java
+++ b/opennlp-tools/src/test/java/opennlp/tools/langdetect/LanguageDetectorEvaluatorTest.java
@@ -17,11 +17,15 @@
package opennlp.tools.langdetect;
+import java.io.ByteArrayOutputStream;
+import java.nio.charset.StandardCharsets;
import java.util.concurrent.atomic.AtomicInteger;
import org.junit.Assert;
import org.junit.Test;
+import opennlp.tools.cmdline.langdetect.LanguageDetectorEvaluationErrorListener;
+
public class LanguageDetectorEvaluatorTest {
@@ -33,6 +37,8 @@ public class LanguageDetectorEvaluatorTest {
final AtomicInteger correctCount = new AtomicInteger();
final AtomicInteger incorrectCount = new AtomicInteger();
+ ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
+
LanguageDetectorEvaluator evaluator = new LanguageDetectorEvaluator(langdetector,
new LanguageDetectorEvaluationMonitor() {
@Override
@@ -46,7 +52,7 @@ public class LanguageDetectorEvaluatorTest {
LanguageSample prediction) {
incorrectCount.incrementAndGet();
}
- });
+ }, new LanguageDetectorEvaluationErrorListener(outputStream));
evaluator.evaluateSample(new LanguageSample(new Language("pob"),
"escreve e faz palestras pelo mundo inteiro sobre anjos"));
@@ -63,6 +69,12 @@ public class LanguageDetectorEvaluatorTest {
Assert.assertEquals(3, evaluator.getDocumentCount());
Assert.assertEquals(0.33, evaluator.getAccuracy(), 0.01);
+
+ String report = outputStream.toString(StandardCharsets.UTF_8.name());
+
+ Assert.assertEquals("Expected\tPredicted\tContext\n" +
+ "fra\tpob\tescreve e faz palestras pelo mundo inteiro sobre anjos\n" +
+ "fra\tpob\tescreve e faz palestras pelo mundo inteiro sobre anjos\n", report);
}
}
--
To stop receiving notification emails like this one, please contact
['"commits@opennlp.apache.org" <co...@opennlp.apache.org>'].