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


Java ConjugateGradient类代码示例

本文整理汇总了Java中cc.mallet.optimize.ConjugateGradient的典型用法代码示例。如果您正苦于以下问题:Java ConjugateGradient类的具体用法?Java ConjugateGradient怎么用?Java ConjugateGradient使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


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

示例1: optimizeHyperparameters

import cc.mallet.optimize.ConjugateGradient; //导入依赖的package包/类
public void optimizeHyperparameters(
		final Collection<TreeNode<TSGNode>> treeCorpus) {

	final HyperparameterOptimizable optimizable = new HyperparameterOptimizable(
			treeCorpus);

	if (DO_GRADIENT_CHECK) {
		final double[] gradient = new double[2];
		optimizable.getValueGradient(gradient);
		final double val1 = optimizable.getValue();

		final double dx = 10E-8;
		concentrationParameter += dx;
		double val2 = optimizable.getValue();
		final double empiricalConcentrationGradient = (val2 - val1) / dx;
		System.out.println("GRADIENT CHECKING (a): computed:" + gradient[0]
				+ " empirical:" + empiricalConcentrationGradient);
		concentrationParameter -= dx;

		geometricProbability += dx;
		val2 = optimizable.getValue();
		final double empiricalGeomGradient = (val2 - val1) / dx;
		System.out.println("GRADIENT CHECKING (geom): computed:"
				+ gradient[1] + " empirical:" + empiricalGeomGradient);
		geometricProbability -= dx;
	}

	final ConjugateGradient optimizer = new ConjugateGradient(optimizable);
	optimizer.setTolerance(1E-6);

	try {
		optimizer.optimize();
	} catch (final IllegalArgumentException e) {
		// This exception may be thrown if L-BFGS
		// cannot step in the current direction.
		// This condition does not necessarily mean that
		// the optimizer has failed, but it doesn't want
		// to claim to have succeeded...
		LOGGER.severe("Failed to optimize: "
				+ ExceptionUtils.getFullStackTrace(e));
	}

	LOGGER.info("Converged at: " + concentrationParameter + ", "
			+ geometricProbability);
}
 
开发者ID:mast-group,项目名称:codemining-treelm,代码行数:46,代码来源:ClassicTsgPosteriorComputer.java


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