首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >理解DQN算法

理解DQN算法
EN

Data Science用户
提问于 2021-08-12 22:02:42
回答 1查看 101关注 0票数 0

我在学习深层Q学习算法。你可以在图片中看到它:DQN

关于深度Q学习算法,我有几个问题。它们对第14行意味着什么:If D_i = 0, set Y_i = ...,他们希望我采取一个动作a‘,它使函数q最大化,这意味着我必须插入状态中的每个动作a。

如果我有a1和a2,我必须插入a1,然后插入a2来测试,这给了我最大的权利?但是我的网络的输入是状态。那么,我如何知道哪一种行动能使我的网络最大化呢?

我要去看最后一层吗。在哪里我有Q(s,a1)和Q(s,a2)来看哪一个有更高的价值并采取行动?

就像在这个建筑里

EN

回答 1

Data Science用户

回答已采纳

发布于 2021-08-14 01:20:57

您不需要插入任何其他内容,只需在NN中添加状态。NN的输出是每个动作的动作值。给定一个状态(输入),假设有4个可用的操作,NN将输出4个动作-值(输出)。然后比较结果输出并选择最大输出。这是给最大运算符的。对于策略(行: 8),您需要argmax操作符,这意味着您需要导致Q最大值的操作,换句话说,选择了max q= Q( a1 ),使Q最大化的操作是a1。

它可以帮助您将NN输出可视化为向量\mathbf{q}=[q(a_1),q(a_2),q(a_3),q(a_4)]。因此,对于特定状态下的每个可用操作,您都有操作值。现在您可以实现max和argmax运算符。

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/100010

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档