機械学習

【入門】生成モデルと統計的機械学習について(機械学習)

【入門】生成モデルと統計的機械学習について

 

Yuma
Yuma
生成モデルと統計的機械学習の基本について説明していきます。

本記事の内容

  1. 統計的機械学習と生成モデル
  2. どのように学習モデルを構築するのか
  3. 学習モデルのパラメータ調節について

 

統計的機械学習と生成モデル

統計的機械学習と生成モデルについて簡単に説明していきます。

『統計的機械学習』『生成モデル』は、機械学習の場面で定義が揺れている気がするので、本記事で使用する定義を説明します。

恐らく、本記事で使用している定義が一般的だと思います。

 

生成モデルとは

 

まずは、以下の画像を見てください。

Mnist引用元 : MNIST Dataset

 

このデータは、白黒画像なので、\( \{0,1\} \)の2値のn個(28×28)の要素から構成されます。

その白黒画像のデータセットの各要素を\( \mathbf{x} = \{x_{i} \in \{0,1\} \}_{i=1}^{n} \)と表すことにします。

さらに、このデータ点が確定的に出現したのではなく、背後にある確率分布\(Q(\mathbf{X})\)から生成されたものと仮定します。

ここで、\( \mathbf{X} \)は、\( \mathbf{X} = \{X_{i} \in \{0,1\} \}_{i=1}^{n} \)の確率変数を表すことにします。

ここで仮定した、データの背後にある同時確率分布\(Q(\mathbf{X})\)を『生成モデル』と呼びます。

重要なことは、生成モデルは一般に未知であることです(データに対する事前知識があれば、部分的な情報は既知)

 

統計的機械学習

 

早速ですが、未知の生成モデルを知るにはどうしたら良いでしょう?

一つのアイデアは、与えられているデータ点から生成モデルを予測することです。

確かにデータが数個しかない場合は、生成モデルを予測することは困難ですが、データ数が多ければ生成モデルを予測できる気がしますね。

例えば、サイコロを数回振っただけでは、本当に各数字が1/6で出るということは予測できませんが、仮に1億回振ったとしたら1/6を予測できそうですよね。

このように、与えられたデータから生成モデルを近似的に構築する枠組みのことを『統計的機械学習』と言います。

 

 

どのように生成モデルを構築するのか

 

この章では、与えられたデータからどのように生成モデルを近似的に再現するのかを説明していきます。

当然、構築する方法は任意性があるので、本章では、その中の一つにフォーカスして紹介していきます。

学習モデルを仮定する

 

与えられたデータから生成モデルを予測する一つのアイデアは、パラメータ\(\theta\)を持つ\(P(\mathbf{X} \mid \theta) \)を仮定し、データ集合から\(\theta\)を調節する方法です。

ここで、\(P(\mathbf{X} \mid \theta)\)を『学習モデル』と呼ぶことにします。

この学習モデル\(P(\mathbf{X} \mid \theta)\)には、任意性があり一般に事前知識を用いて決定します。

また、今回は説明しませんが学習モデルが\(\theta\)によって特徴付けられないモデルもあります。

一般にパラメータ\(\theta\)を用いる方法を『パラメトリック法』、用いない方法を『ノンパラメトリック法』といいます。

 

具体的に事前知識とは?

 

例えば、コイン投げのような場合は、二値の値を取るので確率分布を予測するためには、学習モデルとしてベルヌーイ分布を仮定すれば良さそうですね。

このように、学習モデルの確率分布の関数系は経験的に事前知識を利用してあらかじめ決定しておきます。

当然、事前知識が全くない状況もありますが、そのようなケースでも学習モデルを適切に選ぶための方法は存在します。

 

学習モデルのパラメータ調節について

 

簡単に、『パラメータ\(\theta\)を調節』と言いましたが、どのように調節したら良いのでしょうか。

当然、パラメータの調節にも任意性があるので、ここでは、パラメータを調節する一つの方法を紹介します。

一般に機械学習の文脈では、このパラメータの調節を『学習』といい、調節方法を『学習アルゴリズム』といいます。

今回紹介する調節方法を理解するために、まずは『KL Divergence』という量について紹介します。

 

KL Divergenceとは

 

KL Divergenceの正式名称は、『Kullback-Leibler divergence』です(相対エントロピーと呼ばれることもあります)

詳しく説明しませんが、KL Divergenceは以下のように定義され、2つの確率分布間の『差異』を測る尺度として使われます。

KL Divergence

\(P, Q\)を離散確率分布とするとき、PとQに対するKL Divergenceは以下のように定義されます。

$$\text{D}_{\text{KL}}(P \mid Q) = \sum_{\mathbf{X}} P(\mathbf{X}) \log \frac{P(\mathbf{X})}{Q(\mathbf{X})} $$

一方、P, Qが連続確率分布の場合は以下のように定義されます。

$$\text{D}_{\text{KL}}(P \mid Q) = \int_{-\infty}^{\infty} p(x) \log \frac{p(x)}{q(x)}  $$

 

イメージ的には、確率分布PとQがどのくらい似ているかを表していると思ってください。

PとQの間のKL Divergenceが小さい PとQは似ている
PとQの間のKL Divergenceが大きい PとQは似ていない

 

 

生成モデルとのKL Divergenceを最小化

 

KL Divergenceは、確率分布間の差異を表すため、学習モデルと生成モデルの間のKL Divergenceが小さければ学習モデルとしては嬉しいですね。

つまり、パラメータを調節する一つの方法は、以下で定義される生成モデルとのKL Divergenceを最小化するようにパラメータを選ぶ方法です。

$$\text{D}_{\text{KL}}(\theta) = \sum_{\mathbf{X}} Q(\mathbf{X}) \log \frac{Q(\mathbf{X})}{P(\mathbf{X} \mid \theta)}   $$

しかし、生成モデルの確率分布を知ることができないので、生成モデルの代わりに与えられたデータの経験分布\(\hat{Q}(\mathbf{X})\)を使用します。

経験分布はN個のデータ集合\(\mathcal{D} = \{\mathbf{X}^{(\mu)} \}_{m=1}^{M}\)を用いて以下のように表せます。

$$\hat{Q}(\mathbf{X}) = \frac{1}{M} \sum_{m=1}^{M} \delta \left(\mathbf{X}, \mathbf{X}^{(\mu)}  \right)   $$

この経験分布を生成モデルの代わりに使用したKL divergenceを最小化するようにパラメータを選びます。

$$\text{D}_{\text{KL}}(\theta) = \sum_{\mathbf{X}} \hat{Q}(\mathbf{X}) \log \frac{\hat{Q}(\mathbf{X})}{P(\mathbf{X}\mid \theta)}   $$

 

経験分布を用いたKL Divergenceと最尤推定

 

KLダイバージェンスの評価に経験分布を代入した量を系統的に展開すると以下のようになります。

\begin{align}\mathrm{D}_{\mathrm{KL}}(\theta) &= \sum_{\mathbf{X}} \hat{Q}(\mathbf{X}) \log \hat{Q}(\mathbf{X}) – \sum_{\mathbf{X}} \hat{Q}(\mathbf{X}) \log P(\mathbf{X} \mid \theta) \\ &=~ – \frac{1}{N}\sum_{\mu=1}^{N} \log P(\mathbf{X}^{(\mu)} \mid \theta) + \mathrm{const} \end{align}

まさに最後の等式は、対数尤度に\(-1\)をかけたものとなり、経験分布を使用した場合はKLダイバージェンス最小化は対数尤度最大化と等価になります。

 

KL Divergenceの最小化法

 

上記の結果から、以下の経験分布を用いたKL Divergenceを最小化するようにパラメータを選びます。

$$\text{D}_{\text{KL}}(\theta) = \sum_{\mathbf{X}} \hat{Q}(\mathbf{X}) \log \frac{\hat{Q}(\mathbf{X})}{P(\mathbf{X} \mid \theta)}   $$

最小化するためには、\(\theta\)で微分して極値を求めれば良いです。

\begin{align}\frac{\partial}{\partial \theta} \text{D}_{\text{KL}}(\theta) &=  \frac{\partial}{\partial \theta} \sum_{\mathbf{X}} \hat{Q}(\mathbf{X}) \left(\log \hat{Q}(\mathbf{X}) – \log P(\mathbf{X}\mid \theta)  \right) \\ &= ~ – \frac{\partial}{\partial \theta} \sum_{\mathbf{X}} \hat{Q}(\mathbf{X})  \log P(\mathbf{X} \mid \theta) \\ &= 0 \end{align}

この\(\theta\)に関する連立方程式を解けば良いことになります。

勾配降下法による最小化 

 

上記で導出した方程式は一般に解くことは難しいので、勾配降下法を利用して最小化を目指します。

具体的には、以下のようなアルゴリズムで最小化を目指すことができます。

勾配降下法による最小値探索

$$\theta^{(t+1)} \leftarrow \theta^{(t)} – \epsilon \frac{\partial}{\partial \theta} \text{D}_{\text{KL}}(\theta) $$

ここで、\(\epsilon \in \mathbb{R}_{+} \)は、学習率と呼ばれます。

以下が勾配降下法のイメージです。

勾配降下法

学習率\(\epsilon\)で徐々に極小値になるように更新するイメージです。

このようなアルゴリズムを学習方程式と呼ぶことにします。

これで、パラメータを適切に調節すれば学習モデルを生成モデルに近づけることが可能になります。

参考文献

 

参考文献について紹介します。

パターン認識と機械学習 下

 

確率的グラフィカルモデル

 

深層学習 Deep Learning

 

これならわかる深層学習入門

 

深層学習

 

どの本もわかりやすくオススメです。

 

まとめ

 

今回は、生成モデルと統計的機械学習について簡単に説明しました。

基本的に、生成モデルを構築する手法で有名なGANやボルツマンマシンもこの枠組みで全て説明することができます。

ここで、基本的な枠組みを理解することで、これ以降の具体的な学習モデルを簡単に理解することができます。

 

 

ABOUT ME
努力のガリレオ
【運営者】 : 東大で理論物理を研究中(経歴)東京大学, TOEIC950点, NASA留学, カナダ滞在経験有り, 最優秀塾講師賞, オンライン英会話講師試験合格, ブログと独自コンテンツで収益6桁達成 【編集者】: イングリッシュアドバイザーとして勤務中(経歴)中学校教諭一種免許取得[英語],カナダ留学経験あり, TOEIC650点
【必見】オンライン英会話を利用しないのは時代遅れ?

 

 

英語学習でオンライン英会話を利用しないのは、時代遅れです…

 

『スピーキングができないから、オンライン英会話はまだまだ後回し…』と思っている方は大間違いです。

 

最近のオンライン英会話は、教材が豊富で、もはや参考書・問題集は不要になりつつあります…

また、多くのオンライン英会話が最新メソッドを導入して、スピーキングのみならず、リーディング・リスニング・ライティングの能力も上がる教材を導入しています。

さらに、効率的な記憶ツールや学習カウンセリングのサービスが提供されることもあります!!

 

特に初心者の方は、下記の記事で紹介しているオンライン英会話をチェックしてみてください。

 

【東大生が厳選】初心者にオススメなオンライン英会話10選実は、最適なオンライン英会話はユーザーによって異なります。本記事では、複数のオンライン英会話を経験した私が、他社と比較しつつ特徴を明確にして本当にオススメできるオンライン英会話を10個厳選しました。...

 

中には、2週間の無料体験期間を提供しているオンライン英会話もあります。

英語学習が滞っている方や英語学習を習慣化できていない方は無料体験期間で良いので挑戦してみてください。

何事も行動することが大切です。

 

また、多くのオンライン英会話がTOEICやTOEFL等の外部英語試験の対策レッスンを提供してきています。

中には、追加料金なしで、本番さながらの対策や面接対策を行うことができるオンライン英会話もあります。

 

特にTOEIC対策に強いオンライン英会話は下記を参考にしてください。

 

【徹底比較】TOEIC対策に強いオンライン英会話5選|東大生が厳選!オンライン英会話はTOEICのスコアを効率的に上げる最強のツールです。本記事では、TOEICにオンライン英会話が効果的な理由とTOEIC対策に強いオンライン英会話を厳選しました。詳しい内容は記事を参考にしてください。...

 

TOEFL対策に強いオンライン英会話に関しては下記を参考にしてください。

 

【徹底比較】TOEFL対策に強いオンライン英会話5選|東大生が厳選!TOEFL対策にオンライン英会話は有効です。事実、私もTOEFL対策のためにオンライン英会話を使用してTOEFL ibtの4技能、TOEFL itpのスコアを爆上げすることができました。この記事では、私が思うTOEFL対策に最適なオンライン英会話を紹介しました。...