(2024年8月)3000多颗星和更多代码实现
这本书已获得3000多颗星,对我来说这是一项巨大的成就。感谢每一位读者。希望它确实对你们有所帮助。
我还收到了热心读者提供的更多代码实现。例如,这个GitHub页面提供了我书中几乎所有例子的Python实现。一方面,我很高兴看到这一点。另一方面,我有点担心我线下课程的学生可能会用这些代码来完成作业:-)。总的来说,我很开心,因为这表明这本书和公开课确实对读者有帮助;否则,他们不会费心自己开发代码:-)
(2024年7月)英文讲座视频!
**我的英文公开课现已上线。**你可以点击上面的图片或这里的链接跳转到我们的YouTube频道。你也可以点击以下链接直接进入特定的讲座视频。
- 30分钟概览强化学习
- L1: 基本概念(第1部分-状态、动作、策略等)
- L1: 基本概念(第2部分-奖励、回报、马尔可夫决策过程)
- L2: 贝尔曼方程(第1部分-激励示例)
- L2: 贝尔曼方程(第2部分-状态值)
- L2: 贝尔曼方程(第3部分-贝尔曼方程-推导)
- L2: 贝尔曼方程(第4部分-矩阵向量形式和解法)
- L2: 贝尔曼方程(第5部分-动作值)
- L3: 贝尔曼最优方程(第1部分-激励示例)
- L3: 贝尔曼最优方程(第2部分-最优策略)
- L3: 贝尔曼最优方程(第3部分-更多关于贝尔曼最优方程)
- L3: 贝尔曼最优方程(第4部分-有趣的性质)
- L4: 价值迭代和策略迭代(第1部分-价值迭代)
- L4: 价值迭代和策略迭代(第2部分-策略迭代)
- L4: 价值迭代和策略迭代(第3部分-截断策略迭代)
- L5: 蒙特卡罗学习(第1部分-激励示例)
- L5: 蒙特卡罗学习(第2部分-MC基础-介绍)
- L5: 蒙特卡罗学习(第3部分-MC基础-示例)
- L5: 蒙特卡罗学习(第4部分-MC探索性开始)
- L5: 蒙特卡罗学习(第5部分-MC ε-贪心-介绍)
- L5: 蒙特卡罗学习(第6部分-MC ε-贪心-示例)
- L6: 随机近似和SGD(第1部分-激励示例)
- L6: 随机近似和SGD(第2部分-RM算法:介绍)
- L6: 随机近似和SGD(第3部分-RM算法:收敛性)
- L6: 随机近似和SGD(第4部分-SGD算法:介绍)
- L6: 随机近似和SGD(第5部分-SGD算法:示例)
- L6: 随机逼近和SGD(第6部分-SGD算法:性质)
- L6: 随机逼近和SGD(第7部分-SGD算法:比较)
- 更多视频正在制作中...... 将会有大约50个短视频讲座,总时长约11个小时。剩余的视频将在接下来几个月内上传。请继续关注!
欢迎查看英文视频,看看它们是否有帮助!
为什么要写一本新的强化学习书籍?
本书旨在提供一个数学性但友好的强化学习基本概念、基本问题和经典算法的介绍。本书的一些重要特点如下:
-
本书从数学角度介绍强化学习。希望读者不仅能了解算法的流程,还能理解它最初设计的原因以及为什么能有效工作。
-
数学深度被精心控制在适当水平。数学内容的呈现方式也经过精心设计,以确保书本易于阅读。读者可以根据自己的兴趣选择性地阅读灰色框中的材料。
-
书中给出了许多生动的例子,帮助读者更好地理解主题。本书中的所有例子都基于一个网格世界任务,这个任务易于理解,有助于说明概念和算法。
-
在介绍算法时,本书旨在将其核心思想与可能分散注意力的复杂细节分开。这样,读者可以更好地把握算法的核心思想。
-
本书内容组织连贯。每一章都建立在前一章的基础上,并为后续章节奠定必要的基础。
内容
本书涉及的主题如下图所示。本书包含十章,可分为两部分:第一部分是基本工具,第二部分是算法。这十章高度相关。一般来说,在学习后面的章节之前,有必要先学习前面的章节。
![一张说明各章内容关系的图表。如果图片显示不正确,你可以在本书序言中找到这张图。]
读者群
本书面向对强化学习感兴趣的高年级本科生、研究生、研究人员和从业者。
读者不需要具备任何强化学习背景,因为本书从最基本的概念开始介绍。如果读者已经有一些强化学习背景,我相信本书可以帮助他们更深入地理解某些主题或提供不同的视角。
然而,本书要求读者具备一些概率论和线性代数知识。本书附录中也包含了所需数学的一些基础知识。
讲座视频
我相信结合本书和我的讲座视频,你可以学习得更好。
-
中文讲座视频:你可以查看哔哩哔哩频道 https://space.bilibili.com/2044042934 或YouTube频道 https://www.youtube.com/channel/UCztGtS5YYiNv8x3pj9hLVgg/playlists 截至2024年5月,讲座视频在网上获得了800,000+次观看,并收到了非常好的反馈!
-
**英文讲座视频:**我一直在制作英文讲座视频。希望我们能在2024年完成。敬请关注。
关于作者
你可以在我的主页 https://www.shiyuzhao.net/ (GoogleSite) 和我的研究组网站 https://shiyuzhao.westlake.edu.cn 上找到我的信息。
我从2019年开始教授研究生水平的强化学习课程。在教学过程中,我一直在为学生准备这本书作为讲义。
我真诚地希望这本书能帮助读者顺利进入令人兴奋的强化学习领域。
引用
@book{zhao2024RLBook,
title={Mathematical Foundations of Reinforcement Learning},
author={S. Zhao},
year={2024},
publisher={Springer Nature Press}
}
第三方代码和材料
许多热心的读者在学习本书时向我发送了他们开发的源代码或笔记。我很高兴在这里分享链接,希望它们对其他读者有所帮助。我必须强调,我没有验证这些代码。如果你有任何问题,可以直接联系开发者。
代码
Python:
-
https://github.com/SupermanCaozh/The_Coding_Foundation_in_Reinforcement_Learning (由曹泽宏开发,2024年8月)
-
https://github.com/ziwenhahaha/Code-of-RL-Beginning 由RLGamer开发 (2024年3月)
-
https://github.com/jwk1rose/RL_Learning 由纪文康开发 (2024年2月)
R:
C++:
学习笔记
英文:
- https://lyk-love.cn/tags/reinforcement-learning/ 由加州大学戴维斯分校的一名研究生编写
中文:
网上还有许多其他读者制作的笔记。如果你发现好的笔记,欢迎向我推荐。
更新历史
(2024年6月) 印刷前的小更新
这是本书草稿的第四个版本。这应该是正式出版前的最后一个版本。具体来说,在校对书稿时,我发现了一些非常小的问题。加上一些热心读者报告的问题,这些都在这个版本中得到了修改。
(2024年4月) 网格世界环境的代码
我们添加了书中网格世界环境的代码。感兴趣的读者可以在这个环境中开发和测试自己的算法。我们提供了Python和MATLAB两个版本。
请注意,我们不提供书中涉及的所有算法的代码。这是因为它们是线下教学中学生的作业:学生需要使用提供的环境开发自己的算法。不过,有一些算法的第三方实现。感兴趣的读者可以查看本书主页上的链接。
我要感谢我的博士生、也是我线下教学的助教米一泽和李嘉南。他们为代码做出了巨大贡献。
欢迎你提供关于代码的任何反馈,比如发现的错误。
(2024年3月) 2000星
本书已收到2000颗星。我还收到了许多读者对本书的积极评价。很高兴它能有所帮助。
(2024年3月) 小更新
本书草稿的第三个版本现已上线。
与第二个版本相比,第三个版本在修正一些小错误方面有所改进。在此,我要感谢向我发送反馈的读者。
(2023年9月) 1000+星
本书收到了1000多颗星!感谢大家!
(2023年8月) 重大更新 - 第二版
本书草稿的第二个版本现已上线!!
与一年前上线的第一个版本相比,第二个版本在多个方面得到了改进。例如,我们重新绘制了大部分图表,重新组织了一些内容使其更清晰,纠正了一些错误,并添加了第一版中没有包含的第10章。 我于2022年8月将本书的初稿发布在网上。到目前为止,我收到了来自全球众多读者的宝贵反馈。我想向这些读者表示感谢。
(2022年11月)即将联合出版
本书将由施普林格·自然和清华大学出版社联合出版。预计将于2023年下半年付梓印刷。
我已收到一些读者对这本书的评论和建议。非常感谢,我深表谢意。我仍在收集反馈,并可能在几个月内修订草稿。您的反馈可以使这本书对其他读者更有帮助!
(2022年10月)讲义和视频
讲义幻灯片已上传至"Lecture slides"文件夹。
讲座视频(中文)已上线。请查看我们的B站频道 https://space.bilibili.com/2044042934 或YouTube频道 https://www.youtube.com/channel/UCztGtS5YYiNv8x3pj9hLVgg/playlists
(2022年8月)初稿
本书的初稿已上线。