当前位置: 首页>>代码示例>>Java>>正文


Java CRFTrainerByLabelLikelihood.setUseSparseWeights方法代码示例

本文整理汇总了Java中cc.mallet.fst.CRFTrainerByLabelLikelihood.setUseSparseWeights方法的典型用法代码示例。如果您正苦于以下问题:Java CRFTrainerByLabelLikelihood.setUseSparseWeights方法的具体用法?Java CRFTrainerByLabelLikelihood.setUseSparseWeights怎么用?Java CRFTrainerByLabelLikelihood.setUseSparseWeights使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在cc.mallet.fst.CRFTrainerByLabelLikelihood的用法示例。


在下文中一共展示了CRFTrainerByLabelLikelihood.setUseSparseWeights方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testTokenAccuracy

import cc.mallet.fst.CRFTrainerByLabelLikelihood; //导入方法依赖的package包/类
public void testTokenAccuracy() {
	Pipe p = makeSpacePredictionPipe();

	InstanceList instances = new InstanceList(p);
	instances.addThruPipe(new ArrayIterator(data));
	InstanceList[] lists = instances.split(new Random(777), new double[] {
			.5, .5 });

	CRF crf = new CRF(p.getDataAlphabet(), p.getTargetAlphabet());
	crf.addFullyConnectedStatesForLabels();
	CRFTrainerByLabelLikelihood crft = new CRFTrainerByLabelLikelihood(crf);
	crft.setUseSparseWeights(true);

	crft.trainIncremental(lists[0]);

	TokenAccuracyEvaluator eval = new TokenAccuracyEvaluator(lists,
			new String[] { "Train", "Test" });
	eval.evaluateInstanceList(crft, lists[1], "Test");

	assertEquals(0.9409, eval.getAccuracy("Test"), 0.001);

}
 
开发者ID:kostagiolasn,项目名称:NucleosomePatternClassifier,代码行数:23,代码来源:TestCRF.java

示例2: train

import cc.mallet.fst.CRFTrainerByLabelLikelihood; //导入方法依赖的package包/类
/**
 * 
 * @param num_iterations
 * @return
 */
public Boolean train(Integer num_iterations) {
	this.model = new CRF(this.train_data.getPipe(), (Pipe) null);
	for (int i = 0; i < this.model.numStates(); i++)
		this.model.getState(i).setInitialWeight(Transducer.IMPOSSIBLE_WEIGHT);
	String startName = this.model.addOrderNStates(this.train_data, new int[] { 1 }, null, DEFAULT_LABEL, Pattern.compile("\\s"), Pattern.compile(".*"), true);
	this.model.getState(startName).setInitialWeight(0.0);

	CRFTrainerByLabelLikelihood crft = new CRFTrainerByLabelLikelihood(this.model);
	crft.setGaussianPriorVariance(DEFAULT_PRIOR_VARIANCE);
	crft.setUseSparseWeights(true);
	crft.setUseSomeUnsupportedTrick(true);

	for (int i = 0; i < num_iterations; i++)
		if (crft.train(this.train_data, 1))
			break;

	return this.model != null;
}
 
开发者ID:hakchul77,项目名称:irnlp_toolkit,代码行数:24,代码来源:MalletWrapper.java

示例3: ignoretestTokenAccuracy

import cc.mallet.fst.CRFTrainerByLabelLikelihood; //导入方法依赖的package包/类
public void ignoretestTokenAccuracy() {
	Pipe p = makeSpacePredictionPipe();

	InstanceList instances = new InstanceList(p);
	instances.addThruPipe(new ArrayIterator(data));
	InstanceList[] lists = instances.split(new Random(777), new double[] {
			.5, .5 });

	CRF crf = new CRF(p.getDataAlphabet(), p.getTargetAlphabet());
	crf.addFullyConnectedStatesForLabels();
	CRFTrainerByLabelLikelihood crft = new CRFTrainerByLabelLikelihood(crf);
	crft.setUseSparseWeights(true);

	crft.trainIncremental(lists[0]);

	TokenAccuracyEvaluator eval = new TokenAccuracyEvaluator(lists,
			new String[] { "Train", "Test" });
	eval.evaluateInstanceList(crft, lists[1], "Test");

	assertEquals(0.9409, eval.getAccuracy("Test"), 0.001);

}
 
开发者ID:cmoen,项目名称:mallet,代码行数:23,代码来源:TestCRF.java

示例4: testDenseFeatureSelection

import cc.mallet.fst.CRFTrainerByLabelLikelihood; //导入方法依赖的package包/类
public void testDenseFeatureSelection() {
	Pipe p = makeSpacePredictionPipe();

	InstanceList instances = new InstanceList(p);
	instances.addThruPipe(new ArrayIterator(data));

	// Test that dense observations wights aren't added for
	// "default-feature" edges.
	CRF crf1 = new CRF(p, null);
	crf1.addOrderNStates(instances, new int[] { 0 }, null, "start", null,
			null, true);
	CRFTrainerByLabelLikelihood crft1 = new CRFTrainerByLabelLikelihood(
			crf1);
	crft1.setUseSparseWeights(false);
	crft1.train(instances, 1); // Set weights dimension
	int nParams1 = crft1.getOptimizableCRF(instances).getNumParameters();

	CRF crf2 = new CRF(p, null);
	crf2.addOrderNStates(instances, new int[] { 0, 1 }, new boolean[] {
			false, true }, "start", null, null, true);
	CRFTrainerByLabelLikelihood crft2 = new CRFTrainerByLabelLikelihood(
			crf2);
	crft2.setUseSparseWeights(false);
	crft2.train(instances, 1); // Set weights dimension
	int nParams2 = crft2.getOptimizableCRF(instances).getNumParameters();

	assertEquals(nParams2, nParams1 + 4);

}
 
开发者ID:kostagiolasn,项目名称:NucleosomePatternClassifier,代码行数:30,代码来源:TestCRF.java


注:本文中的cc.mallet.fst.CRFTrainerByLabelLikelihood.setUseSparseWeights方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。