Tanh 関数 (双曲線正接関数) は、入力値を -1 ~ 1 の範囲の連続出力にマッピングする、一般的に使用されるアクティベーション関数です。Tanh 関数の式は次のとおりです。
スクス
f(x) = (exp(x) - exp(-x)) / (exp(x) + exp(-x))
以下は Tanh 関数を使用した Python サンプル コードです。
パイソン
numpyをnpとしてインポート
def Tanh(x):
np.tanh(x)を返す
# 単一の値の例
x = 2
結果 = Tanh(x)
print(結果) # 出力: 0.9640275800758169
# NumPy 配列を使用した例
x_array = np.array([-2, -1, 0, 1, 2])
結果配列 = Tanh(x_array)
print(result_array) # 出力: [-0.96402758 -0.76159416 0. 0.76159416 0.96402758]
上の例では、まず入力値 x を受け取り、計算結果を返す Tanh 関数を定義しました。次に、例として単一の値と NumPy 配列を使用し、対応する Tanh 関数の値を計算し、出力を出力しました。
Tanh 関数は、シグモイド関数と似ていますが、出力範囲が広く、傾きが急峻であるため、機械学習や深層学習の活性化関数として広く使用されています。入力値を -1 から 1 の範囲にマッピングすることができ、入力値の変化に対してより敏感です。
Tanh 関数には、特に入力値が非常に大きいか非常に小さい場合、勾配消失の問題が発生する可能性があることに注意してください。深層学習では、この問題を解決するために、ReLU (Rectified Linear Unit) などの他の活性化関数がよく使用されます。