Ignore:
Timestamp:
04/29/16 14:29:52 (9 years ago)
Author:
sherbold
Message:
  • added new interface ITestAwareTraining strategy to the framework to support trainers with knowledge of the test data. The implementation of such trainers must take care to not accidentally take the classification of the test data into account.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/CrossPare/src/de/ugoe/cs/cpdp/ExperimentConfiguration.java

    r45 r65  
    4242import de.ugoe.cs.cpdp.training.ISetWiseTestdataAwareTrainingStrategy; 
    4343import de.ugoe.cs.cpdp.training.ISetWiseTrainingStrategy; 
     44import de.ugoe.cs.cpdp.training.ITestAwareTrainingStrategy; 
    4445import de.ugoe.cs.cpdp.training.ITrainingStrategy; 
    4546import de.ugoe.cs.cpdp.versions.IVersionFilter; 
     
    139140     */ 
    140141    private List<ITrainingStrategy> trainers; 
     142     
     143    /** 
     144     * normal trainers, i.e., trainers that require the selected training data in a single data set 
     145     */ 
     146    private List<ITestAwareTrainingStrategy> testAwareTrainers; 
    141147 
    142148    /** 
     
    376382        return trainers; 
    377383    } 
     384     
     385    /** 
     386     * returns the test aware training algorithms 
     387     *  
     388     * @return normal training algorithms 
     389     */ 
     390    public List<ITestAwareTrainingStrategy> getTestAwareTrainers() { 
     391        return testAwareTrainers; 
     392    } 
    378393 
    379394    /** 
     
    524539                trainer.setParameter(attributes.getValue("param")); 
    525540                trainers.add(trainer); 
     541            } 
     542            else if (qName.equals("testawaretrainer")) { 
     543                final ITestAwareTrainingStrategy trainer = 
     544                    (ITestAwareTrainingStrategy) Class.forName("de.ugoe.cs.cpdp.training." + 
     545                                                          attributes.getValue("name")) 
     546                        .newInstance(); 
     547                trainer.setParameter(attributes.getValue("param")); 
     548                testAwareTrainers.add(trainer); 
    526549            } 
    527550            else if (qName.equals("eval")) { 
Note: See TracChangeset for help on using the changeset viewer.