0

上周我读到一篇论文,建议将 MDP 作为推荐系统的替代解决方案,该论文的核心是用 MDP 表示推荐过程,即状态、动作、转换概率、奖励函数等。

如果我们为简单起见假设一个单用户系统,那么状态看起来像 k 元组(x1, x2, .. , xk),其中最后一个元素 xk 表示用户购买的最后一个项目。例如,假设我们当前的状态是(x1, x2, x3),用户按时间顺序购买了 x1,然后是 x2,然后是 x3。现在如果他购买 x4,新状态将是(x2, x3, x4).

现在,该论文的建议是,这些状态转换是由动作触发的,其中动作是“向用户推荐项目 x_i”。但问题是这样的行动可能会导致不止一种状态。

例如,如果我们当前的状态是(x1, x2, x3),并且操作是向用户“推荐 x4”,那么可能的结果可能是二分之一:

用户接受 x4 的推荐,新状态将是(x2, x3, x4)
用户忽略 x4 的推荐(即购买其他东西),新状态将是(x2, x3, xi)xi != x4的任何状态

我的问题是,MDP 是否真的支持触发两个或多个不同状态的相同动作?

更新。我认为动作应该被表述为“获得项目 x_i 的推荐并接受它”和“获得项目 x_i 的推荐并拒绝它”,而不是简单地“获得项目 x_i 的推荐”

4

2 回答 2

0

根据这篇维基百科文章,是的,确实如此。

我不是这方面的专家,因为我只是查找了这个概念,但看起来状态集和动作集似乎没有内在关系。因此,多个状态可以链接到任何动作(或不链接),反之亦然。因此,一个动作可以导致两个或多个不同的状态,并且每个结果都会有特定的概率。

请注意,在您的示例中,您可能必须拥有一组所有可能的状态(似乎它可能是无限的)。此外......根据我正在阅读的内容,您的州可能不应该记录过去的历史。似乎你可以通过记录链本身来记录历史——而不是(x1, x2, x3, xi)作为一个状态,你会有更多的东西(x1) -> (x2) -> (x3) -> (xi)——四个由动作链接的状态。(对符号表示抱歉。我希望这个概念有意义。)这样,您的状态代表购买的选择(因此是有限的)。

于 2016-03-28T01:49:06.987 回答
0

当然,这称为随机策略。如果要评估某个策略的奖励,则必须对随机动作的概率分布进行期望。

以下参考资料可能很有趣:Puterman,Martin L. Markov 决策过程:离散随机动态规划。约翰威利父子公司,2014 年。

如果我没记错的话,已经证明有一个确定性策略可以为任何具有有限离散状态空间和动作空间(可能还有其他一些条件)的 MDP 提供最佳奖励。虽然可能存在提供相同奖励的随机策略,但我们可以因此限制在一组确定性策略中进行搜索。

于 2016-04-10T12:18:47.107 回答