public MaxEnt trainClassifier (InstanceList ilist, String correct, String incorrect) { this.meClassifier = (MaxEnt) meTrainer.train (ilist); this.pipe = ilist.getPipe (); this.correct = correct; this.incorrect = incorrect; InfoGain ig = new InfoGain (ilist); int igl = Math.min (30, ig.numLocations()); for (int i = 0; i < igl; i++) System.out.println ("InfoGain["+ig.getObjectAtRank(i)+"]="+ig.getValueAtRank(i)); return this.meClassifier; }
/** Train underlying classifier on <code>ilist</code>. Assumes ilist has targst <code>correct</code> or <code>incorrect</code>. @param ilist training list to build correct/incorrect classifier @param correct "correct" label @param incorrect "incorrect" label */ public MaxEnt trainClassifier (InstanceList ilist, String correct, String incorrect) { this.meClassifier = (MaxEnt) meTrainer.train (ilist); this.pipe = ilist.getPipe (); this.correct = correct; this.incorrect = incorrect; InfoGain ig = new InfoGain (ilist); int igl = Math.min (30, ig.numLocations()); for (int i = 0; i < igl; i++) System.out.println ("InfoGain["+ig.getObjectAtRank(i)+"]="+ig.getValueAtRank(i)); return this.meClassifier; }
InfoGain ig = new InfoGain (ilist); for (int i = 0; i < printInfogain.value; i++) System.out.println (""+i+" "+ig.getObjectAtRank(i)); System.out.print ("\n");
public ConditionalClusterer train (AbstractPipeInputIterator instanceIterator, boolean useFeatureInduction) { InstanceList trainingList = new InstanceList (p); trainingList.add (instanceIterator); System.err.println ("Training on " + trainingList.size() + " instances with distribution " + trainingList.targetLabelDistribution() + " and " + trainingList.getPipe().getDataAlphabet().size() + " features");; InfoGain ig = new InfoGain (trainingList); for (int i=0; i < ig.numLocations(); i++) System.err.println ("InfoGain["+ig.getObjectAtRank(i)+"]="+ig.getValueAtRank(i)); if (useFeatureInduction) { System.err.println ("Beginning Feature Induction"); RankedFeatureVector.Factory gainFactory = new InfoGain.Factory(); FeatureInducer fi = new FeatureInducer (gainFactory, trainingList, 20); fi.induceFeaturesFor(trainingList, false, false); } classifier = classifierTrainer.train (trainingList); classifier.getInstancePipe().getDataAlphabet().stopGrowth(); return new ConditionalClusterer(p, classifier, threshold); }