查看此页面

Shrink

Shrink - 9

  • 版本

  • 名称: Shrink (GitHub)

  • : main

  • 起始版本: 9

  • 函数: True

  • 支持级别: SupportType.COMMON

形状推断: True

此版本算子自 **版本 9** 起可用。

摘要Shrink 接收一个输入数据 (Tensor) 并产生一个 Tensor 输出,输出与输入的类型和形状相同。它有两个属性,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')

    添加到输出的 bias 值。默认值为 0。

  • lambd - FLOAT (默认值为 '0.5')

    Shrink 公式中的 lambd 值。默认值为 0.5。

输入

  • input (异构) - T

    作为 Tensor 的输入数据。

输出

  • output (异构) - T

    输出。

类型约束

  • T 在以下类型中:( tensor(double), tensor(float), tensor(float16), tensor(int16), tensor(int32), tensor(int64), tensor(int8), tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8) )

    将输入约束为仅限数值类型。