public void testing_saving_and_loading_saved_model() { // Save Runtime.LoadFromFile <TitanicDataRow>(0, TestingHelpers.GetResourceFileName("titanic_train.csv")). Classifiers.Trees.RandomForest. NumExecutionSlots(4). NumFeatures(5). NumTrees(50). FlushToFile("titanic_randor_forest.model"); // Load IUntypedBaseClassifier <weka.classifiers.Classifier> classifier = BaseClassifier.Read("titanic_randor_forest.model"); TitanicDataRow row = new TitanicDataRow { age = 10, pclass = "1", sex = "male", embarked = "C" }; // Classify double prediction = classifier.ClassifyInstance(Runtime.BuildInstance(0, row)); double proba = classifier.ClassifyInstanceProba(Runtime.BuildInstance(0, row)); Assert.AreEqual(0.0, prediction); Assert.IsTrue(proba < 0.5); }
[Test] public void test_making_single_predictions_from_trained_model() { var rt = Runtime.LoadFromFile <TitanicDataRow>(0, TestingHelpers.GetResourceFileName("titanic_train.csv")); var classifier = rt.Classifiers.Trees.RandomForest. NumExecutionSlots(4). NumFeatures(5). NumTrees(50); var row = new TitanicDataRow { age = 10, pclass = "1", sex = "male", embarked = "C" }; var prediction = classifier.ClassifyRow(row); var proba = classifier.ClassifyRowProba(row); Assert.AreEqual(0, prediction); Assert.IsTrue(proba < 0.5); }