深度Q学习变体与TF - Agents库应用
1. 深度Q学习算法变体
深度Q学习(Deep Q - Learning)算法有一些变体,可稳定并加速训练过程。
1.1 固定Q值目标
在基本的深度Q学习算法中,模型既用于预测,又用于设定自身目标,这会导致类似“狗追自己尾巴”的反馈循环,使网络不稳定,可能出现发散、振荡、冻结等情况。为解决此问题,可使用两个深度Q网络(DQN):
- 在线模型 :每步学习并用于控制智能体行动。
- 目标模型 :仅用于定义目标,是在线模型的克隆。
以下是具体操作步骤:
1. 克隆在线模型创建目标模型:
target = keras.models.clone_model(model)
target.set_weights(model.get_weights())
- 在
training_step()函数中,计算下一个状态的Q值时使用目标模型:
next_Q_values = target.predict(next_states)
- 在训练循环中,定期(如每50个回合)将在线模型的权重复制到目标模型:
超级会员免费看
订阅专栏 解锁全文

7

被折叠的 条评论
为什么被折叠?



