Как выбрать действие с наибольшим значением Q - PullRequest
1 голос
/ 22 апреля 2019

Я реализовал DQN с опытом воспроизведения. Вход 50x50x1.При размере пакета 4 ввод будет равен (4,50,50,1).Общее количество выходных действий равно 10. Если размер пакета равен 4, результат будет (4,10).Я хочу знать, как бы я выбрал максимальное значение q из этого (4,10) вектора.Заранее спасибо

1 Ответ

0 голосов
/ 29 апреля 2019

Это, вероятно, то, что вы ищете 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 - ваша структура данных, содержащая значения Q с формой (4,10).Это возвращает 4 максимальных значения Q в одном тензоре X_max с выходной формой (4,1).

...