Transducer.TransitionIterator iter = sourceState.transitionIterator(fvs, ip, null, ip); while (iter.hasNext()) { int b = iter.next().getIndex();
Transducer.TransitionIterator iter = sourceState.transitionIterator(fvs, ip, null, ip); while (iter.hasNext()) { int b = iter.next().getIndex();
Transducer.TransitionIterator iter = sourceState.transitionIterator(fvs, ip, null, ip); while (iter.hasNext()) { int b = iter.next().getIndex();
State s = t.getState(i); TransitionIterator iter = s.transitionIterator (input, position, providedOutput, position); while (iter.hasNext()) { State d = iter.next();
State s = t.getState(i); TransitionIterator iter = s.transitionIterator (input, position, providedOutput, position); while (iter.hasNext()) { State d = iter.next();
State s = t.getState(i); TransitionIterator iter = s.transitionIterator (input, position, providedOutput, position); while (iter.hasNext()) { State d = iter.next();
for (int ip = 0; ip < viterbiNodeAlignment.input().size()-1; ip++) { TransitionIterator iter = viterbiNodeAlignment.output().get(ip).state.transitionIterator (input, ip, providedOutput, ip);
for (int ip = 0; ip < viterbiNodeAlignment.input().size()-1; ip++) { TransitionIterator iter = viterbiNodeAlignment.output().get(ip).state.transitionIterator (input, ip, providedOutput, ip);
for (int ip = 0; ip < viterbiNodeAlignment.input().size()-1; ip++) { TransitionIterator iter = viterbiNodeAlignment.output().get(ip).state.transitionIterator (input, ip, providedOutput, ip);
public void testXis() { Pipe p = makeSpacePredictionPipe(); InstanceList instances = new InstanceList(p); instances.addThruPipe(new ArrayIterator(data)); CRF crf1 = new CRF(p, null); crf1.addFullyConnectedStatesForLabels(); CRFTrainerByLabelLikelihood crft1 = new CRFTrainerByLabelLikelihood( crf1); crft1.train(instances, 10); // Let's get some parameters Instance inst = instances.get(0); Sequence input = (Sequence) inst.getData(); SumLatticeDefault lattice = new SumLatticeDefault(crf1, input, (Sequence) inst.getTarget(), null, true); for (int ip = 0; ip < lattice.length() - 1; ip++) { for (int i = 0; i < crf1.numStates(); i++) { Transducer.State state = crf1.getState(i); Transducer.TransitionIterator it = state.transitionIterator( input, ip); double gamma = lattice.getGammaProbability(ip, state); double xiSum = 0; while (it.hasNext()) { Transducer.State dest = it.nextState(); double xi = lattice.getXiProbability(ip, state, dest); xiSum += xi; } assertEquals(gamma, xiSum, 1e-5); } } }
public void testXis() { Pipe p = makeSpacePredictionPipe(); InstanceList instances = new InstanceList(p); instances.addThruPipe(new ArrayIterator(data)); CRF crf1 = new CRF(p, null); crf1.addFullyConnectedStatesForLabels(); CRFTrainerByLabelLikelihood crft1 = new CRFTrainerByLabelLikelihood( crf1); crft1.train(instances, 10); // Let's get some parameters Instance inst = instances.get(0); Sequence input = (Sequence) inst.getData(); SumLatticeDefault lattice = new SumLatticeDefault(crf1, input, (Sequence) inst.getTarget(), null, true); for (int ip = 0; ip < lattice.length() - 1; ip++) { for (int i = 0; i < crf1.numStates(); i++) { Transducer.State state = crf1.getState(i); Transducer.TransitionIterator it = state.transitionIterator( input, ip); double gamma = lattice.getGammaProbability(ip, state); double xiSum = 0; while (it.hasNext()) { Transducer.State dest = it.nextState(); double xi = lattice.getXiProbability(ip, state, dest); xiSum += xi; } assertEquals(gamma, xiSum, 1e-5); } } }
public void cacheDotProducts() { cachedDots = new double[trainingSet.size()][][][]; for (int i = 0; i < trainingSet.size(); i++) { FeatureVectorSequence input = (FeatureVectorSequence)trainingSet.get(i).getData(); cachedDots[i] = new double[input.size()][crf.numStates()][crf.numStates()]; for (int j = 0; j < input.size(); j++) { for (int k = 0; k < crf.numStates(); k++) { for (int l = 0; l < crf.numStates(); l++) { cachedDots[i][j][k][l] = Transducer.IMPOSSIBLE_WEIGHT; } } } for (int j = 0; j < input.size(); j++) { for (int k = 0; k < crf.numStates(); k++) { TransitionIterator iter = crf.getState(k).transitionIterator(input, j); while (iter.hasNext()) { int l = iter.next().getIndex(); cachedDots[i][j][k][l] = iter.getWeight(); } } } } }
public void cacheDotProducts() { cachedDots = new double[trainingSet.size()][][][]; for (int i = 0; i < trainingSet.size(); i++) { FeatureVectorSequence input = (FeatureVectorSequence)trainingSet.get(i).getData(); cachedDots[i] = new double[input.size()][crf.numStates()][crf.numStates()]; for (int j = 0; j < input.size(); j++) { for (int k = 0; k < crf.numStates(); k++) { for (int l = 0; l < crf.numStates(); l++) { cachedDots[i][j][k][l] = Transducer.IMPOSSIBLE_WEIGHT; } } } for (int j = 0; j < input.size(); j++) { for (int k = 0; k < crf.numStates(); k++) { TransitionIterator iter = crf.getState(k).transitionIterator(input, j); while (iter.hasNext()) { int l = iter.next().getIndex(); cachedDots[i][j][k][l] = iter.getWeight(); } } } } }
public void cacheDotProducts() { cachedDots = new double[trainingSet.size()][][][]; for (int i = 0; i < trainingSet.size(); i++) { FeatureVectorSequence input = (FeatureVectorSequence)trainingSet.get(i).getData(); cachedDots[i] = new double[input.size()][crf.numStates()][crf.numStates()]; for (int j = 0; j < input.size(); j++) { for (int k = 0; k < crf.numStates(); k++) { for (int l = 0; l < crf.numStates(); l++) { cachedDots[i][j][k][l] = Transducer.IMPOSSIBLE_WEIGHT; } } } for (int j = 0; j < input.size(); j++) { for (int k = 0; k < crf.numStates(); k++) { TransitionIterator iter = crf.getState(k).transitionIterator(input, j); while (iter.hasNext()) { int l = iter.next().getIndex(); cachedDots[i][j][k][l] = iter.getWeight(); } } } } }
public TransitionIterator transitionIterator (Sequence input, int inputPosition) { return transitionIterator (input, inputPosition, null, 0); }
public TransitionIterator transitionIterator (Sequence input, int inputPosition) { return transitionIterator (input, inputPosition, null, 0); }
public TransitionIterator transitionIterator () { return transitionIterator (null, 0, null, 0); }
public TransitionIterator transitionIterator () { return transitionIterator (null, 0, null, 0); }
public TransitionIterator transitionIterator () { return transitionIterator (null, 0, null, 0); }
public TransitionIterator transitionIterator (Sequence input, int inputPosition) { return transitionIterator (input, inputPosition, null, 0); }