Shrink

Shrink - 9

版本

  • 名稱Shrink (GitHub)

  • 網域main

  • since_version9

  • 函式True

  • 支援等級SupportType.COMMON

  • 形狀推論True

此版本的運算子自版本 9 開始可用。

摘要

Shrink 接受一個輸入資料 (張量) 並產生一個張量輸出,其資料類型和形狀與輸入相同。它有兩個屬性,lambd 和 bias。此運算子的公式為:若 x < -lambd,則 y = x + bias;若 x > lambd,則 y = x - bias;否則,y = 0。

函式主體

此運算子的函式定義。

<
  domain: "",
  opset_import: ["" : 18]
>
Shrink <bias,lambd>(input) => (output)
{
   Lambd = Constant <value_float: float = @lambd> ()
   LambdCast = CastLike (Lambd, input)
   Bias = Constant <value_float: float = @bias> ()
   BiasCast = CastLike (Bias, input)
   Zero = Constant <value: tensor = float {0}> ()
   ZeroCast = CastLike (Zero, input)
   NegLmbda = Neg (LambdCast)
   InputLessThanNegLambda = Less (input, NegLmbda)
   InputAddBias = Add (input, BiasCast)
   InputSubBias = Sub (input, BiasCast)
   LambdaLessThanInput = Less (LambdCast, input)
   InputSubBiasOrZero = Where (LambdaLessThanInput, InputSubBias, ZeroCast)
   output = Where (InputLessThanNegLambda, InputAddBias, InputSubBiasOrZero)
}

屬性

  • bias - FLOAT (預設值為 '0.0')

    加入輸出的偏差值。預設值為 0。

  • lambd - FLOAT (預設值為 '0.5')

    Shrink 公式中的 lambd 值。預設值為 0.5。

輸入

  • input (異質) - T

    以張量形式呈現的輸入資料。

輸出

  • output (異質) - T

    輸出。

類型約束

  • T in ( tensor(double), tensor(float), tensor(float16), tensor(int16), tensor(int32), tensor(int64), tensor(int8), tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8) )

    將輸入限制為僅限數值類型。