ロジスティック回帰と勾配降下法

機械学習




ロジスティック回帰と勾配降下法

勾配法を使って、ロジスティック回帰のパラメータを求めたいと思います。

計算式をメモしておきます。

計算式

シグモイド関数
$$
\sigma \left( z _ { i } \right) = \frac { 1 } { 1 + e ^ { – z _ { i } } }
$$

$$
z _ { i } = w _ { 0 } + x _ { i1 } w _ { 1 } \cdots + x _ { i m } \omega _ { m }
$$

計画行列
$$
\boldsymbol { X } = \left( \begin{array} { c c c c c } { 1 } & { x _ { 11 } } & { x _ { 21 } } & { \dots } & { x _ { n 1 } } \\ { 1 } & { x _ { 12 } } & { x _ { 22 } } & { \dots } & { x _ { n 2 } } \\ { \vdots } & { \vdots } & { \vdots } & { \ddots } & { \vdots } \\ { 1 } & { x _ { 1 m } } & { x _ { 2 m } } & { \dots } & { x _ { n m } } \end{array} \right)
$$

被説明変数
$$
\boldsymbol { y } = \left( \begin{array} { c } { y _ { 1 } } \\ { y _ { 2 } } \\ { \vdots } \\ { y _ { n } } \end{array} \right)
$$
パラメータ
$$
\boldsymbol { \omega } = \left( \begin{array} { c } { \omega _ { 0 } } \\ { \omega _ { 1 } } \\ { \vdots } \\ { \omega _ { m } } \end{array} \right)
$$

損失関数

最尤推定

尤度関数
$$
E ( w_j ) = \sum \left[ – y _ { i } \log \left( \sigma \left( z _ { i } \right) \right) – \left( 1 – y _ { i } \right) \log \left( \sigma \left( z _ { i } \right) \right) \right]
$$

$$
\frac { E \left( \omega _ { j } \right) } { \partial \omega _ { j } } = \frac { \partial E \left( \omega _ { j } \right) } { \partial z } \frac { \partial z } { \partial \omega _ { j } }
$$

$$
\begin{aligned} \frac { \partial E \left( \omega _ { i } \right) } { \partial z_i } & = \sum \left[ \frac { – y _ { i } } { \sigma ( z_i ) } ( 1 – \sigma ( z_i ) ) \sigma ( z_i ) – \frac { 1 – y _ { i } } { 1 – \sigma ( z_i ) } – ( 1 – \sigma ( z_i ) ) \sigma ( z_i ) \right] \\ & = \sum \left[ – y ( 1 – \sigma ( z_i ) ) + \left( 1 – y _ { i } \right) \sigma ( z_i ) \right] \\ & = \sum \left( \sigma ( z ) – y _ { i } \right) \end{aligned}
$$

$$
\frac { \partial z } { \partial \omega _ { j } } = x _ { i j }
$$

$$
\begin{aligned} \frac { E \left( \omega _ { j } \right) } { \partial \omega _ { j } } & = \frac { \partial E \left( \omega _ { j } \right) } { \partial z } \frac { \partial z } { \partial \omega _ { j } } \\ & = \sum \left( \sigma ( z ) – y _ { i } \right) x _ { i j } \end{aligned}
$$

勾配法のパラメータ更新

$$
\begin{aligned} \omega _ { j } &= \omega _ { j } – \alpha \frac { \partial E } { \partial \omega _ { i } } \\ \omega _ { j } &= w _ { j } – \alpha \sum \left\{ \left( \sigma \left( z _ { i } \right) – y _ { i } \right) x _ { i j } \right\} \end{aligned}
$$

タイトルとURLをコピーしました