强化学习(英语:Reinforcement learning,简称RL)是机器学习中的一个领域,强调如何基于环境而行动,以取得最大化的预期利益。其灵感来源于心理学中的行为主义理论,即有机体如何在环境给予的奖励或惩罚的刺激下,逐步形成对刺激的预期,产生能获得最大利益的习惯性行为。
这个方法具有普适性,因此在其他许多领域都有研究,例如博弈论、控制论、运筹学、信息论、仿真优化、多主体系统学习、群体智能、统计学以及遗传算法。在运筹学和控制理论研究的语境下,强化学习被称作“近似动态规划”(approximate dynamic programming,ADP)。在最优控制理论中也有研究这个问题,虽然大部分的研究是关于最优解的存在和特性,并非是学习或者近似方面。在经济学和博弈论中,强化学习被用来解释在有限理性的条件下如何出现平衡。强化学习更加专注于在线规划,需要在探索(在未知的领域)和遵从(现有知识)之间找到平衡。[1]
2018年许多大的公司都提出了自己的强化学习框架,下面就列出几个重要公司的强化学习开源框架:
Dopamine framework强化学习框架来自google,GitHub上的点赞数接近8K[2],该研究框架用于快速原型化强化学习算法,是一个基于 Tensorflow 的框架。它旨在满足用户对一个小型的、容易修改的代码库的需求,用户可以在这个代码库中自由地实验各种想法。
该框架的设计原则是:
1.实验简单,让新用户可以轻松地运行基础实验;
2.开发灵活,让新用户更容易尝试研究想法;
3.紧凑可靠,实现一些经过实战检验的算法;
4.可重复性,保证结果的可重复性。
强化学习模块TRFL:该模块里面有用于在 TensorFlow 中编写强化学习代理的库,github上的点赞数有2500[3]。它代表了一系列关键算法组件,其内部使用了大量最成功的代理,如 DQN、 DDPG 和 Importance Weighted Actor Learner Architecture等。
TRFL库包括实现经典 RL 算法以及更多前沿技术的函数。 这里提供的损失函数和其他操作都是在纯 TensorFlow 中实现的。 它们不是完整的算法,而是构建全功能 RL 代理所需的特定于 RL 的数学计算的实现。
Horizon平台:来自Facebook 的开源应用强化学习平台,GitHub上的点赞数将近2K[4]。 Horizon 是一个端到端平台,旨在解决工业应用 RL 问题,其中数据集很大(数百万到数十亿个观测值) ,与模拟器相比,其反馈回路很慢,实验必须谨慎进行,因为它们不在模拟器中运行。 其他 RL 平台通常是为快速原型和实验而设计的,但Horizon 是以生产用例为首要考虑的。 该平台包含训练流程,包括数据预处理、特征转换、分布式训练、反事实策略评估和优化服务。 该平台还展示了一些真实的例子,在 Facebook 上,使用 Horizon 训练的模型的表现明显优于监督式学习系统。
TextWorld:来自微软的强化学习环境,GitHub上的点赞数差不多有700[5]多。该环境包含一个基于文本的游戏生成器和可扩展的沙盒学习环境,用于训练和测试强化学习代理。 TextWorld 将强化学习和自然语言结合起来,在 TextWorld 中,代理必须同时读取和生成自然语言,自然语言具有完全不同的、在许多情况下更为复杂的结构。
参考
^https://en.wikipedia.org/wiki/Reinforcement_learning
^https://github.com/google/dopamine
^https://github.com/deepmind/trfl/blob/master/docs/index.md
^https://github.com/facebookresearch/Horizon
^https://github.com/microsoft/TextWorld
文章来源:https://zhuanlan.zhihu.com/p/66834116