機械学習

標準シグモイド関数とその微分をグラフ化してみた

\(f(x)=\displaystyle \frac{1}{1 + e^{-ax}} (a > 0)\)で表現される関数をシグモイド関数といい、このうち\(a=1\)の場合を標準シグモイド関数という。

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

標準シグモイド関数\(f(x)=\displaystyle \frac{1}{1 + e^{-x}}\)をPythonでグラフ化した結果は、以下の通り。

標準シグモイド関数のグラフ



また、\(f(x)=\displaystyle \frac{1}{1 + e^{-x}}\)を\(x\)について微分すると、以下のようになる。ただし、\(u=1 + e^{-x}\)と置き換えて計算するものとする。
\[
\begin{eqnarray}
\displaystyle \frac{ \mathrm{d} f(x)}{ \mathrm{d} x} &=& \frac{ \mathrm{d} f(x)}{ \mathrm{d} u}\frac{ \mathrm{d} u}{ \mathrm{d} x} \\
&=& \frac{ \mathrm{d}}{ \mathrm{d} u}\frac{1}{u} \frac{ \mathrm{d}}{ \mathrm{d} x}(1 + e^{-x}) \\
&=& -u^{-2} \times (-e^{-x}) = \frac{e^{-x}}{u^2} = \frac{e^{-x}}{(1 + e^{-x})^2} \\
&=& \frac{1}{1 + e^{-x}}\frac{e^{-x}}{1 + e^{-x}} = \frac{1}{1 + e^{-x}}\frac{1 + e^{-x} – 1}{1 + e^{-x}} \\
&=& \frac{1}{1 + e^{-x}} \left( \frac{1 + e^{-x}}{1 + e^{-x}} – \frac{1}{1 + e^{-x}} \right) \\
&=& \frac{1}{1 + e^{-x}} \left( 1 – \frac{1}{1 + e^{-x}} \right) = f(x)(1-f(x))
\end{eqnarray}
\]

なお、上記計算にあたっては、以下の合成関数の微分公式を利用している。
https://manabitimes.jp/math/936

上記、標準シグモイド関数の微分をグラフに追加した結果は、以下の通り。

標準シグモイド関数とその微分のグラフ

要点まとめ

  • \(f(x)=\displaystyle \frac{1}{1 + e^{-ax}} (a > 0)\)で表現される関数をシグモイド関数といい、このうち\(a=1\)の場合を標準シグモイド関数という。
  • 標準シグモイド関数\(f(x)=\displaystyle \frac{1}{1 + e^{-x}}\)を微分すると、\(f(x) (1-f(x))\)となる。