MCPで接続 →

計算を入力してください

任意の実数(無次元)

公式

広告

結果

2次微分 tanh''(x)
-0.72686198
無次元
tanh(x) 0.46211716
tanh'(x) = 1 - tanh²(x) 0.78644773
tanh''(x) = -2 tanh(x)(1 - tanh²(x)) -0.72686198

この計算ツールでできること

このツールは、双曲線正接関数(ハイパボリックタンジェント)の2次微分 \(\tanh''(x)\) を、任意の実数 \(x\) について計算します。tanh 関数 \(f(x) = \tanh(x)\) は -1 から 1 の間に収まるなめらかなS字型の関数で、ニューラルネットワークの活性化関数として広く使われています。そのため、勾配の伝わり方や曲がり具合(曲率)を理解するうえで、1次微分・2次微分はとても重要です。本ツールでは2次微分の結果に加えて、\(\tanh(x)\) そのものと1次微分 \(\tanh'(x)\) の値も同時に表示します。

使い方

\(x\) に任意の実数(正の値・負の値・ゼロ)を入力すると、\(\tanh(x)\)、その1次微分 \(\tanh'(x)\)、2次微分 \(\tanh''(x)\) の3つの値が返されます。\(x\) も計算結果もすべて無次元量のため、単位の指定は不要です。

計算式の解説

\(f(x) = \tanh(x)\) から出発すると、1次微分は \(f'(x) = 1 - \tanh^2(x)\) となり、これは \(\operatorname{sech}^2(x)\) にも等しくなります。連鎖律(合成関数の微分)を使ってもう一度微分すると、次が得られます。

$$f''(x) = -2\tanh(x)\left(1 - \tanh^{2}(x)\right)$$

同じことを別の形で書けば \(f''(x) = -2\tanh(x)\operatorname{sech}^2(x)\) です。計算では \(t = \tanh(x)\) を直接用いるため、\(|x|\) が大きい場合でも数値的に安定しています。また \(e^x + e^{-x}\) は常に2以上になるので、ゼロ除算が起こることもありません。

広告
tanh(x)、その一階導関数、二階導関数のグラフ
tanh(x)(S字曲線)、釣鐘型の一階導関数、x = 0 でゼロを横切る反対称な二階導関数。

計算例(x = 0.5)

\(\tanh(0.5) = 0.4621172\) です。これより $$f'(0.5) = 1 - 0.4621172^2 = 0.7864477$$ $$f''(0.5) = -2 \times 0.4621172 \times 0.7864477 = -0.7270051$$ となります。ここで \(x\) が正のため、2次微分は負の値になります。

サンプルの x 値における二階導関数の曲線上に印を付けた点
二階導関数の曲線の高さを読み取り、選んだ x で tanh''(x) を求める。

よくある質問(FAQ)

なぜ \(\tanh''(0)\) はゼロになるのですか? \(x = 0\) のとき \(\tanh(0) = 0\) なので、式に含まれる \(\tanh(x)\) の項が全体をゼロにします。なお \(f''\) は奇関数であり、\(f''(-x) = -f''(x)\) が成り立ちます。

x が非常に大きいときはどうなりますか? \(\tanh(x)\) は +1 または -1 へと飽和していくため、1次微分・2次微分はどちらも0に近づきます。これがディープニューラルネットワークで問題となる「勾配消失(vanishing gradient)」の挙動です。

2次微分が定義されないことはありますか? ありません。tanh はすべての実数上でなめらかな関数なので、その微分はどこでも存在します。

最終更新: