DQN(Deep Q-learning)入门教程(零)之教程介绍

简介

DQN入门系列地址://www.cnblogs.com/xiaohuiduan/category/1770037.html

本来呢,在上一个系列数据挖掘入门系列博客中,我是准备写数据挖掘的教程,然后不知怎么滴,博客越写越偏,写到了神经网络,深度学习去了。在我写完数据挖掘博客之后,我又不知道在哪里(YouTube or B站杀我)看到了有人使用CNN网络玩飞翔的小鸟(Flappy Bird)的游戏,当时我觉得,emm,竟然使用CNN就可以玩游戏,有意思,可以一试,然后发现,要用到DQN,再然后,又发现其是强化学习的知识,然后,就入坑了。

别人的学习流程是强化学习——>Q-learning——>DQN——>🐦Fly,我学习流程TM是 🐦Fly——>CNN——>DQN——>Q-learning——>强化学习

当然,本教程还是会按照”强化学习——>Q-learning——>DQN——>🐦Fly”的流程来,不然反着来谁受得了。

至于为什么教程名叫做DQN入门教程而不是强化学习入门博客,是因为该系列侧重点不是强化学习,而是DQN。因此,一切的目标都是朝着DQN向前。

教程目标

该系列博客仍然定位为入门博客,因此不会涉及详细对强化学习的各个方面都进行介绍,但是不会影响从入门到入土的连贯性。至于为什么定位为入门博客:1. 博主自己也是刚学,并且也不是系统性的学习(因为要准备考研,没有时间),所以自己的知识面也不够。 2. 实际上只要我们能够入门,知道什么是强化学习,什么是DQN,能够自己写一个DQN的模型,然后得到结果就🆗了。至于更深入的内容,都入门了,还不能够自己修炼吗?同样,这也是我的学习方法:先知道能够做什么,然后做出来(并不是简单的copy代码,还是需要知道为什么这样做),然后再深入的来了解怎么做,怎么做的更好。

该教程涉及的内容如下:

  • 强化学习简介
  • 马尔科夫决策过程
  • Q-learing算法
  • DQN
  • Nature DQN

最终会完成2个有意思的小项目:

  1. MountainCar-v0

    通过DQN训练之后,小车能够自动移动到旗帜的地方。

  2. Flappy Bird

    通过DQN训练之后,小鸟能够自动玩游戏。

如果有任何问题,欢迎mail我。