public DocumentMapIterator2(){ docids = new ArrayList<Integer>(docids2lengths.size()); for (int docid : docids2lengths.keys()) { docids.add(docid); } Collections.sort(docids); Collections.reverse(docids); }
public DocumentMapIterator() { docids = new ArrayList<Integer>(docids2lengths.size()); for (int docid : docids2lengths.keys()) { docids.add(docid); } Collections.sort(docids); Collections.reverse(docids); }
public FeatureVector toFeatureVector () { int[] indices = featureCounts.keys(); double[] values = new double[indices.length]; for (int i = 0; i < indices.length; i++) values[i] = featureCounts.get(indices[i]); return new FeatureVector (alphabet, indices, values); }
public RankedFeatureVector toRankedFeatureVector () { int[] indices = featureCounts.keys(); double[] values = new double[indices.length]; for (int i = 0; i < indices.length; i++) values[i] = featureCounts.get(indices[i]); return new RankedFeatureVector (alphabet, indices, values); }
public FeatureVector toFeatureVector () { int[] indices = featureCounts.keys(); double[] values = new double[indices.length]; for (int i = 0; i < indices.length; i++) values[i] = featureCounts.get(indices[i]); return new FeatureVector (alphabet, indices, values); }
public RankedFeatureVector toRankedFeatureVector () { int[] indices = featureCounts.keys(); double[] values = new double[indices.length]; for (int i = 0; i < indices.length; i++) values[i] = featureCounts.get(indices[i]); return new RankedFeatureVector (alphabet, indices, values); }
public FeatureVector toFeatureVector () { int[] indices = featureCounts.keys(); double[] values = new double[indices.length]; for (int i = 0; i < indices.length; i++) values[i] = featureCounts.get(indices[i]); return new FeatureVector (alphabet, indices, values); }
public RankedFeatureVector toRankedFeatureVector () { int[] indices = featureCounts.keys(); double[] values = new double[indices.length]; for (int i = 0; i < indices.length; i++) values[i] = featureCounts.get(indices[i]); return new RankedFeatureVector (alphabet, indices, values); }
public String topWords (int numWords) { StringBuilder output = new StringBuilder(); IDSorter[] sortedWords = new IDSorter[numTypes]; for (int topic: docsPerTopic.keys()) { for (int type = 0; type < numTypes; type++) { sortedWords[type] = new IDSorter(type, typeTopicCounts[type].get(topic)); } Arrays.sort(sortedWords); output.append(topic + "\t" + tokensPerTopic.get(topic) + "\t"); for (int i=0; i < numWords; i++) { if (sortedWords[i].getWeight() < 1.0) { break; } output.append(alphabet.lookupObject(sortedWords[i].getID()) + " "); } output.append("\n"); } return output.toString(); }
public BitSet preProcess(InstanceList data) { // count BitSet bitSet = new BitSet(data.size()); int ii = 0; for (Instance instance : data) { FeatureVectorSequence fvs = (FeatureVectorSequence)instance.getData(); for (int ip = 1; ip < fvs.size(); ip++) { for (int fi : constraintsMap.keys()) { // binary constraint features if (fvs.get(ip).location(fi) >= 0) { constraintsList.get(constraintsMap.get(fi)).count += 1; bitSet.set(ii); } } } ii++; } return bitSet; }
public void getExpectations(double[] expectations) { assert(expectations.length == numDimensions()); for (int fi : constraintIndices.keys()) { int ci = constraintIndices.get(fi); OneLabelPRConstraint constraint = constraints.get(fi); for (int li = 0; li < constraint.expectation.length; li++) { expectations[ci + li * constraints.size()] = constraint.expectation[li]; } } }
public void getExpectations(double[] expectations) { assert(expectations.length == numDimensions()); for (int fi : constraintIndices.keys()) { int ci = constraintIndices.get(fi); OneLabelPRConstraint constraint = constraints.get(fi); for (int li = 0; li < constraint.expectation.length; li++) { expectations[ci + li * constraints.size()] = constraint.expectation[li]; } } }
public void addExpectations(double[] expectations) { assert(expectations.length == numDimensions()); for (int fi : constraintIndices.keys()) { int ci = constraintIndices.get(fi); OneLabelPRConstraint constraint = constraints.get(fi); for (int li = 0; li < constraint.expectation.length; li++) { constraint.expectation[li] += expectations[ci + li * constraints.size()]; } } }
public void getExpectations(double[] expectations) { assert(expectations.length == numDimensions()); for (int fi : constraintIndices.keys()) { int ci = constraintIndices.get(fi); OneLabelPRConstraint constraint = constraints.get(fi); for (int li = 0; li < constraint.expectation.length; li++) { expectations[ci + li * constraints.size()] = constraint.expectation[li]; } } }
public void addExpectations(double[] expectations) { assert(expectations.length == numDimensions()); for (int fi : constraintIndices.keys()) { int ci = constraintIndices.get(fi); OneLabelPRConstraint constraint = constraints.get(fi); for (int li = 0; li < constraint.expectation.length; li++) { constraint.expectation[li] += expectations[ci + li * constraints.size()]; } } }
public void addExpectations(double[] expectations) { assert(expectations.length == numDimensions()); for (int fi : constraintIndices.keys()) { int ci = constraintIndices.get(fi); OneLabelPRConstraint constraint = constraints.get(fi); for (int li = 0; li < constraint.expectation.length; li++) { constraint.expectation[li] += expectations[ci + li * constraints.size()]; } } }
public Instance pipe(Instance instance) { TIntIntHashMap localCounter = new TIntIntHashMap(); if (instance.getData() instanceof FeatureSequence) { FeatureSequence features = (FeatureSequence) instance.getData(); for (int position = 0; position < features.size(); position++) { localCounter.adjustOrPutValue(features.getIndexAtPosition(position), 1, 1); } } else { throw new IllegalArgumentException("Looking for a FeatureSequence, found a " + instance.getData().getClass()); } for (int feature: localCounter.keys()) { counter.increment(feature); } numInstances++; return instance; }
public Instance pipe(Instance instance) { TIntIntHashMap localCounter = new TIntIntHashMap(); if (instance.getData() instanceof FeatureSequence) { FeatureSequence features = (FeatureSequence) instance.getData(); for (int position = 0; position < features.size(); position++) { localCounter.adjustOrPutValue(features.getIndexAtPosition(position), 1, 1); } } else { throw new IllegalArgumentException("Looking for a FeatureSequence, found a " + instance.getData().getClass()); } for (int feature: localCounter.keys()) { counter.increment(feature); } numInstances++; return instance; }
public Instance pipe(Instance instance) { TIntIntHashMap localCounter = new TIntIntHashMap(); if (instance.getData() instanceof FeatureSequence) { FeatureSequence features = (FeatureSequence) instance.getData(); for (int position = 0; position < features.size(); position++) { localCounter.adjustOrPutValue(features.getIndexAtPosition(position), 1, 1); } } else { throw new IllegalArgumentException("Looking for a FeatureSequence, found a " + instance.getData().getClass()); } for (int feature: localCounter.keys()) { counter.increment(feature); } numInstances++; return instance; }
public double[][] getWordFrequencies() { if (instances == null) { throw new IllegalStateException("You must load instances before you can count features"); } double[][] result = new double[ numTypes ][ 2 ]; TIntIntHashMap docCounts = new TIntIntHashMap(); for (Instance instance: instances) { FeatureSequence features = (FeatureSequence) instance.getData(); for (int i=0; i<features.getLength(); i++) { docCounts.adjustOrPutValue(features.getIndexAtPosition(i), 1, 1); } int[] keys = docCounts.keys(); for (int i = 0; i < keys.length; i++) { int feature = keys[i]; result[feature][0] += docCounts.get(feature); result[feature][1]++; } docCounts = new TIntIntHashMap(); } return result; }