网易首页 > 网易号 > 正文 申请入驻

来自本科生的暴击:清华开源「天授」强化学习平台,纯PyTorch实现

0
分享至

机器之心报道

项目作者:thu-ml

参与:思、肖清

训练模型的极速,与 1500 行源代码的精简,清华大学新开源强化学习平台「天授」。值得注意的是,该项目的两位主要作者目前都是清华大学的本科生。

是否你也有这样的感觉,成熟 ML 工具的源码很难懂,各种继承与处理关系需要花很多时间一点点理清。在清华大学开源的「天授」项目中,它以极简的代码实现了很多极速的强化学习算法。重点是,天授框架的源码很容易懂,不会有太复杂的逻辑关系

项目地址:
https://github.com/thu-ml/tianshou

天授(Tianshou)是纯 基于 PyTorch 代码的强化学习框架,与目前现有基于 TensorFlow 的强化学习库不同,天授的类继承并不复杂,API 也不是很繁琐。最重要的是,天授的训练速度非常快,我们试用 Pythonic 的 API 就能快速构建与训练 RL 智能体。

目前天授支持的 RL 算法有如下几种:

  • Policy Gradient (PG)
  • Deep Q-Network (DQN)
  • Double DQN (DDQN) with n-step returns
  • Advantage Actor-Critic (A2C)
  • Deep Deterministic Policy Gradient (DDPG)
  • Proximal Policy Optimization (PPO)
  • Twin Delayed DDPG (TD3)
  • Soft Actor-Critic (SAC)

另外,对于以上代码天授还支持并行收集样本,并且所有算法均统一改写为基于 replay-buffer 的形式。

速度与轻量:「天授」的灵魂

天授旨在提供一个高速、轻量化的 RL 开源平台。下图为天授与各大知名 RL 开源平台在 CartPole 与 Pendulum 环境下的速度对比。所有代码均在配置为 i7-8750H + GTX1060 的同一台笔记本电脑上进行测试。值得注意的是,天授实现的 VPG(vanilla policy gradient)算法在 CartPole-v0 任务中,训练用时仅为 3 秒。

以上测试使用了 10 个不同的 seed。CartPole 和 Pendulum 任务中的累积奖赏阈值分别设置为 195.0 与-250.0。可能会有读者感觉这两个任务比较简单,不太能突出框架的优势。该项目也表示,在这几天内,他们会更新天授在 Atari Pong / Mujoco 任务上的性能。

天授,只需 1500 行代码

非常令人惊讶的是,天授平台整体代码量不到 1500 行,其实现的 RL 算法大多数都少于百行代码。单从数量上来说,这样的代码量已经非常精简了,各种类与函数之间的关系应该也容易把握住。

项目表示,天授虽然代码量少,但可读性并不会有损失。我们可以快速浏览整个框架,并理解运行的流程与策略到底是什么样的。该项目提供了很多灵活的 API,例如可以便捷地使用如下代码令策略与环境交互 n 步:

result = collector.collect(n_step=n)

或者,如果你想通过采样的批量数据训练给定的策略,可以这样写:

result = policy.learn(collector.sample(batch_size))

正是通过大量精简的 API 构造 RL 模型,天授才能保持在 1500 行代码内。例如我们可以看看 DQN 的模型代码,它是非常流行的一种强化学习模型,在天授内部,DQN 模型真的只用了 99 行代码就完成了。当然,这 99 行代码是不包含其它公用代码块的。

如下为 DQN 的主要代码结构,我们省略了部分具体代码,各个 RL 策略都会继承基本类的结构,然后重写就够了。可以发现,在常规地定义好模型后,传入这个类就能创建策略。DQN 策略的各种操作都会写在一起,后续配置 Collector 后就能直接训练。

项目作者把所有策略算法都模块化为 4 部分:

  • __init__:初始化策略
  • process_fn:从 replay buffer 中处理数据
  • __call__:给定环境观察结果计算对应行动
  • learn:给定批量数据学习策略

实际体

天授很容易安装,直接运行「pip install tianshou」就可以。下面我们将该项目克隆到本地,实际测试一下。

!git clone https://github.com/thu-ml/tianshou
!pip3 install tianshou
import os
os.chdir('tianshou')

该项目在 test 文件夹下提供了诸多算法的测试示例,下面我们在 CartPole 任务下逐个测试一番。

!python test/discrete/test_pg.py

!python test/discrete/test_ppo.py

!python test/discrete/test_a2c.py

!python test/discrete/test_dqn.py

以上分别为 VPG、PPO、A2C 与 DQN 在 P100 GPU 上的训练结果。可以看到,我们的测试结果与项目提供的结果出入不大。

由于 CartPole 任务在强化学习中相对简单,相当于图像识别中的 MNIST。为更进一步测试该 RL 框架的性能,我们也在 MinitaurBulletEnv-v0 任务中对其进行了测试。

Minitaur 是 PyBullet 环境中一个四足机器人运动控制任务,其观测值为该机器人的位置、姿态等 28 个状态信息,控制输入为电机的转矩(每条腿 2 个电机,总共 8 个电机),策略优化的目标为最大化机器人移动速度的同时最小化能量消耗。也就是说,agent 需要根据奖赏值自主地学习到由 28 个状态信息到 8 个控制输入的映射关系。

使用 SAC 算法在 Minitaur 任务中的训练结果如下图所示:

需要注意的是,天授的 SAC 实现在 Minitaur 任务中仅训练了不到 200k 步即能获得以上控制策略,效果可以说是很不错的。

项目作者,清华本科生

在 GitHub 中,其展示了该项目的主要作者是 Jiayi Weng 与 Minghao Zhang,他们都是清华的本科生。其中 Jiayi Weng 今年 6 月份本科毕业,在此之前作为本科研究者与清华大学苏航、朱军等老师开展强化学习领域的相关研究。Minghao Zhang 目前是清华大学软件学院的本科二年级学生,同时还修了数学专业。

作为本科生,该项目的两位作者已经有了非常丰富的研究经验,Jiayi Weng 去年夏季就作为访问学生到访 MILA 实验室,并与 Yoshua Bengio 开展了关于意识先验相关的研究。在 Jiayi Weng 的主页中,我们可以看到在本科期间已经发了 IJCAI 的 Oral 论文。

Minghao Zhang 也有丰富的研究经验,之前他在软件学院 iMoon Lab 做关于 3D 视觉相关的研究,而后目前在清华交叉信息学院做研究助理,从事强化学习方面的研究。尽管离毕业还有不短的时间,Minghao Zhang 已经做出了自己的研究成果。

所以综合来看,因为在本科已经有了丰富的科研经验,并且做过多个项目,那么在这个阶段能做一个非常不错的强化学习开源项目也就理所当然了。

接下来的工作

天授目前还处于初期开发阶段,尚有一些未实现的功能或有待完善的地方。项目作者表示今后主要在以下几个方面来完善该 RL 框架:

  • Prioritized replay buffer
  • RNN support
  • Imitation Learning
  • Multi-agent
  • Distributed training

它们分别是提供更多 RL 环境的 benchmark、优先经验回放、循环神经网络支持、模仿学习、多智能体学习以及分布式训练。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
7年败光2个亿,邹市明冉莹颖共同发文,终究还是踏出了这一步

7年败光2个亿,邹市明冉莹颖共同发文,终究还是踏出了这一步

林轻吟
2026-02-11 11:29:40
直击五粮液股东会!公司回应分红、回购注销!超500位股东到场,可优惠购酒!

直击五粮液股东会!公司回应分红、回购注销!超500位股东到场,可优惠购酒!

证券时报
2026-06-26 13:14:11
6分钟飞临台岛,解放军亮出实战王牌,国防部“安抚”美军:别怕

6分钟飞临台岛,解放军亮出实战王牌,国防部“安抚”美军:别怕

音乐时光的娱乐
2026-06-26 10:34:22
宏远速递!名记曝杜锋续约不顺利,朱芳雨深夜发声,徐杰有新消息

宏远速递!名记曝杜锋续约不顺利,朱芳雨深夜发声,徐杰有新消息

多特体育说
2026-06-25 21:56:36
乾隆灭掉准噶尔,屠尽男丁灭族,对当时的世界造成了极大的震撼?

乾隆灭掉准噶尔,屠尽男丁灭族,对当时的世界造成了极大的震撼?

小豫讲故事
2026-06-24 06:00:15
吕迪格谈穆帅执教皇马:先专注世界杯,再考虑我的“父亲”

吕迪格谈穆帅执教皇马:先专注世界杯,再考虑我的“父亲”

懂球帝
2026-06-26 08:50:28
王欣瑜巴特洪堡站争冠,女单战大坂直美,女双搭档谢淑薇

王欣瑜巴特洪堡站争冠,女单战大坂直美,女双搭档谢淑薇

格斗联盟有话说
2026-06-26 07:48:47
上海403分本科线“引全网怒喷”——凭啥沪爷高考,拿的是站票?

上海403分本科线“引全网怒喷”——凭啥沪爷高考,拿的是站票?

妍妍教育日记
2026-06-26 08:45:06
宁波直飞,不经停!全程约5小时

宁波直飞,不经停!全程约5小时

新浪财经
2026-06-26 07:54:45
墙倒众人扶,没想到,曾被人民日报点名表扬的李维刚,如今更牛了

墙倒众人扶,没想到,曾被人民日报点名表扬的李维刚,如今更牛了

趣文说娱
2026-06-17 21:27:16
巴拉圭也晋级?韩国队排名再往后撤,一夜哭三回,日本也 不帮忙

巴拉圭也晋级?韩国队排名再往后撤,一夜哭三回,日本也 不帮忙

蜜桔娱乐
2026-06-26 12:04:47
志在夺冠!日本碰巴西胜算几何?去年赢过,森保一表态,前田自信

志在夺冠!日本碰巴西胜算几何?去年赢过,森保一表态,前田自信

萌兰聊个球
2026-06-26 10:07:22
《给阿嬷的情书》让新加坡政府松了口!追加8场秒空,再申50场

《给阿嬷的情书》让新加坡政府松了口!追加8场秒空,再申50场

新加坡眼
2026-06-24 21:36:05
长期吃这种水果,可以延寿45%?Nature:是真的,而且它还能抗癌

长期吃这种水果,可以延寿45%?Nature:是真的,而且它还能抗癌

凤凰卫视
2026-06-25 18:14:11
《四渡》北京首映,于冬:希望能把这段历史用影像的方式传承下去

《四渡》北京首映,于冬:希望能把这段历史用影像的方式传承下去

新京报
2026-06-25 13:59:33
内鬼浮出水面!柬埔寨电诈园区幕后黑手,竟是我们信任的商会会长

内鬼浮出水面!柬埔寨电诈园区幕后黑手,竟是我们信任的商会会长

梦史
2026-06-22 23:45:10
大难临头各自飞!见福建舰现身南海:美国也不叫了,台独也不跳了

大难临头各自飞!见福建舰现身南海:美国也不叫了,台独也不跳了

骚年先锋
2026-06-26 02:24:00
Shams:湖人和詹姆斯没有沟通,湖人想观望薪资空间能做什么

Shams:湖人和詹姆斯没有沟通,湖人想观望薪资空间能做什么

懂球帝
2026-06-26 11:30:26
美国30亿求购?一根焊丝掀翻垄断,中国这项黑科技有多狠

美国30亿求购?一根焊丝掀翻垄断,中国这项黑科技有多狠

霁寒飘雪
2026-06-26 14:17:49
直接离场!克洛普拒评施魏因施泰格种族争议,不愿卷入舆论漩涡

直接离场!克洛普拒评施魏因施泰格种族争议,不愿卷入舆论漩涡

夜白侃球
2026-06-25 09:04:21
2026-06-26 15:08:49
趣味搞笑大魔王
趣味搞笑大魔王
多元化的趣味引领你的生活!
1366文章数 3539关注度
往期回顾 全部

教育要闻

AI时代该报什么专业?拆解未来人才的“护城河”

头条要闻

美英法德"罕见"发声明给"台独"撑腰 环球:门儿都没有

头条要闻

美英法德"罕见"发声明给"台独"撑腰 环球:门儿都没有

体育要闻

奥尔莫:是时候为西班牙争夺第二颗星了

娱乐要闻

刘嘉玲想放弃梁朝伟,没有自理能力

财经要闻

悬在科技头上的达摩克利斯之剑

科技要闻

美国政府要求OpenAI分批发布GPT-5.6

汽车要闻

老板们的新座驾!65万元起,尊界V800/V680开启预订

态度原创

游戏
时尚
亲子
艺术
公开课

国产武侠《猿公剑》开发者访谈 没有回避的战斗系统

《铁拳教育》为老师写的红果短剧

亲子要闻

“我不跟你玩了,我直接回家”笑死我了,太可爱啦

艺术要闻

470米!重庆“第一高楼”梦断?上架拍卖!

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版