private ArrayList<String> removeKnownSettings(Repository repository, ArrayList<String> settings) { String[] storedparameters = repository.getStoredFreeParameters(); repository.getConf().setInt("fold", 0); // for if n-fold is used ModelParameters modelparameters = ModelParameters.get(repository, repository.configurationName()); modelparameters.setDataBufferSize(1000000); modelparameters.openRead(); Iterator<String> iter = settings.iterator(); while (iter.hasNext()) { String s = iter.next(); repository.addConfiguration(s); ModelParameters.Record newRecord = modelparameters.newRecord(storedparameters); ModelParameters.Record found = modelparameters.read(newRecord); if (found != newRecord) { iter.remove(); } } return settings; }
private ArrayList<String> removeKnownSettings(Repository repository, ArrayList<String> settings) { String[] storedparameters = repository.getStoredFreeParameters(); repository.getConf().setInt("fold", 0); // for if n-fold is used ModelParameters modelparameters = ModelParameters.get(repository, repository.configurationName()); modelparameters.setDataBufferSize(1000000); modelparameters.openRead(); Iterator<String> iter = settings.iterator(); while (iter.hasNext()) { String s = iter.next(); repository.addConfiguration(s); ModelParameters.Record newRecord = modelparameters.newRecord(storedparameters); ModelParameters.Record found = modelparameters.read(newRecord); if (found != newRecord) { iter.remove(); } } return settings; }
/** * Checks if the settings in ModelParameters are complete, i.e. are recorded for * all folds. You should not need this, it is only for testing.s */ public ArrayList<String> removeKnownSettingsFold(Repository repository, ArrayList<String> settings) { String[] storedparameters = repository.getStoredFreeParameters(); ModelParameters modelparameters = ModelParameters.get(repository, repository.configurationName()); modelparameters.setDataBufferSize(1000000); modelparameters.openRead(); Iterator<String> iter = settings.iterator(); while (iter.hasNext()) { String s = iter.next(); repository.addConfiguration(s); boolean allthere = true; for (int i = 0; i < 10; i++) { repository.getConf().setInt("fold", i); ModelParameters.Record newRecord = modelparameters.newRecord(storedparameters); ModelParameters.Record found = modelparameters.read(newRecord); if (found == newRecord) { allthere = false; break; } } if (allthere) { iter.remove(); } } return settings; } }
/** * Checks if the settings in ModelParameters are complete, i.e. are recorded for * all folds. You should not need this, it is only for testing.s */ public ArrayList<String> removeKnownSettingsFold(Repository repository, ArrayList<String> settings) { String[] storedparameters = repository.getStoredFreeParameters(); ModelParameters modelparameters = ModelParameters.get(repository, repository.configurationName()); modelparameters.setDataBufferSize(1000000); modelparameters.openRead(); Iterator<String> iter = settings.iterator(); while (iter.hasNext()) { String s = iter.next(); repository.addConfiguration(s); boolean allthere = true; for (int i = 0; i < 10; i++) { repository.getConf().setInt("fold", i); ModelParameters.Record newRecord = modelparameters.newRecord(storedparameters); ModelParameters.Record found = modelparameters.read(newRecord); if (found == newRecord) { allthere = false; break; } } if (allthere) { iter.remove(); } } return settings; } }
@Override protected void setup(Context context) throws IOException, InterruptedException { repository = new Repository(context.getConfiguration()); conf = repository.getConf(); conf.set("rr.dir", ""); modelparameters = ModelParameters.get(repository, repository.configurationName()); storedparameters = repository.getStoredFreeParameters(); retriever = new Retriever(repository, context); metric = QueryMetric.create(conf.get("tuner.metric", "QueryMetricAP")); }
@Override protected void setup(Context context) throws IOException, InterruptedException { repository = new Repository(context.getConfiguration()); conf = repository.getConf(); conf.set("rr.dir", ""); modelparameters = ModelParameters.get(repository, repository.configurationName()); storedparameters = repository.getStoredFreeParameters(); retriever = new Retriever(repository, context); metric = QueryMetric.create(conf.get("tuner.metric", "QueryMetricAP")); }