我是ml的新手,所以我遇到了一些困难,他们意识到如何使用火花机学习库以及反映一系列事件的时间序列数据。
我有一个包含此信息的表:
StepN#,element_id,Session_id
其中,步骤n#是每个元素出现的顺序,element_id是已被点击的元素,session_id是用户会话发生的时间。
它由多个会话和每个会话的多个元素序列组成。即一个会话将包含多行元素。此外,每个会话都有相同的起点和终点。
我的目标是训练一个模型,该模型将使用观察到的元素序列来预测最有可能被点击的下一个元素。意思是我需要根据之前的事件预测下一个事件。
(换句话说,我需要平均用户点击特定工作流程的行为,以便模型能够根据平均值预测下一个最相关的点击)
从我在网上找到的论文和例子中我明白,当有一系列事件被用作训练模型的输入时,这是有道理的。
在我的情况下,我有多个会话/事件实例(从同一点开始),我想训练一个平均模型。我发现它有点具有挑战性,但要理解如何使用例如火花中的HMM来处理它。是否有涵盖此案例的实际示例或教程?
感谢您花时间阅读我的帖子。任何想法将不胜感激!
答案 0 :(得分:1)
这也可以通过频繁的模式挖掘来解决。检查一下:https://spark.apache.org/docs/latest/mllib-frequent-pattern-mining.html
在这种情况下,您可以找到频繁出现的频繁项目。在第一步中,您将教授模型的频繁内容,然后对于预测步骤,模型可以查看某些事件并预测此事件的最常见事件