You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Stable Baselines3中PPO与A2C算法的默认参数查询

Stable Baselines3中PPO与A2C的默认参数及查询方法

一、核心默认参数(网络结构与学习率)

PPO算法

  • 学习率:默认值为3e-4,采用线性衰减策略,训练过程中从初始值逐步降到0。
  • 网络结构:默认使用共享主干的MLP(多层感知机)结构,策略网络(pi)和价值网络(vf)各包含两层64神经元的全连接层,对应参数配置为policy_kwargs={"net_arch": [dict(pi=[64, 64], vf=[64, 64])]}。针对离散/连续动作空间,输出层会自动适配动作类型。

A2C算法

  • 学习率:默认值为7e-4,采用固定学习率,训练全程保持该值不变。
  • 网络结构:与PPO默认配置一致,同样是共享主干的MLP,策略和价值网络各为两层64神经元的全连接层,参数配置同上述PPO的net_arch。

二、参数查询途径

  • 查看源码:直接查看Stable Baselines3源码中对应算法的实现文件(如ppo.py、a2c.py),在类的__init__方法里可以找到所有参数的默认定义。
  • 代码内打印验证:实例化算法时不传入自定义参数,通过访问实例属性查看默认值,示例代码:
    from stable_baselines3 import PPO, A2C
    
    # 查看PPO默认参数
    ppo_model = PPO("MlpPolicy", "CartPole-v1")
    print("PPO默认学习率:", ppo_model.learning_rate)
    print("PPO默认网络结构参数:", ppo_model.policy_kwargs)
    
    # 查看A2C默认参数
    a2c_model = A2C("MlpPolicy", "CartPole-v1")
    print("A2C默认学习率:", a2c_model.learning_rate)
    
  • 阅读源码文档字符串:每个算法的__init__方法都附带详细的参数注释,包含默认值和参数作用说明,可在IDE中直接查看。

内容的提问来源于stack exchange,提问作者Samuel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 12:31:08