在keras.argmax中axis=-1是什么意思?

eagi6jfj  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(202)

我是Keras的初学者,需要帮助来理解keras.argmax(a, axis=-1)keras.max(a, axis=-1)。当a.shape = (19, 19, 5, 80)时,axis=-1的含义是什么?以及keras.argmax(a, axis=-1)keras.max(a, axis=-1)的输出是什么?

vc9ivgsu

vc9ivgsu1#

这意味着argmax将返回的索引将从最后一个轴获取。
你的数据有一些形状(20,19,5,80),我改变了第一个维度只是为了使它更清晰。这意味着:

  • 轴0 = 20个元素
  • 轴1 = 19个元素
  • 轴2 = 5个元素
  • 轴3 = 80个元素

现在,负数的工作方式与python列表,numpy数组等完全相同。负数表示相反的顺序:

  • 轴-1 = 80个元素
  • 轴-2 = 5个元素
  • 轴-3 = 19个元素
  • 轴-4 = 20个元素

当您将axis参数传递给argmax函数时,返回的索引将基于此轴。您的结果将丢失此特定轴,但保留其他轴。
看看argmax将为每个索引返回什么形状:

  • K.argmax(a,axis= 0 or -4)返回来自0 to 19的值的(19,5,80)
  • K.argmax(a,axis= 1 or -3)返回来自0 to 18的值的(20,5,80)
  • K.argmax(a,axis= 2 or -2)返回来自0 to 4的值的(20,19,80)
  • K.argmax(a,axis= 3 or -1)返回来自0 to 79的值的(20,19,5)

相关问题