智能体在环境中采取顺序操作来反复实验来进行学习,环境通常是游戏或模拟这样的软件。强化学习被概念化为一个循环,其中智能体观察其环境的状态,然后采取改变该状态的操作。在接收下一个观察时,智能体还会收到与最近操作关联的奖励。这个过程在一个循环中继续,在学习过程中,智能体寻求最大化其预期平均奖励
在监督学习中,基本软件堆栈通常只有三个组件:数据集、数据集的预处理和深度学习库。在强化学习中,软件堆栈要复杂得多。它从构建环境本身开始,通常是模拟或视频游戏等软件。然后,使用可应用学习代码的 API 包装基本环境逻辑。
根据强化学习算法与环境的交互方式,然后应用预处理包装器(例如,使图像观察灰度)。只有在完成所有这些之后,才能应用强化学习算法,该算法通常使用深度学习工具(例如PyTorch,TensorFlow,Jax)实现。两种软件堆栈的比较以最简单的形式显示在下面: