String[] labels = new String[crf.getOutputAlphabet().size()]; for (int i = 0; i < crf.getOutputAlphabet().size(); i++) { labels[i] = (String) crf.getOutputAlphabet().lookupObject(i); } public void testCRF() throws Exception { Pipe p = makeSpacePredictionPipe(); InstanceList trainInstances = new InstanceList(p); trainInstances.addThruPipe(new LineGroupIterator(new FileReader( "data/conll.train"), Pattern.compile("^//s*$"), true)); // InstanceList[] lists = trainInstances.split(new // java.util.Random(678), // new double[] { 1.0, .1 }); InstanceList testInstances = new InstanceList(p); testInstances.addThruPipe(new LineGroupIterator(new FileReader( "data/conll.test"), Pattern.compile("^//s*$"), true)); // run(lists[0], lists[1]); run(trainInstances, testInstances); } private Pipe makeSpacePredictionPipe() { Pipe p = new SerialPipes(new Pipe[] { new SimpleTaggerSentence2TokenSequence(), new TokenSequence2FeatureVectorSequence(), }); return p; }