我已经实现了DQN并具有经验重播。输入为50x50x1。批次大小为4时,输入将变为(4,50,50,1)。总输出动作为10。如果批大小为4,则输出为(4,10)。我想知道如何从这个(4,10)向量中选择最大q值。预先感谢
答案 0 :(得分:0)
这可能是您要寻找的tf.math.reduce_max。
X_max = tf.reduce_max(X)
这将从给定的张量X返回单个最大值。
在DQN的上下文中,批量大小为4(4行),您希望选择4个最大Q值,每行一个。您可以执行以下操作:
X_max = tf.reduce_max(X, axis=1)
其中X是您的数据结构,其中包含形状为(4,10)的Q值。 这样会在单个张量X_max中以输出形状(4,1)返回4个最大Q值。