Как отформатировать продольные / панельные данные для HMM - PullRequest
0 голосов
/ 17 апреля 2020

Как продольные данные должны быть введены в модель HMM (мне все равно, если пакет seqlearn, hmmlearn, гранат, ...)? Все эти пакеты не имеют надлежащей документации о том, как вводить данные, где для каждого временного шага есть несколько переменных. Учитывая изменение этих указанных c переменных за X временных шагов, он должен быть в состоянии предсказать, будет ли он равным 1 или 0, и он должен быть в состоянии изучить его сам. Я читал, что seqlearn - лучший выбор для этой проблемы бинарной классификации.

До тех пор, пока я не узнал, что подобное форматирование проходит мимо:

X1 = [1, 2, 0, 1, 1]
X2 = [42, 42]

, где у вас есть две последовательности 1D, а затем вы можете do:

X = np.append(X1, X2)
lengths = [len(X1), len(X2)]
X = np.array([1, 1, 0, -1, -1])
model = hmm.GaussianHMM(n_components=2, n_iter=100)
model.fit(X.reshape(-1,1))

Мне не удается отформатировать мои продольные данные таким образом, чтобы их можно было прочитать, поскольку приведенный выше пример не является панельными данными. Как мне устроить X1, X2, ...

...