【问题标题】:What is the meaning of axis=-1 in keras.argmax?keras.argmax中axis=-1是什么意思?
【发布时间】:2018-05-06 05:46:30
【问题描述】:

我是 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) 的输出是什么?

【问题讨论】:

  • 有人在关注 deeplearning.ai 的卷积神经网络课程 :-)
  • 除了 Daniel Möller 的出色回答之外,如果您的数据具有 (19,19,5,80) 的形状,那么 keras.max(a, axis=-1) 将返回一个形状为 (19,19,5) 的矩阵,其中输出矩阵的每个值都是最大值80 个元素中的最大值(在最后一个索引中指定的最大值)

标签: keras axis argmax


【解决方案1】:

这意味着 argmax 将返回的索引将取自最后一个轴。

您的数据具有某种形状(19,19,5,80)。这意味着:

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

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

  • 轴 -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

【讨论】:

猜你喜欢
  • 2020-08-30
  • 1970-01-01
  • 2010-12-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-18
相关资源
最近更新 更多