edu.umd.hooka.alignment.hmm
Class HMM

java.lang.Object
  extended by edu.umd.hooka.alignment.AlignmentModel
      extended by edu.umd.hooka.alignment.model1.Model1Base
          extended by edu.umd.hooka.alignment.model1.Model1
              extended by edu.umd.hooka.alignment.hmm.HMM
Direct Known Subclasses:
HMM_NullWord

public class HMM
extends Model1

Represents an HMM that applies to a single sentence pair, which is derived from the parameters stored in a TTable and an ATable object.

Author:
redpony

Field Summary
static IntWritable ACOUNT_VOC_ID
           
 
Constructor Summary
HMM(TTable ttable, ATable atable)
           
 
Method Summary
 void addPartialJumpCountsToATable(ATable ac)
           
 float baumWelch(PhrasePair pp, AlignmentPosteriorGrid pg)
           
 void buildHMMTables(PhrasePair pp)
           
 AlignmentPosteriorGrid computeAlignmentPosteriors(PhrasePair pp)
           
 float getEmissionProb(int j, int s)
           
 int getNumStates()
           
 float getTransitionProb(int s_prev, int s)
           
 void processTrainingInstance(PhrasePair pp, Reporter r)
           
 void setModel1Posteriors(AlignmentPosteriorGrid m1pg)
           
 Alignment viterbiAlign(PhrasePair sentence, PerplexityReporter reporter)
           
 void writePartialCounts(OutputCollector<IntWritable,PartialCountContainer> output)
           
 
Methods inherited from class edu.umd.hooka.alignment.model1.Model1
clearModel, realViterbiAlign
 
Methods inherited from class edu.umd.hooka.alignment.model1.Model1Base
addPartialTranslationCountsToTTable
 
Methods inherited from class edu.umd.hooka.alignment.AlignmentModel
addAlignmentListener
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ACOUNT_VOC_ID

public static final IntWritable ACOUNT_VOC_ID
Constructor Detail

HMM

public HMM(TTable ttable,
           ATable atable)
Method Detail

setModel1Posteriors

public void setModel1Posteriors(AlignmentPosteriorGrid m1pg)

writePartialCounts

public void writePartialCounts(OutputCollector<IntWritable,PartialCountContainer> output)
                        throws IOException
Overrides:
writePartialCounts in class Model1Base
Throws:
IOException

buildHMMTables

public void buildHMMTables(PhrasePair pp)

getNumStates

public final int getNumStates()

getTransitionProb

public final float getTransitionProb(int s_prev,
                                     int s)

getEmissionProb

public final float getEmissionProb(int j,
                                   int s)

addPartialJumpCountsToATable

public final void addPartialJumpCountsToATable(ATable ac)

processTrainingInstance

public void processTrainingInstance(PhrasePair pp,
                                    Reporter r)
Overrides:
processTrainingInstance in class Model1

baumWelch

public final float baumWelch(PhrasePair pp,
                             AlignmentPosteriorGrid pg)
Returns:
negative log probability of sentence

computeAlignmentPosteriors

public AlignmentPosteriorGrid computeAlignmentPosteriors(PhrasePair pp)
Overrides:
computeAlignmentPosteriors in class Model1

viterbiAlign

public Alignment viterbiAlign(PhrasePair sentence,
                              PerplexityReporter reporter)
Overrides:
viterbiAlign in class Model1