解读:AlphaGo之父倾力打造:The Predictron端到端训练与规划

简介: 解读:AlphaGo之父倾力打造:The Predictron端到端训练与规划
  • 论文题目:The Predictron: End-To-End Learning and Planning


所解决的问题?


  提出predictron结构,一种abstract model来表示马尔可夫奖励过程。端到端直接训练,相对来说能够省去一些没有必要的计算开销。但同时也损失了一些可解释性。


背景


  基于模型的强化学习主要的思想聚焦于两个问题:1. 学习模型。2. 基于这个所学的模型进行规划。模型可以表示为MRP或者MDP的形式,规划的话就是基于这个所学的模型去评估值函数并且给出策略。以往一般的工作都是将二者分开,各玩各的,这样的话,智能体就并不能很好地去适应全局的目标函数。

image.png


所采用的方法?


  Predictron由四部分组成:

image.png 

这第四点可能优点难以理解,作者也举了个例子(k − s t e p k-stepk−step predictron):

20210118142339730.png

image.png


如上图中的最右边的显示的那样,展开有:

image.png

网络结构


2021012113234539.png

表示函数f ff是一个两层的卷积神经网络。之后定义一个core,里面结合了MRP modelλ -network到一个可重复模块中:

image.png

代码实现

  定义编码网络和core网络:

# a two-layer convolutional network as the state representation
self.embed = nn.Sequential(
    nn.Conv2d(C, hid_dim, kernel_size=kernel_size, padding=padding),
    nn.BatchNorm2d(hid_dim, momentum=bn_momentum), nn.ReLU(),
    nn.Conv2d(hid_dim, hid_dim, kernel_size=kernel_size, padding=padding),
    nn.BatchNorm2d(hid_dim, momentum=bn_momentum), nn.ReLU()).to(self.device)
def clones(module, N):
    "Produce N identical layers."
    return nn.ModuleList([deepcopy(module) for _ in range(N)])
self.cores = clones(
            Core(input_dims=(hid_dim, H, W),
                 hid_dim=hid_dim,
                 kernel_size=kernel_size), core_depth).to(self.device)

  前向和loss计算:

# 1. 先观测编码到s。
x = self.embed(x)
self.buffer.reset()
# 2. 之后进入N个core中
for core in self.cores:
    x, val, rwd, gam, lam = core(x)
    self.buffer.store(rwd, gam, lam, val)
# 3. value计算
self.value_net_f = deepcopy(self.cores[0].value_net).to(self.device)
val = self.value_net_f(self.flatten(x))
self.buffer.finish_path(last_val=val)
# 4. 拿标签算loss:
pret, g_lam_ret = self.buffer.get()
y_tile = y.unsqueeze(1).expand_as(pret)
ploss = self.loss_fn(pret, y_tile)
lloss = self.loss_fn(g_lam_ret, y)
loss = ploss + lloss

  完整代码可以参考:

  1. Pytorch实现:https://github.com/cying9/predictron-pyt
  2. Tensorflow实现:https://github.com/zhongwen/predictron


取得的效果?


  作者与循环神经网络,还有几组子对比实现进行了比较。这个思想在【Nature论文浅析】基于模型的AlphaGo Zero也是有用到的。

所出版信息?作者信息?


  作者是大名鼎鼎的David Silver

相关文章
|
21天前
|
自然语言处理 物联网
化学领域的新篇章:大型语言模型的创新应用
【4月更文挑战第20天】LlaSMol项目成功应用大型语言模型(LLMs)于化学研究,创建SMolInstruct数据集,包含14个化学任务和300万个样本。经过微调,LlaSMol模型在多任务上超越GPT-4,展示LLMs在化学领域的潜力。然而,数据准确性和模型泛化性仍是挑战,未来需进一步研究。[论文链接](https://arxiv.org/pdf/2402.09391.pdf)
21 1
|
26天前
|
人工智能 自然语言处理 监控
GPT-4整治学术不端!人大/浙大团队实测7000篇论文,撤稿预测与人类95%一致
【4月更文挑战第15天】中国人民大学和浙江大学的研究团队利用GPT-4模型预测论文撤稿,研究基于3,505篇撤稿及未撤稿论文的推特数据,发现16%的撤稿论文提及含有预警信号,预测准确度高达92.86%。GPT-4预测一致性达95%,为学术诚信监控提供新途径。但研究受限于主观偏见、撤稿原因区分及推特互动等因素。
37 1
GPT-4整治学术不端!人大/浙大团队实测7000篇论文,撤稿预测与人类95%一致
|
9月前
|
机器学习/深度学习 人工智能 自然语言处理
大模型时代下,算法工程师该何去何从?
大模型时代的到来,将算法工程师的职业发展带入了全新的境地。在这个浩瀚的数据海洋中,算法工程师们面临着前所未有的挑战和机遇。不久前,合合信息举办了一场《》的直播活动,智能技术平台事业部副总经理、高级工程师丁凯博士分享了。这段深度探讨不仅让我对算法工程师的未来有了更清晰的认识,也启发了我对自身职业发展的思考。接下来,我将分享这次讨论的精彩内容,希望能够为同学们提供一些有益的启示与思考。
|
11月前
|
机器学习/深度学习 人工智能 并行计算
全球首创 :分子之心开源新AI算法,攻克蛋白质侧链预测与序列设计难题
全球首创 :分子之心开源新AI算法,攻克蛋白质侧链预测与序列设计难题
103 0
|
11月前
|
机器学习/深度学习 数据可视化 数据挖掘
第十二届“中国软件杯”大赛:A10-基于机器学习的分布式系统故障诊断系统——baseline(一)
第十二届“中国软件杯”大赛:A10-基于机器学习的分布式系统故障诊断系统——baseline(一)
453 0
第十二届“中国软件杯”大赛:A10-基于机器学习的分布式系统故障诊断系统——baseline(一)
|
12月前
|
机器学习/深度学习 人工智能 算法
横向对比 11 种算法,多伦多大学推出机器学习模型,加速长效注射剂新药研发
横向对比 11 种算法,多伦多大学推出机器学习模型,加速长效注射剂新药研发
108 0
|
12月前
|
机器学习/深度学习 人工智能 数据挖掘
中山大学团队通过深度学习和分子模拟加速有理PROTAC设计,助力药物研发
中山大学团队通过深度学习和分子模拟加速有理PROTAC设计,助力药物研发
116 0
|
12月前
|
机器学习/深度学习 算法 数据可视化
上海交大团队使用联合深度学习优化代谢组学研究
上海交大团队使用联合深度学习优化代谢组学研究
153 0
|
12月前
|
机器学习/深度学习 存储 并行计算
超快、超低能耗!北大团队提出基于卷积神经网络的全光计算
超快、超低能耗!北大团队提出基于卷积神经网络的全光计算
253 0
|
机器学习/深度学习 存储 传感器
图灵奖获得者 Yann LeCun :学习“世界模型”的能力是构建人类级 AI 的关键所在
本文最初发布于 Meta AI 博客,由 InfoQ 中文站翻译并分享。
199 0
图灵奖获得者 Yann LeCun :学习“世界模型”的能力是构建人类级 AI 的关键所在