如何使用sklearn HMM来计算观察数据的可能性

时间:2016-11-21 04:05:38

标签: python machine-learning scikit-learn hmmlearn

HMM存在三个基本问题:

  1. 给出模型参数和观测数据,估计隐藏状态的最佳序列。
  2. 给出模型参数和观察数据,计算数据的可能性。
  3. 只给出观察到的数据,估算模型参数。
  4. 问题1和问题3可以通过sklearn HMM tutorial解决。但是我们如何使用sklearn来解决问题2?

1 个答案:

答案 0 :(得分:2)

使用score()函数。从代码:

def score(self, X, lengths=None):
"""Compute the log probability under the model.

    Parameters
    ----------
    X : array-like, shape (n_samples, n_features)
        Feature matrix of individual samples.

    lengths : array-like of integers, shape (n_sequences, ), optional
        Lengths of the individual sequences in ``X``. The sum of
        these should be ``n_samples``.

    Returns
    -------
    logprob : float
        Log likelihood of ``X``.