Python 使用SlopeOne算法预测玩家是否可以完成游戏中的某个关卡?

Python 使用SlopeOne算法预测玩家是否可以完成游戏中的某个关卡?,python,algorithm,filtering,prediction,collaborative,Python,Algorithm,Filtering,Prediction,Collaborative,我计划使用SlopeOne算法来预测玩家是否能在游戏中完成给定的关卡 以下是场景: 很多玩家在游戏中尝试完成100个关卡 每个玩家都可以玩任意次数的关卡,直到他们跨过关卡为止 系统跟踪级别和每个级别的重试次数 每个游戏级别分为3类(简单、中等、困难) 每个类别的水平分布大约为33%,这意味着33%的水平是容易的,33%的水平是困难的,等等 使用此信息: 当一个新玩家开始玩游戏时,在几级之后,我希望能够预测 玩家可以轻松跨越哪些关卡,他/她不可以轻松跨越哪些关卡 有了这种预测能力,我想展示一下用户

我计划使用SlopeOne算法来预测玩家是否能在游戏中完成给定的关卡

以下是场景:

  • 很多玩家在游戏中尝试完成100个关卡
  • 每个玩家都可以玩任意次数的关卡,直到他们跨过关卡为止
  • 系统跟踪级别和每个级别的重试次数
  • 每个游戏级别分为3类(简单、中等、困难)
  • 每个类别的水平分布大约为33%,这意味着33%的水平是容易的,33%的水平是困难的,等等
  • 使用此信息:

    当一个新玩家开始玩游戏时,在几级之后,我希望能够预测 玩家可以轻松跨越哪些关卡,他/她不可以轻松跨越哪些关卡

    有了这种预测能力,我想展示一下用户能够以50%的概率通过的游戏级别

    我可以用SlopeOne算法来处理这个问题吗

    原因是我发现我想说的和电影评级系统有很多相似之处

    n个用户、m个项目和n个评分,用于预测给定项目的用户评分

    同样,在我的情况下,我有

    n个用户、m个级别和n次重试

    唯一的区别是在电影分级系统中,分级固定在1-5级,在我的例子中,重试次数可以从1-x(x可能高达30次)

    虽然理论上有人可以重试30次以上,但现在我可以先将上限固定在30次,然后在获得更多数据后进行调整


    谢谢。

    我不知道该算法可能有多合适,但我在python中实现它时发现了这一点

    我认为它可能会起作用,但我会首先将日志应用于尝试次数(您无法执行日志(0),因此重试将不起作用)。如果有人发现某个级别比较容易,他们会尝试一两次,而那些觉得很难的人通常会反复尝试。1次与2次之间的差异远远大于20次与21次之间的差异。这样就不需要对goes值的数量设置任意限制