ロジスティック回帰の概要 Python機械学習プログラミング第三章
第三章まとめ
全体の構成
Perceptronから、コスト関数の導入で進化したAdalaineをさらに発展させたロジスティック回帰の実装の章。
ロジスティック回帰とは
前回までの、Adalineでは、活性化関数としてΦ(z) = z を用いていたが、ロジスティック回帰では、シグモイド関数を用いる。シグモイド関数は確率であるので、ある予測したクラスラベルでどのくらいの精度で予測されたかがわかる。
学習
シグモイド関数が確率?
ロジット関数
ロジット関数
は、オッズ比と呼ばれる。
オッズ比とは、ある事象に対して、それが予想の時の確率と予想してない確率の比。
今回の場合 y(x) = 0, 1とするとこうなる。
0 | 1 | |
x₁ | p | 1-p |
参考 オッズ比の説明は以下がわかりやすかった。
オッズ比の分かりやすい説明
http:// https://winlabo.com/post-1531
ロジット関数の値域は、マイナス無限から無限なので、入力と重みの積とすることが可能で、
となる
つまり、ロジット関数をpについて解いたものである。pは確率であるので、この関数は、シグモイド関数は確率なのである。実際、その値域は、0< Φ(z)<1となる。
重みの学習
重みの学習は、Adalineとは違い(本質的には同じ、後述する)、尤度を用いて行う。
尤度とは、結果から見たところの条件付確率の条件のもっともらしさである。
最後の変形は、今回の場合2クラス分類なので、y = 1 の時とy = 0で選択できるようになっているからである。
この式の尤もらしさの最大化を行いたいが、後の重みの更新の時に、微分するのもかねて、和の形にしておくと便利なので対数をとる。
コスト関数は最小化したいのでマイナスをかけて、
一つのトレーニングでは、
となるので、y = 0,y = 1 の時それぞれの確率の対数になることが分かった。
次回は、バリアンスとバイアスについて!
yosuke-programing.hatenadiary.com
Amazonはこちら↓
[第2版]Python 機械学習プログラミング 達人データサイエンティストによる理論と実践 (impress top gear)
- 作者: Sebastian Raschka,Vahid Mirjalili,福島真太朗,株式会社クイープ
- 出版社/メーカー: インプレス
- 発売日: 2018/03/16
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (2件) を見る