注:图片相关文字内容 一般在图片上面。
右边有目录=====================》
1,价值函数
一张图回忆一下动作价值函数公式。
2,DQN(Deep Q-Network)
输入状态利用Q*来输出最佳动作。Q*从何而来?这里用神经网络学习近似得到一个Q*。
(感性认识:Q*如果看作给所有动作打分的话,神经网络就要学习打分如何打的越来越准)
3,TD learning(Tempor Difference)
-1,正常情况下如何训练一个神经网络:
例1: 导航模型预测NYC到atlanta需要1000分钟,实际测试是860分钟。
预测值与实际值之间的误差构成损失函数,对参数求偏导,梯度下降更新参数,完成训练。
-2, 如果不跑完全程能否更新参数呢?
假如车中途开到DC,用时300。这是重新预测到中间用户,需要600分钟,总用时900分钟。
含有真实值的900分钟比1000更可靠,并且有误差,利用误差更新参数,训练网络。
-3, 总结:TD-learning如何工作的?利用 「部分实际观测值+预测值」 来对 「纯预测值」进行修正,不需要完整的观测就可以更新参数,训练网络。
-4, 最后,「部分实际观测值+预测值」称为TD-target。与纯预测值之间的差称为TD-error。
4,TD learning如何应用到DQN当中?
-上一部分解释了TD-learning如何工作的:利用 「部分实际观测值+预测值」 来对 「纯预测值」进行修正,不需要完整的观测就可以更新参数,训练网络。
-下面将折扣回报进行改写。
-改写后的结果引入到动作价值函数Q*的公式当中。
-此时与TD-learning中公式接近。用prediction与TD target之间的误差来更新参数,实现DQN的训练。