【ICLR2020】看未知观测:一种简单的蒙特卡洛并行化方法

简介: 【ICLR2020】看未知观测:一种简单的蒙特卡洛并行化方法
  • 论文题目:Watch The Unobserved:A Simple Approach To Parallelizing Monte Carlo Tree Search

所解决的问题

  提出一种并行化的MCTS算法,该算法实现了线性加速,并随着Workers的增加,性能只有些许损失。

背景

  MCTS的缺点就是无法并行,但是并行之后没有性能损失是比较困难的,主要的原因就是MCTS的探索-利用的平衡会依赖于之前的采样信息。作者提出一种新奇的并行化MCTS算法,WU-UCT(Watch the Unovserved in UCT),在有限的性能损失下实现了线性加速。

MCTS

  MCTS不断重复以下四个步骤:

  1. Selection

image.png

  1. Expansion

  一旦选择过程到达搜索树的一个叶子节点(或满足其他终止条件),我们将根据事先的策略,通过增加一个新的子节点来扩展该节点。


  1. Simulation

  基于策略π ,进行simulation,评估累计奖励(cumulative reward) image.png

  1. Backpropagation


image.png

 虽然最新树展开过程中的数据的要求不是强制执行的,但在实践中,为了实现有效的勘探-开采权衡,它是必须的。


  从一个节点下来,并行展开rollout计算。当采用并行化的方法,确保每个worker都能使用最新的统计数据(V s N s )将大大影响性能。由于expansionsimulation这两步比其它两步所耗费的时间要多,因此想要worker同步更新是比较困难的。并且并行化由于statistic信息整体一样,并行化展开会选择到相同节点。


经典的MCTS并行方法


  LeafP缺乏探索性,而TreeP这种方法可能会导致exploitation失败,因为其即使知道了某个节点是最优的,也会减少这个节点的模拟次数。RootP通过worker独立的tree search来减少上述两个问题,但是这减少了每个workerrollout数量,并且会减少UCT的准确性。


所采用的方法?


  作者采取的办法是,如果有某个节点被选中,那么在不久的将来一定会得到它的Simulation Return,因此可以看作其已经被选择过了。设计 O s 去计算已经被初始化rollouts但是并没有做完(simulation完)的数量。


image.png

20200417230253945.png


WU-UCT的核心思想是通过a set of statistics来平衡探索利用,同时还没有得到simulation返回值的访问节点来做 (named as unobserved samples)。


取得的效果?


  在Atari games游戏上的性能。

所出版信息?作者信息?


  ICLR2020上的一篇文章,来自Tencent AI Lab,第一作者刘安吉,本科毕业于北京航空航天大学自动化系。于201812月-20196月在快手实习,现兼职快手顾问。


参考资料


  • Codehttps://github.com/liuanji/WU-UCT
  • UCT:Levente Kocsis, Csaba Szepesv´ari, and Jan Willemson. Improved monte-carlo search. Univ. Tartu,
    Estonia, Tech. Rep, 1, 2006.
  • UCB:Peter Auer, Nicolo Cesa-Bianchi, and Paul Fischer. Finite-time analysis of the multiarmed bandit
    problem
    . Machine learning, 47(2-3):235–256, 2002.


相关文章
|
1月前
|
Python
探索LightGBM:异常值处理与鲁棒建模
探索LightGBM:异常值处理与鲁棒建模【2月更文挑战第2天】
74 0
|
29天前
|
机器学习/深度学习 人工智能 运维
[ICLR2024]基于对比稀疏扰动技术的时间序列解释框架ContraLSP
《Explaining Time Series via Contrastive and Locally Sparse Perturbations》被机器学习领域顶会ICLR 2024接收。该论文提出了一种创新的基于扰动技术的时间序列解释框架ContraLSP,该框架主要包含一个学习反事实扰动的目标函数和一个平滑条件下稀疏门结构的压缩器。论文在白盒时序预测,黑盒时序分类等仿真数据,和一个真实时序数据集分类任务中进行了实验,ContraLSP在解释性能上超越了SOTA模型,显著提升了时间序列数据解释的质量。
|
1月前
|
机器学习/深度学习
【机器学习】噪声数据对贝叶斯模型有什么样的影响?
【5月更文挑战第10天】【机器学习】噪声数据对贝叶斯模型有什么样的影响?
|
1月前
|
存储 资源调度 数据可视化
R语言STAN贝叶斯线性回归模型分析气候变化影响北半球海冰范围和可视化检查模型收敛性
R语言STAN贝叶斯线性回归模型分析气候变化影响北半球海冰范围和可视化检查模型收敛性
|
1月前
线性回归前特征离散化可简化模型、增强稳定性、选有意义特征、降低过拟合、提升计算效率及捕捉非线性关系。
【5月更文挑战第2天】线性回归前特征离散化可简化模型、增强稳定性、选有意义特征、降低过拟合、提升计算效率及捕捉非线性关系。但过多离散特征可能增加复杂度,丢失信息,影响模型泛化和精度。需谨慎平衡离散化利弊。
19 0
|
1月前
|
Python
Python随机波动性SV模型:贝叶斯推断马尔可夫链蒙特卡洛MCMC分析英镑/美元汇率时间序列数据|数据分享
Python随机波动性SV模型:贝叶斯推断马尔可夫链蒙特卡洛MCMC分析英镑/美元汇率时间序列数据|数据分享
|
1月前
|
数据可视化
R语言用非凸惩罚函数回归(SCAD、MCP)分析前列腺数据
R语言用非凸惩罚函数回归(SCAD、MCP)分析前列腺数据
|
1月前
|
编译器 Python Windows
R语言RStan贝叶斯示例:重复试验模型和种群竞争模型Lotka Volterra
R语言RStan贝叶斯示例:重复试验模型和种群竞争模型Lotka Volterra
|
1月前
R语言RStan贝叶斯示例:重复试验模型和种群竞争模型Lotka Volterra2
R语言RStan贝叶斯示例:重复试验模型和种群竞争模型Lotka Volterra
|
1月前
|
编译器 Python Windows
R语言RStan贝叶斯示例:重复试验模型和种群竞争模型Lotka Volterra1
R语言RStan贝叶斯示例:重复试验模型和种群竞争模型Lotka Volterra