为什么贝尔曼方程会间接创建策略?

人工智能 强化学习 比较 政策梯度 贝尔曼方程
2021-10-20 02:14:55

我正在观看关于政策梯度和贝尔曼方程的讲座。他们说贝尔曼方程间接地创建了一个策略,而策略梯度直接学习了一个策略。为什么是这样?

1个回答

策略梯度方法直接学习策略函数的参数,策略函数是从状态到动作的映射。例如,p(s,a)可以表示一个接受状态的函数s和一个动作a作为输入,并返回采取行动的概率a处于状态s作为输出(相当于它可能只需要s作为输入,并输出所有动作的向量或概率分布)。这样的函数通常会有一些参数(例如,如果它是状态的线性函数,则为权重向量,或者在神经网络的情况下为权重矩阵)。策略梯度方法通过修改(学习)该函数的参数来直接修改该函数。

贝尔曼方程通常用于学习计算不同类型值的函数,例如Q(s,a)价值,可以直观地理解为表示如果我们采取行动,我们期望获得的所有未来奖励a处于状态s(并遵循某个政策,通常是“最佳政策”,直到时间结束)。这样一个Q(s,a)我们学习的函数不是直接学习的策略,因为它不是从当前状态到动作的直接映射,它没有直接告诉我们要采取哪个动作。

它仍然可以间接用于创建策略。例如,一旦这样一个Q(s,a)函数被学习,贪心策略可以很容易地通过循环所有可能的动作来实现,并采取给出最大的动作Q(s,a)输出。这是间接的,因为学习函数不会直接为您提供操作,而仅提供您可以通过一些额外处理将其转换为操作的信息。