激活¶
对输入张量 A 应用激活函数,并生成具有相同维度的输出张量 B。
另请参阅
PRelu, SoftMax
属性¶
type 激活函数可以是以下之一:
RELU\(output=max(0, input)\)SIGMOID\(output=\frac{1}{1+e^{-input}}\)TANH\(output=\frac{1-e^{-2 \cdot input}}{1+e^{-2 \cdot input}}\)LEAKY_RELU\(output=input \text{ 如果 } input\geq0 \text{ 否则 } \alpha \cdot input\)ELU\(output=input \text{ 如果 } input\geq0 \text{ 否则 } \alpha \cdot (e^{input} -1)\)SELU\(output=\beta \cdot input \text{ 如果 } input\geq0 \text{ 否则 } \beta \cdot (\alpha \cdot e^{input} - \alpha)\)SOFTSIGN\(output=\frac{input}{1+|input|}\)SOFTPLUS\(output=\alpha \cdot log(e^{\beta \cdot input} + 1)\)CLIP\(output=max(\alpha, min(\beta, input))\)HARD_SIGMOID\(output=max(0, min(1, \alpha \cdot input +\beta))\)SCALED_TANH\(output=\alpha \cdot tanh(\beta \cdot input)\)THRESHOLDED_RELU\(output=max(0, input - \alpha)\)
alpha 参数,当激活函数为以下之一时使用:LEAKY_RELU, ELU, SELU, SOFTPLUS, CLIP, HARD_SIGMOID, SCALED_TANH, THRESHOLDED_RELU
beta 参数,当激活函数为以下之一时使用:SELU, SOFTPLUS, CLIP, HARD_SIGMOID, SCALED_TANH
输入¶
input: T1 类型的张量
输出¶
output: T1 类型的张量
数据类型¶
T1: int8, float16, float32, bfloat16
注意:
int32和int64仅在RELU中受支持。
形状信息¶
输出具有与输入相同的形状。
DLA 支持¶
支持 DLA FP16 和 DLA INT8。
DLA 支持以下激活类型
CLIP其中 \(\alpha=0\) 且 \(\beta\leq127\)RELUSIGMOIDTANHLEAKY_RELU
示例¶
激活
in1 = network.add_input("input1", dtype=trt.float32, shape=(2, 3))
layer = network.add_activation(in1, type=trt.ActivationType.RELU)
network.mark_output(layer.get_output(0))
inputs[in1.name] = np.array([[-3.0, -2.0, -1.0], [0.0, 1.0, 2.0]])
outputs[layer.get_output(0).name] = layer.get_output(0).shape
expected[layer.get_output(0).name] = np.array([[0.0, 0.0, 0.0], [0.0, 1.0, 2.0]])
C++ API¶
有关 C++ IActivationLayer 算子的更多信息,请参阅 C++ IActivationLayer 文档。
Python API¶
有关 Python IActivationLayer 算子的更多信息,请参阅 Python IActivationLayer 文档。