List of usage examples for weka.classifiers.functions PLSClassifier getFilter
public Filter getFilter()
From source file:adams.opt.optimise.GeneticAlgorithm.java
License:Open Source License
public static void main(String[] args) { Environment.setEnvironmentClass(Environment.class); GeneticAlgorithm ga = new GeneticAlgorithm(); ga.setBits(1);//ww w . j a v a 2s . co m ga.setNumChrom(8); ga.setIterations(10000); ga.setFavorZeroes(true); AttributeSelection as = new AttributeSelection(); //as.setDataset(new PlaceholderFile("/home/dale/blgg/conversion/merged/m_5_.75.arff")); ArrayConsumer.setOptions(as, args); PLSClassifier pls = new PLSClassifier(); PLSFilter pf = (PLSFilter) pls.getFilter(); pf.setNumComponents(11); LinearRegressionJ reg = new LinearRegressionJ(); reg.setEliminateColinearAttributes(false); reg.setAttributeSelectionMethod( new SelectedTag(LinearRegressionJ.SELECTION_NONE, LinearRegressionJ.TAGS_SELECTION)); GPD gp = new GPD(); gp.setNoise(.01); //RBFKernel rbf = new RBFKernel(); //rbf.setChecksTurnedOff(true); //rbf.setGamma(.01); //gp.setKernel(rbf); Remove remove = new Remove(); remove.setAttributeIndices("1"); FilteredClassifier fc = new FilteredClassifier(); MultiFilter mf = new MultiFilter(); Filter[] filters = new Filter[2]; filters[0] = remove; filters[1] = pf; mf.setFilters(filters); fc.setClassifier(gp); fc.setFilter(pf); as.setClassifier(gp); as.setClassIndex("last"); //as.setDataset(new PlaceholderFile("/home/dale/OMD_clean.arff")); //as.setOutputDirectory(new PlaceholderFile("/research/dale")); ga.setLoggingLevel(LoggingLevel.INFO); as.setLoggingLevel(LoggingLevel.INFO); ga.optimise(as.getDataDef(), as); }
From source file:jjj.asap.sas.models1.job.BuildPLSModels.java
License:Open Source License
@Override protected void run() throws Exception { // validate args if (!Bucket.isBucket("datasets", inputBucket)) { throw new FileNotFoundException(inputBucket); }//from w ww .j a v a 2s . c o m if (!Bucket.isBucket("models", outputBucket)) { throw new FileNotFoundException(outputBucket); } // Standard PLS PLSClassifier pls = new PLSClassifier(); PLSFilter filter = (PLSFilter) pls.getFilter(); filter.setNumComponents(5); filter.setPreprocessing(NONE); // centered PLS PLSClassifier plsc = new PLSClassifier(); PLSFilter center = (PLSFilter) plsc.getFilter(); center.setNumComponents(5); center.setPreprocessing(CENTER); // standardized PLS PLSClassifier plss = new PLSClassifier(); PLSFilter std = (PLSFilter) plss.getFilter(); std.setNumComponents(10); std.setPreprocessing(STANDARDIZE); // init multi-threading Job.startService(); final Queue<Future<Object>> queue = new LinkedList<Future<Object>>(); // get the input from the bucket List<String> names = Bucket.getBucketItems("datasets", this.inputBucket); for (String dsn : names) { int essaySet = Contest.getEssaySet(dsn); Classifier alg = pls; if (essaySet == 10 || dsn.contains("1grams-thru-3grams")) { alg = plsc; } if (essaySet == 7) { alg = plss; } queue.add(Job.submit( new RegressionModelBuilder(dsn, "PLS", AbstractClassifier.makeCopy(alg), this.outputBucket))); } // wait on complete Progress progress = new Progress(queue.size(), this.getClass().getSimpleName()); while (!queue.isEmpty()) { try { queue.remove().get(); } catch (Exception e) { Job.log("ERROR", e.toString()); } progress.tick(); } progress.done(); Job.stopService(); }