Stable-Baselines3
美国
Stable-Baselines3(SB3) 是基于 PyTorch 实现的强化学习(RL)算法库,主打可靠、简洁、可复现,是当前 RL 研究与工程落地最常用的 “标准基线工具”。

一、核心定位

  • 前身是 TensorFlow 版 Stable-Baselines,SB3 全面迁移到 PyTorch,接口统一、代码干净、文档完善。
  • 目标:让研究者 / 工程师不用从零写算法,直接用成熟实现做实验、调参、部署。

二、核心特点

  1. 统一 API:所有算法(PPO、DQN、SAC 等)用几乎一样的 model.learn()model.predict(),上手极快。
  2. 主流算法全覆盖
    • 经典:PPO(最常用、最稳)、DQN、A2C、DDPG、TD3、SAC。
    • 进阶:QR-DQN、TQC、Recurrent PPO 等(含 contrib 扩展)。
  3. 工程友好
    • 支持 Gym/Gymnasium 环境、自定义环境、向量环境(多进程加速)。
    • 内置 TensorBoard、回调、模型保存 / 加载、超参调优工具。
    • 代码规范、测试充分、类型提示完善。
  4. 轻量可扩展:核心紧凑,可自定义策略网络、损失、训练流程。

三、一句话用法示例

from stable_baselines3 import PPO
model = PPO("MlpPolicy", "CartPole-v1", verbose=1)
model.learn(total_timesteps=100_000)  # 训练
obs, _ = env.reset()
action, _ = model.predict(obs)        # 推理

四、适用场景

  • RL 入门、算法复现、快速原型验证。
  • 游戏 AI、机器人控制、优化决策等工业 / 科研项目。
  • 作为新算法的基准对比工具。

五、代码演示

Stable-Baselines3 最精简、能直接跑的完整示例,训练一个强化学习智能体玩 CartPole。

1. 安装

pip install stable-baselines3 gymnasium[classic-control]

2. 完整可运行代码(训练 + 测试 + 保存加载)

import gymnasium as gym
from stable_baselines3 import PPO
from stable_baselines3.common.env_util import make_vec_env

# ----------------------
# 1. 创建环境
# ----------------------
env = gym.make("CartPole-v1")

# ----------------------
# 2. 创建 PPO 模型
# ----------------------
model = PPO(
    policy="MlpPolicy",       # 策略网络
    env=env,                  # 环境
    verbose=1,                # 打印训练信息
    learning_rate=3e-4,       # 学习率
    n_steps=2048,             # 每次更新用的步数
)

# ----------------------
# 3. 开始训练
# ----------------------
model.learn(total_timesteps=100_000)

# ----------------------
# 4. 保存 & 加载模型
# ----------------------
model.save("ppo_cartpole")
del model  # 删除模型模拟重新加载

model = PPO.load("ppo_cartpole")

# ----------------------
# 5. 测试智能体
# ----------------------
obs, _ = env.reset()
for _ in range(1000):
    action, _states = model.predict(obs, deterministic=True)
    obs, reward, done, truncated, info = env.step(action)
    env.render()  # 可视化
    
    if done or truncated:
        obs, _ = env.reset()

env.close()

3. SB3 最常用算法速记

from stable_baselines3 import (
    PPO,     # 最常用、最稳、适合大多数任务
    DQN,     # 离散动作
    A2C,     # 异步版 AC
    DDPG,    # 连续控制
    SAC,     # 连续控制,样本高效
    TD3,     # 连续控制,比 DDPG 稳
)

4. 你只要记住 4 行核心

model = PPO("MlpPolicy", env)  # 创建
model.learn(100_000)           # 训练
model.save("model")           # 保存
model.predict(obs)             # 预测

数据统计

数据评估

Stable-Baselines3浏览人数已经达到0,如你需要查询该站的相关权重信息,可以点击"5118数据""爱站数据""Chinaz数据"进入;以目前的网站数据参考,建议大家请以爱站数据为准,更多网站价值评估因素如:Stable-Baselines3的访问速度、搜索引擎收录以及索引量、用户体验等;当然要评估一个站的价值,最主要还是需要根据您自身的需求以及需要,一些确切的数据则需要找Stable-Baselines3的站长进行洽谈提供。如该站的IP、PV、跳出率等!

关于Stable-Baselines3特别声明

本站蜜蜂导航提供的Stable-Baselines3都来源于网络,不保证外部链接的准确性和完整性,同时,对于该外部链接的指向,不由蜜蜂导航实际控制,在2026年2月11日 下午1:45收录时,该网页上的内容,都属于合规合法,后期网页的内容如出现违规,可以直接联系网站管理员进行删除,蜜蜂导航不承担任何责任。

相关导航

暂无评论

暂无评论...