Exemple #1
0
        public static void Evol3_BuildAprioriInstance()
        {
            Helpers.Utils.Debug("Evol3 Apriori..");
            Stopwatch sw = new Stopwatch();

            sw.Start();

            string mysqlConStr = "SERVER=localhost;" +
                                 "DATABASE=uhs;" +
                                 "UID=root;" +
                                 "PASSWORD=pascal;";

            CekaMySQL sql = new CekaMySQL(mysqlConStr);

            ArffInstance uhsAi = sql.tableToInstance("UHS_EXTENDED_STORIES_2",
                                                     new string[] {
                "MNTHS_TO_1",
                "MNTHS_TO_2",
                "AGE",
                "STATUS",
                "T_NONE",
                "T_HORMONE",
                "T_SURGERY",
                "T_PRI_CHEMO",
                "T_ADJ_CHEMO",
                "T_ADJ_RT",
                "T_OOPH",
                "T_PLASTIC",
                "T_HER"
            }, -1, -1, false, false);

            long em = sw.ElapsedMilliseconds;

            Helpers.Utils.Debug(string.Format("Gathered MySQL ArffInstance {0} ms.", em));

            uhsAi.integrityCheck();

            uhsAi.rebuildAttributeValueByRange(0, 120);
            uhsAi.rebuildAttributeValueByRange(1, 120);
            uhsAi.rebuildAttributeValueByRange(2, 16);

            uhsAi.deletePatternMatchingDatasets(new List <string> {
                "[-19<->101]"
            });
            uhsAi.deletePatternMatchingDatasets(new List <string> {
                "*", "[-67<->53]"
            });

            uhsAi.removeUnusedAttributeValues();
            uhsAi.Relation = "uhs_ext_story_apriori_evol3";

            long em2 = sw.ElapsedMilliseconds;

            Helpers.Utils.Debug(string.Format("Prepared apriori set in {0} ms.", (em2 - em)));

            new ArffSaver(uhsAi).saveInstance("uhs_ext_story_apriori_evol3");

            Helpers.Utils.Debug(string.Format("Evol done, tooks {0} ms.", sw.ElapsedMilliseconds));
        }
Exemple #2
0
        public static void GetDefaultDumpOfAliveDeepClean()
        {
            Helpers.Utils.Debug("Running Apriori on deep cleaned UHS alive dataset from DB..");
            Stopwatch sw = new Stopwatch(); sw.Start();

            string mysqlConStr = "SERVER=localhost;" +
                                 "DATABASE=uhs;" +
                                 "UID=root;" +
                                 "PASSWORD=pascal;";

            CekaMySQL sql = new CekaMySQL(mysqlConStr);

            ArffInstance uhsAi = sql.tableToInstance("uhs_patient_story".ToUpper(),
                                                     new string[] {
                "INITIAL_PRESENTATION",
                "INT_1_PRES",
                "INT_2_PRES",
                "STATUS"
            }, -1, -1, false, true);

            long em = sw.ElapsedMilliseconds;

            Helpers.Utils.Debug(string.Format("Gathered MySQL ArffInstance in {0} ms.", em));

            uhsAi.removeDatasetsPerAttributeValue("STATUS", "N");

            List <string> pattern1 = new List <string>()
            {
                "Primary|breast|cancer|(and/or|DCIS)", "Primary|breast|cancer|(and/or|DCIS)", "*"
            };
            List <string> pattern2 = new List <string>()
            {
                "Primary|breast|cancer|(and/or|DCIS)", "UNDEFINED", "*"
            };
            List <string> pattern3 = new List <string>()
            {
                "Primary|breast|cancer|(and/or|DCIS)", "*", "UNDEFINED"
            };
            List <string> pattern4 = new List <string>()
            {
                "*", "UNDEFINED", "UNDEFINED"
            };

            uhsAi.deletePatternMatchingDatasets(pattern1);
            uhsAi.deletePatternMatchingDatasets(pattern2);
            uhsAi.deletePatternMatchingDatasets(pattern3);
            uhsAi.deletePatternMatchingDatasets(pattern4);
            uhsAi.Datasets.removeEmptyValueDatasets();

            long t = sw.ElapsedMilliseconds;

            Helpers.Utils.Debug(string.Format("Cleansed dataset in {0} ms.", t));

            new ArffSaver(uhsAi).saveInstance("uhs_clean_alive");

            Helpers.Utils.Debug(string.Format("Finished, took {0} ms.", sw.ElapsedMilliseconds));
            sw.Stop();
        }
Exemple #3
0
        public static void Evol4_BuildClassifierInstance()
        {
            Helpers.Utils.Debug("Evol4 Classifier..");
            Stopwatch sw = new Stopwatch();

            sw.Start();

            string mysqlConStr = "SERVER=localhost;" +
                                 "DATABASE=uhs;" +
                                 "UID=root;" +
                                 "PASSWORD=pascal;";

            CekaMySQL sql = new CekaMySQL(mysqlConStr);

            ArffInstance uhsAi = sql.tableToValidatedInstance("UHS_EXTENDED_STORIES_2",
                                                              new string[] {
                "MNTHS_TO_1",
                "MNTHS_TO_2",
                "AGE",
                "STATUS",
                "T_NONE",
                "T_HORMONE",
                "T_SURGERY",
                "T_PRI_CHEMO",
                "T_ADJ_CHEMO",
                "T_ADJ_RT",
                "T_OOPH",
                "T_PLASTIC",
                "T_HER"
            }, new string[] {
                "MNTHS_TO_1",
                "MNTHS_TO_2"
            }, -1, -1, false, false);

            long em = sw.ElapsedMilliseconds;

            Helpers.Utils.Debug(string.Format("Gathered MySQL ArffInstance + preparing.. in {0} ms.", em));

            uhsAi.deletePatternMatchingDatasets(new List <string>()
            {
                "*", "0"
            });

            int ageIndex = uhsAi.getIndexOfAttribute("AGE");

            uhsAi.rebuildAttributeValueByRange(ageIndex, 29);

            uhsAi.refineBackRangedAttribute(ageIndex, 3, 5);

            uhsAi.Relation = "uhs_ext_story_classifier_evol4";

            long em2 = sw.ElapsedMilliseconds;

            Helpers.Utils.Debug(string.Format("Prepared classifier set in {0} ms.", (em2 - em)));

            new ArffSaver(uhsAi).saveInstance("uhs_ext_story_classifier_evol4");

            Helpers.Utils.Debug(string.Format("Evol done, tooks {0} ms.", sw.ElapsedMilliseconds));
        }
Exemple #4
0
        public static void GetDefaultDumpOfAliveAndDeadDeepClean()
        {
            Helpers.Utils.Debug("Dumping default alive and dead ARFF files..");
            Stopwatch sw = new Stopwatch(); sw.Start();

            string mysqlConStr = "SERVER=localhost;" +
                                 "DATABASE=uhs;" +
                                 "UID=root;" +
                                 "PASSWORD=pascal;";

            CekaMySQL sql = new CekaMySQL(mysqlConStr);

            ArffInstance uhsAi = sql.tableToInstance("uhs_patient_story".ToUpper(),
                                                     new string[] {
                "INITIAL_PRESENTATION",
                "INT_1_PRES",
                "INT_2_PRES",
                "STATUS"
            }, -1, -1, false, true);

            long em = sw.ElapsedMilliseconds;

            Helpers.Utils.Debug(string.Format("Gathered MySQL ArffInstance in {0} ms.", em));

            List <string> pattern1 = new List <string>()
            {
                "Primary|breast|cancer|(and/or|DCIS)", "Primary|breast|cancer|(and/or|DCIS)", "UNDEFINED"
            };
            List <string> pattern2 = new List <string>()
            {
                "Primary|breast|cancer|(and/or|DCIS)", "UNDEFINED", "UNDEFINED"
            };

            uhsAi.deletePatternMatchingDatasets(pattern1);
            uhsAi.deletePatternMatchingDatasets(pattern2);

            long emx = sw.ElapsedMilliseconds;

            Helpers.Utils.Debug(string.Format("Pattern match deletion took {0} ms.", (emx - em)));

            new ArffSaver(uhsAi).saveInstance("uhs_arff_total");
            ArffInstance uhsAi2 = uhsAi.toCopy();

            long em2 = sw.ElapsedMilliseconds;

            Helpers.Utils.Debug(string.Format("Copied ArffInstance (+save of total set) in {0} ms.", (em2 - emx)));

            uhsAi.removeDatasetsPerAttributeValue("STATUS", "Y");
            uhsAi.Relation = "uhs_arff_alive";

            long em3 = sw.ElapsedMilliseconds;

            Helpers.Utils.Debug(string.Format("Separated Alive Set in {0} ms.", (em3 - em2)));

            uhsAi2.removeDatasetsPerAttributeValue("STATUS", "N");
            uhsAi2.Relation = "uhs_arff_dead";

            long em4 = sw.ElapsedMilliseconds;

            Helpers.Utils.Debug(string.Format("Separated Dead Set in {0} ms.", (em4 - em3)));

            new ArffSaver(uhsAi).saveInstance("uhs_arff_alive");
            new ArffSaver(uhsAi2).saveInstance("uhs_arff_dead");

            long em5 = sw.ElapsedMilliseconds;

            Helpers.Utils.Debug(string.Format("Stored both sets in files, took {0} ms.", (em5 - em4)));

            sql.close();

            Helpers.Utils.Debug(string.Format("Dumping done, took {0} ms.", sw.ElapsedMilliseconds));
        }