Ejemplo n.º 1
0
        public void EvaluateClassifier(
            IBaseClassifier <Classifier> classifier,
            Runtime testing,
            bool crossFoldsEvaluate      = true,
            bool runPredictions          = true,
            string saveModelToDiskFile   = null,
            string loadModelfromDiskFile = null,
            int numFolds = 10)
        {
            Console.WriteLine("EvaluateClassifier");

            var start = DateTime.Now;

            if (classifier != null)
            {
                classifier.Build();
            }

            if (!String.IsNullOrWhiteSpace(loadModelfromDiskFile))
            {
                throw new NotSupportedException("loadModelfromDiskFile not supported " +
                                                "as BaseClassifier.Read returns a Classifier not a IBaseClassifier as it should");
                // clas = BaseClassifier.Read(loadModelfromDiskFile);
                // Console.WriteLine("Loading Model From Disk Took: {0}", DateTime.Now.Subtract(start));
            }
            else if (!String.IsNullOrWhiteSpace(saveModelToDiskFile))
            {
                classifier.FlushToFile(saveModelToDiskFile);
            }
            if (crossFoldsEvaluate)
            {
                classifier.Runtime.EvaluateWithCrossValidation(classifier, numFolds);
            }
            if (runPredictions)
            {
                testing.GeneratePredictions(null, classifier);
            }

            Console.WriteLine("\n\nEvaluation Took: {0}", DateTime.Now.Subtract(start));
        }
Ejemplo n.º 2
0
 public ClassifierEvaluator(Runtime runtime, IBaseClassifier <Classifier> classifier)
 {
     this.runtime    = runtime;
     this.classifier = classifier;
 }
Ejemplo n.º 3
0
 public double[] GetClassifications(IBaseClassifier <Classifier> classifier)
 {
     return(this.Select(classifier.ClassifyInstance).ToArray());
 }
Ejemplo n.º 4
0
 public PmlEvaluation EvaluateWithCrossValidation(IBaseClassifier <Classifier> classifier, int numfolds = 10, bool quiet = false)
 {
     return(new ClassifierEvaluator(this, classifier).
            EvaluateWithCrossValidateion(numfolds, quiet));
 }
Ejemplo n.º 5
0
 public double EvaluateModelOnce(IBaseClassifier <Classifier> classifier, PmlInstance instance)
 {
     return(Impl.evaluateModelOnce(classifier.Impl, instance.Impl));
 }
Ejemplo n.º 6
0
 public double EvaluateModelOnceAndRecordPrediction(IBaseClassifier <Classifier> classifier, PmlInstance instance)
 {
     return(Impl.evaluateModelOnceAndRecordPrediction(classifier.Impl, instance.Impl));
 }
Ejemplo n.º 7
0
 public static string EvaluateModel(IBaseClassifier <Classifier> classifier, string[] options)
 {
     return(Evaluation.evaluateModel(classifier.Impl, options));
 }
Ejemplo n.º 8
0
 public double[] EvaluateModel(IBaseClassifier <Classifier> classifier, Runtime data, object[] forPredictionsPrinting)
 {
     return(Impl.evaluateModel(classifier.Impl, data.Impl, forPredictionsPrinting));
 }