機械学習

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

投稿日:

こちらを読むと

  • ロジスティック回帰の勾配法でパラメータを決定する手法を理解できます

前回の記事で、ロジスティック回帰の交差エントロピー誤差関数を定義し、これを最小化することで、尤度関数を最大化、すなわち最適なパラメータが設定できることを説明しました。

交差エントロピー誤差関数のおさらい

$$
\begin{eqnarray*}
E({\bf w}, b) &:=& -logL({\bf w}, b) \\
&=& – \sum_{n=1}^N \{t_n log y_n + (1 – t_n) log (1 – y_n)\}
\end{eqnarray*}
$$
~詳解ディープラーニングより抜粋~

上で導出された関数のことを、交差エントロピー誤差関数と呼びます。この関数を最小化することが、もともとの尤度関数を最適化することになります。

こちらの式の解釈ですが、 \(t_n \in \{0, 1\}\)であることを思い出してください。1つの\(n\)に対しては、
$$
\{t_n log y_n + (1 – t_n) log (1 – y_n)\}
$$
の値は\( t_n log y_n または (1 – t_n) log (1 – y_n) \)のどちらかになります。
\(t_n\)は0 or 1のため、この値は
\( log y_n または log (1 – y_n) \)のどちらかになります 。\( y_n \)はロジスティック回帰の出力で、確率で表されるため、0~1の範囲の値になります。
 すなわち、 \( \{t_n log y_n + (1 – t_n) log (1 – y_n)\} \) の値が大きければ大きいほど、”正解”の確率が高まるわけです。よって、交差エントロピー誤差関数が最小化できれば、”正解”の確率を高められる、すなわち最適なパラメータが求められるのです。

今回は交差エントロピー誤差関数を使って、勾配法(勾配降下法)でパラメータを最適化していきます。

勾配法(勾配降下法)

 交差エントロピー誤差関数におけるパラメータは\( {\bf w}, b \)なので、関数を最小化するパラメータを求めるには、「\( {\bf w}, b \)で微分して0になる値」を求める必要があります。しかし、解析的にこの値を求めることは困難です。
 そこで、代わりに勾配法を用いてパラメータを決定する方法があります。勾配法は以下の式で表せます。

$$
{\bf w}^{(k+1)} = {\bf w}^{(k)} – \eta \frac{\partial E({\bf w},b)}{\partial {\bf w}} \\
b^{(k+1)} = b^{(k)} – \eta \frac{\partial E({\bf w},b)}{\partial b}
$$
~詳解ディープラーニングより抜粋~

 ここで、\( \eta \)(イータ)は学習率と呼ばれるハイパーパラメータで、モデルのパラメータの収束しやすさを調整します。この値は0より大きな値で、一般的には0.1や0.01といった適当な小さな値が使われます。この値を大きくしてしまうと、関数の最小値のあたりを行ったり来たりして、最適解が定まらないという状態になります。
 上式によりパラメータが更新されなくなった場合、それは勾配が0になったことを表すので、少なくとも反復学習で探索した範囲では最適な解が求められたことになります。

まとめ

  • ロジスティック回帰の勾配法でパラメータを決定する手法を理解できました

次回は勾配法の式を変形していき、実装に落とし込める形にします。

Reference

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



-機械学習

執筆者:


  1. […] 前回の記事で、ロジスティック回帰の交差エントロピー誤差関数について、勾配法で最小化してパラメータを求める手法を説明しました。今回は勾配法の式をさらに変形して、実装に落 […]

ロジスティック回帰④ 勾配法その2 | エンジニアすみきちのブログ へ返信する コメントをキャンセル

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

関連記事

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

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

Kaggle Kernelでライブラリをpip installでインストールする方法

Table of Contents こちらを読むとはじめにKaggle Kernel画面外部ライブラリのインストールまとめ こちらを読むと Kaggle Kernelでライブラリをpip instal …

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

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

単純パーセプトロン③

Table of Contents こちらを読むと数式おさらい実装まとめReference こちらを読むと 単純パーセプトロンの実装方法が分かります 数式おさらい 前回のブログで、単純パーセプトロンの …

単純パーセプトロン②

Table of Contents こちらを読むとモデルの数式誤り訂正学習法の更新式まとめ こちらを読むと 単純パーセプトロンのモデルの数式での表し方が分かります モデルの数式 前回のブログで、以下の …

Twitterフォロー

Twitterタイムライン