Project Icon

autonomous-learning-library

PyTorch深度强化学习库助力智能代理开发

autonomous-learning-library是基于PyTorch的深度强化学习库,为快速构建和评估智能代理提供丰富组件。库中包含灵活的函数近似API、多种内存缓冲区和环境接口,并实现了A2C、DQN、PPO等主流算法。支持Atari、经典控制和机器人仿真等环境,集成Tensorboard等工具便于实验监控。该库特别强调模块化设计,便于研究人员快速实现和测试新想法。同时提供完整文档和示例项目,降低了强化学习研究的入门门槛。

自主学习库:用于构建强化学习智能体的PyTorch库

自主学习库(autonomous-learning-library)是一个面向PyTorch的面向对象的深度强化学习(DRL)库。该库的目标是提供必要的组件,以快速构建和评估新型强化学习智能体,同时提供现代DRL算法的高质量参考实现。完整文档可在以下网址找到:https://autonomous-learning-library.readthedocs.io

构建新智能体的工具

自主学习库的主要目标是通过提供用于构建和评估智能体的常用工具,促进新型强化学习智能体的快速开发,例如:

  • 灵活的函数Approximation API,集成了目标网络、梯度裁剪、学习率调度、模型检查点、多头网络、损失缩放、日志记录等功能。
  • 各种内存缓冲区,包括优先经验回放(PER)、广义优势估计(GAE)等。
  • 基于torchEnvironment接口,通过消除numpy中间人简化了智能体实现。
  • 用于复制标准基准的常见包装器和智能体增强功能。
  • 集成Slurm以运行大规模实验。
  • 绘图和日志记录工具,包括tensorboard集成和用于生成常见图表的实用程序。

有关自主学习库提供的功能的完整描述,请参阅文档指南。此外,我们还提供了一个示例项目,展示了构建新智能体的最佳实践。

高质量参考实现

自主学习库将强化学习智能体分为两个模块:all.agents提供了许多常见算法的灵活、高级实现,可以适应新的问题和环境;all.presets提供了这些智能体的特定实例,针对特定环境集进行了调优,包括Atari游戏、经典控制任务和MuJoCo/Pybullet机器人模拟。以下是一些基准测试结果,显示与已发表结果相当的结果:

atari40 atari40 pybullet

截至今天,all包含以下深度强化学习算法的实现:

  • 优势演员-评论家(A2C)
  • 分类DQN(C51)
  • 深度确定性策略梯度(DDPG)
  • 深度Q学习(DQN)+ 扩展
  • 近端策略优化(PPO)
  • Rainbow(Rainbow)
  • 软演员-评论家(SAC)

它还包含以下"原始"智能体的实现,这些智能体提供了有用的基准,并且表现可能比您预期的更好:

  • 原始演员-评论家
  • 原始策略梯度
  • 原始Q学习
  • 原始Sarsa

安装

首先,您需要新版本的PyTorch(>1.3)以及Tensorboard。然后,您可以通过PyPi安装核心自主学习库:

pip install autonomous-learning-library

您也可以使用以下命令安装所有额外功能(如Gym环境):

pip install autonomous-learning-library[all]

最后,您可以直接从此存储库安装,包括开发依赖项:

git clone https://github.com/cpnota/autonomous-learning-library.git
cd autonomous-learning-library
pip install -e .[dev]

运行预设

如果您只想测试一些很酷的智能体,该库包含了几个用于此目的的脚本:

all-atari Breakout a2c

您可以使用以下命令观察训练进度:

tensorboard --logdir runs

并在浏览器中打开http://localhost:6006。模型完全训练后,您可以使用以下命令观看训练好的模型玩游戏:

all-watch-atari Breakout "runs/a2c_[id]/preset.pt"

其中id是您特定运行的ID。您应该能够使用Tab补全或查看runs目录找到它。自主学习库还包含经典控制和PyBullet环境的预设和脚本。

如果您想测试自己的智能体,您需要定义自己的脚本。一些示例可以在examples文件夹中找到。有关构建自己的智能体的信息,请参阅文档

注意

该库由马萨诸塞大学阿默斯特分校的自主学习实验室(ALL)开发。它由Chris Nota(@cpnota)编写并目前维护。本存储库中表达或暗示的观点不一定反映ALL的观点。

引用自主学习库

我们建议使用以下引用:

@misc{nota2020autonomous,
  author = {Nota, Chris},
  title = {The Autonomous Learning Library},
  year = {2020},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/cpnota/autonomous-learning-library}},
}
项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号