Я новичок в Керасе, и мне нужна помощь, чтобы понять keras.argmax(a, axis=-1)
и keras.max(a, axis=-1)
. Что означает axis=-1
, когда a.shape = (19, 19, 5, 80)
? А также, что будет выходом keras.argmax(a, axis=-1)
и keras.max(a, axis=-1)
?
В чем смысл оси = -1 в keras.argmax?
Ответ 1
Это означает, что индекс, который будет возвращен argmax, будет взят из последней оси.
Ваши данные имеют некоторую форму (19,19,5,80)
. Это значит:
- Ось 0 = 19 элементов
- Ось 1 = 19 элементов
- Ось 2 = 5 элементов
- Ось 3 = 80 элементов
Теперь отрицательные числа работают точно так же, как в списках Python, в массивах с нулями и т.д. Отрицательные числа представляют обратный порядок:
- Ось -1 = 80 элементов
- Ось -2 = 5 элементов
- Ось -3 = 19 элементов
- Ось -4 = 19 элементов
Когда вы передаете параметр axis
в функцию argmax
, возвращаемые индексы будут основаны на этой оси. Ваши результаты потеряют эту конкретную ось, но сохранят остальные.
Посмотрите, какая форма argmax
будет возвращаться для каждого индекса:
K.argmax(a,axis= 0 or -4)
возвращает(19,5,80)
со значениями из0 to 18
K.argmax(a,axis= 1 or -3)
возвращает(19,5,80)
со значениями из0 to 18
K.argmax(a,axis= 2 or -2)
возвращает(19,19,80)
со значениями из0 to 4
K.argmax(a,axis= 3 or -1)
возвращает(19,19,5)
со значениями из0 to 79