You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opennlp.apache.org by jo...@apache.org on 2012/12/19 23:16:24 UTC
svn commit: r1424168 -
/opennlp/trunk/opennlp-maxent/src/test/java/opennlp/maxent/quasinewton/QNTrainerTest.java
Author: joern
Date: Wed Dec 19 22:16:23 2012
New Revision: 1424168
URL: http://svn.apache.org/viewvc?rev=1424168&view=rev
Log:
OPENNLP-553 model is now kept in memory and not serialized to the current working directory.
Modified:
opennlp/trunk/opennlp-maxent/src/test/java/opennlp/maxent/quasinewton/QNTrainerTest.java
Modified: opennlp/trunk/opennlp-maxent/src/test/java/opennlp/maxent/quasinewton/QNTrainerTest.java
URL: http://svn.apache.org/viewvc/opennlp/trunk/opennlp-maxent/src/test/java/opennlp/maxent/quasinewton/QNTrainerTest.java?rev=1424168&r1=1424167&r2=1424168&view=diff
==============================================================================
--- opennlp/trunk/opennlp-maxent/src/test/java/opennlp/maxent/quasinewton/QNTrainerTest.java (original)
+++ opennlp/trunk/opennlp-maxent/src/test/java/opennlp/maxent/quasinewton/QNTrainerTest.java Wed Dec 19 22:16:23 2012
@@ -23,6 +23,10 @@ import static org.junit.Assert.assertNot
import static org.junit.Assert.assertTrue;
import java.io.BufferedReader;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.DataInputStream;
+import java.io.DataOutputStream;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
@@ -31,6 +35,7 @@ import java.util.ArrayList;
import java.util.List;
import opennlp.model.AbstractModel;
+import opennlp.model.BinaryFileDataReader;
import opennlp.model.DataIndexer;
import opennlp.model.Event;
import opennlp.model.GenericModelReader;
@@ -92,15 +97,17 @@ public class QNTrainerTest {
// given
RealValueFileEventStream rvfes1 = new RealValueFileEventStream("src/test/resources/data/opennlp/maxent/real-valued-weights-training-data.txt");
DataIndexer testDataIndexer = new OnePassRealValueDataIndexer(rvfes1,1);
- String modelFileName = "qn-test-model.bin";
// when
// QNModel trainedModel = new QNTrainer(5, 500, true).trainModel(new TwoPassDataIndexer(createTrainingStream()));
QNModel trainedModel = new QNTrainer(5, 700, true).trainModel(testDataIndexer);
- GenericModelWriter modelWriter = new GenericModelWriter(trainedModel, new File(modelFileName));
+ ByteArrayOutputStream modelBytes = new ByteArrayOutputStream();
+ GenericModelWriter modelWriter = new GenericModelWriter(trainedModel, new DataOutputStream(modelBytes));
modelWriter.persist();
+ modelWriter.close();
- GenericModelReader modelReader = new GenericModelReader(new File(modelFileName));
+ GenericModelReader modelReader = new GenericModelReader(new BinaryFileDataReader(
+ new ByteArrayInputStream(modelBytes.toByteArray())));
AbstractModel readModel = modelReader.getModel();
QNModel deserModel = (QNModel) readModel;