GHMMでHMMをファイルへ入出力する方法
GHMMでどうやって隠れマルコフモデルのファイルへの入出力を行うかを紹介します。
非常に簡単です。
セットアップ
from ghmm import * A = [[0.6, 0.4, 0], [0, 0.6, 0.4], [0.0, 0.0, 1.0]] B = [[0.25, 0.25, 0.25, 0.25], [0.25, 0.25, 0.25, 0.25], [0.25, 0.25, 0.25, 0.25]] pi = [1.0, 0, 0] sigma = IntegerRange(0, 4) hmm = HMMFromMatrices(sigma, DiscreteDistribution(sigma), A, B, pi) hmm.normalize() train_seq = EmissionSequence(sigma, [0, 0, 0, 1, 3, 2, 2, 3]) hmm.baumWelch(train_seq)
HMMのファイルへの書き込み
filename = 'trained_hmm'
hmm.write(filename)
HMMのファイルからの読み込み
from ghmm import * filename = 'trained_hmm' hmm = HMMOpenXML.openNewXML(filename, None) #can be use hmm normally test_seq = EmissionSequence(sigma, [0, 0, 0, 1, 3, 2, 2]) result = hmm.viterbi(test_seq)