如何将不同的模型用于基于 DQN 的强化学习深度神经网络?

数据挖掘 神经网络 强化学习 无监督学习 深度学习
2022-01-25 22:48:13

是否可以在不使用深度强化学习中使用的深度神经网络 (DNN) 的情况下实现强化学习算法,例如深度 Q 网络 (DQN)?

如何将 DQN 算法中的 DNN 替换为另一种算法?它应该是有监督的还是无监督的,这叫什么——它是“无监督的强化学习”还是“无监督的 DQN”?

在下面的 DQN 伪代码中,如果我想用另一种无监督算法替换 DNN 部分,可以吗?如果是这样,怎么做?

在此处输入图像描述

1个回答

好吧,如果你移除 DNN,我不会再称它为 Deep Q-Network。但绝对有可能移除它并仍然将这种方法视为强化学习。

实际上,深度神经网络的功能只是逼近 Q 值函数。DNN 只是形式中的一个函数Qθ(s,a)并根据样本,您调整θ以尽量减少错误。

在实践中,您可以使用任何您想要的功能。显然,某些功能会比其他功能更好。有基于线性回归、最小二乘、基于核的方法等更简单的方法。

关于无监督学习...... mm。我想您可以以某种方式强制它,但请记住,鉴于 RL 已经为您提供了反馈,因此使用它是有道理的,这并不完全有意义。

神经网络的一些有趣的优点是它们可以在ϕ并快速抽象出一些与预测某些状态/动作的 Q 值无关的噪声。

我注意到您想使用诸如随机森林之类的东西。没有什么可以阻止您这样做。特别是,随机森林并不理想,因为它们不能很好地处理非平稳。相反,它们需要位批数据。然而,这并不意味着,这是不可能的。

在 DQN 中,从环境中采样后,您会以与状态/动作对相关联的奖励形式从环境中获得反馈。RL 将此信息与使用 TD 的先前预测相结合(有一些变体,例如 TD(λ), ETC。)。TD给你的是一个更好的估计Q(s,a)并且您的预测器(在这种情况下是您的随机森林)应该知道当输入是(s,a)正确答案是Q(s,a).

您之前可能已经看到相同的输入(特别是对于初始状态),但由于 TD 改进了参考值,您需要删除这些以前的值并用最新的值替换它们。随机森林需要再次获得这整个批次。

一般来说,我承认虽然这两种情况都是监督学习,但调整 DQN 以使用非参数方法(如随机森林)可能会很不方便。

如果我不得不根据评论进行猜测,我认为您的主要问题围绕着参数和非参数监督学习之间的区别。在这种情况下,可以公平地说,大多数非参数方法都不容易与 DQN 结合。