我们先前借助Q值和Q表了解了Q学习的工作原理。Q学习是一种强化学习算法,其中包含一个“代理”,它采取达到最佳解决方案所需的行动。这可以通过作为神经网络存在的Q表来实现。它有助于采取正确的步骤,使报酬最大化,从而达到最佳解决方案。
现在,让我们看看代理如何使用该策略来决定实现最佳结果所需采取的下一步。
该策略根据代理所处的当前状态来考虑所有可能采取的措施的Q值。
Q值的值越高,作用越好。
有时,如果策略已经具备执行下一步所需的知识,则它会选择忽略Q表。
相反,它选择采取另一种随机动作并找到更高的潜在回报。
情节开始时,代理将采取随机行动,因为尚未填充Q表,并且不会提供太多信息。
但是随着时间的流逝,Q表逐渐被填充。
由于已填充此Q表,因此代理程序具有更多有关如何与环境交互以获取最大回报的知识。
座席执行每个新操作后,将借助Bellman方程更新Q值。
重要的是要了解,更新后的Q值基于新收到的奖励和相对于新状态的Q值的最大可能值。
Q表非常大,因为它包含棋盘的所有可能的配置和移动。这将占用系统中的大量内存。因此,使用神经网络来存储Q表,这有助于向代理建议针对每种状态的最佳操作。
由于使用了神经网络,强化学习算法在诸如Dota 2和Go的任务上获得了更好的性能。