0

我有一个数据集,其中包含通过 URI 表示的数据。我想对可以从我的顺序数据中预测数据样本的前任和后继的数据进行建模。数据集如下所示: 顺序数据集

例如,给定“HTTP://example.com/112”,模型生成“HTTP://example.com/296”作为前任,“HTTP://example.com/322”作为后继。我想为此数据集构建马尔可夫决策过程模型以获得上述结果。如果有人能帮我找到适合 Python 的包,那就太好了。我检查了“hmmlearn”包,我可以用它来实现一个隐藏的马尔可夫模型。但是我的数据没有隐藏状态。另外,我不确定是否应该将这些数据转换为数值数据,然后我才能建立马尔可夫模型。

先感谢您!

4

1 回答 1

0

如果没有隐藏状态,则您有一个马尔可夫链。它们并不难自己实现,但如果你想要一个库,有石榴:

from pomegranate import MarkovChain
#say you have two sequences of clicks:
sequences = [['uri1', 'uri5', 'uri3', 'uri5'], ['uri2', 'uri3', 'uri1', 'uri2']]
model = MarkovChain.from_samples(sequences)

学习转移概率:

print(model.distributions[1])
uri5    uri5    0.0
uri5    uri3    1.0
uri5    uri1    0.0
uri5    uri2    0.0
uri3    uri5    0.5
uri3    uri3    0.0
uri3    uri1    0.5
uri3    uri2    0.0
uri1    uri5    0.5
uri1    uri3    0.0
uri1    uri1    0.0
uri1    uri2    0.5
uri2    uri5    0.0
uri2    uri3    1.0
uri2    uri1    0.0
uri2    uri2    0.0
于 2020-12-01T09:33:45.197 回答