Hardmax

Hardmax - 13

版本

  • 名稱: Hardmax (GitHub)

  • 領域: main

  • since_version: 13

  • 函式: False

  • 支援等級: SupportType.COMMON

  • 形狀推斷: True

此版本的運算子自版本 13 開始提供。

摘要

此運算子計算給定輸入的 Hardmax 值

Hardmax(input 中的元素, axis) = 1 如果該元素是沿指定軸的第一個最大值,否則為 0

“axis” 屬性表示將執行 Hardmax 的維度。輸出張量具有相同的形狀,並包含對應輸入的 Hardmax 值。

屬性

  • axis - INT (預設為 '-1')

    描述將在其上執行 Hardmax 的維度。負值表示從後方計算維度。接受範圍為 [-r, r-1],其中 r = rank(input)。

輸入

  • input (異質) - T

    秩 >= axis 的輸入張量。

輸出

  • output (異質) - T

    與輸入張量形狀相同的輸出值。

類型約束

  • T in ( tensor(bfloat16), tensor(double), tensor(float), tensor(float16) )

    將輸入和輸出類型限制為浮點張量。

Hardmax - 11

版本

  • 名稱: Hardmax (GitHub)

  • 領域: main

  • since_version: 11

  • 函式: False

  • 支援等級: SupportType.COMMON

  • 形狀推斷: True

此版本的運算子自版本 11 開始提供。

摘要

此運算子計算給定輸入的每個批次層的 hardmax 值(第一個最大值為 1,所有其他值為 0)。

輸入不需要明確地為 2D 向量;相反地,它會被強制轉換為 2D 向量。對於任意 n 維張量輸入 \in [a_0, a_1, …, a_{k-1}, a_k, …, a_{n-1}],且 k 是提供的軸,則輸入會被強制轉換為 2 維張量,維度為 [a_0 * … * a_{k-1}, a_k * … * a_{n-1}]。對於預設情況,其中 axis=1,這表示輸入張量會被強制轉換為 2 維張量,維度為 [a_0, a_1 * … * a_{n-1}],其中 a_0 通常是批次大小。在這種情況下,我們必須有 a_0 = N 和 a_1 * … * a_{n-1} = D。這些維度中的每一個都必須正確匹配,否則運算子會擲回錯誤。輸出張量具有相同的形狀,並包含對應輸入的 hardmax 值。

屬性

  • axis - INT (預設為 '1')

    描述強制轉換為 2D 時輸入的軸;預設值為 1,因為第 0 軸最有可能描述批次大小。負值表示從後方計算維度。接受範圍為 [-r, r-1],其中 r = rank(input)。

輸入

  • input (異質) - T

    輸入張量被強制轉換為大小 (NxD) 的 2D 矩陣,如上所述。

輸出

  • output (異質) - T

    與輸入張量形狀相同的輸出值(原始大小,未強制轉換)。

類型約束

  • T in ( tensor(double), tensor(float), tensor(float16) )

    將輸入和輸出類型限制為浮點張量。

Hardmax - 1

版本

  • 名稱: Hardmax (GitHub)

  • 領域: main

  • since_version: 1

  • 函式: False

  • 支援等級: SupportType.COMMON

  • 形狀推斷: True

此版本的運算子自版本 1 開始提供。

摘要

此運算子會計算給定輸入批次中,每個圖層的硬最大值(第一個最大值為 1,其他所有值為 0)。輸入是一個大小為 (batch_size x input_feature_dimensions) 的二維張量 (Tensor)。輸出張量具有相同的形狀,並包含對應輸入的硬最大值。

輸入不需要明確是二維向量;它會被強制轉換成二維向量。對於任意 n 維張量輸入 \in [a_0, a_1, …, a_{k-1}, a_k, …, a_{n-1}],且 k 是提供的軸,則輸入將被強制轉換為具有維度 [a_0 * … * a_{k-1}, a_k * … * a_{n-1}] 的二維張量。對於軸 axis=1 的預設情況,這表示輸入張量將被強制轉換為具有維度 [a_0, a_1 * … * a_{n-1}] 的二維張量,其中 a_0 通常是批次大小。在這種情況下,我們必須有 a_0 = N 且 a_1 * … * a_{n-1} = D。每個維度都必須正確匹配,否則運算子會拋出錯誤。

屬性

  • axis - INT (預設為 '1')

    描述輸入被強制轉換為 2D 時的軸;預設為 1,因為第 0 個軸最有可能描述的是 batch_size

輸入

  • input (異質) - T

    輸入張量被強制轉換為大小 (NxD) 的 2D 矩陣,如上所述。

輸出

  • output (異質) - T

    與輸入張量形狀相同的輸出值(原始大小,未強制轉換)。

類型約束

  • T in ( tensor(double), tensor(float), tensor(float16) )

    將輸入和輸出類型限制為浮點張量。