機械学習

多クラスロジスティック回帰③ソフトマックス関数の微分その2

投稿日:2019年2月15日 更新日:

こちらを読むと

  • 多クラスロジスティック回帰のモデル式の導出過程が分かります。

前回の記事で、多クラスロジスティック回帰のソフトマックス関数の微分を途中まで記載しました。今回はその続きです。

前回のおさらい

入力を\(x_i\)、出力を\(y_i\) (\(i\)=1,2, …n)とすると、
$$
\begin{pmatrix}
y_1 \\
y_2 \\
\vdots \\
y_n
\end{pmatrix}
=
\frac{1}{\sum_{j=1}^n e^{x_j}}
\begin{pmatrix}
e^{x_1} \\
e^{x_2} \\
\vdots \\
e^{x_n}
\end{pmatrix}
$$

と表せ、右辺の分母を
$$
Z := \sum_{j=1}^n e^{x_j}
$$

とおいたとき、ソフトマックス関数の微分を求めると、まず\(i\)=\(j\)では
$$
\frac{\partial y_i }{\partial x_i} = \frac{e^{x_i}Z – e^{x_i}e^{x_i}}{Z^2} = y_i(1 – y_i)
$$
となり、\(i\)≠\(j\)では
$$
-y_iy_j
$$

となるという説明をしました。この変換が分かりづらいので、今回はこの部分に焦点を絞ります。

ソフトマックス関数の微分(続き)

まず\(i\)=\(j\)の場合、
$$
Z := \sum_{i=1}^n e^{x_i}
$$
となるため、Zが\(x_i\)の関数になるので、(\(j\)が\(i\)に代わっている点に注意)
$$
\begin{eqnarray}
\frac{\partial y_i }{\partial x_i} &=& \frac{\partial}{\partial x_i} \frac{e^{x_i}}{Z} \\
&=& \frac{(e^{x_i})’Z – e^{x_i}Z’}{Z^2}
\end{eqnarray}
$$
※微分の公式により

ここで、シグマの微分をするわけですが、
$$
\begin{eqnarray}
Z &:=& \sum_{j=1}^n e^{x_j} \\
&=&e^{x_1} + e^{x_2} + \cdots + e^{x_i} + \cdots + e^{x_n}
\end{eqnarray}
$$
となるため、\(x_i\)の関数としては、和の中の\(x_i\)のみが残るので、
\(Z’\)は\( (e^{x_i})’ \)、すなわち\(e^{x_i}\)と等しくなります。
したがって上式は、
$$
\frac{\partial y_i }{\partial x_i} = \frac{e^{x_i}Z – e^{x_i}e^{x_i}}{Z^2}
$$
となるわけです。

ここで、
$$
y_i = \frac{e^{x_i}}{Z}
$$
なので、最終的に、\(i=j\)のとき、
$$
\begin{eqnarray}
\frac{\partial y_i }{\partial x_i} &=& \frac{e^{x_i}Z – e^{x_i}e^{x_i}}{Z^2} \\
&=& \frac{e^{x_i}}{Z}-(\frac{e^{x_i}}{Z})^2= y_i(1 – y_i)
\end{eqnarray}
$$
となります。

まとめ

  • 多クラスロジスティック回帰のソフトマックス関数の微分を途中まで説明しました。

私は数式が苦手なので、参考書の式導出がすぐに分からないのですが、こういう細かい計算過程が省かれていることが多いためだと思います。次回も引き続き式導出を解説

Reference

詳解ディープラーニング
https://book.mynavi.jp/manatee/books/detail/id=7242



-機械学習

執筆者:


  1. […] 前回の記事で、ソフトマックス関数の微分の導出過程を途中まで記載しました。今回はその続きです。 […]

多クラスロジスティック回帰④ ソフトマックス関数の微分 | エンジニアすみきちのブログ へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

SIerエンジニアが1年間AIを勉強して感じること

Table of Contents こちらを読むと結論:AI職は、エンジニアの上位職ではなく、別物著者についてAI職と一般エンジニアとの違い機械学習エンジニアが一般エンジニアと違うところ機械学習のモデ …

多クラスロジスティック回帰② ソフトマックス関数の微分

Table of Contents こちらを読むとソフトマックス関数のおさらいソフトマックス関数の微分まとめReference こちらを読むと 多クラスロジスティック回帰のソフトマックス関数の微分の導 …

多クラスロジスティック回帰①

Table of Contents こちらを読むと多クラスロジスティック回帰とは何が嬉しいか多クラス分類モデルソフトマックス関数まとめReference こちらを読むと 機械学習多クラスロジスティック …

scikit-learn load_iris datasetのまとめ

Table of Contents こちらを読むと何がしたいかload_iris datasetまとめ こちらを読むと scikit-learnのload_iris datasetについて、詳細が分か …

ロジスティック回帰③ 勾配法

Table of Contents こちらを読むと交差エントロピー誤差関数のおさらい勾配法(勾配降下法)まとめReference こちらを読むと ロジスティック回帰の勾配法でパラメータを決定する手法を …

Twitterフォロー

Twitterタイムライン