機械学習3つのモデル
今日は機械学習の3つの予測モデルを、パターン認識と機械学習を参考に簡単に記します。
画像データを入力すると人物像の有無でクラス分類(Yes Class,No Class)するシナリオを例として使います。
識別関数
画像データを入れるとクラス分類結果を出力するモデルです。
Yes, No のどちらかが出てきます、シンプルですね。
識別モデル
画像データを入れると各クラスの確率を出力するモデルです。
(例) Yes : 70 % , No : 20%
出力された確率を使って判断が出来ます。「基本確率の高い方のクラスに割り当てるが、どちらのクラスも確率が低い場合は判別不可能とする」など決定基準を設けることができます。
学習時の作業
訓練データを使ってクラス事後確率を決めるモデルを作成します
p(Yes | 画像データ), p(No | 画像データ)
生成モデル
画像データを入れると各判定の確率を出力するモデル、ここは識別モデルと同じです。
学習時に各クラスのデータ生成モデルを作っているので、それを使って人工的にデータを作成することができます。
わかりやすく言うと「人物像が写っているクラスの場合、こういうデータ(=画像)が生成される」というモデルなので、これを使って画像データを生成出来たりします。
最近話題になっている人工的な画像を生成する機械学習の多くはこの手法を使っています。
学習時の作業
下記2つを求めます
- 各クラス(Yes,No)の事前確率
- クラス毎のデータ発生確率
求めた分布とベイズの定理を使い事後確率を決めるモデルを作成します - - p(Yes | データ ) = p(データ | Yes) p(Yes) / p(データ)
p(No | データ ) = p(データ | No) p(No) / p(データ)
(補足)確率
ここで言ってる確率というのは、単に (1)みんな0~1の間、(2)合計すると1になる、となるような数値で構成されているものというだけで、なんかの事実に基づく信頼度とか頻度とかではありません。
Photo by Andy Kelly on Unsplash
この記事が気に入ったらサポートをしてみませんか?