機械学習

ロジスティック回帰①

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

こちらを読むと

  • 機械学習のロジスティック回帰の概要を知ることができます
  • ロジスティック回帰のモデル式が分かります

ロジスティック回帰とは

分類問題に使われる機械学習のモデルです。
単純パーセプトロンのように、”0 or 1″ではなく、
“0の確率は〇%、1の確率は△%”のように、出力を確率で表すことができます。

何が嬉しいか

 ロジスティック回帰で出力を確率で表せると何が嬉しいかというと、
モデルを使う人が、グレーゾーンの結果をどうするか、決められることです。
詳解ディープラーニングやCourseraの機械学習コースでも挙げられていますが、スパムメールの分類を行う際の例を挙げます。
 スパムメールか、通常メールか、の分類をするとき、今までの学習結果を用いても、”スパム or 通常”とはっきり分けられることはなく、どうしてもグレーゾーンが存在します。例えば、100%ではないけれど、56%の確率でスパムメールと判断される場合などです。
 開発システムの仕様として、40%以上でスパムメールと判断された場合は、警告を出す、と決めることはできます。それが現場によって、30%だったり、60%だったりすることもあるでしょう。
 すなわち、”0 or 1″ではなく、その中間(グレーゾーン)も分かるので、モデルを使う人が結果に応じて処理を決めることができます。

シグモイド関数

ロジスティック回帰には、出力にシグモイド関数を使います。シグモイド関数の式は以下の形です。

$$
\sigma(x) = \frac{1}{1+e^{-x}}
$$

出典:Wikipedia(https://ja.wikipedia.org/wiki/%E3%82%B7%E3%82%B0%E3%83%A2%E3%82%A4%E3%83%89%E9%96%A2%E6%95%B0)

シグモイド関数がロジスティック回帰に用いられるのは、以下の2点の理由によるものです。

  1. 出力が0~1の間で出力される
  2. 微分計算の結果をシグモイド関数で表せる

2の微分計算の結果は、以下のようになっており、微分計算結果がさらにシグモイド関数で表せます。この特長が、非常に都合がよいのです。

$$
\sigma'(x) = \sigma(x)(1 – \sigma(x))
$$

モデル式

ある入力\({\bf x}\)に対して、ニューロンが発火するかしないかをとり得る確率変数を\(C\)とおきます。すなわち\(C\)は、ニューロンが発火する場合\(C\)=1、発火しない場合\(C\)=0です。単純パーセプトロンと同様に、以下のようなモデルを考えた場合、

この画像には alt 属性が指定されておらず、ファイル名は image-82.png です

ニューロンが発火する確率は

$$
p(C = 1 | {\bf x}) = \sigma({\bf w}^T{\bf x} + b)
$$

となります。確率は和が1なので、ニューロンが発火しない確率は

$$
p(C = 0 | {\bf x}) = 1-p(C = 1 | {\bf x})
$$

となります。ここで、\(y:=\sigma({\bf w}^T{\bf x} + b)\)とおくと、上記の2式は以下のようにひとまとめにできます。

$$
p(C = t | {\bf x}) = y^t(1 – y)^{1-t}
$$

この式変形は、ちょっとわかりにくいのですが、t=0、t=1をそれぞれ代入したとき、元の式になることが分かるかと思います。

まとめ

  • 機械学習のロジスティック回帰の概要を知ることができました
  • ロジスティック回帰のモデル式が分かりました

次回はこのモデル式から、どのように学習を行っていくかについて説明します。
ロジスティック回帰もニューラルネットワークの基本になるので、しっかり理解していきたいところです!

Reference

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



-機械学習

執筆者:


  1. […] 前回の記事で、ロジスティック回帰はシグモイド関数を用いていること、モデル式が以下のように表せることまでを説明しました。 […]

comment

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

関連記事

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

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

単純パーセプトロン①

Table of Contents こちらを読むと単純パーセプトロンとは式まとめReference こちらを読むと ニューラルネットワークのパーセプトロンの概要を知ることができます 単純パーセプトロン …

ロジスティック回帰④ 勾配法その2

Table of Contents こちらを読むと勾配法の式のおさらい勾配法の式変形シグモイド関数の微分を用いて式変形パラメータの更新式まとめReference こちらを読むと ロジスティック回帰の勾 …

Google Colaboratoryで大容量ファイルの分析を行う完全準備ガイド

Table of Contents こちらを読むとやりたいことたとえばシンプルにやると失敗するベストはGoogle Drive上でzip解凍しておくZIP Extractorで解凍まとめReferen …

kaggleのKernelでGPUを使うには

Table of Contents こちらを読むとはじめにKernelの設定まとめ こちらを読むと kaggleのKernelでGPUを使う方法が分かります。記事の所要時間は5分です。 はじめに ka …

Twitterフォロー

Twitterタイムライン