强化学习到底是什么?一个学习算法?一个优化算法?或者是一类问题的总称?虽然我也一直从事强化学习领域的科研工作,但是这个问题确实今天才得到清晰的回答。
强化学习即表示一类问题,也是一类解决这种问题的方法,同时还是一个研究此问题及其解决方法领域。
首先,是哪一类问题呢?其实就是针对“不完全可知的马尔科夫决策过程”的最优控制问题。马尔科夫决策过程是其形式化描述。“不完全可知”就是这个马尔科夫决策过程模型,我们是不知道的,或者叫model-free的。
第二,适用于解决这类问题(“不完全可知的马尔科夫决策过程”的最优控制问题)的方法就是强化学习方法,那么解决这类问题还有没有其他方法呢?回答是肯定的,其实早在20世纪50年代末,就有大量的方法来解决这类问题,比如动态规划方法(通过求解贝尔曼方程)啊,其离散随机版本就是马尔科夫决策过程(MDP),还有一些MDP的策略迭代法也是当时提出的。这些概念不懂没有关系,后面还会提到这些方法,这些方法也是强化学习发展的基础。最后验证了这句话“自动控制是计算机之父”~~
回头我们看一下强化学习是如何解决这类问题的,无需MDP模型,直接利用与环境的交互经验来进行学习。从这个角度看,强化学习又属于现代机器学习领域中的一员,那么有一个问题出现了:强化学习是否与监督学习、无监督学习相同呢?
回答这个问题之前,先来了解什么是监督学习、无监督学习。监督学习从外部监督者提供的带标注的训练集中进行学习,使系统具备推断或者泛化能力,而强化学习主要关注从交互中学习,从自身经验中学习;而无监督学习旨在寻找未标注数据中隐含的结构,