機械学習

tanh関数とその微分をグラフ化してみた

\(tanh(x)=\displaystyle \frac{e^x – e^{-x}}{e^x + e^{-x}}\)で表現される関数をtanh(ハイパボリックタンジェント)関数といい、ディープラーニングの活性化関数の1つとして利用される。

今回は、tanh関数とその微分をグラフ化してみたので、その結果を共有する。

\(tanh(x)=\displaystyle \frac{e^x – e^{-x}}{e^x + e^{-x}}\)をPythonでグラフ化した結果は、以下の通り。

tanh関数のグラフ



「HD Video Converter Factory Pro」は動画の形式変換や編集・録画等を行える便利ツールだった動画の形式変換や編集・録画等を行える便利ツールの一つに、「HD Video Converter Factory Pro」があります。ここ...

また、\(tanh(x)=\displaystyle \frac{e^x – e^{-x}}{e^x + e^{-x}}\)を\(x\)について微分すると、以下のようになる。
\[
\begin{eqnarray}
\displaystyle \frac{d}{dx} tanh(x) &=& \displaystyle \frac{\displaystyle \frac{d}{dx} (e^x – e^{-x})(e^x + e^{-x}) – \frac{d}{dx}(e^x + e^{-x})(e^x – e^{-x}) }{({e^x + e^{-x}})^2} \\
&=& \displaystyle \frac{(e^x + e^{-x})(e^x + e^{-x}) – (e^x – e^{-x})(e^x – e^{-x})}{({e^x + e^{-x}})^2} \\
&=& \displaystyle \frac{(e^x + e^{-x})^2 – (e^x – e^{-x})^2}{({e^x + e^{-x}})^2} \\
&=& \displaystyle \frac{(e^{2x} + 2 \times e^x \times e^{-x} + e^{-2x}) – (e^{2x} – 2 \times e^x \times e^{-x} – e^{-2x})}{({e^x + e^{-x}})^2} \\
&=& \displaystyle \frac{(e^{2x} + 2 + e^{-2x}) – (e^{2x} – 2 – e^{-2x})}{({e^x + e^{-x}})^2} \\
&=& \displaystyle \frac{e^{2x} + 2 + e^{-2x} – e^{2x} + 2 – e^{-2x}}{({e^x + e^{-x}})^2} = \displaystyle \frac{4}{({e^x + e^{-x}})^2}
\end{eqnarray}
\]

なお、上記計算にあたっては、以下のサイトの「分数関数の微分公式」と、\(e^x\)が微分しても\(e^x\)であることを利用している。
https://manabitimes.jp/math/2047

上記、tanh関数の微分をグラフに追加した結果は、以下の通り。

tanh関数とその微分のグラフ

要点まとめ

  • \(tanh(x)=\displaystyle \frac{e^x – e^{-x}}{e^x + e^{-x}}\)で表現される関数をtanh(ハイパボリックタンジェント)関数といい、ディープラーニングの活性化関数の1つとして利用される。
  • \(tanh(x)=\displaystyle \frac{e^x – e^{-x}}{e^x + e^{-x}}\)を微分すると、\(\displaystyle \frac{4}{({e^x + e^{-x}})^2}\)となる。