强化学习是强实践学科,必须遵循「概念→代码→调试」闭环。
前置知识
| 类型 | 内容 |
|---|---|
| 必备 | 线性代数、概率论、微积分、Python、PyTorch |
| 加分 | 最优控制、动态规划、运筹学 |
四阶段入门路径
第一阶段:核心概念(1-2周)
学习内容:MDP、贝尔曼方程、DP/MC/TD 方法、Model-based/Model-free 分类。
实操:手动计算 MDP 状态价值,用 Gymnasium 跑通 CartPole、FrozenLake。
资源:李宏毅 RL 课程、OpenAI Spinning Up、蘑菇书 EasyRL。
第二阶段:经典算法(2-4周)
算法顺序:Q-Learning → SARSA → DQN → REINFORCE → A2C。
实操:手写极简代码(DQN < 200 行),跑通环境验证收敛,做调参和消融实验。
资源:OpenAI Spinning Up 代码、Hugging Face Deep RL Course。
第三阶段:进阶算法(3-6周)
算法:DDPG、TD3、SAC(连续动作)、PPO(通用首选)。
实操:手写 PPO/SAC 核心代码,掌握 Stable Baselines3 框架,完成迷你项目。
环境:MuJoCo、Atari、MPE。
第四阶段:项目落地(长期)
工业方向:实际问题转化为 MDP,重点掌握奖励函数设计。
科研方向:复现顶会论文,针对性创新。
避坑指南
- 拒绝只看理论不写代码:手写一遍 Q-Learning 比看 10 遍书有用
- Sutton 全书只看前 4 章
- 不要跳步:先搞懂表格型 Q-Learning、DQN、A2C
- 调参遵循单变量控制
- 奖励函数设计是核心:避免极度稀疏奖励
- 入门手写极简代码,项目用成熟库
- 简单环境网络要小:2 层、64 神经元足够
- 固定随机种子保证可复现
张芷铭的个人博客
Comments