深度强化学习实验室
官网:http://www.neurondance.com/
论坛:http://deeprl.neurondance.com/
来源:诺亚实验室
华为诺亚方舟实验室、西安交通大学和UCL联合研究提出一种结合变量序和强化学习的因果结构发现算法CORL,首先利用强化学习从变量序空间中找到合适的变量序,然后基于该变量序对应的全连接有向无环图、应用变量选择得到最终的图结构。同时通过预训练模型,可以有效地缩短CORL的训练时间。相比之前基于强化学习的方法 [1],CORL可以应用在更大规模的结构发现问题上,例如在150个变量的线性数据集上,CORL的表现仍然优于基于梯度的方法NOTEARS [2]。
该工作“Ordering-BasedCausal Discovery with Reinforcement Learning”已被IJCAI-21接收,论文地址(点击底部左下角“阅读原文”可直接进入):https://arxiv.org/abs/2105.06631。
背景
从观测数据中识别因果结构(即因果发现)对很多应用来说是一个非常有意义、但也富有挑战的任务。该问题可以建模为一个寻找最优打分函数对应的有向无环图(DAG)的问题,这里打分函数通常是基于观测数据来计算,例如一个常用并且有良好理论保证的打分函数是Bayesian Information Criterion(BIC),定义如下:
然而即使每个节点最多有两个父节点,搜索最优的DAG仍然是NP-hard的问题。诺亚实验室因果研究团队在ICLR’2020的工作(Causal Discovery with Reinforcement Learning)中首次将强化学习应用到基于打分法的因果发现算法中,在多种类型的数据集上均取得了非常好的效果。然而,该方法只限于小规模的问题上(例如少于30个变量),原因至少有以下两个方面:1)由有向图够成的搜索空间对于大规模问题来说是非常巨大的,很难被有效地探索;2)该方法通过正则项来保证估计的图的无环性,需要在训练过程中对很多non-DAG计算打分函数,而计算打分函数占据了绝大多数的训练时间。
为了提升基于强化学习的因果发现算法的扩展性,我们结合基于变量序的因果发现范式和预训练方法,通过搜索变量序的空间、结合变量选择得到因果图,有效地减少了搜索空间和训练时间。例如在150个变量的线性问题上,所提出的方法CORL优于适用线性模型的方法NOTEARS。
方法
1.1 问题建模
基于变量序和强化学习结合的思路,我们将变量序搜索问题建模为一个多步马尔可夫决策过程。
动作:我们将变量选择作为动作,即每一步选择一个变量、从而生成变量序,所有的动作构成动作空间。
状态:虽然可以将观测的数据直接作为状态,初步实验结果表明使用基于自注意力机制的编码器对数据进行预处理,可以取得更好的结果。这里编码器将第j个变量的观测数据编码为状态,所有这些状态以及初始状态构成状态空间。这里d为变量个数,初始状态用来选择第一步的动作或者第一个变量。
状态转移:与当前决策所选择的动作有关。如果在第t步选择了变量作为动作,那么状态将转移到,即
Reward:在基于变量序的方法中,当前选择变量的父变量限制为前序决策中选择的变量。因此,我们设计了回合奖赏和即时奖赏。对于前者,我们定义奖励为
在前面已经定义,其中需要替换为序列中潜在的父变量集合。对于后者,我们在每一步都计算reward,其中第t步的即时奖赏为:
1.2 模型实现
图2展示了所提出方法的架构,主要由编码模块和解码模块两部分组成。
编码器将观测数据映射到状态空间,我们尝试了多种编码器结构如MLP, LSTM以及基于自注意力机制的编码器,结果表明基于自注意力机制的编码器表现最好。
解码器将状态空间映射到动作空间,这里我们使用基于LSTM的解码器。通过掩码已经选过的变量来限制每个变量只能被选择一次,从而生成有效的变量序。
模型优化:优化的目标是学习一个最大化期望累计增益的策略,其中表示编码器和解码器的参数。关于复杂度以及该方法在某些模型假设下(例如加性噪声模型ANM)的一致性分析请参考论文。
1.3 变量选择
对于一个变量序,我们通过变量选择的方法来得到最终的图结构。对于线性数据模型,我们对变量序对应的全连接DAG应用线性回归,然后使用(预定义的)阈值来修剪权重较小的边。对于非线性模型,可以针对每个变量的父变量拟合一个广义加性模型,并通过显著性检验来判断边是否保留 [3]。
实验
我们在合成的线性和非线性因果关系的数据集上对CORL进行了实验验证,下表所示为在线性数据集上的部分实验结果。
实验结果表明,就TPR(true positive rate)和SHD(structural Hamming distance))指标而言,CORL-1(对应回合奖赏)和CORL-2(对应即时奖赏)都是表现最好的方法,而NOTEARS和DAG-GNN的表现也很接近。在图3中,我们进一步展示了CORL-1和CORL-2在100节点线性数据集上的训练奖励曲线,其中CORL-2比CORL-1更快地收敛到更好的变量序。这是因为即时奖赏比回合奖赏能为训练过程提供更多的指导信息,有利于强化学习模型的训练。因此,如果得分函数对于每个变量是可分解的,那么可以优先选择CORL-2。而ICLR’2020 [1] 的算法RL-BIC2只在30个节点的图上能够得到不错的结果。对于其他基于变量序的方法,我们发现L1OBS的TPR低于A*Lasso,说明采用贪婪爬山和tabu-list的L1OBS可能找不到一个好的序。
此外,我们也在图3中展示了预训练带来的好处。与使用随机初始化模型的CORL-2相比,使用预训练模型(对应CORL-2-pretrain)可以加快模型的训练。虽然预训练需要额外的时间,但是通常只需要训练一次,即可用于后续的因果发现任务。具体预训练的细节请参考原文。
结语
在工作中,我们结合基于变量序的因果发现范式和预训练方法,显著地减少了搜索空间和训练时间,提高了基于强化学习的因果发现算法的可扩展性。对应代码已开源在诺亚实验室自研的因果结构学习工具包gCastle(关于gCastle的介绍请参见https://mp.weixin.qq.com/s/ES76n5TsunUuun-JX8XOPg)。
参考文献
[1] Shengyu Zhu, Ignavier Ng and Zhitang Chen. Causal discovery with reinforcement learning. In International Conference on Learning Representations (ICLR), 2020.
[2] Xun Zheng, Bryon Aragam, Pradeep K Raviku-mar, and Eric P Xing. DAGs with NO TEARS: Continuous optimization for structure learning. In Advances in Neural Information Processing Systems(NeurIPS), 2018.
[3] Peter Bühlmann, Jonas Peters, Jan Ernest, et al. CAM: Causal additive models, high-dimensional order search and penalized regression. The Annals of Statistics, 42(6): 2526–2556, 2014.
[4] Marc Teyssier and Daphne Koller. Ordering-based search: A simple and effective algorithm for learning bayesian networks. In Conference on Uncertainty in Artificial Intelligence (UAI), 2005.
完
总结3: 《强化学习导论》代码/习题答案大全
总结6: 万字总结 || 强化学习之路
完
第114篇:使用新的物理模拟引擎加速强化学习
第113篇:如何降低深度强化学习研究的计算成本
第112篇:基于Novelty-Pursuit的高效探索方法
第111篇:Reward is enough奖励机制。
第110篇:163篇ICML2021强化学习领域论文汇总
第109篇:【Easy-RL】200页强化学习总结笔记
第108篇:清华大学李升波老师《强化学习与控制》
第107篇:阿里巴巴2022届强化学习实习生招聘
第106篇:奖励机制不合理:内卷,如何解决?
第105篇:FinRL: 一个量化金融自动交易RL库
第104篇:RPG: 通过奖励发现多智能体多样性策略
第103篇:解决MAPPO(Multi-Agent PPO)技巧
第102篇:82篇AAAI2021强化学习论文接收列表
第101篇:OpenAI科学家提出全新强化学习算法
第100篇:Alchemy: 元强化学习(meta-RL)基准环境
第98篇:全面总结(值函数与优势函数)的估计方法
第97篇:MuZero算法过程详细解读
第96篇: 值分布强化学习(Distributional RL)总结
第95篇:如何提高"强化学习算法模型"的泛化能力?
第94篇:多智能体强化学习《星际争霸II》研究
第93篇:MuZero在Atari基准上取得了新SOTA效果
第91篇:详解用TD3算法通关BipedalWalker环境
第88篇:分层强化学习(HRL)全面总结
第85篇:279页总结"基于模型的强化学习方法"
第84篇:阿里强化学习领域研究助理/实习生招聘
第83篇:180篇NIPS2020顶会强化学习论文
第81篇:《综述》多智能体强化学习算法理论研究
第80篇:强化学习《奖励函数设计》详细解读
第79篇: 诺亚方舟开源高性能强化学习库“刑天”
第77篇:深度强化学习工程师/研究员面试指南
第75篇:Distributional Soft Actor-Critic算法
第74篇:【中文公益公开课】RLChina2020
第73篇:Tensorflow2.0实现29种深度强化学习算法
第72篇:【万字长文】解决强化学习"稀疏奖励"
第71篇:【公开课】高级强化学习专题
第70篇:DeepMind发布"离线强化学习基准“
第66篇:分布式强化学习框架Acme,并行性加强
第65篇:DQN系列(3): 优先级经验回放(PER)
第64篇:UC Berkeley开源RAD来改进强化学习算法
第61篇:David Sliver 亲自讲解AlphaGo、Zero
第59篇:Agent57在所有经典Atari 游戏中吊打人类
第58篇:清华开源「天授」强化学习平台
第57篇:Google发布"强化学习"框架"SEED RL"
第53篇:TRPO/PPO提出者John Schulman谈科研
第52篇:《强化学习》可复现性和稳健性,如何解决?
第51篇:强化学习和最优控制的《十个关键点》
第50篇:微软全球深度强化学习开源项目开放申请
第49篇:DeepMind发布强化学习库 RLax
第48篇:AlphaStar过程详解笔记
第47篇:Exploration-Exploitation难题解决方法
第45篇:DQN系列(1): Double Q-learning
第44篇:科研界最全工具汇总
第42篇:深度强化学习入门到精通资料综述
第41篇:顶会征稿 || ICAPS2020: DeepRL
第40篇:实习生招聘 || 华为诺亚方舟实验室
第39篇:滴滴实习生|| 深度强化学习方向
第37篇:Call For Papers# IJCNN2020-DeepRL
第36篇:复现"深度强化学习"论文的经验之谈
第35篇:α-Rank算法之DeepMind及Huawei改进
第34篇:从Paper到Coding, DRL挑战34类游戏
第31篇:强化学习,路在何方?
第30篇:强化学习的三种范例
第29篇:框架ES-MAML:进化策略的元学习方法
第28篇:138页“策略优化”PPT--Pieter Abbeel
第27篇:迁移学习在强化学习中的应用及最新进展
第26篇:深入理解Hindsight Experience Replay
第25篇:10项【深度强化学习】赛事汇总
第24篇:DRL实验中到底需要多少个随机种子?
第23篇:142页"ICML会议"强化学习笔记
第22篇:通过深度强化学习实现通用量子控制
第21篇:《深度强化学习》面试题汇总
第20篇:《深度强化学习》招聘汇总(13家企业)
第19篇:解决反馈稀疏问题之HER原理与代码实现
第17篇:AI Paper | 几个实用工具推荐
第16篇:AI领域:如何做优秀研究并写高水平论文?
第15篇:DeepMind开源三大新框架!
第13篇:OpenSpiel(28种DRL环境+24种DRL算法)
第11篇:DRL在Unity自行车环境中配置与实践
第8篇:ReinforceJS库(动态展示DP、TD、DQN)
第5篇:深度强化学习在阿里巴巴的技术演进
第4篇:深度强化学习十大原则
第2篇:深度强化学习的加速方法