Ignore:
Timestamp:
07/05/16 09:41:17 (8 years ago)
Author:
sherbold
Message:
  • updated script for benchmark configuration generation
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/CrossPareConfigurationBuilder/src/de/ugoe/cs/crosspare/ConfigurationBuilder.java

    r80 r133  
    77 
    88public class ConfigurationBuilder { 
    9  
    10     private static enum Dataset {MDP, JURECZKO}; 
     9     
     10    private static enum Dataset {MDP, JURECZKO, FILTERJURECZKO, AEEEM, RELINK, NETGENE, SELECTEDJURECZKO}; 
    1111     
    1212    private static final String storageFolder = "config/"; 
     
    1414    public static void main(String[] args) { 
    1515        for( Dataset dataset : Dataset.values() ) { 
    16             writeFile("Koshgoftaar2008", dataset); 
    17             writeFile("Watanabe2008", dataset); 
    18             writeFile("Turhan2009", dataset); 
    19             writeFile("CamargoCruz2009", dataset); 
    20             // TODO Liu 2010 
    21             writeFile("Menzies2011", dataset); 
    22             writeFile("Ma2012", dataset); 
    23             writeFile("Peters2012", dataset); 
    24             writeFile("Uchigaki2012", dataset); 
    25             writeFile("Canfora2013", dataset); 
    26             writeFile("Peters2013", dataset); 
    27             writeFile("Herbold2013", dataset); 
    28             writeFile("ZHe2013", dataset); 
    29             writeFile("Nam2013", dataset); 
    30             writeFile("Panichella2014", dataset); 
    31             // TODO F.Zhang 2014 
    32             // TODO Mizuno 2014: data not public 
    33             writeFile("Ryu2014", dataset); 
    34             writeFile("PHe2015", dataset); 
    35             // TODO Peters 2015 (LACE2) 
    36             writeFile("Kawata2015", dataset); 
    37             writeFile("YZhang2015", dataset); 
    38             writeFile("Amasaki2015", dataset); 
    39             writeFile("Ryu2015b", dataset); 
    40             // TODO Cao 2015 implementation details missing 
    41             writeFile("Nam2015b", dataset); 
     16            // baselines 
     17            writeFile("ALL", dataset); 
     18            writeFile("CV", dataset); 
     19            writeFile("Random", dataset); 
     20            writeFile("Trivial", dataset); 
     21            // publications 
     22            writeFile("Koshgoftaar08", dataset); 
     23            writeFile("Watanabe08", dataset); 
     24            writeFile("Turhan09", dataset); 
     25            writeFile("Zimmermann09", dataset); 
     26            writeFile("CamargoCruz09", dataset); 
     27            writeFile("Liu10", dataset); 
     28            writeFile("Menzies11", dataset); 
     29            writeFile("Ma12", dataset); 
     30            writeFile("Peters12", dataset); 
     31            writeFile("Uchigaki12", dataset); 
     32            writeFile("Canfora13", dataset); 
     33            writeFile("Peters13", dataset); 
     34            writeFile("Herbold13", dataset); 
     35            writeFile("ZHe13", dataset); 
     36            writeFile("Nam13", dataset); 
     37            writeFile("Panichella14", dataset); 
     38            writeFile("Ryu14", dataset); 
     39            writeFile("PHe15", dataset); 
     40            writeFile("Peters15", dataset); 
     41            writeFile("Kawata15", dataset); 
     42            writeFile("YZhang15", dataset); 
     43            writeFile("Amasaki15", dataset); 
     44            writeFile("Ryu15", dataset); 
     45            writeFile("Nam15", dataset); 
    4246        } 
    4347    } 
     
    5256        } 
    5357        catch (IOException | IllegalAccessException | IllegalArgumentException | InvocationTargetException | NoSuchMethodException | SecurityException e) { 
    54             // TODO Auto-generated catch block 
    5558            e.printStackTrace(); 
    5659        } 
     
    6871     
    6972    public static void trainers(StringBuilder configFile) { 
    70         configFile.append(" <trainer name=\"WekaTraining\" param=\"RandomForest weka.classifiers.trees.RandomForest -CVPARAM I 5 25 5\" />\n"); 
    71         configFile.append(" <trainer name=\"WekaTraining\" param=\"C4.5-DTree weka.classifiers.trees.J48 -CVPARAM C 0.1 0.3 5\" />\n"); 
    72         configFile.append(" <trainer name=\"WekaTraining\" param=\"Logistic weka.classifiers.functions.Logistic\" />\n"); 
    73         configFile.append(" <trainer name=\"WekaTraining\" param=\"RBFNetwork weka.classifiers.functions.RBFNetwork -CVPARAM W 0.1 10.0 3.0 L 2.0 18.0 3.0\" />\n"); 
    74         configFile.append(" <trainer name=\"WekaTraining\" param=\"SMORBF weka.classifiers.functions.SMO -K weka.classifiers.functions.supportVector.RBFKernel\" />\n"); 
     73        configFile.append(" <trainer name=\"WekaTraining\" param=\"NB weka.classifiers.bayes.NaiveBayes\" />\n"); 
     74        configFile.append(" <trainer name=\"WekaTraining\" param=\"RF weka.classifiers.trees.RandomForest -CVPARAM I 5 25 5\" />\n"); 
     75        configFile.append(" <trainer name=\"WekaTraining\" param=\"DT weka.classifiers.trees.J48 -CVPARAM C 0.1 0.3 5\" />\n"); 
     76        configFile.append(" <trainer name=\"WekaTraining\" param=\"LR weka.classifiers.functions.Logistic\" />\n"); 
     77        configFile.append(" <trainer name=\"WekaTraining\" param=\"NET weka.classifiers.functions.RBFNetwork -CVPARAM W 0.1 10.0 3.0 L 2.0 18.0 3.0\" />\n"); 
     78        configFile.append(" <trainer name=\"WekaTraining\" param=\"SVM weka.classifiers.functions.SMO -K weka.classifiers.functions.supportVector.RBFKernel\" />\n"); 
    7579    } 
    7680     
    7781    public static void trainersBagging(StringBuilder configFile) { 
    78         configFile.append(" <setwisetrainer name=\"WekaBaggingTraining\" param=\"BaggingRandomForest weka.classifiers.trees.RandomForest -CVPARAM I 5 25 5\" />\n"); 
    79         configFile.append(" <setwisetrainer name=\"WekaBaggingTraining\" param=\"BaggingC4.5-DTree weka.classifiers.trees.J48 -CVPARAM C 0.1 0.3 5\" />\n"); 
    80         configFile.append(" <setwisetrainer name=\"WekaBaggingTraining\" param=\"BaggingLogistic weka.classifiers.functions.Logistic\" />\n"); 
    81         configFile.append(" <setwisetrainer name=\"WekaBaggingTraining\" param=\"BaggingRBFNetwork weka.classifiers.functions.RBFNetwork -CVPARAM W 0.1 10.0 3.0 L 2.0 18.0 3.0\" />\n"); 
    82         configFile.append(" <setwisetrainer name=\"WekaBaggingTraining\" param=\"BaggingSMORBF weka.classifiers.functions.SMO -K weka.classifiers.functions.supportVector.RBFKernel\" />\n"); 
     82        configFile.append(" <setwisetrainer name=\"WekaBaggingTraining\" param=\"NB weka.classifiers.bayes.NaiveBayes\" />\n"); 
     83        configFile.append(" <setwisetrainer name=\"WekaBaggingTraining\" param=\"RF weka.classifiers.trees.RandomForest -CVPARAM I 5 25 5\" />\n"); 
     84        configFile.append(" <setwisetrainer name=\"WekaBaggingTraining\" param=\"DT weka.classifiers.trees.J48 -CVPARAM C 0.1 0.3 5\" />\n"); 
     85        configFile.append(" <setwisetrainer name=\"WekaBaggingTraining\" param=\"LR weka.classifiers.functions.Logistic\" />\n"); 
     86        configFile.append(" <setwisetrainer name=\"WekaBaggingTraining\" param=\"NET weka.classifiers.functions.RBFNetwork -CVPARAM W 0.1 10.0 3.0 L 2.0 18.0 3.0\" />\n"); 
     87        configFile.append(" <setwisetrainer name=\"WekaBaggingTraining\" param=\"SVM weka.classifiers.functions.SMO -K weka.classifiers.functions.supportVector.RBFKernel\" />\n"); 
    8388    } 
    8489     
    8590    public static void trainersLocalWhere(StringBuilder configFile) { 
    86         configFile.append(" <trainer name=\"WekaLocalFQTraining\" param=\"LocalRandomForest weka.classifiers.trees.RandomForest -CVPARAM I 5 25 5\" />\n"); 
    87         configFile.append(" <trainer name=\"WekaLocalFQTraining\" param=\"LocalC4.5-DTree weka.classifiers.trees.J48 -CVPARAM C 0.1 0.3 5\" />\n"); 
    88         configFile.append(" <trainer name=\"WekaLocalFQTraining\" param=\"LocalLogistic weka.classifiers.functions.Logistic\" />\n"); 
    89         configFile.append(" <trainer name=\"WekaLocalFQTraining\" param=\"LocalRBFNetwork weka.classifiers.functions.RBFNetwork -CVPARAM W 0.1 10.0 3.0 L 2.0 18.0 3.0\" />\n"); 
    90         configFile.append(" <trainer name=\"WekaLocalFQTraining\" param=\"LocalSMORBF weka.classifiers.functions.SMO -K weka.classifiers.functions.supportVector.RBFKernel\" />\n"); 
     91        configFile.append(" <trainer name=\"WekaLocalFQTraining\" param=\"NB weka.classifiers.bayes.NaiveBayes\" />\n"); 
     92        configFile.append(" <trainer name=\"WekaLocalFQTraining\" param=\"RF weka.classifiers.trees.RandomForest -CVPARAM I 5 25 5\" />\n"); 
     93        configFile.append(" <trainer name=\"WekaLocalFQTraining\" param=\"DT weka.classifiers.trees.J48 -CVPARAM C 0.1 0.3 5\" />\n"); 
     94        configFile.append(" <trainer name=\"WekaLocalFQTraining\" param=\"LR weka.classifiers.functions.Logistic\" />\n"); 
     95        configFile.append(" <trainer name=\"WekaLocalFQTraining\" param=\"NET weka.classifiers.functions.RBFNetwork -CVPARAM W 0.1 10.0 3.0 L 2.0 18.0 3.0\" />\n"); 
     96        configFile.append(" <trainer name=\"WekaLocalFQTraining\" param=\"SVM weka.classifiers.functions.SMO -K weka.classifiers.functions.supportVector.RBFKernel\" />\n"); 
     97        configFile.append(" <trainer name=\"WekaLocalFQTraining\" param=\"WHICH de.ugoe.cs.cpdp.wekaclassifier.WHICH\" />\n"); 
    9198    } 
    9299     
    93100    public static void trainersLASER(StringBuilder configFile) { 
    94         configFile.append(" <trainer name=\"WekaLASERTraining\" param=\"LASERRandomForest weka.classifiers.trees.RandomForest -CVPARAM I 5 25 5\" />\n"); 
    95         configFile.append(" <trainer name=\"WekaLASERTraining\" param=\"LASERC4.5-DTree weka.classifiers.trees.J48 -CVPARAM C 0.1 0.3 5\" />\n"); 
    96         configFile.append(" <trainer name=\"WekaLASERTraining\" param=\"LASERLogistic weka.classifiers.functions.Logistic\" />\n"); 
    97         configFile.append(" <trainer name=\"WekaLASERTraining\" param=\"LASERRBFNetwork weka.classifiers.functions.RBFNetwork -CVPARAM W 0.1 10.0 3.0 L 2.0 18.0 3.0\" />\n"); 
    98         configFile.append(" <trainer name=\"WekaLASERTraining\" param=\"LASERSMORBF weka.classifiers.functions.SMO -K weka.classifiers.functions.supportVector.RBFKernel\" />\n"); 
     101        configFile.append(" <trainer name=\"WekaLASERTraining\" param=\"NB weka.classifiers.bayes.NaiveBayes\" />\n"); 
     102        configFile.append(" <trainer name=\"WekaLASERTraining\" param=\"RF weka.classifiers.trees.RandomForest -CVPARAM I 5 25 5\" />\n"); 
     103        configFile.append(" <trainer name=\"WekaLASERTraining\" param=\"DT weka.classifiers.trees.J48 -CVPARAM C 0.1 0.3 5\" />\n"); 
     104        configFile.append(" <trainer name=\"WekaLASERTraining\" param=\"LR weka.classifiers.functions.Logistic\" />\n"); 
     105        configFile.append(" <trainer name=\"WekaLASERTraining\" param=\"NET weka.classifiers.functions.RBFNetwork -CVPARAM W 0.1 10.0 3.0 L 2.0 18.0 3.0\" />\n"); 
     106        configFile.append(" <trainer name=\"WekaLASERTraining\" param=\"SVM weka.classifiers.functions.SMO -K weka.classifiers.functions.supportVector.RBFKernel\" />\n"); 
    99107    } 
    100108         
     
    104112            case MDP: 
    105113                configFile.append(" <loader name=\"NasaARFFFolderLoader\" datalocation=\"benchmark/data/MDP\" relative=\"false\"/>\n"); 
    106                 configFile.append(" <resultspath path=\"benchmark/results-csv\"/>\n"); 
    107114                break; 
    108115            case JURECZKO: 
    109116                configFile.append(" <loader name=\"CSVFolderLoader\" datalocation=\"benchmark/data/JURECZKO\" relative=\"false\"/>\n"); 
    110                 configFile.append(" <resultspath path=\"benchmark/results-csv\"/>\n"); 
     117                break; 
     118            case FILTERJURECZKO: 
     119                configFile.append(" <loader name=\"CSVFolderLoader\" datalocation=\"benchmark/data/JURECZKO\" relative=\"false\"/>\n"); 
     120                configFile.append(" <versionfilter name=\"MinInstanceNumberFilter\" param=\"100\" />\n"); 
     121                configFile.append(" <versionfilter name=\"UnbalancedFilter\" param=\"0.05\" />\n"); 
     122                break; 
     123            case AEEEM: 
     124                configFile.append(" <loader name=\"ARFFFolderLoader\" datalocation=\"benchmark/data/AEEEM\" relative=\"false\"/>\n"); 
     125                break; 
     126            case RELINK: 
     127                configFile.append(" <loader name=\"RelinkFolderLoader\" datalocation=\"benchmark/data/RELINK\" relative=\"false\"/>\n"); 
     128                break; 
     129            case NETGENE: 
     130                configFile.append(" <loader name=\"NetgeneFolderLoader\" datalocation=\"benchmark/data/NETGENE\" relative=\"false\"/>\n"); 
     131                break; 
     132            case SELECTEDJURECZKO: 
     133                configFile.append(" <loader name=\"CSVFolderLoader\" datalocation=\"benchmark/data/SELECTEDJURECZKO\" relative=\"false\"/>\n"); 
    111134                break; 
    112135            default: 
    113136                throw new InvalidParameterException("Unknown data set: " + dataset.toString()); 
    114137        } 
    115     } 
    116      
    117     public static String Koshgoftaar2008(Dataset dataset) { 
     138        configFile.append(" <versionfilter name=\"MinClassNumberFilter\" param=\"5\" />\n"); 
     139        configFile.append(" <resultspath path=\"benchmark/results-csv\"/>\n"); 
     140    } 
     141     
     142    public static String ALL(Dataset dataset) { 
     143        StringBuilder configFile = new StringBuilder(); 
     144        preamble(configFile); 
     145        dataset(configFile, dataset); 
     146        trainers(configFile); 
     147         
     148        configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
     149         
     150        postamble(configFile); 
     151        return configFile.toString(); 
     152    } 
     153     
     154    public static String CV(Dataset dataset) { 
     155        StringBuilder configFile = new StringBuilder(); 
     156        preamble(configFile); 
     157        dataset(configFile, dataset); 
     158        trainers(configFile); 
     159         
     160        configFile.append(" <eval name=\"CVWekaEvaluation\" param=\"\" />\n"); 
     161         
     162        postamble(configFile); 
     163        return configFile.toString(); 
     164    } 
     165     
     166    public static String Random(Dataset dataset) { 
     167        StringBuilder configFile = new StringBuilder(); 
     168        preamble(configFile); 
     169        dataset(configFile, dataset); 
     170         
     171        configFile.append(" <trainer name=\"WekaTraining\" param=\"RANDOM de.ugoe.cs.cpdp.wekaclassifier.RandomClass\" />\n"); 
     172        configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
     173        configFile.append(" <repetitions number=\"10\" />\n"); 
     174         
     175        postamble(configFile); 
     176        return configFile.toString(); 
     177    } 
     178     
     179    public static String Trivial(Dataset dataset) { 
     180        StringBuilder configFile = new StringBuilder(); 
     181        preamble(configFile); 
     182        dataset(configFile, dataset); 
     183         
     184        configFile.append(" <trainer name=\"WekaTraining\" param=\"FIX de.ugoe.cs.cpdp.wekaclassifier.FixClass -C 1\" />\n"); 
     185        configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
     186         
     187        postamble(configFile); 
     188        return configFile.toString(); 
     189    } 
     190     
     191    public static String Koshgoftaar08(Dataset dataset) { 
    118192        StringBuilder configFile = new StringBuilder(); 
    119193        preamble(configFile); 
     
    127201    } 
    128202     
    129     public static String Watanabe2008(Dataset dataset) { 
     203    public static String Watanabe08(Dataset dataset) { 
    130204        StringBuilder configFile = new StringBuilder(); 
    131205        preamble(configFile); 
     
    140214    } 
    141215     
    142     public static String Turhan2009(Dataset dataset) { 
     216    public static String Turhan09(Dataset dataset) { 
    143217        StringBuilder configFile = new StringBuilder(); 
    144218        preamble(configFile); 
     
    154228    } 
    155229     
    156     public static String CamargoCruz2009(Dataset dataset) { 
     230    public static String Zimmermann09(Dataset dataset) { 
     231        StringBuilder configFile = new StringBuilder(); 
     232        preamble(configFile); 
     233        dataset(configFile, dataset); 
     234        trainers(configFile); 
     235         
     236        configFile.append(" <setwiseselector name=\"DecisionTreeSelection\" param=\"max median stddev\" />\n"); 
     237        configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
     238         
     239        postamble(configFile); 
     240        return configFile.toString(); 
     241    } 
     242     
     243    public static String CamargoCruz09(Dataset dataset) { 
    157244        StringBuilder configFile = new StringBuilder(); 
    158245        preamble(configFile); 
     
    168255    } 
    169256     
    170     // TODO Liu 2010 
    171      
    172     public static String Menzies2011(Dataset dataset) { 
     257    public static String Liu10(Dataset dataset) { 
     258        StringBuilder configFile = new StringBuilder(); 
     259        preamble(configFile); 
     260        dataset(configFile, dataset); 
     261         
     262        configFile.append(" <setwisetrainer name=\"GPTraining\" param=\"numberRuns:1,errorType2Weight:15\" />"); 
     263        configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
     264        configFile.append(" <repetitions number=\"10\" />\n"); 
     265         
     266        postamble(configFile); 
     267        return configFile.toString(); 
     268    } 
     269     
     270    public static String Menzies11(Dataset dataset) { 
    173271        StringBuilder configFile = new StringBuilder(); 
    174272        preamble(configFile); 
     
    177275        trainersLocalWhere(configFile);         
    178276        configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
    179          
    180         postamble(configFile); 
    181         return configFile.toString(); 
    182     } 
    183      
    184     public static String Ma2012(Dataset dataset) { 
     277        configFile.append(" <repetitions number=\"10\" />\n"); 
     278         
     279        postamble(configFile); 
     280        return configFile.toString(); 
     281    } 
     282     
     283    public static String Ma12(Dataset dataset) { 
    185284        StringBuilder configFile = new StringBuilder(); 
    186285        preamble(configFile); 
     
    195294    } 
    196295     
    197     public static String Peters2012(Dataset dataset) { 
     296    public static String Peters12(Dataset dataset) { 
    198297        StringBuilder configFile = new StringBuilder(); 
    199298        preamble(configFile); 
     
    203302        configFile.append(" <preprocessor name=\"MORPH\" param=\"\" />\n"); 
    204303        configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
    205          
    206         postamble(configFile); 
    207         return configFile.toString(); 
    208     } 
    209      
    210     public static String Uchigaki2012(Dataset dataset) { 
     304        configFile.append(" <repetitions number=\"10\" />\n"); 
     305         
     306        postamble(configFile); 
     307        return configFile.toString(); 
     308    } 
     309     
     310    public static String Uchigaki12(Dataset dataset) { 
    211311        StringBuilder configFile = new StringBuilder(); 
    212312        preamble(configFile); 
     
    214314         
    215315        configFile.append(" <preprocessor name=\"ZScoreNormalization\" param=\"\" />\n"); 
    216         configFile.append(" <trainer name=\"WekaTraining\" param=\"LogisticEnsemble de.ugoe.cs.cpdp.wekaclassifier.LogisticEnsemble\" />\n"); 
    217         configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
    218          
    219         postamble(configFile); 
    220         return configFile.toString(); 
    221     } 
    222      
    223     public static String Canfora2013(Dataset dataset) { 
     316        configFile.append(" <trainer name=\"WekaTraining\" param=\"LE de.ugoe.cs.cpdp.wekaclassifier.LogisticEnsemble\" />\n"); 
     317        configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
     318         
     319        postamble(configFile); 
     320        return configFile.toString(); 
     321    } 
     322     
     323    public static String Canfora13(Dataset dataset) { 
    224324        StringBuilder configFile = new StringBuilder(); 
    225325        preamble(configFile); 
     
    229329        configFile.append(" <trainer name=\"WekaTraining\" param=\"MODEP de.ugoe.cs.cpdp.wekaclassifier.MODEPClassifier -R 0.7\" />\n"); 
    230330        configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
    231          
    232         postamble(configFile); 
    233         return configFile.toString(); 
    234     } 
    235      
    236     public static String Peters2013(Dataset dataset) { 
     331        configFile.append(" <repetitions number=\"10\" />\n"); 
     332         
     333        postamble(configFile); 
     334        return configFile.toString(); 
     335    } 
     336     
     337    public static String Peters13(Dataset dataset) { 
    237338        StringBuilder configFile = new StringBuilder(); 
    238339        preamble(configFile); 
     
    241342         
    242343        configFile.append(" <preprocessor name=\"MORPH\" param=\"\" />\n"); 
    243         configFile.append(" <pointwiseselector name=\"CLIFF\" param=\"0.10\" />"); 
    244         configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
    245          
    246         postamble(configFile); 
    247         return configFile.toString(); 
    248     } 
    249      
    250     public static String Herbold2013(Dataset dataset) { 
    251         StringBuilder configFile = new StringBuilder(); 
    252         preamble(configFile); 
    253         dataset(configFile, dataset); 
    254         trainers(configFile); 
     344        configFile.append(" <pointwiseselector name=\"CLIFF\" param=\"0.40\" />"); 
     345        configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
     346        configFile.append(" <repetitions number=\"10\" />\n"); 
     347         
     348        postamble(configFile); 
     349        return configFile.toString(); 
     350    } 
     351     
     352    public static String Herbold13(Dataset dataset) { 
     353        StringBuilder configFile = new StringBuilder(); 
     354        preamble(configFile); 
     355        dataset(configFile, dataset); 
     356        trainers(configFile); 
     357         
     358        int numNeighbors; 
     359        switch (dataset) 
     360        { 
     361            case AEEEM: 
     362                numNeighbors = 2; 
     363                break; 
     364            case MDP: 
     365                numNeighbors = 5; 
     366                break; 
     367            case JURECZKO: 
     368                numNeighbors = 30; 
     369                break; 
     370            case FILTERJURECZKO: 
     371                numNeighbors = 20; 
     372                break; 
     373            case RELINK: 
     374                numNeighbors = 1; 
     375                break; 
     376            case NETGENE: 
     377                numNeighbors = 1; 
     378                break; 
     379            case SELECTEDJURECZKO: 
     380                numNeighbors = 4; 
     381                break; 
     382            default: 
     383                numNeighbors = 10; 
     384                break; 
     385        } 
    255386         
    256387        configFile.append(" <setwisepreprocessor name=\"Normalization\" param=\"\" />\n"); 
    257         configFile.append(" <setwiseselector name=\"SetWiseEMClusterSelection\" param=\"mean stddev\" />\n"); 
     388        configFile.append(" <setwiseselector name=\"SetWiseKNNSelection\" param=\""+ numNeighbors +"\" />\n"); 
    258389        configFile.append(" <postprocessor name=\"BiasedWeights\" param=\"0.5\" />\n"); 
    259390        configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
     
    263394    } 
    264395     
    265     public static String ZHe2013(Dataset dataset) { 
     396    public static String ZHe13(Dataset dataset) { 
    266397        StringBuilder configFile = new StringBuilder(); 
    267398        preamble(configFile); 
     
    269400        trainersBagging(configFile); 
    270401         
     402        int numNeighbors; 
     403        switch (dataset) 
     404        { 
     405            case AEEEM: 
     406                numNeighbors = 1; 
     407                break; 
     408            case MDP: 
     409                numNeighbors = 4; 
     410                break; 
     411            case JURECZKO: 
     412                numNeighbors = 16; 
     413                break; 
     414            case FILTERJURECZKO: 
     415                numNeighbors = 13; 
     416                break; 
     417            case RELINK: 
     418                numNeighbors = 1; 
     419                break; 
     420            case NETGENE: 
     421                numNeighbors = 1; 
     422                break; 
     423            case SELECTEDJURECZKO: 
     424                numNeighbors = 4; 
     425                break; 
     426            default: 
     427                numNeighbors = 10; 
     428                break; 
     429        } 
     430         
    271431        configFile.append(" <setwisepreprocessor name=\"Normalization\" param=\"\" />\n"); 
    272         configFile.append(" <setwiseselector name=\"SeparatabilitySelection\" param=\"\" />\n"); 
     432        configFile.append(" <setwiseselector name=\"SeparatabilitySelection\" param=\"" + numNeighbors + "\" />\n"); 
    273433        configFile.append(" <setwisepostprocessor name=\"Undersampling\" param=\"\" />\n"); 
    274434        configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
    275          
    276         postamble(configFile); 
    277         return configFile.toString(); 
    278     } 
    279      
    280     public static String Nam2013(Dataset dataset) { 
     435        configFile.append(" <repetitions number=\"10\" />\n"); 
     436         
     437        postamble(configFile); 
     438        return configFile.toString(); 
     439    } 
     440     
     441    public static String Nam13(Dataset dataset) { 
    281442        StringBuilder configFile = new StringBuilder(); 
    282443        preamble(configFile); 
     
    292453    } 
    293454     
    294     public static String Panichella2014(Dataset dataset) { 
    295         StringBuilder configFile = new StringBuilder(); 
    296         preamble(configFile); 
    297         dataset(configFile, dataset); 
    298          
    299         configFile.append(" <trainer name=\"WekaTraining\" param=\"LogisticCODEP de.ugoe.cs.cpdp.wekaclassifier.LogisticCODEP\" />\n"); 
    300         configFile.append(" <trainer name=\"WekaTraining\" param=\"BayesNetCODEP de.ugoe.cs.cpdp.wekaclassifier.BayesNetCODEP\" />\n"); 
    301         configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
    302          
    303         postamble(configFile); 
    304         return configFile.toString(); 
    305     } 
    306      
    307     // TODO F.Zhang 2014 
    308      
    309     // TODO Mizuno 2014: data not public 
    310      
    311     public static String Ryu2014(Dataset dataset) { 
     455    public static String Panichella14(Dataset dataset) { 
     456        StringBuilder configFile = new StringBuilder(); 
     457        preamble(configFile); 
     458        dataset(configFile, dataset); 
     459         
     460        configFile.append(" <trainer name=\"WekaTraining\" param=\"CODEP-LR de.ugoe.cs.cpdp.wekaclassifier.LogisticCODEP\" />\n"); 
     461        configFile.append(" <trainer name=\"WekaTraining\" param=\"CODEP-BN de.ugoe.cs.cpdp.wekaclassifier.BayesNetCODEP\" />\n"); 
     462        configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
     463         
     464        postamble(configFile); 
     465        return configFile.toString(); 
     466    } 
     467     
     468    public static String Ryu14(Dataset dataset) { 
    312469        StringBuilder configFile = new StringBuilder(); 
    313470        preamble(configFile); 
     
    317474        configFile.append(" <testawaretrainer name=\"WekaTestAwareTraining\" param=\"VCBSVM de.ugoe.cs.cpdp.wekaclassifier.VCBSVM -L 0.1 -B 10\" />\n"); 
    318475        configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
    319          
    320         postamble(configFile); 
    321         return configFile.toString(); 
    322     } 
    323      
    324     public static String PHe2015(Dataset dataset) { 
     476        configFile.append(" <repetitions number=\"10\" />\n"); 
     477         
     478        postamble(configFile); 
     479        return configFile.toString(); 
     480    } 
     481     
     482    public static String PHe15(Dataset dataset) { 
    325483        StringBuilder configFile = new StringBuilder(); 
    326484        preamble(configFile); 
     
    336494    } 
    337495     
    338     // TODO Peters 2015 (LACE2) 
    339      
    340     public static String Kawata2015(Dataset dataset) { 
     496    public static String Peters15(Dataset dataset) { 
     497        StringBuilder configFile = new StringBuilder(); 
     498        preamble(configFile); 
     499        dataset(configFile, dataset); 
     500        trainers(configFile); 
     501         
     502        configFile.append(" <setwisepreprocessor name=\"LogarithmTransform\" param=\"\" />\n"); 
     503        configFile.append(" <setwiseselector name=\"LACE2\" param=\"0.4\" />\n"); 
     504        configFile.append(" <pointwiseselector name=\"TurhanFilter\" param=\"1\" />\n"); 
     505        configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
     506        configFile.append(" <repetitions number=\"10\" />\n"); 
     507         
     508        postamble(configFile); 
     509        return configFile.toString(); 
     510    } 
     511     
     512    public static String Kawata15(Dataset dataset) { 
    341513        StringBuilder configFile = new StringBuilder(); 
    342514        preamble(configFile); 
     
    351523    } 
    352524     
    353     public static String YZhang2015(Dataset dataset) { 
    354         StringBuilder configFile = new StringBuilder(); 
    355         preamble(configFile); 
    356         dataset(configFile, dataset); 
    357          
    358         configFile.append(" <trainer name=\"WekaTraining\" param=\"AVGVote weka.classifiers.meta.Vote -S 1 -B &quot;weka.classifiers.trees.ADTree&quot; -B &quot;weka.classifiers.rules.DecisionTable&quot; -B &quot;weka.classifiers.bayes.BayesNet&quot; -B &quot;weka.classifiers.functions.MultilayerPerceptron&quot; -B &quot;weka.classifiers.functions.RBFNetwork&quot; -R AVG\" />\n"); 
    359         configFile.append(" <trainer name=\"WekaTraining\" param=\"MAXVote weka.classifiers.meta.Vote -S 1 -B &quot;weka.classifiers.trees.ADTree&quot; -B &quot;weka.classifiers.rules.DecisionTable&quot; -B &quot;weka.classifiers.bayes.BayesNet&quot; -B &quot;weka.classifiers.functions.MultilayerPerceptron&quot; -B &quot;weka.classifiers.functions.RBFNetwork&quot; -R MAX\" />\n"); 
    360         configFile.append(" <trainer name=\"WekaTraining\" param=\"BAGGINGC4.5 weka.classifiers.meta.Bagging -P 100 -S 1 -I 10 -W weka.classifiers.trees.J48\" />\n"); 
    361         configFile.append(" <trainer name=\"WekaTraining\" param=\"BAGGINGNaiveBayes weka.classifiers.meta.Bagging -P 100 -S 1 -I 10 -W weka.classifiers.bayes.NaiveBayes\" />\n"); 
    362         configFile.append(" <trainer name=\"WekaTraining\" param=\"BOOSTINGC4.5 weka.classifiers.meta.AdaBoostM1 -P 100 -S 1 -I 10 -W weka.classifiers.trees.J48\" />\n"); 
    363         configFile.append(" <trainer name=\"WekaTraining\" param=\"BOOSTINGNaiveBayes weka.classifiers.meta.AdaBoostM1 -P 100 -S 1 -I 10 -W weka.classifiers.bayes.NaiveBayes\" />\n"); 
    364         configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
    365          
    366         postamble(configFile); 
    367         return configFile.toString(); 
    368     } 
    369      
    370     public static String Amasaki2015(Dataset dataset) { 
     525    public static String YZhang15(Dataset dataset) { 
     526        StringBuilder configFile = new StringBuilder(); 
     527        preamble(configFile); 
     528        dataset(configFile, dataset); 
     529         
     530        configFile.append(" <trainer name=\"WekaTraining\" param=\"AVGVOTE weka.classifiers.meta.Vote -S 1 -B &quot;weka.classifiers.trees.ADTree&quot; -B &quot;de.ugoe.cs.cpdp.wekaclassifier.DecisionTableWrapper&quot; -B &quot;de.ugoe.cs.cpdp.wekaclassifier.BayesNetWrapper&quot; -B &quot;weka.classifiers.functions.MultilayerPerceptron&quot; -B &quot;weka.classifiers.functions.RBFNetwork&quot; -R AVG\" />\n"); 
     531        configFile.append(" <trainer name=\"WekaTraining\" param=\"MAXVOTE weka.classifiers.meta.Vote -S 1 -B &quot;weka.classifiers.trees.ADTree&quot; -B &quot;de.ugoe.cs.cpdp.wekaclassifier.DecisionTableWrapper&quot; -B &quot;de.ugoe.cs.cpdp.wekaclassifier.BayesNetWrapper&quot; -B &quot;weka.classifiers.functions.MultilayerPerceptron&quot; -B &quot;weka.classifiers.functions.RBFNetwork&quot; -R MAX\" />\n"); 
     532        configFile.append(" <trainer name=\"WekaTraining\" param=\"BAG-DT weka.classifiers.meta.Bagging -P 100 -S 1 -I 10 -W weka.classifiers.trees.J48\" />\n"); 
     533        configFile.append(" <trainer name=\"WekaTraining\" param=\"BAG-NB weka.classifiers.meta.Bagging -P 100 -S 1 -I 10 -W weka.classifiers.bayes.NaiveBayes\" />\n"); 
     534        configFile.append(" <trainer name=\"WekaTraining\" param=\"BOOST-DT weka.classifiers.meta.AdaBoostM1 -P 100 -S 1 -I 10 -W weka.classifiers.trees.J48\" />\n"); 
     535        configFile.append(" <trainer name=\"WekaTraining\" param=\"BOOST-NB weka.classifiers.meta.AdaBoostM1 -P 100 -S 1 -I 10 -W weka.classifiers.bayes.NaiveBayes\" />\n"); 
     536        configFile.append(" <eval name=\"NormalWekaEvaluation\" param=\"\" />\n"); 
     537         
     538        postamble(configFile); 
     539        return configFile.toString(); 
     540    } 
     541     
     542    public static String Amasaki15(Dataset dataset) { 
    371543        StringBuilder configFile = new StringBuilder(); 
    372544        preamble(configFile); 
     
    383555    } 
    384556     
    385     public static String Ryu2015b(Dataset dataset) { 
     557    public static String Ryu15(Dataset dataset) { 
    386558        StringBuilder configFile = new StringBuilder(); 
    387559        preamble(configFile); 
     
    397569    } 
    398570     
    399     // TODO Cao 2015 
    400      
    401     public static String Nam2015b(Dataset dataset) { 
     571    public static String Nam15(Dataset dataset) { 
    402572        StringBuilder configFile = new StringBuilder(); 
    403573        preamble(configFile); 
Note: See TracChangeset for help on using the changeset viewer.