我目前正在阅读Sutton关于强化学习的介绍。在到达第10章(使用近似的政策预测)之后,我现在想知道如何选择函数q
的形式,其中最佳权重w
将被近似。
答案 0 :(得分:4)
您可以选择任何可微分的函数逼近器。 两个常用的值函数逼近器类是:
线性函数逼近器:特征的线性组合
For approximating Q (the action-value)
1. Find features that are functions of states and actions.
2. Represent q as a weighted combination of these features.
神经网络
使用神经网络代表。您可以使用 action-in (左下图)类型或 action-out (右下图)类型进行近似。区别在于神经网络既可以作为状态和动作的输入表示,也可以产生单个值( Q-value )作为输出,或者仅作为输入表示状态{ {1}}并为每个动作提供一个值,动作空间中的 a (如果动作空间是离散且有限的,则此类型更容易实现)。
使用第一个类型( action-in )作为示例,因为它接近线性情况下的示例,您可以使用神经网络创建一个Q值近似器,方法如下:
s
您也可以直接使用视觉效果(如果可用)作为输入,并使用DQN paper中的卷积图层。但请阅读下面关于收敛的注释以及稳定这种基于非线性逼近器的方法的其他技巧。
图形化的函数逼近器如下所示:
请注意,是elementary function,用于表示状态操作向量的元素。 您可以使用任何基本函数代替。一些常见的是线性回归量,Radial Basis Functions等。
良好的可区分函数取决于上下文。但在强化学习设置中,收敛属性和误差界限很重要。书中讨论的情节半梯度Sarsa 算法具有与TD(0)类似的收敛性,用于常数策略。
由于您特别要求进行策略预测,因此建议使用线性函数逼近器,因为它可以保证收敛。以下是使线性函数逼近器适用的一些其他属性:
错误界限(由Tsitsiklis & Roy,1997证明对于TD(lambda)的一般情况)是:
然而,使用非线性逼近器(如(深)神经网络)本身并不能保证收敛。 梯度TD方法使用投影贝尔曼误差的真实梯度进行更新,而不是情节半梯度Sarsa算法中使用的半梯度,已知提供{如果满足某些条件,则{3}}(即使是非政策性预测)。