我有一个包含状态、动作和奖励的数据集。数据集包括有关转换的信息,即.
有没有办法从这个数据集中估计一个行为策略,以便它可以用于离策略学习算法?
我有一个包含状态、动作和奖励的数据集。数据集包括有关转换的信息,即.
有没有办法从这个数据集中估计一个行为策略,以便它可以用于离策略学习算法?
您可以简单地从输入中训练策略来预测数据集中的操作。您可以为此使用交叉熵损失,即在给定相应输入时最大化策略分配给数据集中操作的对数概率。这称为行为克隆。
结果是行为策略的近似值,可让您计算动作的概率密度。这是一个近似值,因为数据集是有限的,当您将学习策略限制为一类分布时更是如此,例如高斯分布。
有没有办法从这个数据集中估计一个行为策略,以便它可以用于离策略学习算法?
如果你有足够的例子每个实例的对那么你可以简单地估计
在哪里计算数据集中的实例数。这可能足以使用带有重要性采样的离策略。
或者,您可以使用不需要重要性抽样的离策略方法。这里最直接的一个是单步 Q 学习。1-step Q-learning 的更新步骤不依赖于行为策略,因为:
正在更新的操作值已经假设正在被采取,所以你不需要任何条件概率。
TD目标不需要针对行为策略进行调整,它直接与目标策略一起工作(隐含为)
两步 Q 学习算法需要根据可能性进行调整在 TD 目标中- 通常是 0 或 1,因此使有时无关紧要。但是您仍然希望知道它以尽可能地执行更新。
如果您在离线和离线进行更新,那么单步 Q 学习可能是最简单的方法。总体上需要更多的更新步骤才能达到收敛,但每一步都会更简单。
如果您的数据看起来像这样然后这个样本取自特定的行为策略。因此,您不需要找到行为策略,只需 Q-Learning 即可在遵循行为策略的同时找到最优策略。
如果 MDP 太大,则考虑应用 Deep Q Learning。在这两种情况下,他们给出的转移概率都没有用。但是如果你使用on-policy learning并且你知道系统的动态(意味着转移概率),我会推荐你使用动态规划(如果状态空间不是很大)。但是对于你上面的问题设置,你不能使用动态规划,你只能选择使用off-policy learning。