强化学习调参经验

1.强化学习什么都学不到?

遇到这个问题,首先要确定是否是真的什么都学不到,还是训练不够,看似少量训练什么都学不到。因此进行强化学习过程中,我们最好是使用多环境,多线程同时训练。因为强化学习仿真环境多为cpu运行,因此我们的仿真环境可以是多核环境。

运行的环境数量为 cpu数量。多环境运行,效率拉满,以我本机为例。开了24个进程同时进行数据采集。这么一个方式大大提高了运行效率。

很多小白运行强化学习过程中,可能看到学了几天发现算法不收敛,以为是不work,但可能是因为训练不够,算力不够导致。所以建议强化学习尽量把性能拉满试验。

2.强化学习batch_size和n_steps的关系?

n_steps表示采集的经验数量,如果环境是24,同时采集,那么储存的经验相当于单环境的24倍,就如同鸣人的影分身一样,经验谁着分身数增多,而增大采集。经验池大小:512*24,是batch_size:2048的6倍作用,batch_size增大有利于学习稳定性。

以PPO算法为例:

PPO_PARAMS = {

"n_steps": 512,

"ent_coef": 0.05,

"learning_rate": 0.00025,

"n_epochs":8,#8, # 每个更新周期遍历 10 次

"batch_size": 2048,

"gamma" : 0.95,

"gae_lambda" : 0.95,#0.7,#0.9,

"clip_range" : 0.2

}

3.在面对序列数据的时候,到底是mlp更容易过拟合还是lstm更容易过拟合?

在提取序列数据方面,mlp方面更容易过拟合,因为mlp方面它比较难找出序列先后之间的关系,那么mlp在找不到相关关系,但又想要提高强化学习奖励,往往采用的措施就是把他们通通都记住。所以mlp在处理序列方面比lstm容易过拟合。这也是导致强化学习为什么泛化能力差的主要原因。

4.强化学习泛化能力差?

训练集表现很好,验证集表现很差,这是典型的过拟合。过拟合解决方案1.正则化,2.dropout。但是这两个方法往往效果都不佳。

过拟合解决能力:正则化效果>dropout

强化学习一般不使用dropout。因为加入dropout后效果一般难以收敛,因为不稳定。即使稳定了效果也很一般。

正则化视情况而定,如果效果不好,则不要继续使用。

正则化滥用有可能导致欠拟合。我们可以通过监测价值函数的梯度去查看是否是产生了欠拟合。如果价值函数输出都是同一个值且方差为0,说明欠拟合。以下是我打印的价值网络梯度,这是比较好的梯度情况。我没有使用正则化和dropout。所以你会发现有很多分散的小山丘,说明网络有很多神经元都有相应的梯度更新。

相关推荐
njsgcs6 分钟前
我的知识是以图片保存的,我的任务状态可能也与图片有关,我把100张知识图片丢给vlm实时分析吗
人工智能
星爷AG I21 分钟前
20-4 长时工作记忆(AGI基础理论)
人工智能·agi
#卢松松#36 分钟前
用秒悟(meoo)制作了一个GEO查询小工具。
人工智能·创业创新
zandy101140 分钟前
Agentic BI 架构实战:当AI Agent接管数据建模、指标计算与可视化全链路
人工智能·架构
数字供应链安全产品选型42 分钟前
关键领域清单+SBOM:834号令下软件供应链的“精准治理“逻辑与技术落地路径
人工智能·安全
Flying pigs~~1 小时前
RAG智慧问答项目
数据库·人工智能·缓存·微调·知识库·rag
zuozewei1 小时前
从线下到等保二级生产平台:一次公有云新型电力系统 AI 部署复盘
人工智能
sanshanjianke1 小时前
AI辅助网文创作理论研究初步总结(一):AI辅助网文创作系统
人工智能·ai写作
碳基硅坊1 小时前
OpenClaw 落地应用实践:把 AI 从“能聊“变成“能干活“
人工智能·openclaw
β添砖java1 小时前
深度学习(13)PyTorch神经网络基础
人工智能·深度学习