當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python tf.keras.activations.gelu用法及代碼示例


應用高斯誤差線性單元 (GELU) 激活函數。

用法

tf.keras.activations.gelu(
    x, approximate=False
)

參數

  • x 輸入張量。
  • approximate A bool ,是否啟用逼近。

返回

  • 高斯誤差線性激活: 0.5 * x * (1 + tanh(sqrt(2 / pi) * (x + 0.044715 * x^3))) 如果 approximateTruex * P(X <= x) = 0.5 * x * (1 + erf(x / sqrt(2))) ,其中 P(X) ~ N(0, 1) ,如果 approximateFalse

高斯誤差線性單元 (GELU) 計算 x * P(X <= x) ,其中 P(X) ~ N(0, 1) 。 (GELU) 非線性按輸入值加權輸入,而不是像 ReLU 中那樣按符號對輸入進行門控。

例如:

x = tf.constant([-3.0, -1.0, 0.0, 1.0, 3.0], dtype=tf.float32)
y = tf.keras.activations.gelu(x)
y.numpy()
array([-0.00404951, -0.15865529,  0.        ,  0.8413447 ,  2.9959507 ],
    dtype=float32)
y = tf.keras.activations.gelu(x, approximate=True)
y.numpy()
array([-0.00363752, -0.15880796,  0.        ,  0.841192  ,  2.9963627 ],
    dtype=float32)

參考:

相關用法


注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.keras.activations.gelu。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。