機械学習に詳しくなりたいブログ

機械学習や数学について勉強した内容を中心に書きます。100%趣味です。記事は数学的に厳密でなかったり誤りを含んでいるかもしれません。ご指摘頂ければ幸いです。

シグモイド関数の微分

確率的生成モデル - シグモイド関数で導出したシグモイド関数


\displaystyle \sigma(a) = \frac{1}{1+\exp(-a)} \tag{1}

の微分を計算します。

分数の微分公式を使えば、以下のように計算できます。


\begin{eqnarray*}
\displaystyle \frac{\partial\sigma(a)}{\partial a} &=& \frac{0-(-\exp(-a))}{(1+\exp(-a))^{2}} \tag{2} \\
\displaystyle & =& \frac{1}{1+\exp(-a)}\frac{\exp(-a)}{1+\exp(-a)} \tag{3} \\
\displaystyle & =& \sigma(a) \frac{\exp(-a)}{1+\exp(-a)} \tag{4} \\
\displaystyle & =& \sigma(a) \frac{1+\exp(-a)-1}{1+\exp(-a)} \tag{5} \\
\displaystyle & =& \sigma(a) \left( 1- \frac{1}{1+\exp(-a)} \right) \tag{6} \\
\displaystyle & =& \sigma(a)(1-\sigma(a)) \tag{7}
\end{eqnarray*}

シグモイド関数の微分は、シグモイド関数自身で表せることが確認できました。今回、答えから逆算したのですぐに計算できたんですが、式(4)を式(5)のように変形するのって、自力だと思いつくのに時間かかりそう。