How to fit multiple sequences with GMMHMM?

716 views Asked by At

I have a problem with the Python hmmlearn library. This is that I have several training sets and I would like to have one Gaussian mixture hmm model to fit them.

Here is an example working with multiple sequences.

X = np.concatenate([X1, X2])
lengths = [len(X1), len(X2)]
hmm.GaussianHMM(n_components=3).fit(X, lengths)  

When I change GaussianHMM to GMMHMM, it returns the following error:

hmm.GMMHMM(n_components=3).fit(X, lengths)

Traceback (most recent call last):
  File "C:\Users\Cody\workspace\QuickSilver_HMT\hmm_list_sqlite.py", line 141, in hmm_list_pickle
    hmm.GMMHMM(n_components=3).fit(X, lengths)
  File "build\bdist.win32\egg\hmmlearn\hmm.py", line 998, in fit
    raise ValueError("'lengths' argument is not supported yet")
ValueError: 'lengths' argument is not supported yet

How can one fit multiple sequences with GMMHMM?

1

There are 1 answers

3
Sergei Lebedev On

The current master version contains a re-write of GMMHMM which did not support multiple sequences at some point. Now it does, so updating should help, as @ppasler suggested.

The re-write is still a work-in-progress. Please report any issues you encounter on the hmmlearn issue tracker.