package hu.u_szeged.ml.mallet; import hu.u_szeged.ml.Model; import java.io.PrintWriter; import cc.mallet.classify.Classifier; import cc.mallet.classify.MaxEnt; public class MalletClassifier extends Model { private static final long serialVersionUID = 75264711522776147L; protected Classifier classifier; public MalletClassifier(Classifier c) { classifier = c; } public Classifier getClassifier() { return classifier; } public void setClassifier(Classifier classifier) { this.classifier = classifier; } public void printModel(PrintWriter out) { printModel(out, Math.min(5, classifier.getAlphabet().size())); } public void printModel(PrintWriter out, int numOfExtremeFeatures) { if (classifier instanceof MaxEnt) { out.println("Num of features: " + classifier.getAlphabet().size()); ((MaxEnt) classifier).printExtremeFeatures(out, Math.min(numOfExtremeFeatures, classifier.getAlphabet().size())); out.flush(); } else { classifier.print(out); } } }