为什么在DQN中,y_i只是计算而不是存储?
In DQN, why y_i is calculated but not stored?
下面的DQN算法
我们在 D 的记录中有 phi_t、a_t、r_t 和 phi_{t+1} 字段。为什么我们在 D 的记录中没有 'y' 字段,这样我们就可以在计算后存储 'y' 值?
我的意思是,minibatches是从D中随机选择的,没有任何限制,所以一条记录可能会被多次选择,尤其是当D的记录数量不够多的时候。如果发生这种情况,则需要多次重新计算 y。我想得对吗?
因为y_i
是使用函数Q计算的,它随着迭代的进行而变化。因此,一次迭代中存储的值对下一次迭代无效。
在同一次迭代中,我认为您正确地指出,如果您多次对同一转换进行采样,则无需多次计算 y_i
,而是可以使用相同的结果。我猜伪代码更侧重于关键概念而不是这种实现细节。
下面的DQN算法
我们在 D 的记录中有 phi_t、a_t、r_t 和 phi_{t+1} 字段。为什么我们在 D 的记录中没有 'y' 字段,这样我们就可以在计算后存储 'y' 值?
我的意思是,minibatches是从D中随机选择的,没有任何限制,所以一条记录可能会被多次选择,尤其是当D的记录数量不够多的时候。如果发生这种情况,则需要多次重新计算 y。我想得对吗?
因为y_i
是使用函数Q计算的,它随着迭代的进行而变化。因此,一次迭代中存储的值对下一次迭代无效。
在同一次迭代中,我认为您正确地指出,如果您多次对同一转换进行采样,则无需多次计算 y_i
,而是可以使用相同的结果。我猜伪代码更侧重于关键概念而不是这种实现细节。