writeUTF("NaiveBayes"); writeInt(OUTCOME_LABELS.length); writeUTF(label); ComparablePredicate[] sorted = sortValues(); List<List<ComparablePredicate>> compressed = computeOutcomePatterns(sorted); writeInt(compressed.size()); writeUTF(a.size() + a.get(0).toString()); writeInt(sorted.length); writeUTF(s.name); writeDouble(sorted[i].params[j]); close();
protected static NaiveBayesModel persistedModel(NaiveBayesModel model) throws IOException { Path tempFilePath = Files.createTempFile("ptnb-", ".bin"); File file = tempFilePath.toFile(); try { NaiveBayesModelWriter modelWriter = new BinaryNaiveBayesModelWriter(model, file); modelWriter.persist(); NaiveBayesModelReader reader = new BinaryNaiveBayesModelReader(file); reader.checkModelType(); return (NaiveBayesModel)reader.constructModel(); } finally { file.delete(); } }
@Test public void testPlainTextModel() throws IOException { testDataIndexer.index(NaiveBayesCorrectnessTest.createTrainingStream()); NaiveBayesModel model1 = (NaiveBayesModel) new NaiveBayesTrainer().trainModel(testDataIndexer); StringWriter sw1 = new StringWriter(); NaiveBayesModelWriter modelWriter = new PlainTextNaiveBayesModelWriter(model1, new BufferedWriter(sw1)); modelWriter.persist(); NaiveBayesModelReader reader = new PlainTextNaiveBayesModelReader(new BufferedReader(new StringReader(sw1.toString()))); reader.checkModelType(); NaiveBayesModel model2 = (NaiveBayesModel)reader.constructModel(); StringWriter sw2 = new StringWriter(); modelWriter = new PlainTextNaiveBayesModelWriter(model2, new BufferedWriter(sw2)); modelWriter.persist(); System.out.println(sw1.toString()); Assert.assertEquals(sw1.toString(), sw2.toString()); }
writeUTF("NaiveBayes"); writeInt(OUTCOME_LABELS.length); writeUTF(label); ComparablePredicate[] sorted = sortValues(); List<List<ComparablePredicate>> compressed = computeOutcomePatterns(sorted); writeInt(compressed.size()); writeUTF(a.size() + a.get(0).toString()); writeInt(sorted.length); writeUTF(s.name); writeDouble(sorted[i].params[j]); close();
@Test public void testBinaryModelPersistence() throws Exception { testDataIndexer.index(NaiveBayesCorrectnessTest.createTrainingStream()); NaiveBayesModel model = (NaiveBayesModel) new NaiveBayesTrainer().trainModel(testDataIndexer); Path tempFile = Files.createTempFile("bnb-", ".bin"); File file = tempFile.toFile(); try { NaiveBayesModelWriter modelWriter = new BinaryNaiveBayesModelWriter(model, file); modelWriter.persist(); NaiveBayesModelReader reader = new BinaryNaiveBayesModelReader(file); reader.checkModelType(); AbstractModel abstractModel = reader.constructModel(); Assert.assertNotNull(abstractModel); } finally { file.delete(); } }
writeUTF("NaiveBayes"); writeInt(OUTCOME_LABELS.length); writeUTF(label); ComparablePredicate[] sorted = sortValues(); List<List<ComparablePredicate>> compressed = computeOutcomePatterns(sorted); writeInt(compressed.size()); writeUTF(a.size() + a.get(0).toString()); writeInt(sorted.length); writeUTF(s.name); writeDouble(sorted[i].params[j]); close();
@Test public void testTextModelPersistence() throws Exception { testDataIndexer.index(NaiveBayesCorrectnessTest.createTrainingStream()); NaiveBayesModel model = (NaiveBayesModel) new NaiveBayesTrainer().trainModel(testDataIndexer); Path tempFile = Files.createTempFile("ptnb-", ".txt"); File file = tempFile.toFile(); try { NaiveBayesModelWriter modelWriter = new PlainTextNaiveBayesModelWriter(model, file); modelWriter.persist(); NaiveBayesModelReader reader = new PlainTextNaiveBayesModelReader(file); reader.checkModelType(); AbstractModel abstractModel = reader.constructModel(); Assert.assertNotNull(abstractModel); } finally { file.delete(); } } }