我在学习深层Q学习算法。你可以在图片中看到它:DQN
关于深度Q学习算法,我有几个问题。它们对第14行意味着什么:If D_i = 0, set Y_i = ...,他们希望我采取一个动作a‘,它使函数q最大化,这意味着我必须插入状态中的每个动作a。
如果我有a1和a2,我必须插入a1,然后插入a2来测试,这给了我最大的权利?但是我的网络的输入是状态。那么,我如何知道哪一种行动能使我的网络最大化呢?
我要去看最后一层吗。在哪里我有Q(s,a1)和Q(s,a2)来看哪一个有更高的价值并采取行动?
就像在这个建筑里

发布于 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运算符。
https://datascience.stackexchange.com/questions/100010
复制相似问题