我知道epsilon标志着勘探与开发之间的权衡。刚开始时,您希望epsilon高,这样您就可以大踏步学习东西。当您了解未来的回报时,ε会衰减,以便您可以利用已找到的更高的Q值。
但是,在随机环境中,我们的学习率是否也会随着时间而衰减?我见过的SO帖子仅讨论epsilon衰减。
我们如何设置epsilon和alpha以使值收敛?
答案 0 :(得分:2)
一开始,您希望epsilon高,这样您才能大踏步学习东西
我认为您错了ε和学习率。这个定义实际上与学习率有关。
学习率下降
学习率是您在寻求最佳政策方面迈出的一大步。用简单的QLearning来讲,就是每个步骤要更新Q值的数量。
较高的 alpha 表示您正在大步更新Q值。当代理商学习时,您应该衰减它以稳定模型输出,最终收敛到最优策略。
Epsilon衰变
当您根据已有的Q值选择特定的动作时,将使用Epsilon。例如,如果我们选择纯贪婪方法(epsilon = 0),那么我们总是在特定状态的所有q值中选择最高的q值。这会导致探索问题,因为我们很容易陷入局部最优状态。
因此,我们引入了使用epsilon的随机性。例如,如果epsilon = 0.3,那么无论实际q值如何,我们都以0.3的概率选择随机动作。
找到有关epsilon-greedy政策here的更多详细信息。
总而言之,学习率与您跳跃的程度有关,而ε与您采取动作的随机性有关。随着学习的进行,两者都应衰减以稳定并利用所学习的策略,这些策略会收敛到最佳策略。
答案 1 :(得分:2)
由于Vishma Dias的答案描述了学习率[衰变],我想阐述一下epsilon-greedy方法,我认为问题隐含地提到了 decayed-epsilon-greedy 方法进行勘探和开发。
在培训RL策略期间探索与开发之间取得平衡的一种方法是使用 epsilon-greedy 方法。例如, = 0.3表示概率为0.3时,从动作空间中随机选择输出动作,概率为0.7时,基于argmax(Q)贪婪地选择输出动作。
epsilon-greedy方法的一种改进称为 decayed-epsilon-greedy 方法。 例如,在这种方法中,我们训练了总共N个纪元/情节(取决于具体问题)的策略,该算法最初设置 = (例如, = 0.6),然后在训练时期/片段中逐渐减小到 = (例如 = 0.1)结束。 具体而言,在初始训练过程中,我们让模型具有更大的自由度(例如, = 0.6)以高概率进行探索,然后以速率 r < / em>训练具有以下公式的纪元/纪元:
通过这种更灵活的选择以极小的探索概率结束,之后,训练过程将更加着重于剥削(即贪婪),而仍然可以以很小的探索该政策大致趋同的可能性。
您可以在this post中看到衰退ε贪婪方法的优点。