from hmm import HMM def print_emission_probabilities(testHMM, observation): print("Printing emission probabilities:") for state in testHMM.states: print("Emission probability of '%s' from state '%s': %s" % (observation, state, testHMM.emission_probability(state, observation))) if __name__ == "__main__": # Empty HMM, P(a|B/I/O) = 0.0 testHMM = HMM(states=['B', 'I', 'O']) print(testHMM) print_emission_probabilities(testHMM, 'a') # Add a few observations, P(a|B) = 1.0 testHMM.add_observation('B', 'a') print_emission_probabilities(testHMM, 'a') # More, P(a|B) = P(b|B) = 0.5 testHMM.add_observation('B', 'b') print_emission_probabilities(testHMM, 'a')