跳转到主要内容

TF-Agents:TensorFlow的强化学习库

项目描述

TF-Agents:一个可靠、可扩展且易于使用的TensorFlow库,用于上下文多臂老虎机和强化学习。

PyPI tf-agents PyPI - Python Version

TF-Agents使得实现、部署和测试新的多臂老虎机和强化学习算法变得更加容易。它提供了经过良好测试和模块化的组件,可以修改和扩展。它支持快速代码迭代,具有良好的测试集成和基准测试。

要开始使用,我们建议查看我们的Colab教程之一。如果您需要强化学习(或快速回顾)的简介,请从这里开始。否则,查看我们的DQN教程,以在Cartpole环境中启动和运行智能体。当前稳定版本的API文档位于tensorflow.org

TF-Agents处于积极开发中,接口可能会随时更改。欢迎提供反馈和评论。

目录

智能体
教程
多臂老虎机
示例
安装
贡献
版本
原则
贡献者
引用
免责声明

智能体

在TF-Agents中,强化学习算法的核心元素被实现为智能体。智能体涵盖两个主要职责:定义与环境交互的策略,以及如何从收集的经验中学习/训练该策略。

目前TF-Agents下有下列算法可用

教程

有关主要组件的教程,请参阅docs/tutorials/

多臂老虎机

TF-Agents库包含一个全面的多臂老虎机套件,包括老虎机环境和智能体。强化学习智能体也可以用于老虎机环境。有关教程,请参阅bandits_tutorial.ipynb,以及位于tf_agents/bandits/agents/examples/v2的现成示例。

示例

每个智能体目录下都有端到端的示例,例如。

安装

TF-Agents发布夜间和稳定版本。有关版本列表,请阅读版本部分。下面的命令涵盖了从pypi.org以及从GitHub克隆安装TF-Agents稳定版本和夜间版本。

:warning: 如果使用Reverb(重放缓冲区),它非常常见,TF-Agents将仅适用于Linux。

注意:Python 3.11需要pygame 2.1.3+。

稳定版本

运行以下命令以安装最新稳定版本。该版本的API文档位于tensorflow.org

$ pip install --user tf-agents[reverb]

# Use keras-2
$ export TF_USE_LEGACY_KERAS=1
# Use this tag get the matching examples and colabs.
$ git clone https://github.com/tensorflow/agents.git
$ cd agents
$ git checkout v0.18.0

如果您想使用标记为不兼容的Tensorflow或Reverb版本安装TF-Agents,请自行承担风险使用以下模式。

$ pip install --user tensorflow
$ pip install --user tf-keras
$ pip install --user dm-reverb
$ pip install --user tf-agents

如果您想使用Tensorflow 1.15或2.0,请安装版本0.3.0

# Newer versions of tensorflow-probability require newer versions of TensorFlow.
$ pip install tensorflow-probability==0.8.0
$ pip install tf-agents==0.3.0

夜间版本

夜间构建包含最新功能,但可能不如版本发布稳定。夜间构建以tf-agents-nightly推送。我们建议安装TensorFlow的夜间版本(tf-nightly)和TensorFlow概率的夜间版本(tfp-nightly),因为这些版本是TF-Agents夜间构建所测试的版本。

要安装夜间构建版本,请运行以下命令:

# Use keras-2
$ export TF_USE_LEGACY_KERAS=1

# `--force-reinstall helps guarantee the right versions.
$ pip install --user --force-reinstall tf-nightly
$ pip install --user --force-reinstall tf-keras-nightly
$ pip install --user --force-reinstall tfp-nightly
$ pip install --user --force-reinstall dm-reverb-nightly

# Installing with the `--upgrade` flag ensures you'll get the latest version.
$ pip install --user --upgrade tf-agents-nightly

从GitHub

克隆仓库后,可以通过运行pip install -e .[tests]来安装依赖。TensorFlow需要独立安装:pip install --user tf-nightly

贡献

我们渴望与您合作!请参阅CONTRIBUTING.md以了解如何贡献。本项目遵循TensorFlow的行为准则。参与其中,您应遵守此准则。

版本

TF Agents具有稳定版和夜间版发布。夜间版本通常没有问题,但由于上游库不断变化,可能会出现一些问题。下表列出了与每个TF Agents发布版本相对应的TensorFlow版本。感兴趣的发布版本

  • 0.19.0支持tensorflow-2.15.0。
  • 0.18.0不再支持Python 3.8。
  • 0.16.0是第一个支持Python 3.11的版本。
  • 0.15.0是与Python 3.7兼容的最后一个版本。
  • 如果使用numpy < 1.19,则使用TF-Agents 0.15.0或更早版本。
  • 0.9.0是与Python 3.6兼容的最后一个版本。
  • 0.3.0是与Python 2.x兼容的最后一个版本。
发布 分支 / 标签 TensorFlow版本 dm-reverb版本
夜间版本 master tf-nightly dm-reverb-nightly
0.19.0 v0.19.0 2.15.0 0.14.0
0.18.0 v0.18.0 2.14.0 0.13.0
0.17.0 v0.17.0 2.13.0 0.12.0
0.16.0 v0.16.0 2.12.0 0.11.0
0.15.0 v0.15.0 2.11.0 0.10.0
0.14.0 v0.14.0 2.10.0 0.9.0
0.13.0 v0.13.0 2.9.0 0.8.0
0.12.0 v0.12.0 2.8.0 0.7.0
0.11.0 v0.11.0 2.7.0 0.6.0
0.10.0 v0.10.0 2.6.0
0.9.0 v0.9.0 2.6.0
0.8.0 v0.8.0 2.5.0
0.7.1 v0.7.1 2.4.0
0.6.0 v0.6.0 2.3.0
0.5.0 v0.5.0 2.2.0
0.4.0 v0.4.0 2.1.0
0.3.0 v0.3.0 1.15.0和2.0.0。

原则

本项目遵循Google的AI原则。通过参与、使用或贡献本项目,您应遵守这些原则。

贡献者

我们想表彰以下个人对TF-Agents库的代码贡献、讨论和其他工作的贡献。

  • James Davidson
  • Ethan Holly
  • Toby Boyd
  • Summer Yue
  • Robert Ormandi
  • Kuang-Huei Lee
  • Alexa Greenberg
  • Amir Yazdanbakhsh
  • Yao Lu
  • Gaurav Jain
  • Christof Angermueller
  • Mark Daoust
  • Adam Wood

引用

如果您使用此代码,请引用它作为

@misc{TFAgents,
  title = {{TF-Agents}: A library for Reinforcement Learning in TensorFlow},
  author = {Sergio Guadarrama and Anoop Korattikara and Oscar Ramirez and
     Pablo Castro and Ethan Holly and Sam Fishman and Ke Wang and
     Ekaterina Gonina and Neal Wu and Efi Kokiopoulou and Luciano Sbaiz and
     Jamie Smith and Gábor Bartók and Jesse Berent and Chris Harris and
     Vincent Vanhoucke and Eugene Brevdo},
  howpublished = {\url{https://github.com/tensorflow/agents}},
  url = "https://github.com/tensorflow/agents",
  year = 2018,
  note = "[Online; accessed 25-June-2019]"
}

免责声明

这不是一个官方的Google产品。

项目详情


发布历史 发布通知 | RSS源

下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码分发

此版本没有提供源代码分发文件。请参阅生成分发归档教程

构建的分发

tf_agents_nightly-0.20.0.dev20231221-py3-none-any.whl (1.4 MB 查看哈希值)

上传时间 Python 3

由以下组织支持