Извлечение выбросов и начальных вероятностей из гранатового HMM

Я обучил модель HMM, используя пакет Python Pomegranate, например

from pomegranate import *
model = HiddenMarkovModel.from_samples(DiscreteDistribution, n_components=n, X=[trace])

Запуская этот код, я могу эффективно обучать HMM из образца последовательности. Это здорово, но я хотел бы встроить эту модель, то есть мне нужно извлечь параметры, чтобы я мог использовать их в другой среде.

Я могу легко получить матрицу перехода через

transitions = model.dense_transition_matrix()[:n,:n]

Однако я не нашел способа получить вероятности выбросов. Я вижу, что они хранятся в модели, когда я вызываю

print(model)

Но я не могу найти способ программно извлечь эти значения. Кроме того, я вообще не видел вектора вероятности для распределения начального состояния, и мне приходится вычислять его, решая систему уравнений, подразумеваемую матрицей перехода. Есть ли способ легко извлечь начальный вектор вероятности и матрицу вероятности выбросов из гранатового HMM?

0 ответов

Другие вопросы по тегам