在 Q-learning 中 epsilon 的值应该是多少?

人工智能 强化学习 q学习 超参数优化 超参数 epsilon-贪婪策略
2021-11-05 10:15:23

我正在尝试了解强化学习,并且已经探索了不同的 Youtube 视频、博客文章和 Wikipedia 文章。

我不明白的是影响ε. 它应该取什么值?0.5,0.6, 或者0.7?

什么时候是什么意思ε=0ε=1? 如果ε=1,这是否意味着代理随机探索?如果这种直觉是正确的,那么它不会学到任何东西——对吧?另一方面,如果我设置ε=0,这是否意味着代理不探索?

对于典型问题,该参数的推荐值是多少?

1个回答

当 ϵ=0 和 ϵ=1 时是什么意思?如果 ϵ=1,是否意味着智能体随机探索?如果这种直觉是正确的,那么它不会学到任何东西——对吧?另一方面,如果我设置 ϵ=0,这是否意味着代理不探索?

你是对的,当 ϵ=1 时,代理随机行动。当 ϵ=0 时,代理总是采取当前的贪婪动作。这两种情况都不理想。总是贪婪地行动会阻止智能体探索可能更好的状态空间部分,相反,智能体可能会陷入局部最优。而且总是随机探索显然也不理想。因此,我们需要在这两者之间取得平衡。这通常被称为探索和开发之间的平衡。

对于典型问题,该参数的推荐值是多少?

ϵ 是一个超参数。不可能事先知道理想值是多少,并且高度依赖于手头的问题。这个问题没有一般的答案。

话虽如此,我见过的最常见的值通常在 0.01 到 0.1 之间。但我想强调,没有适用于所有问题的理想值。一个典型的策略是尝试几个值,看看哪一个效果最好。有关更多信息,您可能需要查找超参数调整。

另一种常见的做法是随着时间的推移逐渐衰减 epsilon(这通常称为“退火”或“模拟退火”)。根据算法,将 epsilon 衰减到零可能是收敛的要求。在某些情况下,随时间衰减 epsilon 的算法称为 GLIE 算法。例如,看到这个