コード例 #1
0
 protected void RunExperiment(Classifier.Classifier classifier, Parameter.Parameter parameter,
                              ExperimentPerformance experimentPerformance, CrossValidation <Instance.Instance> crossValidation,
                              InstanceList.InstanceList testSet)
 {
     for (var i = 0; i < K; i++)
     {
         var trainSet = new InstanceList.InstanceList(crossValidation.GetTrainFold(i));
         classifier.Train(trainSet, parameter);
         experimentPerformance.Add(classifier.Test(testSet));
     }
 }
コード例 #2
0
        /**
         * <summary> Execute the bootstrap run with the given classifier on the given data set using the given parameters.</summary>
         *
         * <param name="experiment">Experiment to be run.</param>
         * <returns>An ExperimentPerformance instance.</returns>
         */
        public ExperimentPerformance Execute(Experiment experiment)
        {
            var result = new ExperimentPerformance();

            for (var i = 0; i < _numberOfBootstraps; i++)
            {
                var bootstrap = new Bootstrap <Instance.Instance>(experiment.GetDataSet().GetInstances(),
                                                                  i + experiment.GetParameter().GetSeed());
                var bootstrapSample = new InstanceList.InstanceList(bootstrap.GetSample());
                experiment.GetClassifier().Train(bootstrapSample, experiment.GetParameter());
                result.Add(experiment.GetClassifier().Test(experiment.GetDataSet().GetInstanceList()));
            }

            return(result);
        }