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


Java Numberer.object方法代码示例

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


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

示例1: toString

import edu.berkeley.nlp.util.Numberer; //导入方法依赖的package包/类
@Override
public String toString() {
	StringBuffer sb = new StringBuffer();
	Numberer tagNumberer = Numberer.getGlobalNumberer("tags");
	for (int tag = 0; tag < rules.length; tag++) {
		int[] counts = new int[7];
		String tagS = (String) tagNumberer.object(tag);
		if (rules[tag].length == 0)
			continue;
		for (int word = 0; word < rules[tag].length; word++) {
			sb.append(tagS + " "
					+ wordIndexer.get(tagWordIndexer[tag].get(word)) + "\n");
			sb.append(rules[tag][word].toString());
			sb.append("\n\n");
			counts[rules[tag][word].hierarchy.getDepth()]++;
		}
		System.out.print(tagNumberer.object(tag)
				+ ", lexical rules per level: ");
		for (int i = 1; i < 6; i++) {
			System.out.print(counts[i] + " ");
		}
		System.out.print("\n");

	}
	return sb.toString();
}
 
开发者ID:slavpetrov,项目名称:berkeleyparser,代码行数:27,代码来源:HierarchicalFullyConnectedAdaptiveLexicon.java

示例2: toString

import edu.berkeley.nlp.util.Numberer; //导入方法依赖的package包/类
@Override
public String toString() {
	StringBuffer sb = new StringBuffer();
	Numberer tagNumberer = Numberer.getGlobalNumberer("tags");
	for (int tag = 0; tag < expectedCounts.length; tag++) {
		String tagS = (String) tagNumberer.object(tag);
		if (tagWordIndexer[tag].size() == 0)
			continue;
		for (int word = 0; word < scores[tag][0].length; word++) {
			sb.append(tagS + " "
					+ wordIndexer.get(tagWordIndexer[tag].get(word)) + " ");
			for (int sub = 0; sub < numSubStates[tag]; sub++) {
				sb.append(" " + scores[tag][sub][word]);
			}
			sb.append("\n");
		}
	}
	return sb.toString();
}
 
开发者ID:slavpetrov,项目名称:berkeleyparser,代码行数:20,代码来源:SimpleLexicon.java

示例3: toString

import edu.berkeley.nlp.util.Numberer; //导入方法依赖的package包/类
@Override
public String toString() {
	Numberer n = Numberer.getGlobalNumberer("tags");
	String cState = (String) n.object(childState);
	String pState = (String) n.object(parentState);
	if (scores == null)
		return pState + " -> " + cState + "\n";
	StringBuilder sb = new StringBuilder();
	sb.append(pState + " -> " + cState + "\n");
	sb.append(ArrayUtil.toString(scores) + "\n");
	for (double[][] s : scoreHierarchy) {
		sb.append(ArrayUtil.toString(s) + "\n");
	}
	sb.append("\n");
	// for (int cS=0; cS<scores.length; cS++){
	// if (scores[cS]==null) continue;
	// for (int pS=0; pS<scores[cS].length; pS++){
	// double p = scores[cS][pS];
	// if (p>0)
	// sb.append(pState+"_"+pS+ " -> " + cState+"_"+cS +" "+p+"\n");
	// }
	// }
	return sb.toString();
}
 
开发者ID:text-machine-lab,项目名称:CliRel,代码行数:25,代码来源:HierarchicalUnaryRule.java

示例4: toString

import edu.berkeley.nlp.util.Numberer; //导入方法依赖的package包/类
@Override
public String toString() {
	Numberer n = Numberer.getGlobalNumberer("tags");
	String lState = (String) n.object(leftChildState);
	String rState = (String) n.object(rightChildState);
	String pState = (String) n.object(parentState);
	StringBuilder sb = new StringBuilder();
	if (scores == null)
		return pState + " -> " + lState + " " + rState + "\n";
	// sb.append(pState+ " -> "+lState+ " "+rState+ "\n");
	sb.append(pState + " -> " + lState + " " + rState + "\n");
	sb.append(ArrayUtil.toString(scores) + "\n");
	for (double[][][] s : scoreHierarchy) {
		sb.append(ArrayUtil.toString(s) + "\n");
	}
	sb.append("\n");
	return sb.toString();
}
 
开发者ID:text-machine-lab,项目名称:CliRel,代码行数:19,代码来源:HierarchicalBinaryRule.java

示例5: toString

import edu.berkeley.nlp.util.Numberer; //导入方法依赖的package包/类
@Override
public String toString() {
	StringBuilder sb = new StringBuilder();
	Numberer n = Numberer.getGlobalNumberer("tags");
	String cState = (String) n.object(childState);
	String pState = (String) n.object(parentState);
	sb.append(pState + " -> " + cState + "\n");
	if (subRuleList == null) {
		compactifyHierarchy(hierarchy);
		lastLevel = hierarchy.getDepth();
		computeSubRuleList();
	}

	for (SubRule rule : subRuleList) {
		if (rule == null)
			continue;
		sb.append(rule.toString(lastLevel - 1));
		sb.append("\n");
	}

	// sb.append(PennTreeRenderer.render(hierarchy));
	sb.append("\n");
	// sb.append(Arrays.toString(scores));
	return sb.toString();
}
 
开发者ID:text-machine-lab,项目名称:CliRel,代码行数:26,代码来源:HierarchicalAdaptiveUnaryRule.java

示例6: toString

import edu.berkeley.nlp.util.Numberer; //导入方法依赖的package包/类
@Override
public String toString() {
	StringBuilder sb = new StringBuilder();
	Numberer n = Numberer.getGlobalNumberer("tags");
	String lState = (String) n.object(leftChildState);
	String rState = (String) n.object(rightChildState);
	String pState = (String) n.object(parentState);
	sb.append(pState + " -> " + lState + " " + rState + "\n");
	if (subRuleList == null) {
		compactifyHierarchy(hierarchy);
		lastLevel = hierarchy.getDepth();
		computeSubRuleList();
	}

	for (SubRule rule : subRuleList) {
		sb.append(rule.toString(lastLevel - 1));
		sb.append("\n");
	}

	// sb.append(PennTreeRenderer.render(hierarchy));
	sb.append("\n");
	// sb.append(Arrays.toString(scores));
	return sb.toString();
}
 
开发者ID:slavpetrov,项目名称:berkeleyparser,代码行数:25,代码来源:HierarchicalAdaptiveBinaryRule.java

示例7: toStringShort

import edu.berkeley.nlp.util.Numberer; //导入方法依赖的package包/类
public String toStringShort() {
	Numberer n = Numberer.getGlobalNumberer("tags");
	String lState = (String) n.object(leftChildState);
	String rState = (String) n.object(rightChildState);
	String pState = (String) n.object(parentState);
	return (pState + " -> " + lState + " " + rState);
}
 
开发者ID:text-machine-lab,项目名称:CliRel,代码行数:8,代码来源:HierarchicalAdaptiveBinaryRule.java

示例8: translateState

import edu.berkeley.nlp.util.Numberer; //导入方法依赖的package包/类
private short translateState(int state, Numberer baseNumberer,
		Numberer translationNumberer) {
	Object object = baseNumberer.object(state);
	if (translationNumberer.hasSeen(object)) {
		return (short) translationNumberer.number(object);
	} else {
		return (short) -1;
	}
}
 
开发者ID:text-machine-lab,项目名称:CliRel,代码行数:10,代码来源:SmoothAcrossParentBits.java

示例9: toString

import edu.berkeley.nlp.util.Numberer; //导入方法依赖的package包/类
/**
 * @param tagNumberer
 * @return
 */
public String toString(Numberer tagNumberer) {
	String w;
	String name = tagNumberer.object(state) + "-" + substate;
	w = "<a href=" + GrammarStatistics.reflabel("productions", name) + ">"
			+ name + "</a> ";
	return w;
}
 
开发者ID:slavpetrov,项目名称:berkeleyparser,代码行数:12,代码来源:GrammarStatistics.java

示例10: toString

import edu.berkeley.nlp.util.Numberer; //导入方法依赖的package包/类
@Override
public String toString() {
	Numberer n = Numberer.getGlobalNumberer("tags");
	String lState = (String) n.object(leftChildState);
	if (lState.endsWith("^g"))
		lState = lState.substring(0, lState.length() - 2);
	String rState = (String) n.object(rightChildState);
	if (rState.endsWith("^g"))
		rState = rState.substring(0, rState.length() - 2);
	String pState = (String) n.object(parentState);
	if (pState.endsWith("^g"))
		pState = pState.substring(0, pState.length() - 2);
	StringBuilder sb = new StringBuilder();
	if (scores == null)
		return pState + " -> " + lState + " " + rState + "\n";
	// sb.append(pState+ " -> "+lState+ " "+rState+ "\n");
	for (int lS = 0; lS < scores.length; lS++) {
		for (int rS = 0; rS < scores[lS].length; rS++) {
			if (scores[lS][rS] == null)
				continue;
			for (int pS = 0; pS < scores[lS][rS].length; pS++) {
				double p = scores[lS][rS][pS];
				if (p > 0)
					sb.append(pState + "_" + pS + " -> " + lState + "_"
							+ lS + " " + rState + "_" + rS + " " + p + "\n");
			}
		}
	}
	return sb.toString();
}
 
开发者ID:text-machine-lab,项目名称:CliRel,代码行数:31,代码来源:BinaryRule.java

示例11: toString

import edu.berkeley.nlp.util.Numberer; //导入方法依赖的package包/类
@Override
public String toString() {
	StringBuffer sb = new StringBuffer();
	Numberer tagNumberer = Numberer.getGlobalNumberer("tags");
	for (int tag = 0; tag < scores.length; tag++) {
		int[] counts = new int[6];
		String tagS = (String) tagNumberer.object(tag);
		if (tagWordIndexer[tag].size() == 0)
			continue;
		for (int word = 0; word < scores[tag][0].length; word++) {
			sb.append(tagS + " "
					+ wordIndexer.get(tagWordIndexer[tag].get(word)) + " ");
			for (int sub = 0; sub < numSubStates[tag]; sub++) {
				sb.append(" " + scores[tag][sub][word]);
			}
			for (double[] d : hierarchicalScores[tag][word]) {
				sb.append("\n" + Arrays.toString(d));
			}
			counts[finalLevels[tag][word]]++;
			sb.append("\n\n");
		}
		System.out.print(tagNumberer.object(tag)
				+ ", word,tag pairs per level: ");
		for (int i = 1; i < 6; i++) {
			System.out.print(counts[i] + " ");
		}
		System.out.print("\n");
	}
	return sb.toString();
}
 
开发者ID:text-machine-lab,项目名称:CliRel,代码行数:31,代码来源:HierarchicalLexicon.java

示例12: printGrammarStatistics

import edu.berkeley.nlp.util.Numberer; //导入方法依赖的package包/类
/**
 * @param columnOutput
 * @param pData
 * @param tagNumberer
 * @param topN
 * @param gs
 * @param noContinueTags
 */
private static void printGrammarStatistics(boolean columnOutput,
		ParserData pData, Numberer tagNumberer, int topN,
		GrammarStatistics gs, Set<Short> noContinueTags) {
	System.out.println("<a name=\"grammar\"><h1>Grammar</h1></a>");
	System.out.println("<div id=\"grammar\">");
	// print rule probabilities
	for (short curTag : noContinueTags) {
		int nSubStates = pData.numSubStatesArray[curTag];
		ArrayList<SearchState>[] results = new ArrayList[nSubStates];
		for (short i = 0; i < nSubStates; i++) {
			// do heavy computation
			PriorityQueue<SearchState> pq = gs
					.getTopProductions(new FullState(curTag, i));
			// convert pq to array
			results[i] = new ArrayList<SearchState>(topN);
			while (pq.size() != 0) {
				pq.peek().score = Math.exp(pq.peek().score);
				results[i].add(0, pq.next());
			}
		}

		String[][] outputMatrix = new String[topN + 1][nSubStates];

		String tagName = (String) tagNumberer.object(curTag);
		for (int i = 0; i < nSubStates; i++) {
			outputMatrix[0][i] = tagName + "-" + i;
		}

		for (int j = 0; j < topN; j++) {
			for (int i = 0; i < nSubStates; i++) {
				String o = "";
				double p = -1;
				if (results[i].size() > j) {
					p = results[i].get(j).score;
					String w = results[i].get(j).toString(tagNumberer);
					o = f.format(p) + " " + w;
				}
				outputMatrix[j + 1][i] = o;
			}
		}

		printRules("Grammar", "productions", columnOutput, outputMatrix);
	}
	System.out.println("</div>");
}
 
开发者ID:slavpetrov,项目名称:berkeleyparser,代码行数:54,代码来源:GrammarStatistics.java

示例13: SpanPredictor

import edu.berkeley.nlp.util.Numberer; //导入方法依赖的package包/类
public SpanPredictor(int nWords, StateSetTreeList trainTrees,
		Numberer tagNumberer, Indexer<String> wordIndexer) {
	this.useFirstAndLast = ConditionalTrainer.Options.useFirstAndLast;
	this.usePreviousAndNext = ConditionalTrainer.Options.usePreviousAndNext;
	this.useBeginAndEndPairs = ConditionalTrainer.Options.useBeginAndEndPairs;
	this.useSyntheticClass = ConditionalTrainer.Options.useSyntheticClass;
	this.usePunctuation = ConditionalTrainer.Options.usePunctuation;
	this.minFeatureFrequency = ConditionalTrainer.Options.minFeatureFrequency;

	this.wordIndexer = wordIndexer;
	this.nWords = nWords;
	this.nFeatures = 0;
	if (useSyntheticClass) {
		System.out
				.println("Distinguishing between real and synthetic classes.");
		stateClass = new int[tagNumberer.total()];
		for (int i = 0; i < tagNumberer.total(); i++) {
			String state = (String) tagNumberer.object(i);
			if (state.charAt(0) == '@')
				stateClass[i] = 1; // synthetic
		}
		nClasses = 2;
	} else {
		stateClass = new int[tagNumberer.total()];
		nClasses = 1;
	}
	if (useFirstAndLast) {
		firstWordScore = new double[nWords][nClasses];
		lastWordScore = new double[nWords][nClasses];
		ArrayUtil.fill(firstWordScore, 1);
		ArrayUtil.fill(lastWordScore, 1);
		this.nFeatures += 2 * nWords * nClasses;
	}
	if (usePreviousAndNext) {
		previousWordScore = new double[nWords][nClasses];
		nextWordScore = new double[nWords][nClasses];
		ArrayUtil.fill(previousWordScore, 1);
		ArrayUtil.fill(nextWordScore, 1);
		this.nFeatures += 2 * nWords * nClasses;
	}
	if (useBeginAndEndPairs) {
		initPairs(trainTrees);
	}
	if (usePunctuation) {
		initPunctuations(trainTrees);
	}
}
 
开发者ID:text-machine-lab,项目名称:CliRel,代码行数:48,代码来源:SpanPredictor.java

示例14: toStringShort

import edu.berkeley.nlp.util.Numberer; //导入方法依赖的package包/类
public String toStringShort() {
	Numberer n = Numberer.getGlobalNumberer("tags");
	String cState = (String) n.object(childState);
	String pState = (String) n.object(parentState);
	return (pState + " -> " + cState);
}
 
开发者ID:text-machine-lab,项目名称:CliRel,代码行数:7,代码来源:HierarchicalAdaptiveUnaryRule.java


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