當前位置: 首頁>>代碼示例>>Java>>正文


Java PerClassAccuracyEvaluator類代碼示例

本文整理匯總了Java中cc.mallet.fst.PerClassAccuracyEvaluator的典型用法代碼示例。如果您正苦於以下問題:Java PerClassAccuracyEvaluator類的具體用法?Java PerClassAccuracyEvaluator怎麽用?Java PerClassAccuracyEvaluator使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


PerClassAccuracyEvaluator類屬於cc.mallet.fst包,在下文中一共展示了PerClassAccuracyEvaluator類的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: train

import cc.mallet.fst.PerClassAccuracyEvaluator; //導入依賴的package包/類
public CRF train(InstanceList trainingInstances, InstanceList testingInstances)
        throws FileNotFoundException, IOException {

    if (this.transducerTrainer == null) {
        throw new IllegalStateException("crfTrainer needs to be set via one of the available methods");
    }
    // trainer.addEvaluator(new PerClassAccuracyEvaluator(trainingInstances,
    // "training"));
    this.transducerTrainer.addEvaluator(new PerClassAccuracyEvaluator(testingInstances, "testing"));
    this.transducerTrainer.addEvaluator(new TokenAccuracyEvaluator(testingInstances, "testing"));

    // this.transducerTrainer
    // .addEvaluator(new FixedViterbiWriter(new
    // File("/home/mkoerner/viterbi.txt"), testingInstances, "test"));

    this.transducerTrainer.train(trainingInstances);
    return this.crf;
}
 
開發者ID:exciteproject,項目名稱:refext,代碼行數:19,代碼來源:ReferenceExtractorTrainer.java

示例2: evaluate

import cc.mallet.fst.PerClassAccuracyEvaluator; //導入依賴的package包/類
public void evaluate(File file) throws FileNotFoundException {
	// if (normalize) {
	// normalizeSCLBlock(new InstanceList[] { instances }, limits);
	// }
	InstanceList instances = new InstanceList(pipe);
	instances.addThruPipe(iteratorForFile(file));
	TransducerEvaluator evaluator = new PerClassAccuracyEvaluator(
			instances, "evaluation");
	evaluator.evaluate(trainer);
}
 
開發者ID:siqil,項目名稱:udaner,代碼行數:11,代碼來源:NER.java

示例3: TrainCRF

import cc.mallet.fst.PerClassAccuracyEvaluator; //導入依賴的package包/類
public TrainCRF(String trainingFilename, String testingFilename) throws IOException {

        ArrayList<Pipe> pipes = new ArrayList<Pipe>();

        int[][] conjunctions = new int[2][];
        conjunctions[0] = new int[] { -1 };
        conjunctions[1] = new int[] { 1 };

        pipes.add(new SimpleTaggerSentence2TokenSequence());
        pipes.add(new OffsetConjunctions(conjunctions));
        //pipes.add(new FeaturesInWindow("PREV-", -1, 1));
        pipes.add(new TokenTextCharSuffix("C1=", 1));
        pipes.add(new TokenTextCharSuffix("C2=", 2));
        pipes.add(new TokenTextCharSuffix("C3=", 3));
        pipes.add(new RegexMatches("CAPITALIZED", Pattern.compile("^\\p{Lu}.*")));
        pipes.add(new RegexMatches("STARTSNUMBER", Pattern.compile("^[0-9].*")));
        pipes.add(new RegexMatches("HYPHENATED", Pattern.compile(".*\\-.*")));
        pipes.add(new RegexMatches("DOLLARSIGN", Pattern.compile(".*\\$.*")));
        pipes.add(new TokenFirstPosition("FIRSTTOKEN"));
        pipes.add(new TokenSequence2FeatureVectorSequence());

        Pipe pipe = new SerialPipes(pipes);

        InstanceList trainingInstances = new InstanceList(pipe);
        InstanceList testingInstances = new InstanceList(pipe);

        trainingInstances.addThruPipe(new LineGroupIterator(new BufferedReader(new InputStreamReader(new GZIPInputStream(new FileInputStream(trainingFilename)))), Pattern.compile("^\\s*$"), true));
        testingInstances.addThruPipe(new LineGroupIterator(new BufferedReader(new InputStreamReader(new GZIPInputStream(new FileInputStream(testingFilename)))), Pattern.compile("^\\s*$"), true));

        CRF crf = new CRF(pipe, null);
        //crf.addStatesForLabelsConnectedAsIn(trainingInstances);
        crf.addStatesForThreeQuarterLabelsConnectedAsIn(trainingInstances);
        crf.addStartState();

        CRFTrainerByLabelLikelihood trainer =
                new CRFTrainerByLabelLikelihood(crf);
        trainer.setGaussianPriorVariance(10.0);

        //CRFTrainerByStochasticGradient trainer =
        //new CRFTrainerByStochasticGradient(crf, 1.0);

        //CRFTrainerByL1LabelLikelihood trainer =
        //	new CRFTrainerByL1LabelLikelihood(crf, 0.75);

        //trainer.addEvaluator(new PerClassAccuracyEvaluator(trainingInstances, "training"));
        trainer.addEvaluator(new PerClassAccuracyEvaluator(testingInstances, "testing"));
        trainer.addEvaluator(new TokenAccuracyEvaluator(testingInstances, "testing"));
        trainer.train(trainingInstances);

    }
 
開發者ID:karahindiba,項目名稱:WikiInfoboxExtractor,代碼行數:51,代碼來源:TrainCRF.java

示例4: TrainWikiCRF

import cc.mallet.fst.PerClassAccuracyEvaluator; //導入依賴的package包/類
public TrainWikiCRF(String trainingFilename, String testingFilename) throws IOException {
	
	ArrayList<Pipe> pipes = new ArrayList<Pipe>();

	int[][] conjunctions = new int[2][];
	conjunctions[0] = new int[] { -1 };
	conjunctions[1] = new int[] { 1 };

	pipes.add(new SimpleTaggerSentence2TokenSequence());
	pipes.add(new OffsetConjunctions(conjunctions));
	//pipes.add(new FeaturesInWindow("PREV-", -1, 1));
	pipes.add(new TokenTextCharSuffix("C1=", 1));
	pipes.add(new TokenTextCharSuffix("C2=", 2));
	pipes.add(new TokenTextCharSuffix("C3=", 3));
	pipes.add(new RegexMatches("CAPITALIZED", Pattern.compile("^\\p{Lu}.*")));
	pipes.add(new RegexMatches("STARTSNUMBER", Pattern.compile("^[0-9].*")));
	pipes.add(new RegexMatches("HYPHENATED", Pattern.compile(".*\\-.*")));
	pipes.add(new RegexMatches("DOLLARSIGN", Pattern.compile(".*\\$.*")));
	pipes.add(new TokenFirstPosition("FIRSTTOKEN"));
	pipes.add(new TokenSequence2FeatureVectorSequence());

	Pipe pipe = new SerialPipes(pipes);

	InstanceList trainingInstances = new InstanceList(pipe);
	InstanceList testingInstances = new InstanceList(pipe);

	trainingInstances.addThruPipe(new LineGroupIterator(new BufferedReader(new InputStreamReader(new GZIPInputStream(new FileInputStream(trainingFilename)))), Pattern.compile("^\\s*$"), true));
	testingInstances.addThruPipe(new LineGroupIterator(new BufferedReader(new InputStreamReader(new GZIPInputStream(new FileInputStream(testingFilename)))), Pattern.compile("^\\s*$"), true));
	
	CRF crf = new CRF(pipe, null);
	//crf.addStatesForLabelsConnectedAsIn(trainingInstances);
	crf.addStatesForThreeQuarterLabelsConnectedAsIn(trainingInstances);
	crf.addStartState();

	CRFTrainerByLabelLikelihood trainer = 
		new CRFTrainerByLabelLikelihood(crf);
	trainer.setGaussianPriorVariance(10.0);

	//CRFTrainerByStochasticGradient trainer = 
	//new CRFTrainerByStochasticGradient(crf, 1.0);

	//CRFTrainerByL1LabelLikelihood trainer = 
	//	new CRFTrainerByL1LabelLikelihood(crf, 0.75);

	//trainer.addEvaluator(new PerClassAccuracyEvaluator(trainingInstances, "training"));
	trainer.addEvaluator(new PerClassAccuracyEvaluator(testingInstances, "testing"));
	trainer.addEvaluator(new TokenAccuracyEvaluator(testingInstances, "testing"));
	trainer.train(trainingInstances);
	
}
 
開發者ID:karahindiba,項目名稱:WikiInfoboxExtractor,代碼行數:51,代碼來源:TrainWikiCRF.java


注:本文中的cc.mallet.fst.PerClassAccuracyEvaluator類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。