我正在尝试使用hmmlearn学习模型,以便对我的数据集进行分类。数据集有一个具有不同长度的序列列表。每个序列由事件发射组成。例如:
ID1: ['1', '10', '8', '15']
ID2: ['1', '10', '8', '15', '156', '459', '256']
这是我正在使用的代码。我在这里找到了一个类似的例子。
sequence_map = __load_df(file)
x = []
lengths = []
for values in sequence_map.values():
x.append(values)
lengths.append(len(values))
x = np.concatenate(x)
model = hmm.GaussianHMM(n_components=2, algorithm='map', n_iter=1000, covariance_type="full").fit(x, lengths=lengths)
predictions = model.predict(x, lengths)
我有兴趣将事件分为两类,所以我选择n_components=2
.
我现在如何检索数据集中每个序列的类?