Example #1
0
        public static void TestABCMiner()
        {
            Console.WriteLine("Start");

            Dataset trainingSet = ArffHelper.LoadDatasetFromArff(datasetFilePath);
            Dataset testingSet  = ArffHelper.LoadDatasetFromArff(datasetFilePath);



            DataMining.ClassificationMeasures.IClassificationQualityMeasure measure1 = new DataMining.ClassificationMeasures.MicroAccuracyMeasure();
            DataMining.ClassificationMeasures.IClassificationQualityMeasure measure2 = new DataMining.ClassificationMeasures.ProbabilityAccuracyMeasure();
            DataMining.ClassificationMeasures.IClassificationQualityMeasure measure3 = new DataMining.ClassificationMeasures.ReducedErrorMeasure();
            DataMining.ClassificationMeasures.IClassificationQualityMeasure measure4 = new DataMining.ClassificationMeasures.ProbabilityReducedErrorMeasure();

            IHeuristicValueCalculator <Edge> calculator = new CMICalculator();

            int seed = (int)DateTime.Now.Ticks;
            BayesianNetworkClassifier abclassifier = SingleTest.CreateABCMinerClassifier(seed, 100, 10, 10, 3, trainingSet, measure1, calculator, false, true);

            //double quality1 = SingleTest.TestClassifier(abclassifier, testingSet, measure1);
            //quality1 = Math.Round(quality1 * 100, 2);

            //double quality2 = SingleTest.TestClassifier(abclassifier, testingSet, measure2);
            //quality2 = Math.Round(quality2 * 100, 2);

            //double quality3 = SingleTest.TestClassifier(abclassifier, testingSet, measure3);
            //quality3 = Math.Round(quality3 * 100, 2);

            double quality4 = SingleTest.TestClassifier(abclassifier, testingSet, measure4);

            quality4 = Math.Round(quality4 * 100, 2);

            //Console.WriteLine("ABC Quality1: " + quality1.ToString());
            //Console.WriteLine("ABC Quality2: " + quality2.ToString());
            //Console.WriteLine("ABC Quality3: " + quality3.ToString());
            Console.WriteLine("ABC Quality4: " + quality4.ToString());
            Console.WriteLine("End");


            string xml = BayesianNetworks.Utilities.GraphExporter.ExportToGaphSharpXml(abclassifier);

            System.IO.File.WriteAllText(@"C:\0 - Khalid\Academics\" + datasetName + "1.xml", xml);


            Console.ReadLine();
        }
Example #2
0
        public static void TestABCMinerPlusI()
        {
            Console.WriteLine("Start");

            Dataset trainingSet = ArffHelper.LoadDatasetFromArff(datasetFilePath);
            Dataset testingSet  = ArffHelper.LoadDatasetFromArff(datasetFilePath);

            DataMining.ClassificationMeasures.IClassificationQualityMeasure measure1 = new DataMining.ClassificationMeasures.MicroAccuracyMeasure();
            DataMining.ClassificationMeasures.IClassificationQualityMeasure measure2 = new DataMining.ClassificationMeasures.ProbabilityAccuracyMeasure();
            DataMining.ClassificationMeasures.IClassificationQualityMeasure measure3 = new DataMining.ClassificationMeasures.ReducedErrorMeasure();
            DataMining.ClassificationMeasures.IClassificationQualityMeasure measure4 = new DataMining.ClassificationMeasures.ProbabilityReducedErrorMeasure();


            int seed = (int)DateTime.Now.Ticks;
            BayesianNetworkClassifier abcMinerPlusclassifier = SingleTest.CreateABCMinerPlusIClassifier(seed, 10, 1, 5, 10, 2, trainingSet, measure1, false, true);

            double quality1 = SingleTest.TestClassifier(abcMinerPlusclassifier, testingSet, measure1);

            quality1 = Math.Round(quality1 * 100, 2);

            double quality2 = SingleTest.TestClassifier(abcMinerPlusclassifier, testingSet, measure2);

            quality2 = Math.Round(quality2 * 100, 2);

            double quality3 = SingleTest.TestClassifier(abcMinerPlusclassifier, testingSet, measure3);

            quality3 = Math.Round(quality3 * 100, 2);

            double quality4 = SingleTest.TestClassifier(abcMinerPlusclassifier, testingSet, measure4);

            quality4 = Math.Round(quality4 * 100, 2);

            Console.WriteLine("ABCMinerPlusI Quality1: " + quality1.ToString());
            Console.WriteLine("ABCMinerPlusI Quality2: " + quality2.ToString());
            Console.WriteLine("ABCMinerPlusI Quality3: " + quality3.ToString());
            Console.WriteLine("ABCMinerPlusI Quality4: " + quality4.ToString());
            Console.WriteLine("End");


            Console.WriteLine("End");

            Console.ReadLine();
        }