Distral: Robust multitask reinforcement learning.

article/2025/8/21 20:57:35

作者:张楚珩
链接:https://zhuanlan.zhihu.com/p/51091244
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
 

中Distral是Distill & transfer learning的缩写。

原文传送门

Teh, Yee, et al. "Distral: Robust multitask reinforcement learning." Advances in Neural Information Processing Systems. 2017.

特色

提出了一种同时在多个任务上训练的强化学习方法,主要的想法是把各个任务上学到的策略进行提纯(distill,本意是蒸馏)得到一个共有的策略,然后再使用这个共有的策略去指导各个特定任务上的策略进行更好的学习。文章称,这种多任务的强化学习方法避免了不同任务产生互斥的梯度,反而干扰学习;同时,也避免了各个任务学习进度不一致,导致某个任务的学习主导了整体的学习。个人感觉,这种各个任务间提纯的方法也说不定能用到多智能体间的相互交互上。

背景

为什么要做多任务学习?需要过多的交互(采样)是目前强化学习的一大重要问题,这阻碍了强化学习应用到模拟环境以外的其他地方。如果能通过进行多任务学习让智能体学习到一些共有的知识,这样在一个新环境下就能通过少量样本学习到好的策略了,这样就相当于从另一个角度降低了学习算法所需要的样本。

过程

  1. 大致思想

在各个环境各自学习各自策略的基础上建立一个中间的策略 [公式] ,各个策略进行学习的时候会在中间策略的正则下来学习,而各个不同的策略综合起来由提纯得到这个中间策略。

2. 目标函数

考虑多个任务 [公式] (这里的 [公式] 既表示任务,也表示任务下相应的策略)和由这些策略提纯得到的策略 [公式]

设定如下的最大化目标

即主要约束了各个策略 [公式] 不要偏离中心策略 [公式] 太远,同时再加上了entropy项以鼓励探索。

3. 优化方式

文章讨论了两种优化方式,一种是联合优化,一种是交替优化。前一种就是每次都对所有的策略 [公式] 的参数化表示做SGD;后一种就是每次固定一个训练另一个,即固定 [公式] 优化 [公式] ,再固定 [公式] 优化 [公式]。在后一种情况下,第一步可以使用和已有的soft Q-learning一样的实现,第二步可以使用和已有的一些distillation方法已有的实现,实践上这两者已经是稳定的了。

固定 [公式] 的时候,我们可以定义一个正则化的奖励

这样问题就变成了一个附加entropy项的单任务强化学习问题了,使用Soft Q-learning的框架(不熟悉的可以参考本专栏的文章【强化学习算法 10】SQL)就是学习这样的任务(红色删除线应为 [公式] ,文章打印错误)

它相当于是以 [公式] 为先验来学习的,这是一个比 [公式] 更为鼓励探索的一个先验, [公式] 的作用后面会再提到。相应的Boltzmann策略是

固定 [公式] 的时候,目标函数里面只有一项与 [公式] 相关

可以使用maximum likelihood estimator或者对目标函数做SGD得到,这就是一个distillation的过程。

4. 策略的表示

一种自然的策略表示方法是都采用Boltzmann策略的表示方法

不过文中还提出了另一种更好的方法,即各个特定的策略 [公式] 表示为与 [公式] 共有的部分和其自己特有部分的加和,这样各个特定策略学习过程中就只需要集中精力学习自己特有的部分了。

左边是文中提到的更好的一种表示方式,右边是各自表示各自的

中心策略 [公式] 使用一个神经网络 [公式] 来表示

特定的策略 [公式] 使用使用中心策略的神经网络 [公式] 和各自的神经网络 [公式] 来表示

注意到这就是一个以 [公式] 为先验的Boltzmann策略,其中advantage使用的是soft advantage

在这种表示方法下就可以自然使用策略梯度方法进行联合优化

其中正则化的奖励为

5. [公式] 的选择

下面考虑优化目标里面 [公式] 不同数值带来的不同含义

  • [公式] 的时候就等于没有中心策略,即每个任务各学各的;
  • [公式] 的时候相当于在最大化cumulated discounted return的同时,还需要最小化一个 [公式] 项;当 [公式] 的时候, [公式] 项为零,这时候相当于 [公式] 在找一个在这个任务上的greedy策略;
  • [公式] 的时候在最小化KL项的同时,还要最小化 [公式] ,这相当于附加了激励各个策略 [公式] 不要局限在中心策略附加,鼓励了相对于中心策略的探索。

实验

根据前面提到的目标的不同(选择不同的 [公式] )、优化方式的不同(是分别优化还是联合优化)以及结构的不同( [公式] 的表示是否使用中心策略),文章做了以下的7个实验组。

根据目标、优化方法、参数化策略结构不同产生的7个实验组算法

实验主要在一个简单的世界任务和3D的第一人称迷宫任务上做的。个人感觉有如下几个点

  • 多个任务联合起来学习可以使得单个任务的渐进性能都稍微好一点点,这一点说明中心策略 [公式] 确实还是代表了一些共有的知识。(不然,搞了这么一通不如单独每个任务去训练)
  • 格子世界任务选择了一个具有长长走廊的格子世界,中心策略的主要优势就体现在这个走廊上,实验结果表明,使用了中心策略之后,智能体能够快速地朝一个方向通过这个走廊,以此证明这种算法不会产生相互冲突的中心策略更新;但是个人认为其主要原因是这里的state选择并不仅仅是所处的格子,还包括了上一步的行动,正是这样状态空间的选择导致了不会产生相互冲突的中心策略。
  • 就相对于超参数的稳定性来说,KL+ent 2col算法(即使用 [公式] 和相互耦合的策略表示)具有最好的稳定性。
  • 如果学习相对独立的策略,还是不要使用相互耦合的策略表示(即1col)更好。

 

作者:王小惟
链接:https://zhuanlan.zhihu.com/p/70127847
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
 

2017-NIPS-Distral: Robust Multitask Reinforcement Learning

Distral (Distill & transfer learning)。简而言之,之前的multitask或多或少都是希望通过参数共享来加快学习(比如对于图片的特征提取层)。但是在实际中,由于任务之间的梯度方向可能会互相干扰,同时不同任务的reward尺度(observation的数值尺度)会不一样大,这就进一步限制了parameter weight的大小,同样也会出现梯度大小等不同的情况等等。既然共享参数会存在这样一系列的问题,这里采用了另外的一套框架,即在每个任务中学习特定的policy,然后在学习过程中进行knowledge的共享。即:将这些policy都蒸馏到一个中心的policy [公式] 中,同时也利用这个 [公式] 来对特定的任务下的policy做正则化来进行约束(感觉就是knowledge transfer过去)。

在训练特定任务时,policy最大化环境的累积收益,同时加上对于 [公式] 的KL散度来做约束,还有相应的entropy正则来鼓励探索。

在训练中心式的policy,就是对于其他所有特定任务的策略的KL散度的最小化。

更近一步,这边提了一下不同的训练方式,比如一起训练,间隔训练等,具体就去看paper即可。

 


http://chatgpt.dhexx.cn/article/XHce2Ufq.shtml

相关文章

论文阅读笔记--Clustered Federated Learning:Model-Agnostic Distributed Multitask Optimization Under Privacy

Introduction 传统的Parameter Server(P-S)架构的联邦学习系统尝试训练出一个模型,让它能适用于每一个client的数据分布,这暗含了一个假设,模型的最优解 θ ∗ \theta^* θ∗同时是所有client的最优解,各个…

CVPR 2021 UniT: Multimodal Multitask Learning with a Unifified Transformer

动机 transformer在包括但不限于自然语言、图像、视频和音频在内的广泛领域都显示出巨大的成功。 前人的研究表明,在大型语料库中训练的transformer在一系列的下游语言任务中学习了强大的表征。在视觉领域中,基于transformer的模型在图像分类、目标检测和全景分割方面取得了非…

Language Models are Unsupervised Multitask Learners 笔记

语言模型是无监督的多任务学习者 摘要 自然语言处理任务,如问题回答、机器翻译、阅读理解和总结,通常是通过任务特定数据集上的监督学习来完成的。我们证明,当语言模型在一个称为WebText的数百万网页的新数据集上训练时,它们可以…

GPT2.0 Language Models are Unsupervised Multitask Learners 论文解读

转载请注明出处,原文地址 本文是对《Language Models are Unsupervised Multitask Learners》的翻译,部分内容可能会存在理解错误,如有错误欢迎指正交流。 个人对论文的理解 最近GPT-2的关注度很高,其效果极其惊人,…

【论文阅读】强化学习-Transfer and Multitask RL专题8篇

文章目录 什么是Transfer and Multitask RLProgressive Neural Networks, Rusu, et al, 2016. Algorithm: Progressive Networks.Universal Value Function Approximators, Schaul et al, 2015. Algorithm: UVFA.Reinforcement Learning with Unsupervised Auxiliary Tasks, Ja…

论文阅读 decaNLP -- The Natural Language Decathlon: Multitask Leaning as Question Answering

作为一个刚刚入门NLP的学生,希望在阅读每一篇论文后都进行一定的记录,提炼文中观点,写出自己的理解,如有任何解读错误之处敬请指出,O(∩_∩)O谢谢&#xff01…

Recommending What Video to Watch Next: A Multitask Ranking System

文章目录 总结细节实验 总结 魔改mmoewide&deep 细节 mmoewide&deep 分成2个阶段:获得candidates、ranking,ranking时用point-wise ranking时,用w&d获取浅层feature,用于移除position bias ranking model&#x…

《BDD100K: A Diverse Driving Dataset for Heterogeneous Multitask Learning》论文阅读笔记

论文链接 A Diverse Driving Dataset for Heterogeneous Multitask Learning Abstract 介绍了BDD100K数据集,包含100K段视频以及10种类型的任务,针对这种多元化任务需要特殊的训练策略。 1 Introduction ImageNet、COCO等数据集在之前很长一段时间里…

multitask-graph-attention(一)

多任务图注意力框架预测药物毒性,原文:Mining Toxicity Information from Large Amounts of Toxicity Data,代码:MGA,文章从 MGA/interpretation/Ames_interpret.ipynb 开始 文章目录 1.build_dataset1.1.load_graph_…

12.UniT:Multimodal Multitask Learning with a Unified Transformer

1.动机 UniT,它通过统一transformer联合学习跨不同领域的多个任务。我们的UniT模型可以同时处理8个数据集上的7个任务,从对象检测到视觉和语言推理以及自然语言理解,同时通过紧凑的模型参数集实现每个任务的强大性能。 我们提出了一个统一的t…

Flow Prediction in Spatio-Temporal Networks Based on Multitask Deep Learning(TKDE2020)

Flow Prediction in Spatio-Temporal Networks Based on Multitask Deep Learning(TKDE2020) 摘要:预测交通流(如车辆、人群和自行车的交通),包括在一个节点的进出交通和不同节点之间的过渡,在交通运输系统的时空网络…

GPT2.0语言模型 Language Models are Unsupervised Multitask Learners

论文链接:https://d4mucfpksywv.cloudfront.net/better-language-models/language-models.pdf Tensorflow代码链接:https://github.com/openai/gpt-2 Pytorch代码链接:https://github.com/huggingface/pytorch-pretrained-BERT 参考文档&…

论文阅读《Language Models are Unsupervised Multitask Learners》

论文地址:《Language Models are Unsupervised Multitask Learners》 代码地址:https://github.com/openai/gpt-2 文章目录 论文介绍模型框架实验分析结论 论文介绍 本文将常识推理和情感分析两项任务联系起来,采取更一般的方法。证明了语言…

MulT: An End-to-End Multitask Learning Transformer 多任务共享注意力

文章 同时学习多个高级视觉任务,包括深度估计、语义分割、reshading表面法线估计、2D 关键点检测和边缘检测。 与单个任务Transformer相比,跨任务联合培训的Transformer模型能否提高每个任务的性能?在基于Transformer的框架中,可…

Paper | Multitask learning

目录 1. MTL的定义2. MTL的机制 2.1. Representation Bias2.2. Uncorrelated Tasks May Help?3. MTL的用途 3.1. Using the Future to Predict the Present3.2. Time Series Prediction3.3. Using Extra Tasks to Focus Attention3.4. Quantization Smoothing3.5. S…

GPT2(Language Models are Unsupervised Multitask Learners)论文阅读

1. 论文阅读 论文地址:Language Models are Unsupervised Multitask Learners 1.1 背景介绍 2019年OpenAI发布的模型,OpenAI在2018年的GPT1中给出了一种半监督的训练方法,在GPT2中针对如下问题做了升级: 以前机器学习训练代价大…

#Paper Reading# Language Models are Unsupervised Multitask Learners

论文题目: Language Models are Unsupervised Multitask Learners 论文地址: https://life-extension.github.io/2020/05/27/GPT技术初探/language-models.pdf 论文发表于: OpenAI 2019 论文所属单位: OpenAI 论文大体内容: 本文主要提出了GPT-2(Gener…

【论文阅读】Multitask Prompted Training Enables Zero-shot Task Generalization

前言 本文源自 ICLR 2022 原文地址:Multitask Prompted Training Enables Zero-shot Task Generalization Discussion 中提到的 FLAN 参考博文 【论文阅读】Finetuned Language Models Are Zero-Shot Learners_长命百岁️的博客-CSDN博客 Abstract 大模型在多种…

MultiTask Learning Survey

目录 一、常见Multi-Task 架构 二、MTL的一些优化方法 三、ExperimentConclusion 原文链接:MultiTask Survey 一、常见Multi-Task 架构 Hard和Soft区分:Hard共享底层参数,在高层提取中相互独立;Soft使用十字绣的形式&#xf…

Multitask Learning

参考 Multitask Learning - 云社区 - 腾讯云 1、单任务学习VS多任务学习 单任务学习:一次只学习一个任务(task),大部分的机器学习任务都属于单任务学习。多任务学习:把多个相关(related)的任务…