从零起步掌握强化学习技术精髓,称霸人工智能领域!
《深入浅出强化学习:原理入门》针对初学者的需求,直接分析原理,并辅以编程实践。从解决问题的思路,层层剖析,普及了传统的强化学习基本方法和当前炙手可热的深度强化学习方法,直接将读者带入强化学习的殿堂。读完本书,读者能在熟练掌握原理的基础上,直接上手编程实践。
本书的叙述方式简洁、直接、清晰,值得精读!
本书除了系统地介绍理论,还介绍了相应的数学基础与编程实例,因此既适合零基础的人员入门学习,也适合相关人员作为研究参考。
《深入浅出强化学习:原理入门》用通俗易懂的语言深入浅出地介绍了强化学习的基本原理,覆盖了传统的强化学习基本方法和当前炙手可热的深度强化学习方法。开篇从最基本的马尔科夫决策过程入手,将强化学习问题纳入到严谨的数学框架中,接着阐述了解决此类问题最基本的方法——动态规划方法,并从中总结出解决强化学习问题的基本思路:交互迭代策略评估和策略改善。
基于这个思路,分别介绍了基于值函数的强化学习方法和基于直接策略搜索的强化学习方法。最后介绍了逆向强化学习方法和近年具有代表性、比较前沿的强化学习方法。
除了系统地介绍基本理论,书中还介绍了相应的数学基础和编程实例。因此,《深入浅出强化学习:原理入门》既适合零基础的人员入门学习、也适合相关科研人员作为研究参考。
1 绪论 1
1.1 这是一本什么书 1
1.2 强化学习可以解决什么问题 2
1.3 强化学习如何解决问题 4
1.4 强化学习算法分类及发展趋势 5
1.5 强化学习仿真环境构建 7
1.5.1 gym安装及简单的demo示例 8
1.5.2 深入剖析gym环境构建 10
1.6 本书主要内容及安排 12
第一篇 强化学习基础 17
2 马尔科夫决策过程 18
2.1 马尔科夫决策过程理论讲解 18
2.2 MDP中的概率学基础讲解 26
2.3 基于gym的MDP实例讲解 29
2.4 习题 34
3 基于模型的动态规划方法 36
3.1 基于模型的动态规划方法理论 36
3.2 动态规划中的数学基础讲解 47
3.2.1 线性方程组的迭代解法 47
3.2.2 压缩映射证明策略评估的收敛性 49
3.3 基于gym的编程实例 52
3.4 最优控制与强化学习比较 54
3.5 习题 56
第二篇 基于值函数的强化学习方法 57
4 基于蒙特卡罗的强化学习方法 58
4.1 基于蒙特卡罗方法的理论 58
4.2 统计学基础知识 67
4.3 基于Python的编程实例 71
4.4 习题 74
5 基于时间差分的强化学习方法 75
5.1 基于时间差分强化学习算法理论讲解 75
5.2 基于Python和gym的编程实例 83
5.3 习题 87
6 基于值函数逼近的强化学习方法 88
6.1 基于值函数逼近的理论讲解 88
6.2 DQN及其变种 94
6.2.1 DQN方法 94
6.2.2 Double DQN 100
6.2.3 优先回放(Prioritized Replay) 102
6.2.4 Dueling DQN 104
6.3 函数逼近方法 105
6.3.1 基于非参数的函数逼近 105
6.3.2 基于参数的函数逼近 111
6.3.3 卷积神经网络 117
6.4 习题 123
第三篇 基于直接策略搜索的强化学习方法 125
7 基于策略梯度的强化学习方法 126
7.1 基于策略梯度的强化学习方法理论讲解 126
7.2 基于gym和TensorFlow的策略梯度算法实现 134
7.2.1 安装Tensorflow 135
7.2.2 策略梯度算法理论基础 135
7.2.3 Softmax策略及其损失函数 136
7.2.4 基于TensorFlow的策略梯度算法实现 138
7.2.5 基于策略梯度算法的小车倒立摆问题 141
7.3 习题 141
8 基于置信域策略优化的强化学习方法 142
8.1 理论基础 143
8.2 TRPO中的数学知识 153
8.2.1 信息论 153
8.2.2 优化方法 155
8.3 习题 164
9 基于确定性策略搜索的强化学习方法 165
9.1 理论基础 165
9.2 习题 170
10 基于引导策略搜索的强化学习方法 171
10.1 理论基础 171
10.2 GPS中涉及的数学基础 178
10.2.1 监督相LBFGS优化方法 178
10.2.2 ADMM算法 179
10.2.3 KL散度与变分推理 183
10.3 习题 184
第四篇 强化学习研究及前沿 185
11 逆向强化学习 186
11.1 概述 186
11.2 基于最大边际的逆向强化学习 187
11.3 基于最大熵的逆向强化学习 194
11.4 习题 201
12 组合策略梯度和值函数方法 202
13 值迭代网络 207
13.1 为什么要提出值迭代网络 207
13.2 值迭代网络 210
14 基于模型的强化学习方法:PILCO及其扩展 214
14.1 概述 214
14.2 PILCO 216
14.3 滤波PILCO和探索PILCO 226
14.3.1 滤波PILCO算法 227
14.3.2 有向探索PILCO算法 230
14.4 深度PILCO 232
后记 235
参考文献 237
推荐序一
强化学习是机器学习的一个重要分支,它试图解决决策优化的问题。所谓决策优化,是指面对特定状态(State,S),采取什么行动方案(Action,A),才能使收益最大(Reward,R)。很多问题都与决策优化有关,比如下棋、投资、课程安排、驾车,动作模仿等。
AlphaGo的核心算法,就是强化学习。AlphaGo不仅稳操胜券地战胜了当今世界所有人类高手,而且甚至不需要学习人类棋手的棋谱,完全靠自己摸索,就在短短几天内,发现并超越了一千多年来人类积累的全部围棋战略战术。
最简单的强化学习的数学模型,是马尔科夫决策过程(Markov Decision Process,MDP)。之所以说MDP是一个简单的模型,是因为它对问题做了很多限制。
1.面对的状态st,数量是有限的。
2.采取的行动方案at,数量也是有限的。
3.对应于特定状态st,当下的收益rt是明确的。
4.在某一个时刻t,采取了行动方案at,状态从当前的st转换成下一个状态st+1。下一个状态有多种可能,记为 , i = 1... n。
换句话说,面对局面st,采取行动at,下一个状态是 ,不是确定的,而是概率的,状态转换概率,记为P( | st, at )。但是状态转换只依赖于当前状态st,而与先前的状态st-1, st-2 ...无关。
解决马尔科夫决策过程问题的常用的算法,是动态规划(Dynamic Programming)。
对马尔科夫决策过程的各项限制,不断放松,研究相应的算法,是强化学习的目标。例如对状态st放松限制:
1.假如状态st的数量,虽然有限,但是数量巨大,如何降低动态规划算法的计算成本;
2.假如状态st的数量是无限的,现有动态规划算法失效,如何改进算法;
3.假如状态st的数量不仅是无限的,而且取值不是离散的,而是连续的,如何改进算法;
4.假如状态st不能被完全观察到,只能被部分观察到,剩余部分被遮挡或缺失,如何改进算法;
5.假如状态st完全不能被观察到,只能通过其他现象猜测潜在的状态,如何改进算法。
放松限制,就是提升问题难度。在很多情况下,强化学习的目标,不是寻找绝对的最优解,而是寻找相对满意的次优解。
强化学习的演进,有两个轴线:一个是不断挑战更难的问题,不断从次优解向最优解逼近;另一个是在不严重影响算法精度的前提下,不断降低算法的计算成本。
此书的叙述线索非常清晰,从最简单的解决马尔科夫决策过程的动态规划算法,一路讲解到最前沿的深度强化学习算法(Deep Q Network,DQN),单刀直入,全无枝枝蔓蔓之感。不仅解释数学原理,而且注重编程实践。同时,行文深入浅出,通俗易懂。
将本书与Richard Sutton和Andrew Barto合著的经典著作Reinforcement Learning: An Introduction, Second Edition相比,Sutton和Barto在内容上更注重全面,覆盖了强化学习各个分支的研究成果;而本书更强调实用,是值得精读的教材。
邓侃
PhD of Robotics Institute, School of Computer Science, Carnegie Mellon University,前Oracle 主任架构师、前百度网页搜索部高级总监、北京大数医达科技有限公司创始人
推荐序二
强化学习又称为增强学习或再励学习(Reinforcement learning),是AlphaGo、AlphaGo Zero等人工智能软件的核心技术。近年来,随着高性能计算、大数据和深度学习技术的突飞猛进,强化学习算法及其应用也得到更为广泛的关注和更加快速的发展。尤其是强化学习与深度学习相结合而发展起来的深度强化学习技术已经取得若干突破性进展。AlphaGo与人类顶级棋手之间的对弈,使得深度强化学习技术在学术界和工业界得到了更为广泛的关注。强化学习不仅在计算机博弈中取得巨大成功,而且在机器人控制、汽车智能驾驶、人机对话、过程优化决策与控制等领域,也被认为是实现高级人工智能最有潜力的方法。
本人在多年从事强化学习与近似动态规划理论和应用的研究过程中,力求不断提升强化学习算法的快速收敛性和泛化性能,并且将强化学习新理论和新算法应用于移动机器人和自主驾驶车辆等领域,为智能移动机器人和自主驾驶车辆在复杂、不确定条件下的自主优化决策和自学习控制提供高效的技术手段。今后,随着相关理论和技术的不断进步,强化学习技术在智能机器人和自主驾驶车辆、复杂生产过程的优化决策与控制、天空与海洋无人系统等领域的应用将很快会有新的突破。
强化学习的思想从20世纪初便被提出来了,经过将近一个世纪的发展,强化学习与心理学、运筹学、智能控制、优化理论、计算智能、认知科学等学科有着密切的联系,是一个典型的多学科交叉领域。来自不同学科的概念和思想使得初学者学习和了解强化学习存在较大的困难。郭宪博士和方勇纯教授的这本《深入浅出强化学习:原理入门》用通俗的语言系统地讲解了强化学习的基本概念以及它们之间的关联关系。从内容的广度来看,这本书涵盖了强化学习领域的基本概念和基本方法(基于值函数的方法和基于直接策略搜索的方法);从内容的深度来看,这本书既有传统的强化学习算法(基于表格的强化学习方法,如Qlearning,Sarsa算法等),也有最近发展起来的深度强化学习算法(如DQN,TRPO,DDPG等)。另外,该书还有两大特色:第一,在介绍强化学习算法的同时,相应地介绍了算法设计和分析的数学基础;第二,相关算法配有代码实例。这两个特色使得该书非常适合初学者、相关领域科研人员以及研究生学习和研讨。鉴于此,强烈推荐该书作为广大读者学习强化学习技术的入门读物,也希望该书能引导和帮助更多的学者投入到强化学习的研究和应用中,为我国新一代人工智能的发展贡献自己的力量。
徐昕
国防科技大学教授
推荐序三
继深度学习与大数据结合产生了巨大的技术红利之后,人们开始探索后深度学习时代的新技术方向。当前主流的机器学习范式大都是以预先收集或构造数据及标签,基于已存在的静态数据进行机器学习为特征的“开环学习”。近年来,采用动态的数据及标签,将数据产生与模型优化通过一定的交互方式结合在一起,将动态反馈信号引入学习过程的“闭环学习”受到越来越多的关注。强化学习就是“闭环学习”范式的典型代表。
在AlphaGo战胜人类围棋选手之后,AlphaGO Zero以其完全凭借自我学习超越人类数千年经验的能力再次刷新了人类对人工智能的认识。而这一人工智能领域的巨大成功的核心就是强化学习与深度学习的结合,这也使得强化学习这一行为主义学习范式,受到了学术界和产业界的新一轮广泛关注。
本书的出版正是在这样的背景下,可谓恰逢其时。本书深入浅出地对强化学习的理论进行了综合全面的介绍,系统完整又通俗易懂。同时,结合OpenAI的仿真环境,将强化学习算法的实际使用与理论介绍联系起来,具有很强的实用性。在强化学习方法论得到广泛关注,以及其实践需求快速增长的背景下,这是一本很好的入门教程。
俞凯
上海交通大学研究员
推荐序四
AlphaGo的诞生掀起了(深度)强化学习技术的一轮热潮,该方向已成为人工智能领域最热门的方向之一,由于其通用性而备受各个应用领域推崇,从端对端控制、机器人手臂控制,到推荐系统、自然语言对话系统等。(深度)强化学习也被OpenAI等公司认为是实现通用人工智能的重要途径。
然而目前强化学习中文资料相对零散,缺少兼具系统性和前沿性的强化学习教学及科研资料。郭博士的《深入浅出强化学习:原理入门》这本书恰好填补了这一空白。本书根据郭博士在知乎的强化学习专栏内容整理而成,条分缕析、通俗易懂,既对强化学习基础知识做了全方面“深入浅出”的讲述,又涵盖了深度强化学习领域一系列最新的前沿技术。因此它无论是对强化学习的入门者,还是强化学习领域研究人员和工程师,都是一本很好的推荐读物,相信不同的读者都会从中获益。
郝建业
天津大学副教授、天津市青年千人、天津大学“北洋青年学者”
推荐序五
受行为主义心理学研究启发,在机器学习领域中产生了一种交互式学习方法的分支,这便是强化学习,又称为增强学习。强化学习模拟的是人类的一种学习方式,在执行某个动作或决策后根据执行效果来获得奖励,通过不断与环境的交互进行学习,最终达到目标。强化学习概念早在上世纪就已经提出,在计算机领域,第一个增强学习问题是利用奖惩手段学习迷宫策略。然而,直到2016年AlphaGo对决李世石一战成名后,强化学习的概念才真正广为人知。强化学习主要应用于众多带有交互性和决策性问题,比如博弈、游戏、机器人、人机对话等,这些问题是常用的监督学习和非监督学习方法无法很好处理的。
本人一直从事移动机器人、机器视觉和机器学习领域的研究,以及人工智能课程的教学。此前,为了解决人形机器人斜坡稳定行走问题,在查阅深度学习相关资料的过程中,在网上偶然看到郭宪博士开辟的强化学习专栏,读后很有收获。现在他将专栏文章整理编著成书,重新按知识层次进行编排和补充,对于读者学习更有帮助。
本书覆盖了强化学习最基本的概念和算法。在基于值函数的强化学习方法中,介绍了蒙特卡罗法、时间差分法和值函数逼近法。在基于直接策略搜索的强化学习方法中,介绍了策略梯度法、置信域策略法、确定性策略搜索法和引导策略搜索。在强化学习的前沿部分,介绍了逆向强化学习、深度强化学习和PILCO等。除了深度学习算法本身,书中还对涉及的基础知识,如概率学基础、马尔科夫决策过程、线性方程组的数值求解方法、函数逼近方法、信息论中熵和相对熵的概念等也做了详细的说明。本书非常适合科技人员、高等学校师生和感兴趣人员作为入门强化学习的读物,也可作为相关研究和教学的参考书。
本书内容深入浅出、文字简单明了,采用了丰富的实例,让读者易读、易懂。同时配有习题和代码详解,能有效提升读者对理论知识的理解,帮助读者运用理论解决实际问题。建议读者跟随书中的示例和代码(https://github.com/gxnk/reinforcement- learning-code)来实现和验证相关强化学习算法,并可同时关注作者的知乎专栏(https://zhuanlan.zhihu.com/sharerl)以便更好地互动和探讨相关细节。
陈白帆
中南大学副教授 湖南省自兴人工智能研究院副院长
2017年5月,AlphaGo击败世界围棋冠军柯洁,标志着人工智能进入一个新的阶段。AlphaGo背后的核心算法——深度强化学习——成为继深度学习之后广泛受人关注的前沿热点。与深度学习相比,深度强化学习具有更宽泛的应用背景,可应用于机器人、游戏、自然语言处理、图像处理、视频处理等领域。深度强化学习算法被认为是最有可能实现通用人工智能计算的方法。不过,由于深度强化学习算法融合了深度学习、统计、信息学、运筹学、概率论、优化等多个学科的内容,因此强化学习的入门门槛比较高,并且,到目前为止,市面上没有一本零基础全面介绍强化学习算法的书籍。
本书是笔者在南开大学计算机与控制工程学院做博士后期间,每周在课题组内讲解强化学习知识的讲义合集。在学习强化学习基本理论的时候,我深深地感受到强化学习理论中的很多概念和公式都很难理解。经过大量资料和文献的查阅并终于理解一个全新的概念时,内心涌现的那种喜悦和兴奋,鼓动着我将这些知识分享给大家。为此,我在知乎开辟了《强化学习知识大讲堂》专栏,并基本保持了每周一次更新的速度。该专栏得到大家的关注,很多知友反映受益良多,本书的雏形正是来源于此。在成书时,考虑到书的逻辑性和完整性,又添加了很多数学基础和实例讲解。希望本书能帮助更多的人入门强化学习,开启自己的人工智能之旅。
在写作过程中,博士后合作导师方勇纯教授给了大量的建议,包括书的整体结构、每一章的讲述方式,甚至每个标题的选择。写作后,方老师细致地审阅了全文,给出了详细的批注,并多次当面指导书稿的修改。正是因为方老师的耐心指导与辛勤付出,本书才得以顺利完成。
同时,非常感谢组内的研究生丁杰、朱威和赵铭慧三位同学,通过与他们的交流,我学会了如何更明晰地讲解一个概念。本书的很多讲解方式都是在与他们的交流中产生的。
本书在写作过程中参考了很多文献资料,这些文献资料是无数科研工作者们日日夜夜奋斗的成果。本书对这些成果进行加工并形成了一套自成体系的原理入门教程。可以说没有这些科研工作者们的丰硕成果就没有今天蓬勃发展的人工智能,也就没有这本书,在此对这些科学工作者们表示由衷的敬意。
本书前六章的内容及组织思路很大部分参考了David Silver的网络课程,同时参考了强化学习鼻祖 Richard S. Sutton等人所著的Reinforcement Learning: An Introduction,在此向Silver和Sutton致敬。
本书第8章介绍了置信域强化学习算法,主要参考了John Shulman的博士论文,在此向John Shulman博士及其导师Pieter Abbeel致敬。第10章主要介绍了Sergey Levine博士的工作,在此对其表示感谢。在强化学习前沿部分,本书介绍了最近一年该领域很优秀的研究工作,如Donoghue的组合策略梯度和Qlearning方法,Tamar的值迭代网络,Deisenroth的PILCO方法和McAllister的PILCO扩展方法,在此对这些作者表示感谢。当然,本书还介绍了很多其他科研工作者的工作,在此对他们一并致谢。
本书阐述的主要是前人提出的强化学习算法的基本理论,并没有介绍笔者个人的工作,但在此仍然要感谢目前我负责的两项基金的支持:国家自然科学基金青年基金(61603200)和中国博士后基金面上项目(2016M601256)。这两个项目都和强化学习有关,本书也可看成是这两个项目的前期调研和积累。关于更多笔者个人的工作,留待以后再与大家分享。
由于个人水平有限,书稿中难免有错误,欢迎各位同行和读者批评指正。我的个人邮箱是guoxiansia@163.com,如有疑问,欢迎咨询。
最后,感谢我的家人,感谢我的爱人王凯女士,感谢她长时间对我的理解和支持,没有她的帮助,我一无所有,一事无成。这本书献给她。
郭宪
2017年11月
我最近翻阅了《深入浅出强化学习:原理入门》,这本书给我的感觉就像是打开了一扇通往全新世界的大门。我之前对强化学习的印象,基本上就是那些动辄几十页的公式推导,以及各种我听都没听过的缩写算法。所以,当我拿到这本书的时候,心里还是有点打鼓的。但是,从翻开第一页开始,我就被它独特的叙事风格和清晰的逻辑吸引住了。作者仿佛是一位经验丰富的向导,他并没有直接把我丢进密林深处,而是先带着我绕着森林边缘走一走,让我先熟悉一下周围的环境,了解这个“强化学习”到底是什么,它解决了什么问题,以及它在现实中有哪些有趣的应用。 书中在讲解核心概念时,那种“化繁为简”的能力真的令人惊叹。比如,在解释“状态空间”和“动作空间”的时候,作者并没有上来就用数学符号定义,而是用了一个非常接地气的例子,比如“一只猫如何学会找到藏在房间里的玩具”。猫咪在不同的位置(状态)可以选择不同的搜索方式(动作),而最终找到玩具(奖励)就是它的目标。通过这种生活化的类比,我一下子就抓住了这些抽象概念的本质,感觉自己不再是站在门外,而是已经迈进了门槛,能够看到里面的风景了。 让我特别欣赏的是,这本书在引入复杂的算法模型时,并没有直接给出冰冷的公式,而是采用了一种“循序渐进”的教学策略。它会先从一些最基础的思想讲起,然后逐步地引入更复杂的概念,并且在每一步都解释得非常清楚,为什么需要引入这个新的概念,它解决了之前方法的什么问题。这种“知其然,更知其所以然”的讲解方式,让我对算法的理解不仅仅停留在“是什么”,更能理解“为什么是这样”,这对于我这样基础相对薄弱的读者来说,实在是太友好了,让我感觉自己是真正地在“学会”而不是“记住”。 此外,书中穿插的一些小例子和图示,都非常巧妙地帮助我理解那些抽象的算法。例如,在讲解“贝尔曼方程”时,作者并没有只给出那个复杂的数学公式,而是用一个图来展示“未来的价值”是如何通过“当前的奖励”和“下一时刻的价值”来计算的。这种可视化的讲解方式,极大地降低了理解的难度,让我能够更直观地把握算法的核心思想。读这本书,感觉就像是在和一个非常善于沟通的朋友聊天,他总能找到最恰当的方式,让你理解那些原本可能让你头疼不已的内容。 总而言之,《深入浅出强化学习:原理入门》这本书,对于像我这样的初学者来说,绝对是一本不可多得的宝藏。它不仅在内容上做到了“深入浅出”,更在教学方法上做到了“润物细无声”。我在这本书中获得的,不仅仅是对强化学习原理的初步认识,更是一种学习新知识的信心和方法。这本书让我觉得,即使是看起来很“高大上”的技术,只要用对方法,也能变得触手可及。
评分读完《深入浅出强化学习:原理入门》,我最大的感受就是,原来那些听起来像天书一样的东西,也可以被讲得如此有趣和透彻。我一直对人工智能的“学习”机制感到好奇,但强化学习这个名字,总是让我觉得它会涉及很多我难以理解的数学和算法。然而,这本书完全颠覆了我的看法。作者用一种非常“接地气”的方式,将复杂的概念一层层剥开,让我这个门外汉也能慢慢地进入状况。 书一开始就用了几个非常贴切的例子,比如教小狗坐下,或者是在迷宫里寻宝,来引入“智能体”、“环境”、“动作”、“奖励”等核心要素。这些例子非常直观,让我一下子就明白了强化学习的基本框架,就像是在玩一个有明确规则的游戏。我不再觉得那些术语是生硬的,而是有了具象的理解,这让我学习的兴趣一下子就被点燃了。 让我特别受益的是,书中对“策略”和“价值函数”的讲解。作者并没有直接扔出公式,而是用“地图”和“指南针”的比喻来帮助我理解。策略就像是地图,告诉我在什么情况下应该往哪里走;而价值函数则像是指南针,告诉我哪个方向更有可能到达目的地。这种形象的比喻,让我能够清晰地理解它们各自的作用和联系,以及它们在整个强化学习过程中的重要性。 更让我惊喜的是,这本书在引入“Q-learning”这类经典算法时,并没有上来就给一大堆公式,而是先分析了“无模型”学习的必要性,然后一步步地推导出Q-learning的更新规则。作者还特别强调了“探索”和“利用”之间的权衡,并用一个非常有趣的“反复试错”的场景来解释。这让我觉得,算法的出现是有其必然性的,是为了解决实际问题而诞生的,而不是凭空出现的。 总的来说,《深入浅出强化学习:原理入门》这本书,对于我来说,是一次非常愉快的学习体验。它没有给我带来压迫感,反而让我感受到了一种探索的乐趣。我感觉自己不再是被动地接收信息,而是真正地在理解和消化。这本书为我打开了一扇了解人工智能核心驱动力的大门,让我对未来人工智能的发展有了更清晰的认识,也激发了我进一步深入学习的动力。
评分《深入浅出强化学习:原理入门》这本书,拿到手里的时候,我其实是有点忐忑的。毕竟“强化学习”这个词,听起来就充满了高深的数学公式和复杂的算法模型,我一个非科班出身的普通爱好者,真的能啃得动吗?翻开第一页,序言里的作者用一种非常亲切的语气,分享了他当初学习强化学习的经历,以及为什么想写这本书。这一点就让我觉得很舒服,好像不是在面对一本冷冰冰的技术教材,而是有位经验丰富的前辈,愿意手把手地带着你入门。 接着往下翻,章节的安排也让我眼前一亮。不是直接跳到那些让人头疼的贝尔曼方程,而是从最基础的“是什么”和“为什么”开始讲起。比如,第一章就用很多生动的例子,比如玩游戏、下棋,甚至是机器人走路,来解释什么是“智能体”、“环境”、“状态”、“动作”以及“奖励”。这些例子都非常贴近生活,让我一下子就理解了强化学习的核心思想:通过不断地尝试和反馈,让智能体学会如何做出最优的决策,以获得最大的累积奖励。这种“润物细无声”的引导方式,让我对后续的学习充满了信心,不再觉得强化学习是遥不可及的。 我尤其欣赏书中在解释核心概念时的那种“可视化”的功力。很多书上会直接抛出一堆公式,让人看得云里雾里。但这本书不同,它会通过画图、类比,甚至是一些简单的伪代码,来帮助读者理解。比如,在讲到“马尔可夫决策过程”(MDP)的时候,作者并没有一开始就搬出数学定义,而是用一个简单的“出门打伞”的例子,清晰地阐述了状态、动作、转移概率和奖励之间的关系。这种循序渐进、由浅入深的讲解方式,让我这个初学者也能慢慢地搭建起对强化学习的理解框架,感觉到自己真的在一步步地掌握这门技术。 这本书最让我感到惊喜的是,它不仅仅停留在理论的层面,而是非常注重实践的引导。虽然书名是“原理入门”,但它在讲解完基本原理后,并没有止步不前。书中穿插了一些用Python实现强化学习算法的简单示例,虽然不是那种大型项目的代码,但足以让读者亲手去“玩一玩”这些算法。这种理论与实践相结合的方式,极大地加深了我对知识的理解。我不再只是被动地接受信息,而是能够主动地去验证和探索,感觉自己真的在“学习”而不仅仅是“阅读”。 总的来说,《深入浅出强化学习:原理入门》这本书,对于我这样一个想要了解强化学习但又担心被高难度劝退的读者来说,简直是“救星”一般的存在。它用一种非常友好、易懂的方式,将复杂抽象的概念变得生动具体,让我能够真正地“深入浅出”地理解强化学习的精髓。阅读过程中,我感受到的更多是启发和成就感,而不是挫败感。这本书为我打开了一扇通往更广阔的强化学习世界的大门,让我对未来的学习和探索充满了期待。
评分读了《深入浅出强化学习:原理入门》之后,我感觉自己像是走进了一个充满奇妙规则的游乐场。作者在书里用一种非常有趣的方式,把本来可能让人望而生畏的“强化学习”变得像是在玩一场精心设计的游戏。一开始,我以为会是各种枯燥的数学公式铺天盖地而来,但出乎意料的是,书里更多的是用形象的比喻和生活化的场景来引出概念。比如,当讲到“奖励函数”时,作者并没有直接给出数学表达式,而是类比成“小狗做对动作就有零食吃”,一下子就抓住了核心,让人瞬间明白为什么“奖励”在整个学习过程中是如此至关重要,它就像是一个无形的指挥棒,引导着智能体的行为方向。 让我印象特别深刻的是,书中对于“探索与利用”这个经典困境的阐释。作者没有简单地说“既要探索又要利用”,而是花了很长的篇幅,用各种生动的例子,比如“第一次去新餐厅”或者“选择走哪条路回家”来解释这个矛盾。通过这些例子,我能清晰地感受到,纯粹的探索可能会浪费时间和资源,而一味地利用熟悉的选项又可能错过更好的机会。这本书教会我,如何在未知与已知之间找到一个巧妙的平衡点,这不仅在强化学习中重要,在我们的日常决策中也同样适用,这是一种非常有价值的思维启发。 还有一点让我觉得非常赞赏的是,这本书在讲解算法原理时,非常注重逻辑的连贯性。它不会突然跳到某个高深的概念,而是会一层层地剥开,告诉你这个算法是怎么一步步演变而来的,它的出现解决了之前算法的哪些局限性。比如,在讲到Q-learning时,作者会先铺垫一些基础的动态规划思想,然后再引出Q-learning的独特之处,比如不需要知道环境的转移概率。这种“追根溯源”的讲解方式,让我不仅学会了“是什么”,更理解了“为什么”,让我对算法的理解更加深刻和牢固,不会只停留在表面记忆的层面。 这本书的章节设置和内容过渡也非常流畅,读起来有一种“欲罢不能”的感觉。即便遇到一些稍微复杂的技术细节,作者也会用一些巧妙的比喻或者类比来辅助理解,让我觉得学习过程并没有那么痛苦。尤其是一些图示,虽然不是特别炫酷,但却恰到好处地展示了算法的运作流程,或者概念之间的关系,为我节省了很多自行想象的时间,也避免了因为理解偏差而走弯路。总的来说,这本书在内容组织和呈现方式上,都体现了作者在教学上的用心良苦。 最后,我必须说,这本书给了我一种“原来强化学习也可以这么好玩”的全新认识。它并没有把学习过程弄得像是一场艰苦的战斗,反而像是一场充满发现的旅程。我感觉自己不只是在学习一项技术,更是在学习一种思考问题和解决问题的新方法。这本书不仅解答了我对强化学习的诸多疑惑,更激发了我进一步深入学习的兴趣。对于任何想要踏入强化学习领域的朋友,这本书绝对是一份不容错过的入门指南。
评分《深入浅出强化学习:原理入门》这本书,我必须说,它真的做到了“深入浅出”这四个字。在我拿到这本书之前,我对强化学习的认知,基本上就是“听过但没搞懂”。总觉得这个领域充满了高深的数学和复杂的算法,不是一般人能够轻易掌握的。然而,这本书完全颠覆了我的这种固有印象。作者用一种非常友好的方式,把原本可能让人望而却步的知识,变得生动易懂,就像是在娓娓道来一个精彩的故事。 书中最让我印象深刻的是,它在讲解“智能体”和“环境”的交互过程时,并没有用那些枯燥的定义,而是用了一个非常形象的类比,比如“新手司机学习开车”。司机(智能体)在不同的路况(环境)下,会做出不同的驾驶操作(动作),而这些操作的结果,有可能是安全到达目的地(正奖励),也可能是发生事故(负奖励)。通过这样的类比,我一下子就抓住了强化学习的核心思想:通过不断的试错和反馈,让智能体学会如何做出最优的决策,以获得最大的累积奖励。 而且,书中对于“奖励函数”的设计,也进行了深入浅出的阐述。作者并没有直接给出复杂的数学表达式,而是强调了奖励函数的设计对于智能体行为的引导作用。他用了一些具体的例子,比如“让机器人学会走直线”或者“让游戏角色吃到更多的金币”,来解释如何通过精心设计的奖励来引导智能体走向我们期望的行为。这种“授人以渔”的教学方式,让我明白了不仅仅是知道“是什么”,更能知道“为什么这样做”。 让我感到惊喜的是,这本书在讲解“策略梯度”这类相对复杂的算法时,也显得游刃有条。作者并没有直接跳到数学推导,而是先从“策略”本身入手,解释了为什么需要直接优化策略,以及这样做的好处。然后,他再一步步地引入梯度下降的思想,并通过一些简单的图示来辅助理解。这种循序渐进的讲解方式,让我感觉自己虽然接触的是前沿的技术,但却丝毫没有感到吃力,反而是充满了好奇心和求知欲。 总的来说,《深入浅出强化学习:原理入门》这本书,对于想要了解强化学习但又担心门槛太高的读者来说,绝对是一本不可多得的入门佳作。它用一种非常人性化的方式,将复杂的理论知识转化为易于理解的概念,并且注重实践的引导,让我感觉自己不仅仅是在阅读一本书,更像是在和一位经验丰富的老师一起学习。这本书为我打开了强化学习这扇大门,让我对这个领域充满了兴趣和信心。
评分这个好这个好这个好这个好这个好这个好这个好这个好这个好
评分书的包装很完整,不知道内容如何!
评分书肯定是好书,内容决定是顶呱呱的。。但是这纪念版怎么纸质还没普通版好。而且书没有包装的,直接散在箱子里,不仅如此,书的胶没粘好,前半部门总是间隔的凸出一些页数,一拿到书,书的侧边就有一块黑色印记,应该是谁拿不干净的手直接翻过。书的左上角和右上角都好像黏过一些脏东西。还好是技术指导书。k8s的迭代很快,估计明年后年这书就过时了。如果这是我要收藏的小说我就直接给一星了。
评分宝贝收到了,京东自营的挺好的,不错不错好评!!!!
评分很厚,瞬间觉得可能没有精力看完。加油!
评分一本好书,讲的面很广,需要仔细研究。有时间慢慢么看。谢谢京东的活动
评分京东购物很方便 赶上活动价格也很美丽 还有京豆能拿 真心不错
评分书不错,买了慢慢看,学习学习
评分送货很快,包装无破损,蛮好的
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.cndgn.com All Rights Reserved. 新城书站 版权所有