public double getWeight(int index, int position, Sequence input, TransitionIterator iter) { double weight = 0; int si1 = iter.getSourceState().getIndex(); int si2 = iter.getDestinationState().getIndex(); int constrIndex = 0; for (PRConstraint constraint : constraints) { weight += constraint.getScore((FeatureVector)input.get(position), position, si1, si2, parameters[constrIndex]); constrIndex++; } return weight; }
private PreviousStateIterator() { prev = 0; if (inputPosition > 0) { int j = state.getIndex(); weights = new double[t.numStates()]; WeightCache c = getCache(inputPosition-1); for (int s = 0; s < t.numStates(); s++) weights[s] = c.weight[s][j]; } } private void lookAhead() {
private PreviousStateIterator() { prev = 0; if (inputPosition > 0) { int j = state.getIndex(); weights = new double[t.numStates()]; WeightCache c = getCache(inputPosition-1); for (int s = 0; s < t.numStates(); s++) weights[s] = c.weight[s][j]; } } private void lookAhead() {
public void incrementTransition(int index, int position, Sequence input, TransitionIterator iter, double prob) { int si1 = iter.getSourceState().getIndex(); int si2 = iter.getDestinationState().getIndex(); for (PRConstraint constraint : constraints) { constraint.incrementExpectations((FeatureVector)input.get(position), position, si1, si2, prob); } }
public double getWeight(int index, int position, Sequence input, TransitionIterator iter) { double weight = 0; int si1 = iter.getSourceState().getIndex(); int si2 = iter.getDestinationState().getIndex(); int constrIndex = 0; for (PRConstraint constraint : constraints) { weight += constraint.getScore((FeatureVector)input.get(position), position, si1, si2, parameters[constrIndex]); constrIndex++; } return weight; }
public void incrementTransition(int index, int position, Sequence input, TransitionIterator iter, double prob) { int si1 = iter.getSourceState().getIndex(); int si2 = iter.getDestinationState().getIndex(); for (PRConstraint constraint : constraints) { constraint.incrementExpectations((FeatureVector)input.get(position), position, si1, si2, prob); } }