jiku log

データサイエンスの核心を掴む : 学びと発見の記録

統計検定1級対策に関する記事一覧 #統計検定

はじめに

本記事について

当ブログでは,統計検定1級・統計検定準1級に関連する数理統計学のTips記事や,私が日々学んでいることを紹介している。

統計検定に合格するためには,参考図書を読み問題演習をしっかりこなすことが重要だと考えるが,当ブログでは私が過去に参考書や問題集を読んでいたときに,つまずいたことや理解を深めるために考えたことを紹介する。そのため,「このサイトの内容さえ読めば,受験対策は完璧!」という性質のブログではないのだが,今後統計検定を受験する方にとって,少しでも参考になればと考える。

これらのTips記事は随時更新されるが,記事の数が増えてきたので,「増訂版 日本統計学会公式認定 統計検定1級対応 統計学」の章立てと,「統計検定1級出題範囲表」に沿ってインデックスを作った。本記事はこのインデックスを示すものである。

自己紹介

私は2023年に統計検定1級の統計数理に,2021年に統計検定1級の統計応用(理工学)に合格した。詳細な自己紹介は,下記サイトに記載した。

第6章 統計応用共通手法 ※記事なし

(記事無し)

「確率的機械学習 入門編I」を読む ~第5章 決定理論 ③モデル選択・その1~

はじめに

持橋大地・鈴木大慈 監訳「確率的機械学習 入門編I」は,世界的に評価の高いK.P.Murphy著 "Probabilistic Machine Learning (Book1)" の和訳であり,確率モデルに基づく機械学習,深層学習といった基礎が丁寧に整理されている。私は統計検定1級として数理統計の基礎は学んできたが,機械学習・深層学習は実務に応じて場当たり的に学んできた。実務での応用に向けて,機械学習・深層学習の基礎を体系的に学び,チームの技術力を底上げしたいと考えている。また読書メモに自身の理解をまとめることで,製造業に携わる若いエンジニアにとっても有益な知識を還元できればと考えている。

※なおボリュームが多い本なので,知っているところは端折りながら読み進めたい。


本記事は,「第5章 決定理論」のモデル選択に関する読書メモである。

5.2 モデル選択

本節では,複数のパラメトリックな候補のモデル(例 : 異なる総数のニューラルネットワーク)から正しいモデルを選ぶ,という問題設定に対して,ベイズ決定理論の道具を用いて解くことについて説明している。

5.2.1 ベイズ仮説検定

本項では,

  • 帰無仮説(null hypothesis)  \mathcal{M}_0
  • 対立仮説(alternative hypothesis)  \mathcal{M}_1

の2種類の仮説を比較して,どちらのモデル(仮説)を選ぶか決める方法を説明している。

モデルに関する事前分布が p(M_0) = p(M_1) = 0.5として,以下で定義されるベイズ因子(Bayes factor)


 \begin{align}
B_{1, 0} \equiv \frac{ p(\mathcal{D} \mid M_1) }{ p(\mathcal{D} \mid M_0) } \\ \\
\end{align}
をもちいて, B_{1, 0} \gt 1すなわち p(\mathcal{D} \mid M_1)の方が p(\mathcal{D} \mid M_0)よりも大きい場合に M_1を選ぶことが最適な決定則となる。

●ブログ筆者註 :
この分子は,


 \begin{align}
p(\mathcal{D} \mid M_1) = \int p(\mathcal{D} \mid \boldsymbol{\theta}, M_1) p(\boldsymbol{\theta} \mid M_1) d \boldsymbol{\theta} \\ \\
\end{align}
となるので,

  •  p(\boldsymbol{\theta} \mid M_1) : モデル M_1から得られるパラメータ \boldsymbol{\theta}
  •  p(\mathcal{D} \mid \boldsymbol{\theta}) : その \boldsymbol{\theta}を用いて得られる尤度

を組合わせて,パラメータを積分消去したものである。

ベイズ因子は,パラメータを積分消去しているということを除いて,尤度比と類似していることが分かる。

硬貨の偏りの検定

帰無仮説・対立仮説の例として, N回効果を投げる「硬貨投げ」を考える。表が出る確率を \thetaとすると,

  •  M_0 : \theta=0.5
  •  M_1 : \theta \in \{ 0, 1 \}

となる。

 M_0では,パラメータが0.5で固定されているので, p(\mathcal{D} \mid M_0) = (1/2)^Nとなる。
一方 M_1では,事前分布としてベータ分布 Be(\alpha_1, \alpha_0)を選び,表・裏の出現回数をそれぞれ N_1, N_0とすると,


 \begin{align}
p(\mathcal{D} \mid M_1) = \int p(\mathcal{D} \mid \theta) p(\theta \mid M_1) d \theta 
= \frac{ B(\alpha_1 + N_1, \alpha_0 + N_0) }{ B(\alpha_1, \alpha_0) } \\ \\
\end{align}
というベータ・二項分布になる。

5.2.2 ベイズモデル選択

本項では,2つ以上のモデル集合 \mathcal{M}の中から1つのモデル m \in \mathcal{M}を選ぶことを考える。これをモデル選択と呼ぶ。

0-1損失を考える場合,最適な行動は,最も事後確率が高いモデルを選択することになる。


 \begin{align}
\hat{m} = \operatorname*{argmax}_{m \in \mathcal{M}} p(m \mid \mathcal{D})
= \operatorname*{argmax}_{m \in \mathcal{M}} \frac{ p(\mathcal{D} \mid m) p(m) }{ \sum_{m \in \mathcal{M}} p(\mathcal{D} \mid m) p(m) } \\ \\
\end{align}

モデルに対する事前分布が一様分布,すなわち p(m) = 1/ \lvert \mathcal{M} \rvertならば,これはMAPモデル


 \begin{align}
\hat{m} &= \operatorname*{argmax}_{m \in \mathcal{M}} p(\mathcal{D} \mid m) \\ \\
p(\mathcal{D} \mid m) &= \int p(\mathcal{D} \mid \boldsymbol{\theta}, m) p(\boldsymbol{\theta} \mid m) d \theta \\ \\
\end{align}
となる。

なお p(\mathcal{D} \mid m)は事後分布のパラメータを積分消去したもので,周辺尤度またはエビデンスと呼ばれる。

ベイズモデル選択の例

本項では,多項式回帰におけるベイズ的モデル選択の例を挙げている。

データに対して,1次・2次・3次の多項式を当てはめており,それぞれ左上・右上・左下に対応している。
この中からモデルを選択するには,各モデルについて p(\mathcal{D} \mid m)を計算することになり,その棒グラフは右下に描かれている。

図に示されているように,右下の棒グラフにおいて p(\mathcal{D} \mid m=\text{2次式})の値が最も大きいので,このデータについては2次式を選ぶことが最適であることが分かる。

多項式回帰におけるベイズ的モデル選択の例

5.2.3 オッカムの剃刀

オッカムの剃刀(Occam’s razor)とは,「複雑なモデルよりも単純なモデルを選ぶ」という原則のことを言う。本項では,ベイズ理論とオッカムの剃刀のかかわりについて説明している。

単純なモデルの場合,事前分布 p(m \mid \mathcal{M})が小さい領域に集中することになる。一方で複雑なモデルの場合, mが取りうる範囲が広くなるので,良いパラメータ \hat{\boldsymbol{\theta}}_2は事前分布 p(m \mid \mathcal{M})において低い確率を取ることになる。したがって周辺尤度はより単純なモデルを好むことになる。
これをベイズオッカムの剃刀効果(Bayesian Occam's razor effect)と呼ぶ。

5.2.4 交差検証と周辺尤度の関係

交差検証は,非ベイジアンの場合のモデル選択手法である。本項では,周辺尤度と一個抜き交差検証(leave-one-out cross-validation, LOO-CV)の関係について説明している。

モデル mの周辺尤度を,次のような逐次的な形で表現する。


 \begin{align}
p(\mathcal{D} \mid m) = \prod_{n=1}^N p(y_n \mid \boldsymbol{x}_n, \mathcal{D}_{1:n-1}, m) \\ \\
\end{align}
この表記は,データ1個ずつ増えていることを表現している。

本書P176で示しているように,上式の右辺の各項は,最適なパラメータ \hat{\boldsymbol{\theta}}_mプラグイン近似で近似できるので,最終的には


 \begin{align}
\log p(\mathcal{D} \mid m) \approx \sum_{n=1}^N \log p(y_n \mid \boldsymbol{x}_n, \hat{\boldsymbol{\theta}}_m (\mathcal{D}_{1:n-1}) ) \\ \\
\end{align}
のように,LOO-CVの尤度の推定量に近い形になっていることが分かる。

まとめと感想

「第5章 決定理論」のモデル選択についてまとめた。

頻度論的統計学との対比を考える

今回,ベイズ仮説検定について学んだ。ベイズ仮説検定の分母・分子には,周辺尤度が登場する。これはモデルに注目して,パラメータを消去したものであるが,ベイズ因子は頻度論的統計学に出てくる尤度比と非常によく似た形をしており,なじみが深い式だと感じた。

頻度論的統計学ベイズ統計学は,対比させるような形で紹介されることが多いが,いずれも統計学であるため,似ているところと異なるところの対比を意識していきたい。

事前分布の複雑さ

ベイズ統計学では,パラメータの事前分布を考える。この事前分布は,モデル \mathcal{M}によって複雑さが変わってくる。
イメージとしては,例えば多項式回帰の場合,

  • 1次式であれば y = w_0 + w_1 x
  • 2次式であれば y = w_0 + w_1 x + w_2 x^2

のようになり,2次式の方がパラメータが多いため,1次式モデルにおけるパラメータの事前分布よりも,2次式モデルにおけるパラメータの事前分布の方が複雑,と考えればよいと思う。

モデルの複雑さについては,「ベイズオッカムの剃刀効果」で言及されていたが,モデル選択は実務上でも重要であるため,ベイズモデルを扱う際には周辺尤度を扱う方法に習熟していきたい。



本記事を最後まで読んでくださり,どうもありがとうございました。

「確率的機械学習 入門編I」を読む ~第5章 決定理論 ②ベイズ決定理論・その2~

はじめに

持橋大地・鈴木大慈 監訳「確率的機械学習 入門編I」は,世界的に評価の高いK.P.Murphy著 "Probabilistic Machine Learning (Book1)" の和訳であり,確率モデルに基づく機械学習,深層学習といった基礎が丁寧に整理されている。私は統計検定1級として数理統計の基礎は学んできたが,機械学習・深層学習は実務に応じて場当たり的に学んできた。実務での応用に向けて,機械学習・深層学習の基礎を体系的に学び,チームの技術力を底上げしたいと考えている。また読書メモに自身の理解をまとめることで,製造業に携わる若いエンジニアにとっても有益な知識を還元できればと考えている。

※なおボリュームが多い本なので,知っているところは端折りながら読み進めたい。


本記事は,「第5章 決定理論」のベイズ決定理論における,ROC曲線・PR曲線・確率的予測問題に関する読書メモである。

5.1 ベイズ決定理論

5.1.3 ROC 曲線

本項では,ROC曲線について説明している。

以下のようなクラス混同行列を考える。

推定値 : 0 推定値 : 1
真値 : 0 TN FP
真値 : 1 FN TP

この混同行列から計算される量のうち,再現率(recall)またはヒット率(hit rate)は,


 \begin{align}
\mathrm{TPR}_{\tau} = p(\hat{y}=1 \mid y=1, \tau) = \frac{ \mathrm{TP}_{\tau} }{ \mathrm{TP}_{\tau} + \mathrm{FN}_{\tau} } \\ \\
\end{align}
で定義される。

また偽陽性(false positive rate, FPR)または誤警報率(false alarm rate)・第一種過誤率(type I error rate)は,


 \begin{align}
\mathrm{FPR}_{\tau} = p(\hat{y}=1 \mid y=0, \tau) = \frac{ \mathrm{FP}_{\tau} }{ \mathrm{FP}_{\tau} + \mathrm{TN}_{\tau} } \\ \\
\end{align}
で定義される。

横軸をFPR・縦軸をTPRとし,二値分類の閾値 \tauを変化させたときに得られる曲線を受信者操作特性(receiver operating characteristic, ROC)曲線と呼ぶ。

ROC曲線の要約統計量

ROC曲線の性能は,AUC(area under the curve)を用いて要約することができる。
もう1つの要約統計量は等価エラー率(equal error rate, EER)で, \mathrm{FNR} = 1 - \mathrm{TPR}となる点で表される。

クラス不均衡

クラス不均衡がある場合でもROC曲線は影響を受けない。それでも,負例の集合が極端に大きい場合,偽陽性率の値があまり変化しなくなるので,ROC曲線の有用性が低下する。

5.1.4 PR 曲線

負例が多い場合,FPRは大きく変化せずROC曲線の有用性が低下する。その対策として,FPRの代わりに,正例だけから計算される適合率(precision)に置き換えることが挙げられる。適合率は,


 \begin{align}
\mathcal{P} ( {\tau} ) = p( y=1  \mid \hat{y}=1, \tau) = \frac{ \mathrm{TP}_{\tau} }{ \mathrm{TP}_{\tau} + \mathrm{FP}_{\tau} } \\ \\
\end{align}
で定義される。

先述したTPRは再現率(recall)と呼ばれ,横軸を再現率・縦軸を適合率とし,二値分類の閾値 \tauを変化させたときに得られる曲線をPR曲線と呼ぶ。

ROC曲線(左)とPR曲線(右)


適合率・再現率の要約統計量として,適合率・再現率の調和平均であるF値が挙げられる。

5.1.5 回帰問題

分類問題では,有限個の行動 \mathcal{A}と自然の状態 \mathcal{H}について考えていた。本項では,これらが実数となる場合,すなわち回帰問題について考える。

L2損失

 L2損失は,


 \begin{align}
L2(h, a) = (h - a)^2 \\ \\
\end{align}
で定義される。

この場合,リスク関数は,


 \begin{align}
R(a \mid \boldsymbol{x}) = E[ (h - a)^2 \mid \boldsymbol{x} ] \\ \\
\end{align}
となる。

最適な行動は,リスクの微分が0になるような行動である。すなわち,


 \begin{align}
\frac{\partial }{\partial a} R(a \mid \boldsymbol{x}) = - 2E[ h \mid \boldsymbol{x} ] + 2 a = 0 \\ \\
\end{align}
となる。これを aについて解くと,最適な行動は事後平均になる。

 \begin{align}
\pi( \boldsymbol{x} ) = E[ h \mid \boldsymbol{x} ] = \int h p(h \mid \boldsymbol{x}) \\ \\
\end{align}
これは,最小二乗誤差(minimum mean squared error, MMSE)推定量と呼ばれる。

L1損失

 L1損失は,


 \begin{align}
L1(h, a) = \lvert h - a \rvert \\ \\
\end{align}
で定義される。L2損失よりも外れ値に強い。

最適な行動は事後中央値(posterior median)すなわち


 \begin{align}
Pr(h \lt a \mid \boldsymbol{x}) = Pr(h \geq a \mid \boldsymbol{x}) = 0.5 \\ \\
\end{align}
となる aである。

フーバー損失

フーバー損失(Huber loss)は,L2損失とL1損失を組合わせたような損失であり,


 \begin{align}
l_{\delta}(h, a) = 
  \begin{cases}
    r^2/2 & (\lvert r \rvert \leq \delta) \\
    \delta \lvert r \rvert - \delta^2 /2 & (\lvert r \rvert \gt \delta) \\
  \end{cases}
\\ \\
\end{align}
と定義される。ただし r = h - aである。

L2損失・L1損失・フーバー損失

5.1.6 確率的予測問題

本項までは,取り得る行動が「クラスラベルを1つ選ぶこと」や「実数値を選ぶこと」ということを想定してた。本項では,取り得る行動の集合が確率分布であることを想定する。
そのため,真の確率分布 p(Y \mid x)と,行動を表す別の確率分布 q(Y \mid x)を比較することになる。

KL,交差エントロピー,対数損失

2つの分布を比較するための損失関数として,カルバック・ライブラー ダイバージェンス(Kullback-Leibler divergece, KLダイバージェンス)が挙げられる。

KLダイバージェンスは,以下のように定義される。


 \begin{align}
D_{KL} (p \mid \mid \mid q ) \equiv \sum_{y \in \mathcal{Y}} p(y) \log \frac{ p(y) }{ q(y) } \\ \\
\end{align}

KLダイバージェンスを変形すると,


 \begin{align}
D_{KL} (p \mid \mid \mid q ) &= -H(p) + H(p, q) \\ \\
H(p) &\equiv \sum_{y} p(y) \log p(y) \\ \\
H(p, q) &\equiv \sum_{y} p(y) \log q(y) \\ \\
\end{align}
のように,エントロピーと交差エントロピーに分解できる。


KLダイバージェンスを最小化するような行動は,交差エントロピーの最小化となる。


 \begin{align}
q^* (Y \mid x) = \operatorname*{argmin}_q H(q(Y), p(Y)) \\ \\
\end{align}

Brierスコア

KLダイバージェンス \log p(y)/q(y)の項は,低確率の事象の誤差に対して影響を受ける可能性が高い。そのため確率の差で定義されるBrierスコアが用いられることがある。

まとめと感想

「第5章 決定理論」のベイズ決定理論における,ROC曲線・PR曲線・確率的予測問題についてまとめた。

分類問題・回帰問題の指標を再確認する

今回出てきたROC曲線や適合率・再現率,L2損失・L1損失などは,機械学習の評価においてはおなじみの話題であった。

しかし本書では,クラス不均衡が発生したときの影響など,実務上で問題になることについて解説しており,有益だと感じた。

また,L2損失・L1損失についても,事後確率との関係が示されており,ベイズ決定理論においては様々な問題が統合的な視点で説明されていることが再確認できた。


本記事を最後まで読んでくださり,どうもありがとうございました。

ベイズ統計における3変数以上の公式

はじめに

この記事は,統計・機械学習の数理 Advent Calendar 2025の8日目の記事である。

持橋大地・鈴木大慈 監訳「確率的機械学習 入門編I」のP124に,ベイズ統計や機械学習ではおなじみの事後予測分布 (posterior predictive distribution)の式


 \begin{align}
p(\boldsymbol{y} \mid \boldsymbol{x}, \mathcal{D} ) = \int p(\boldsymbol{y} \mid \boldsymbol{x}, \boldsymbol{\theta}) p(\boldsymbol{\theta} \mid \mathcal{D}) d \boldsymbol{\theta} \\ \\
\end{align}
が出てきた。


果たして,この等式は自明だろうか?


ベイズ統計学において,よく見かける式は


 \begin{align}
P(A, B) = P(A \mid B) P(B) \\ \\
\end{align}
であるが,初学者がよく見る p(A \mid B)と比べると,事後予測分布の式は変数が増えるため複雑に見える

3変数以上を扱う式は事後予測分布の理解に必要であるため,本記事では,ベイズ統計における3変数以上の公式を整理し,事後予測分布の式を導出するまでの流れを説明する
なお本記事で説明する内容は「公式」というより「応用テクニック」に近いものであるが,本記事中では便宜上「3つの公式」と表現する。

この記事が対象とする読者

本記事で得られること(ベネフィット)

  • ベイズ統計における3変数以上の公式が理解できる。
  • 事後予測分布の式の導出方法が理解できる。

冒頭に本記事の内容を,チートシートとしてまとめる。

ベイズ統計における3変数以上の公式と事後予測分布

ベイズ統計における基本的な公式

同時分布と条件付き分布

確率変数 \boldsymbol{X}, \boldsymbol{Y}の同時分布(同時確率密度関数)は


 \begin{align}
p(\boldsymbol{x}, \boldsymbol{y}) \\ \\
\end{align}
で表される。

 \boldsymbol{x}が与えられたもとでの \boldsymbol{y}確率密度関数を条件付き分布(条件付き確率密度関数)といい,


 \begin{align}
p(\boldsymbol{y} \mid \boldsymbol{x}) \equiv \frac{p(\boldsymbol{x}, \boldsymbol{y})}{p(\boldsymbol{x})} \\ \\
\end{align}
で表す。これを整理すると,

 \begin{align}
p(\boldsymbol{x},\boldsymbol{y}) = p(\boldsymbol{y} \mid \boldsymbol{x}) p(\boldsymbol{x}) \\ \\
\end{align}
となり,これを積の法則(product rule)と呼ぶ。

周辺分布

同時分布が与えられた下で,1つの確率変数に関する周辺分布(marginal distribution)は


 \begin{align}
p(\boldsymbol{y}) = \int p(\boldsymbol{y}, \boldsymbol{\theta}) d \boldsymbol{\theta} \\ \\
\end{align}
で与えられる。

条件付き確率と組み合わせると,


 \begin{align}
p(\boldsymbol{y}) = \int p(\boldsymbol{y}, \boldsymbol{\theta}) d \boldsymbol{\theta} 
= \int p(\boldsymbol{y} \mid \boldsymbol{\theta}) p(\boldsymbol{\theta}) d \boldsymbol{\theta} \\ \\
\end{align}
となる。

周辺分布は,通常では確率変数の数を減らしたいときに用いる公式であるが,このように確率変数の数を増やしたいときに用いることもできる。

ベイズの定理

周辺分布と条件付き分布から,ベイズの公式


 \begin{align}
p(\boldsymbol{\theta} \mid \mathcal{D}) = \frac{p(\mathcal{D} \mid \boldsymbol{\theta}) p(\boldsymbol{\theta})} {p(\mathcal{D})} \\ \\
\end{align}
が得られる。

ベイズの定理は,尤度 p(\mathcal{D} \mid \boldsymbol{\theta})と事前分布 p(\boldsymbol{\theta})から事後分布 p(\boldsymbol{\theta} \mid \mathcal{D})を求めるときに用いる。

条件付き独立

確率変数 Zが与えられたときに,確率変数が X, Yが独立であるとき,「 Zが与えられた下で X Y条件付き独立(conditionally independent)である。」という。


 \begin{align}
X \perp Y \mid Z \Leftrightarrow p(X, Y \mid Z) = p(X \mid Z) p(Y \mid Z) \\ \\
\end{align}

条件付き独立は,

  • 3つ以上の確率変数に関する公式である。
  •  X Zを経由して Yに依存する。

という特徴がある。

3変数以上の公式

以下ではベイズ統計における基本的な公式を用いて,ベイズ統計における代表的な3変数以上の公式を導出する。具体的には,

  1. 変数統合 : 複数の変数をまとめて,条件付き確率の式を使う。
  2. 変数固定 : 条件付ける変数を条件から外して,条件付き確率の式を使う。
  3. 変数消去 : 条件付き独立を用いて,条件付ける変数を消去する。

と名付けた3つの公式について説明する。

公式その1 : 変数統合

1つめの公式は,2つの確率変数をまとめて1つの変数とみなすというものであり,本記事では変数統合と呼ぶ。


 \begin{align}
p(\boldsymbol{x}, \boldsymbol{y}, \boldsymbol{z}) = p(\boldsymbol{z} \mid \boldsymbol{x}, \boldsymbol{y}) p(\boldsymbol{x}, \boldsymbol{y}) \\ \\
\end{align}

■証明 :


 \begin{align}
\boldsymbol{w} = 
  \begin{bmatrix}
    \boldsymbol{x} \\ \boldsymbol{y} \\
  \end{bmatrix} \\ \\
\end{align}
のように変数をまとめると,

 \begin{align}
p(\boldsymbol{x}, \boldsymbol{y}, \boldsymbol{z}) 
&= p(\boldsymbol{w}, \boldsymbol{z}) \\ \\
&= p(\boldsymbol{z} \mid \boldsymbol{w}) p(\boldsymbol{w}) \\ \\
&= p(\boldsymbol{z} \mid \boldsymbol{x}, \boldsymbol{y}) p(\boldsymbol{x}, \boldsymbol{y}) \\ \\
\end{align}
となる。 \blacksquare

公式その2 : 変数固定

2つめの公式は,条件付けている変数を,式変形の前後で条件として与えるというものであり,本記事では変数固定と呼ぶ。


 \begin{align}
p(\boldsymbol{x}, \boldsymbol{y} \mid \boldsymbol{z}) = p(\boldsymbol{y} \mid \boldsymbol{x}, \boldsymbol{z}) p(\boldsymbol{x} \mid \boldsymbol{z}) \tag{1} \\ \\
\end{align}
この式の構造は,通常の条件付き確率

 \begin{align}
p(\boldsymbol{x}, \boldsymbol{y}) = p(\boldsymbol{y} \mid \boldsymbol{x}) p(\boldsymbol{x}) \\ \\
\end{align}
と同じ形である。

■証明 :
(1)式の右辺は,


 \begin{align}
p(\boldsymbol{x}, \boldsymbol{y} \mid \boldsymbol{z}) = p(\boldsymbol{x}, \boldsymbol{y} ,\boldsymbol{z}) / p(\boldsymbol{z}) \tag{2} \\ \\
\end{align}
と変形できる。

この式の分子は,変数統合の公式を用いると,


 \begin{align}
p(\boldsymbol{x}, \boldsymbol{y} ,\boldsymbol{z})
&= p(\boldsymbol{y} \mid \boldsymbol{x}, \boldsymbol{z}) \cdot p(\boldsymbol{x}, \boldsymbol{z}) \\ \\
&= p(\boldsymbol{y} \mid \boldsymbol{x}, \boldsymbol{z}) \cdot p(\boldsymbol{x} \mid \boldsymbol{z}) p(\boldsymbol{z}) \\ \\
\end{align}
となる。これを(2)式に代入すると,変数固定の公式が得られる。 \blacksquare

公式その3 : 変数消去

3つめの公式は,条件付き独立を用いて,変数を1つ消すというものであり,本記事では変数消去と呼ぶ。

 \boldsymbol{z}のもとで \boldsymbol{x} \boldsymbol{y}が条件付き独立である,すなわち


 \begin{align}
p(\boldsymbol{x}, \boldsymbol{y} \mid \boldsymbol{z}) = p(\boldsymbol{y} \mid \boldsymbol{z}) p(\boldsymbol{x} \mid \boldsymbol{z}) \\ \\
\end{align}
であるとする。このとき,

 \begin{align}
p(\boldsymbol{y} \mid \boldsymbol{x}, \boldsymbol{z}) = p(\boldsymbol{y} \mid \boldsymbol{z}) \\ \\
\end{align}
となる。

■証明 :
変数固定の公式を用いると,


 \begin{align}
p(\boldsymbol{y} ,  \boldsymbol{x} \mid \boldsymbol{z}) = p(\boldsymbol{y} \mid \boldsymbol{x}, \boldsymbol{z}) p(\boldsymbol{x} \mid \boldsymbol{z}) \\ \\
\end{align}
となる。ここで条件付き独立の式を用いると,上式の左辺は

 \begin{align}
p(\boldsymbol{y}, \boldsymbol{x} \mid \boldsymbol{z}) = p(\boldsymbol{y} \mid \boldsymbol{z}) p(\boldsymbol{x} \mid \boldsymbol{z}) \\ \\
\end{align}
となるので,

 \begin{align}
p(\boldsymbol{y} \mid \boldsymbol{z}) p(\boldsymbol{x} \mid \boldsymbol{z}) &= p(\boldsymbol{y} \mid \boldsymbol{x}, \boldsymbol{z}) p(\boldsymbol{x} \mid \boldsymbol{z}) \\ \\
\therefore \: p(\boldsymbol{y} \mid \boldsymbol{z}) &= p(\boldsymbol{y} \mid \boldsymbol{x}, \boldsymbol{z})  \\ \\
\end{align}
となり,変数消去の公式が得られる。 \blacksquare

変数消去の公式は,条件付ける変数を消すときに用いることができる。

事後予測分布の導出

ベイズ統計における3変数以上の公式を用いて,「確率的機械学習 入門編I」のP123-124の事後予測分布の式を導出する。

問題設定

本書における問題設定は以下の通りである。

  •  \mathcal{D} = \{(\boldsymbol{x}_n, \boldsymbol{y}_n) : n=1 : N  \}のような観測データが与えられているとする。
  • パラメータの事後分布を計算した後,入力 \boldsymbol{x}が与えられた下での出力 \boldsymbol{y}の事後分布を求める。

確率モデルなどの設定

事後予測分布を導出するにあたり,確率モデルを設定する。これは,「変数消去」の公式において条件付き独立を用いるが,変数間の条件付き独立性を確認するためには,確率モデルが必要になるためである。
すなわち事後予測分布の導出は,単なる式変形ではなく,対象に対する洞察と仮定を必要とするものであると言える。

本書にもとづき,確率モデルやこれに関連する前提条件を整理する。

データ

データに対する条件は明記されていないが,ここでは観測データ \mathcal{D}と,入力・出力 (\boldsymbol{x}, \boldsymbol{y})が,同一分布から独立に得られている(i. i. d. )とする。すなわち,確率分布のパラメータ \boldsymbol{\theta}のもと,観測データ \mathcal{D}と,入力・出力 (\boldsymbol{x}, \boldsymbol{y})が独立,すなわち


 \begin{align}
D \perp (\boldsymbol{x}, \boldsymbol{y}) \mid \boldsymbol{\theta} \\ \\
\end{align}
とする。

尤度

出力 \boldsymbol{y}は,入力 \boldsymbol{x}とパラメータ \boldsymbol{\theta}から得られる条件付き確率だと仮定する。すなわち,出力 \boldsymbol{y}の確率分布は,


 \begin{align}
p(\boldsymbol{y} \mid \boldsymbol{x}, \boldsymbol{\theta}) \\ \\
\end{align}
であるとする。

このようなモデルの例として,例えば \boldsymbol{\theta} = (\boldsymbol{w}, \sigma^2)とした線形モデル


 \begin{align}
y_n = \boldsymbol{w}^T \boldsymbol{x}_n + r_i, \quad r_i \sim \mathcal{N}(0, \sigma^2) \\ \\
\end{align}
などが挙げられる。

このモデルを用いると,観測データ \mathcal{D}に関する尤度は,


 \begin{align}
p(\mathcal{D} \mid \boldsymbol{\theta}) = \prod_{n=1}^N p(\boldsymbol{y}_n \mid \boldsymbol{x}_n, \boldsymbol{\theta}) \\ \\
\end{align}
となる。

事後分布

パラメータ \thetaの事後分布は,観測データ \mathcal{D}を用いて求めることになる。すなわち,尤度と事前分布 p(\boldsymbol{\theta})から,ベイズの定理


 \begin{align}
p(\boldsymbol{\theta} \mid \mathcal{D} ) \propto p(\mathcal{D} \mid \boldsymbol{\theta}) p(\boldsymbol{\theta}) \\ \\
\end{align}
を用いて計算する。

グラフィカルモデル

ここまでの情報をグラフィカルモデルで表現すると以下のようになる。

事後予測分布におけるグラフィカルモデル

事後予測分布の導出の証明

上記の確率モデルと,3変数以上の公式を用いて,事後予測分布を導出する。

まず,周辺分布の式を用いて,パラメータ \boldsymbol{\theta}を登場させる。


 \begin{align}
p(\boldsymbol{y} \mid \boldsymbol{x}, \mathcal{D} ) = \int p(\boldsymbol{y}, \boldsymbol{\theta} \mid \boldsymbol{x}, \mathcal{D}) d \boldsymbol{\theta} \\ \\
\end{align}

次に,変数統合および変数固定の公式を用いて, \boldsymbol{x}, \mathcal{D}を固定して, \boldsymbol{y}, \boldsymbol{\theta}に関する条件付き確率の式を用いると,


 \begin{align}
\int p(\boldsymbol{y}, \boldsymbol{\theta} \mid \boldsymbol{x}, \mathcal{D}) d \boldsymbol{\theta} 
= \int p(\boldsymbol{y} \mid \boldsymbol{\theta}, \boldsymbol{x}, \mathcal{D})  p(\boldsymbol{\theta} \mid \boldsymbol{x}, \mathcal{D}) d \boldsymbol{\theta} \\ \\
\end{align}
となる。

そして確率モデルを確認すると,出力 \boldsymbol{y}と観測データ \mathcal{D}は独立であるため,変数消去の公式を用いると,


 \begin{align}
p(\boldsymbol{y} \mid \boldsymbol{\theta}, \boldsymbol{x}, \mathcal{D}) = p(\boldsymbol{y} \mid \boldsymbol{\theta}, \boldsymbol{x}) \\ \\
\end{align}
となる。

さらに,パラメータの事後分布を計算した後に,入力 \boldsymbol{x}から出力を求めようとしているので, \boldsymbol{\theta} \boldsymbol{x}も独立である。よって,


 \begin{align}
p(\boldsymbol{\theta} \mid \boldsymbol{x}, \mathcal{D}) = p(\boldsymbol{\theta} \mid \mathcal{D}) \\ \\
\end{align}
となる。

以上をまとめると,


 \begin{align}
p(\boldsymbol{y} \mid \boldsymbol{x}, \mathcal{D} ) 
&= \int p(\boldsymbol{y}, \boldsymbol{\theta} \mid \boldsymbol{x}, \mathcal{D}) d \boldsymbol{\theta} \quad \text{(周辺分布)} \\ \\
&= \int p(\boldsymbol{y} \mid \boldsymbol{\theta}, \boldsymbol{x}, \mathcal{D})  p(\boldsymbol{\theta} \mid \boldsymbol{x}, \mathcal{D}) d \boldsymbol{\theta}  \quad \text{(変数固定)} \\ \\
&= \int p(\boldsymbol{y} \mid \boldsymbol{x}, \boldsymbol{\theta}) p(\boldsymbol{\theta} \mid \mathcal{D}) d \boldsymbol{\theta}  \quad \text{(変数消去)}\\ \\
\end{align}
となり,事後予測分布が求められた。

事後予測分布の解釈

最後に得られた事後予測分布の各項を確認してみると,

  •  p(\boldsymbol{y} \mid \boldsymbol{x}, \mathcal{D} ) : 観測データ \mathcal{D}と入力 \boldsymbol{x}が与えられた下で,出力 \boldsymbol{y}を求める。
  •  p(\boldsymbol{y} \mid \boldsymbol{x}, \boldsymbol{\theta}) : 事後分布から生成したパラメータ \boldsymbol{\theta}を用いて,出力 \boldsymbol{y}の予測を行なう。
  •  \int \cdots p(\boldsymbol{\theta} \mid \mathcal{D}) d \boldsymbol{\theta} : 事後分布による期待値を計算する。

となり,確率的な操作によって,観測データから新たな出力を予測していることが確認できた。

まとめ

事後予測分布を求めるために,ベイズ統計における3変数以上の公式として,

  1. 変数統合 : 複数の変数をまとめて,条件付き確率の式を使う。
  2. 変数固定 : 条件付ける変数を条件から外して,条件付き確率の式を使う。
  3. 変数消去 : 条件付き独立を用いて,条件付ける変数を消去する。

と名付けた3つの公式を説明した。

これらの公式を使うと,事後予測分布の式を説明することができるが,条件付き独立を利用するには変数間の関係性,すなわち確率モデルをきちんと定義しておく必要がある。

事後予測分布の導出は,単なる数式の変形なのではなく,確率モデルの操作であるということを理解したうえで計算を進めることが重要である。

宣伝

統計・機械学習の数理 Advent Calendar 2025 について

こちらのAdvent Calenderは,統計・機械学習に関する話題を扱っている。興味深いテーマが公開されていくので,ぜひご覧ください。
adventar.org

弊ブログについて

弊ブログは,数理統計学機械学習,データサイエンスについて学んだことを記事にまとめており,

といったコンテンツを公開しているので,他の記事もご覧ください。

この記事が面白いと感じていただけたら,こちらのバナーを押していってください↓

本記事を最後まで読んでくださり,どうもありがとうございました。

「確率的機械学習 入門編I」を読む ~第5章 決定理論 ①ベイズ決定理論・その1~

はじめに

持橋大地・鈴木大慈 監訳「確率的機械学習 入門編I」は,世界的に評価の高いK.P.Murphy著 "Probabilistic Machine Learning (Book1)" の和訳であり,確率モデルに基づく機械学習,深層学習といった基礎が丁寧に整理されている。私は統計検定1級として数理統計の基礎は学んできたが,機械学習・深層学習は実務に応じて場当たり的に学んできた。実務での応用に向けて,機械学習・深層学習の基礎を体系的に学び,チームの技術力を底上げしたいと考えている。また読書メモに自身の理解をまとめることで,製造業に携わる若いエンジニアにとっても有益な知識を還元できればと考えている。

※なおボリュームが多い本なので,知っているところは端折りながら読み進めたい。


本記事は,「第5章 決定理論」のベイズ決定理論における,基礎と分類問題に関する読書メモである。

5.1 ベイズ決定理論

本節では,観測データが与えられたときの行動(action)を決めるための理論であるベイズ決定理論(Bayesian decision theory)について説明している。

●ブログ筆者註 : ここでいう「行動」とは,例えば

  • 「薬を投与しない/投与する」といった意思決定を行なう
  • 予測クラスラベルを割り振る

といったもの指している。

5.1.1 基礎

本項では,損失関数や事後期待損失など,ベイズ決定理論の基礎的な概念を説明している。

行動にはそれぞれコストと利得がある。この情報は損失関数(loss function)  l(h, a)と呼ばれる。

損失関数に対して,取り得る行動に対する事後期待損失(posterior expected loss)またはリスク(risk)を次のように計算できる。


 \begin{align}
R(a \mid \boldsymbol{x}) \equiv E_{p(h \mid \boldsymbol{x})} [ l(h, a) ] = \sum_{h \in \mathcal{H}} l(h, a) p(h \mid \boldsymbol{x}) \\ \\ 
\end{align}

最適な方策(optimal policy)においては,リスクを最小化するための行動が決定される。


 \begin{align}
\pi^{*} (\boldsymbol{x}) = \operatorname* {argmin}_{a \in \mathcal{A}}  E_{p(h \mid \boldsymbol{x})} [ l(h, a) ] \\ \\
\end{align}
このような最適な方策は,ベイズ定量(Bayesian estimator)とも呼ばれる。

最適方策は,効用関数 U(h, a) = -l(h, a)を用いて,以下のようにも定義される。


 \begin{align}
\pi^* (\boldsymbol{x}) = \operatorname* {argmax}_{a \in \mathcal{A}}  E_{h} [ U(h, a) ] \\ \\
\end{align}

5.1.2 分類問題

本項では,ベイズ決定理論を用いて,観測された入力 \boldsymbol{x} \in \mathcal{X}に対して最適な予測クラスラベルを決定する。

●ブログ筆者註 :
前項では,「最適な方策(行動の決め方)は,リスクが最小になるような行動 aを選ぶことである」ということを説明していた。
この行動 aなるものは抽象的なものであったが,本項では行動の具体例として「予測クラスラベルを決める」というものを挙げている,と考えられる。

0-1損失

判別問題を考える。真のラベル y^*が0または1を取るものとする。また予測ラベル \hat{y}=\{0, 1\}であるとする。真のラベルと予測ラベルの取り得る値に対して,よく使われる損失関数は以下のように定義される。

 \hat{y}=0  \hat{y}=0
 y^*=0 0 1
 y^*=1 1 0

この場合,事後期待損失は


 \begin{align}
R(\hat{y} \mid \boldsymbol{x}) 
&= 0 \cdot p(\hat{y} = y^* \mid \boldsymbol{x}) + 1 \cdot p(\hat{y} \neq y^* \mid \boldsymbol{x}) \\ \\
&= 1- p(\hat{y} = y^* \mid \boldsymbol{x}) 
\end{align}
となる。

●ブログ筆者註 :
本書では,期待損失を最小にする行動について説明しているが,詳細に確認してみた。

ここでいう行動 \pi(\boldsymbol{x})は,


 \begin{align}
\pi(\boldsymbol{x}) = \text{(何らかのクラスラベル$y \in \mathcal{Y} = \{1, ..., C \}$を選ぶこと}) \\ \\
\end{align}
であると言える。すなわち,

 \begin{align}
\pi(\boldsymbol{x}) = \operatorname*{argmax}_{y \in \mathcal{Y}} \cdots \\ \\
\end{align}
という形になる。

また事後期待損失と方策の関係は,


 \begin{align}
\pi^* (\boldsymbol{x}) = \operatorname* {argmax}_{a \in \mathcal{A}}  E_{h} [ -l(h, a) ] \\ \\
\end{align}
なので,

 \begin{align}
\pi^* (\boldsymbol{x}) = \operatorname* {argmax}_{y \in \mathcal{Y}}  \left(  -1+ p(\hat{y} = y^* \mid \boldsymbol{x})  \right) \\ \\
\end{align}
となる。

したがって最適な行動は,確率が最も高いクラス yを選ぶことになる。

これは事後分布の最頻値に相当し,最大事後確率推定(MAP推定)と呼ばれる。

棄却の選択肢付き分類問題

0-1損失の例では,「確率が最も高いクラスを選ぶ」という行動が選択された。しかし,場合によっては信用できない答え(確率値が低い答え)は返さずに,「わからない」と回答する方がよいと考えられる。

損失関数について,

  •  l(y^*, a) = \lambda_r : 「わからない」と回答する(「棄却する」と表現)コスト
  •  l(y^*, a) = \lambda_e : 誤分類のコスト

とすると,

  • 最も確からしいクラスが \lambda^* = 1 - \lambda_r / \lambda_e以下の場合は棄却
  • 上記以外は,最も確からしいクラスを選択

という行動が最適となる。

たとえば下図においては, P(y=1 \mid X) P(y=2 \mid X)の値がそれぞれ閾値以下の部分(棄却領域)では,クラスを選択せずに棄却することが最適な行動となる。

クラスの事後分布が不確かな場合

クラス選択・棄却の選択基準(ブログ筆者補足)

本書P163に,「最も確からしいクラスが \lambda^* = 1 - \lambda_r / \lambda_e以下の場合は棄却,これ以外は,最も確からしいクラスを選択するのが最適な行動」との説明があった。
この内容は,章末問題の回答のP15に説明があった。

棄却のコストと誤分類のコストをそれぞれ \lambda_r, \lambda_eとする。ここでは,

  • リスク \lambda_rで棄却する。
  • リスク \lambda_eで最も確率の高いクラス j_{max}を選ぶ。

のいずれかを選択することになる。

最も確率の高いクラス j_{max}を選ぶときのリスクは,


 \begin{align}
\lambda_e \sum_{j \neq j_{max}} p(Y=j \mid x) = \lambda_e (1 - p(Y=j_{max} \mid x) ) \\ \\
\end{align}
である。

このリスクが,棄却するリスク \lambda_rよりも小さいときは,最も確率が高いクラスを選ぶべきで,このとき以下が成り立つ。


 \begin{align}
\lambda_r &\geq  \lambda_e (1 - p(Y=j_{max} \mid x) ) \\ \\
\therefore \: p(Y=j_{max} \mid x) &\geq 1 - \frac{ \lambda_r }{ \lambda_e } \\ \\
\end{align}
また,上記以外では棄却するべきである。

まとめと感想

「第5章 決定理論」のベイズ決定理論における,基礎と分類問題についてまとめた。

決定理論によって抽象的な立場から眺める

私が統計的決定理論について初めて学んだのは,竹村彰通 著 「現代数理統計学」であった。この本では,推定問題も検定問題も,リスク最小化の観点では同じである,といった趣旨の説明をしていた。

本書の5.1.1節では,決定理論について,損失関数や行動,最適な方策,といった抽象的な説明をしていた。その後0-1損失問題において具体的な説明をしていたが,一段抽象的な立場から見ると,他にも応用が利くと考えられる。ベイズ決定理論に出てくる言葉は,強化学習などを意識したもの出ると考えられるため,今後幅広い応用が期待できる。

argmax・argminを「最適な方策の選択」と解釈する

これまで \mathrm{argmax}, \mathrm{argmin}は,最尤推定などのパラメータ推定の場でよく見かけていた。しかし,5.1.1の最適方策の選択の際には,「複数の選択肢の中から選ぶ」,すなわち行動を指定していることに気付いた。

これまで慣れ親しんでいた表現についても,見方を変えることができる,ということが印象的だった。


本記事を最後まで読んでくださり,どうもありがとうございました。

「確率的機械学習 入門編I」を読む ~第4章 統計学 ⑤頻度論的統計学~

はじめに

持橋大地・鈴木大慈 監訳「確率的機械学習 入門編I」は,世界的に評価の高いK.P.Murphy著 "Probabilistic Machine Learning (Book1)" の和訳であり,確率モデルに基づく機械学習,深層学習といった基礎が丁寧に整理されている。私は統計検定1級として数理統計の基礎は学んできたが,機械学習・深層学習は実務に応じて場当たり的に学んできた。実務での応用に向けて,機械学習・深層学習の基礎を体系的に学び,チームの技術力を底上げしたいと考えている。また読書メモに自身の理解をまとめることで,製造業に携わる若いエンジニアにとっても有益な知識を還元できればと考えている。

※なおボリュームが多い本なので,知っているところは端折りながら読み進めたい。


本記事は,「第4章 統計学」における頻度論的統計学に関する読書メモである。

4.7 頻度論的統計学

前節では,4.6節で扱っていたベイズ統計学ではなく,頻度論的統計学(frequentist statistics)を説明している。

頻度論的統計学は広く使われており,ベイジアンのために役に立つ考え方もあるため,これを理解しておくことは役に立つ。

4.7.1 標本分布

頻度論的統計学の重要な考え方は,データ \mathcal{D}を確率変数,データを生成するパラメータ \boldsymbol{\theta}^*は固定値とみなす。パラメータはデータから推定し, \boldsymbol{\theta} = \hat{\Theta}(\mathcal{D})も確率変数となり,この分布は推定量標本分布と呼ばれる。

4.7.2 MLE の標本分布のガウス近似

最も一般的な推定量はMLEである。標本が大きくなったとき,あるモデルのMLEの標本分布はガウス分布に近づく。この性質を漸近正規性(asymptotic normality)と呼ぶ。

4.7.3 推定量の標本分布のブートストラップ近似

定量がデータに関する複雑な関数の場合や,標本が小さい場合は,標本分布をブートストラップ法によって近似することができる。

ブートストラップ法では,

  • サイズが Nであるようなデータセットを作成する。
  • 上記のようなデータセット S個作る。

という風にデータセットを作成する。それぞれの標本から,推定量 \hat{\boldsymbol{\theta}}^s = \pi(\tilde{\mathcal{D}} ^{(s)})を作成し, \hat{\boldsymbol{\theta}}^sの経験分布を使って標本分布を推定する。

パラメトリックブートストラップ法では,推定量 \hat{\boldsymbol{\theta}}を用いてデータセットを生成する。
またノンパラメトリックブートストラップ法では,元のデータから復元抽出によってデータを得る。

4.7.4 信頼区間

頻度論的統計学では,パラメータ推定の不確実性を見積もるための手段として,パラメータ \thetaの推定の 100(1-\alpha)%信頼区間(confidence interval)を用いる。

たとえば \alpha=0.05とすると95%信頼区間になるが,これは「データを繰り返しサンプルして,それぞれのデータに対して信頼区間 I(\tilde{\mathcal{D}})を計算したとすると,そのような区間のうちおよび95%に真のパラメータが含まれる」という意味である。
そのため1回の試行で得られた区間が「 \mu を含む確率が 95%」という意味ではない。

4.7.6 バイアス-分散トレードオフ

真のパラメータを \theta^*,推定量 \hat{\theta}とすると,推定量バイアスは以下のように定義できる。


 \begin{align}
\mathrm{bias} \equiv E[ \hat{\theta} ] - \theta^* \\ \\
\end{align}
定量が不偏推定量,すなわち E[ \hat{\theta} ] = \theta^*のとき,バイアスは0になる。

不偏推定量とは限らない一般の推定量について,推定の平均二乗誤差(MSE)は,以下のように分散とバイアスに分解できる。ただし \bar{\theta} = E[ \hat{\theta} ]である。


 \begin{align}
\mathrm{MSE} = E[ (\hat{\theta} - \theta^*)^2 ] 
&= E[ ((\hat{\theta} - \bar{\theta} ) + (\bar{\theta} - \theta^* ) )^2 ] \\ \\
&= V[ \hat{\theta} ] + (\mathrm{bias}(\hat{\theta}) )^2 \\ \\
\end{align}
この分解を,バイアス-分散のトレードオフという。
ここから,二乗誤差の最小化を目標とする際には,バイアスの2乗の増加量よりも分散が減少する場合は,バイアスのある推定量を使った方がよい,ということがわかる。

リッジ回帰の例

下図に,リッジ回帰に対するバイアス-分散トレードオフの図解を示す。

リッジ回帰に対するバイアス-分散のトレードオフ

問題設定は以下の通りである。

  • 真の関数は,右上図・右下図に示された緑色の線である。
  • 真の関数から,20個の異なるデータセットを取り出し,ガウス動径基底関数を用いて線形回帰を行なう。
    • このとき,リッジ回帰の正則化項パラメータは \ln(\lambda) = 5, -5とする。

図の説明は以下の通りである。

  • 左上 :  \ln(\lambda) = 5として,ガウス動径基底関数を用いた回帰を行なう。
  • 右上 : 回帰した結果の平均を,赤い点線で表す。また真の関数を緑色の線で表す。
  • 左下 :  \ln(\lambda) = -5として,ガウス動径基底関数を用いた回帰を行なう。
  • 右下 : 回帰した結果の平均を,赤い点線で表す。また真の関数を緑色の線で表す。

正則化パラメータが大きい( \ln(\lambda) = 5)ときは,左上図に示すように分散が小さい。一方で,右上図に示すようにバイアスは大きくなっている。
一方で正則化パラメータが小さい( \ln(\lambda) = -5)ときは,バイアスは減らせていることが分かる。

まとめと感想

今回は,「4 統計学」における頻度論的統計学についてまとめた。

頻度論的統計学の方が,個人的にはなじみのある話題であるが,パラメータの不確実性を評価する際には,ベイズ統計学の信用区間の方が理解しやすいと思った。信頼区間の考え方は誤りやすいので,実務で解釈する際には注意していきたい。

バイアス-分散のトレードオフについて,リッジ回帰を例にした分かりやすい解説があった。リッジ回帰は,現場でも使いやすい分析手法の1つではあるが,正則化パラメータを大きくし過ぎると全体的になだらかになる傾向が出てきて,バイアスが大きくなるということが理解できた。実務上では,交差検証法によって正則化パラメータを選ぶことになり,正則化パラメータが大きすぎるモデルは選択されないと考えられるが,正則化パラメータとバイアス・分散の関係について理解しておくことが重要だと感じた。


本記事を最後まで読んでくださり,どうもありがとうございました。

「確率的機械学習 入門編I」を読む ~第4章 統計学 ④ベイズ統計学・その3~

はじめに

持橋大地・鈴木大慈 監訳「確率的機械学習 入門編I」は,世界的に評価の高いK.P.Murphy著 "Probabilistic Machine Learning (Book1)" の和訳であり,確率モデルに基づく機械学習,深層学習といった基礎が丁寧に整理されている。私は統計検定1級として数理統計の基礎は学んできたが,機械学習・深層学習は実務に応じて場当たり的に学んできた。実務での応用に向けて,機械学習・深層学習の基礎を体系的に学び,チームの技術力を底上げしたいと考えている。また読書メモに自身の理解をまとめることで,製造業に携わる若いエンジニアにとっても有益な知識を還元できればと考えている。

※なおボリュームが多い本なので,知っているところは端折りながら読み進めたい。


本記事は,「第4章 統計学」のベイズ統計学における,信用区間ベイズ機械学習,事後分布の近似に関する読書メモである。

4.6 ベイズ統計学

4.6.6 信用区間

中央区

本項では,推定の不確実性を定量化するための考え方である信用区間(credible interval)を説明している。

 100(1 - \alpha)%信用区間とは,連続な区間 C = (l, u)(下限と上限)であって,事後分布の質量のうち 1 - \alphaの割合を含むものである。


 \begin{align}
C_{\alpha}(\mathcal{D}) = (l, u) : P(l \leq \theta \leq u \mid \mathcal{D}) = 1 - \alpha \\ \\
\end{align}

これを満たす区間は多数存在しうるので,通常は両側の裾に (1-\alpha)/2の割合で質量をもつものを選び,これは中央区間と呼ばれる。

事後分布の関数形が既知であり,累積分布関数の逆関数 F^{-1}gが分かっている場合, l = F^{-1}(\alpha/2)および u = F^{-1}(1- \alpha/2)である。
ただしこの逆関数は一般には求めるのが難しい場合がある。この場合,モンテカルロ近似などで近似する方法がある。


中央区間の問題点は,分布が左右非対称のときに,確率密度が大きい領域が含まれなくなることがある点である。
下図は,中央区間を表している。この分布は右側の裾が長いため,左端の確率密度が高い領域が中央区間に含まれなくなってしまう,すなわち確率密度の値が大きいのに信用区間から外れてしまう領域が出現することである。

中央区

最大事後密度領域

この問題に対応するために,最大事後密度(highest posterior density, HPD)領域を考える。これは,事後確率がある閾値 p^*以上となる点を集めた領域で,その領域が指定された確率質量( 1 - \alpha)を最もコンパクトに含む領域のことを指す。

下図において,青線よりも上の領域に,確率密度関数の質量の 1 - \alphaが集中しているとする。

最大事後密度領域

すなわち青線 p^*の位置は,


 \begin{align}
1 - \alpha = \int_{\theta : p(\theta \mid \mathcal{D}) \gt p^*} p(\theta \mid \mathcal{D}) d\theta \\ \\
\end{align}
を満たす。この青線よりも内側の領域

 \begin{align}
C_{\alpha}(\mathcal{D}) = \{ \theta : p(\theta \mid \mathcal{D} \geq p^*) \} \\ \\
\end{align}
が最大事後密度領域である。

事後分布が多峰性を持つとき,最大事後密度領域は右図のように2つの領域に分かれることがある。

多峰性がある分布における中央区間(左)と最大事後密度領域(右)

4.6.7 ベイズ機械学習

事後分布 p(\boldsymbol{\theta} \mid \mathcal{D})を通じてモデルパラメータ \boldsymbol{\theta}ベイズ的に扱う枠組みを,ベイズ機械学習(Bayesian machine learning)と呼ぶ。

プラグイン近似

パラメータについて事後分布を計算した後,未知パラメータを周辺化することによって,入力が与えられた下での出力の事後予測分布が計算できる。


 \begin{align}
p(\boldsymbol{y} \mid \boldsymbol{x}, \mathcal{D}) = \int p(\boldsymbol{y} \mid \boldsymbol{x}, \boldsymbol{\theta}) p(\boldsymbol{\theta} \mid \mathcal{D}) d\boldsymbol{\theta} \\ \\
\end{align}

しかし,この積分計算は困難であることが多い。かわりに,MLEなどで点推定したパラメータ \hat{\boldsymbol{\theta}}を用いたデルタ関数によって,


 \begin{align}
 p(\boldsymbol{\theta} \mid \mathcal{D})  = \delta(\boldsymbol{\theta} - \hat{\boldsymbol{\theta}}) \\ \\
\end{align}
で,1点に集中したような事後分布を考えると

 \begin{align}
p(\boldsymbol{y} \mid \boldsymbol{x}, \mathcal{D}) = \int p(\boldsymbol{y} \mid \boldsymbol{x}, \boldsymbol{\theta}) p(\boldsymbol{\theta} \mid \mathcal{D}) d\boldsymbol{\theta} 
= p(\boldsymbol{y} \mid \boldsymbol{x}, \hat{\boldsymbol{\theta}}) \\ \\
\end{align}
のように,単に点推定の値を代入(プラグイン)したような事後予測分布が得られる。

プラグイン近似は過剰適合のおそれがある。そのため,いくつかのパラメータをモンテカルロ法で出力し,これらを用いて事後分布を近似する方法がある。

4.6.8 計算上の問題

事後分布の計算は,一般に困難なことが多い。本項では,近似事後分布推論(approximate posterior inference)の方法を説明している。

格子点近似

事後分布推論を近似するための最も単純なアプローチは,未知量 \boldsymbol{\theta}が取り得る値の空間を有限の候補 \boldsymbol{\theta}_1, ..., \boldsymbol{\theta}_Kで集合に分割し,総当たりで事後分布を近似する方法である。
しかしこの方法は,パラメータの次元数に対して指数的に候補が増加してしまうため,2,3次元以上になる場合は使うことができない。

二次(ラプラス)近似

ラプラス近似は,モード \hat{\boldsymbol{\theta}}周りでテイラー展開して2次近似する方法であり,多変量のガウス分布で近似する方法である。

事後分布を以下のように変形する。


 \begin{align}
p(\boldsymbol{\theta} \mid \mathcal{D}) &= \frac{p(\boldsymbol{\theta} , \mathcal{D}) }{ p(\mathcal{D} )}  = \frac{1}{Z} e^{-\mathcal{E}(\boldsymbol{\theta}) }   \\ \\
\mathcal{E}(\boldsymbol{\theta}) &= -\log p(\boldsymbol{\theta}, \mathcal{D}), \quad Z = p(\mathcal{D}) \\ \\
\end{align}
ここで, \mathcal{E}(\boldsymbol{\theta})はエネルギー関数と呼ばれる。

モード \hat{\boldsymbol{\theta}}(すなわち,エネルギーが最も低い状態)の周りでテイラー展開すると,


 \begin{align}
\mathcal{E}(\boldsymbol{\theta}) \approx \mathcal{E}(\hat{\boldsymbol{\theta}} ) + (\boldsymbol{\theta}  - \hat{\boldsymbol{\theta}} )^T \boldsymbol{g}
 + \frac{1}{2} (\boldsymbol{\theta} - \hat{\boldsymbol{\theta}} )^T \boldsymbol{H} (\boldsymbol{\theta} - \hat{\boldsymbol{\theta}} )  \\ \\
\end{align}
ただし,  \boldsymbol{g},  \boldsymbol{H}はそれぞれエネルギー関数の勾配とヘッセ行列である。

  \hat{\boldsymbol{\theta}}はモードであるため,1次の項は0になる。よって,


 \begin{align}
\hat{p}(\boldsymbol{\theta} \mid \mathcal{D}) = 
\frac{1}{Z} e^{-\mathcal{E}(\boldsymbol{\theta}) } \left[ - \frac{1}{2} (\boldsymbol{\theta} - \hat{\boldsymbol{\theta}} )^T \boldsymbol{H} (\boldsymbol{\theta} - \hat{\boldsymbol{\theta}} ) \right] \\ \\
\end{align}
となる。

この式には, \exp()の中に2次形式が出てくるので,多変量ガウス分布の形になる。よって,


 \begin{align}
\hat{p}(\boldsymbol{\theta} \mid \mathcal{D}) = \mathcal{N}(\boldsymbol{\theta} \mid \hat{\boldsymbol{\theta}}, \boldsymbol{H}) \\ \\
\end{align}
が得られる。

まとめと感想

今回は,「4 統計学」のベイズ統計学における,信用区間ベイズ機械学習,事後分布の近似についてまとめた。

信用区間は,推定されたパラメータの不確実性を評価するための方法であるが,中央区間・最大事後密度領域の特徴について把握することができた。
ベイズ統計を用いると,推定されたパラメータの分布を評価することができるが,実務上は得られる事後分布が対称な形になっている保証がないので,最大事後密度領域を用いる方が妥当だと感じた。

プラグイン近似は,実務ではよく用いる方法であるが,過剰適合の可能性があるとのことである。その対策としてモンテカルロ近似が紹介されていたが,計算自体も比較的容易なので,実務でも試してみたい。

ラプラス近似は,複雑な事後分布を多変量ガウス分布で近似するという方法であるが,多変量ガウス分布であれば扱いやすいうえに理解もしやすいので,実務上も有用だと感じた。


本記事を最後まで読んでくださり,どうもありがとうございました。

「確率的機械学習 入門編I」を読む ~第4章 統計学 ④ベイズ統計学・その2~

はじめに

持橋大地・鈴木大慈 監訳「確率的機械学習 入門編I」は,世界的に評価の高いK.P.Murphy著 "Probabilistic Machine Learning (Book1)" の和訳であり,確率モデルに基づく機械学習,深層学習といった基礎が丁寧に整理されている。私は統計検定1級として数理統計の基礎は学んできたが,機械学習・深層学習は実務に応じて場当たり的に学んできた。実務での応用に向けて,機械学習・深層学習の基礎を体系的に学び,チームの技術力を底上げしたいと考えている。また読書メモに自身の理解をまとめることで,製造業に携わる若いエンジニアにとっても有益な知識を還元できればと考えている。

※なおボリュームが多い本なので,知っているところは端折りながら読み進めたい。


本記事は,「第4章 統計学」のベイズ統計学における,ディリクレ・多項モデル,ガウスガウスモデル,共役でない事前分布に関する読書メモである。

4.6 ベイズ統計学

4.6.3 ディリクレ・多項モデル

前項のベータ・二項モデルは二値変数を対象としていたが,本項で扱うディリクレ・多項モデルは, K値変数を対象にしている。

尤度

 Y \sim \mathrm{Cat}(\boldsymbol{\theta})をカテゴリカル分布にしたがう離散変数とする。

●ブログ筆者註 :
カテゴリカル分布は本書P52にある。 C次元のベクトルにおいて,要素の1つだけが1,残りが0となるようなベクトルにおいて,このベクトルの出現確率を表現するのに用いられる。


 \begin{align}
p(\mathcal{D} \mid \boldsymbol{\theta}) = \prod_{n=1}^N \mathrm{Cat}(y_n \mid \boldsymbol{\theta})
= \prod_{n=1}^N \prod_{c=1}^C \theta_c^{\mathbb{I}(y_n =c )} \\ \\ 
\end{align}

事前分布

カテゴリカル分布の共役事前分布は,ディリクレ分布(Dirichlet distribution)が用いられる。ディリクレ分布の確率密度関数は,次のように定義される。


 \begin{align}
\mathrm{Dir} (\boldsymbol{\theta} \mid \overset{\smallsmile}{\boldsymbol{\alpha}})
&\equiv \frac{1}{B(\overset{\smallsmile}{\boldsymbol{\alpha}})} \prod_{k=1}^K \theta_k^{ \overset{\smallsmile}{\alpha} - 1 }
\mathbb{I} (\boldsymbol{\theta} \in S_K) \\ \\

S_K &= \left\{ \boldsymbol{\theta} : 0 \leq \theta_k \leq 1, \sum_{k=1}^K \theta_k = 1  \right\} \\ \\

B(\overset{\smallsmile}{\boldsymbol{\alpha}}) 
&\equiv \frac{  \prod_{k=1}^K \Gamma(\overset{\smallsmile}{\alpha}_k) }{  \Gamma(\sum_{k=1}^K \overset{\smallsmile}{\alpha}_k))  } \\ \\

\end{align}

 K=3におけるディリクレ分布を下図に示す。

K=3のディリクレ分布

事後分布

 K値変数において k (k=1,...,K)番目の要素が1になった回数を N_kで表す。多項分布の尤度とディリクレ事前分布を組合わせると,以下のような事後分布が計算される。


 \begin{align}
p(\boldsymbol{\theta} \mid \mathcal{D}) 
&\propto p(\mathcal{D} \mid \boldsymbol{\theta}) p(\boldsymbol{\theta}) \\ \\
&=\mathrm{Dir} (\boldsymbol{\theta} \mid \overset{\smallsmile}{\alpha}_1 + N_1, ..., \overset{\smallsmile}{\alpha}_K + N_K)) \\ \\
&=\mathrm{Dir} (\boldsymbol{\theta} \mid \overset{\smallfrown}{\boldsymbol{\alpha}} ) \\ \\
\end{align}
となり,事後分布もカテゴリカル分布になる。

●ブログ筆者註 :
ディリクレ・多項モデルは,トピックモデルにおけるLDA(Latent Dirichlet Allocation)の中心的な構成要素である。

4.6.4 ガウスガウスモデル

本項では,ガウス分布のパラメータの事後分布について説明している。なお簡単のため,分散 \sigma^2は既知であるとする。

単変量

 \mu に関する尤度は以下のような形になる。


 \begin{align}
p(\mathcal{D} \mid \mu) \propto \exp \left( -\frac{1}{2\sigma} \sum_{n=1}^N (y_n - \mu)^2 \right) \\ \\
\end{align}

 \mu の事前分布もガウス分布 \mathcal{N}(\mu \mid \overset{\smallsmile}{m},  \overset{\smallsmile}{\lambda})とする。ただし \overset{\smallsmile}{\lambda}は分散の逆数である。事後分布は


 \begin{align}
p(\mu \mid \mathcal{D}, \kappa) &= \mathcal{N}(\mu \mid  \overset{\smallfrown}{m}, \overset{\smallfrown}{\lambda}^{-1}) \\ \\

\overset{\smallfrown}{\lambda} &= \overset{\smallsmile}{\lambda} + N {\kappa} \\ \\

\overset{\smallfrown}{m} &= \frac{N {\kappa}}{N {\kappa} + \overset{\smallsmile}{\lambda}} \bar{y} + 
\frac{ \overset{\smallsmile}{\lambda} }{N {\kappa} + \overset{\smallsmile}{\lambda}} \overset{\smallsmile}{m} \\ \\

\end{align}
となる。

すなわち,

  • 事後分布の精度は,事前分布の精度に,観測の精度 \kappa N倍を加えたものになる。
  • 事後分布の平均は,事前分布の平均と標本平均の凸結合になる。

ということが分かる。

また事後分布の平方根は,平均の標準誤差と呼ばれ,


 \begin{align}
\mathrm{se} (\mu) = \sqrt{V[ \mu \mid \mathcal{D} ]} = \frac{s}{\sqrt{N}} \\ \\
\end{align}
となる。ただし s^2は標本分散である。 \muにおける不確実性は, 1/\sqrt{N}のレートで減少する。

4.6.5 共役ではない事前分布

これまで例に挙がっていた共役事前分布は,すべて指数型分布族であった。指数型分布族は,計算がしやすいといった利点があるが,実際は

  • 尤度に対して共役な指数型分布族の事前分布があるとは限らない。
  • 共役自然分布があったとしても,共役性の仮定が強すぎる。

といった不都合があることがある。

本項では,共役ではない事前分布について説明している。

無情報事前分布

ドメイン知識がほとんど得られないときは,無情報事前分布(non-informative prior)を用いることが望ましい。たとえば, p(\mu) \propto 1のような定数が用いられる。

ただし,無情報事前分布を定義する方法は一意ではなく,何らかの情報を含むことになるので,拡散した事前分布といった表現が用いられることがある。

階層的事前分布

事前分布 p(\boldsymbol{\theta})をさらに事前分布を設定するモデルを階層ベイズモデル(hierarchical Bayesian model)とよぶ。例えば,同時分布は以下のような形になる。


 \begin{align}
p(\boldsymbol{\phi}, \boldsymbol{\theta}, \mathcal{D}) = p(\boldsymbol{\phi}) p(\boldsymbol{\theta} \mid \boldsymbol{\phi}) p(\mathcal{D} \mid \boldsymbol{\theta}) \\ \\
\end{align}

経験事前分布

階層ベイズモデルは,事後分布の推論が計算的に困難になることがある。本項では,計算が容易な近似手法を説明している。

手順としては,ハイパーパラメータ \boldsymbol{xi}を,周辺尤度の最大化によって求める。


 \begin{align}
\hat{\boldsymbol{\xi}}_{mml}(\mathcal{D}) = \operatorname*{argmax}_{\boldsymbol{\xi}} p(\mathcal{D} \mid \boldsymbol{\xi})
= \operatorname*{argmax}_{\boldsymbol{\xi}} p(\mathcal{D} \mid \boldsymbol{\theta}) p(\boldsymbol{\theta} \mid \boldsymbol{\xi}) d\boldsymbol{\theta} \\ \\
\end{align}
これは,第二種最尤推定 (type II maximum likelihood)と言われる。

このように得られた \hat{\boldsymbol{\xi}}を用いて,事後分布 p(\boldsymbol{\theta} \mid \hat{\boldsymbol{\xi}}, \mathcal{D})を計算する。このアプローチは,事前分布のパラメータをデータから推定しているので,経験ベイズ(empirical Bayes, EB)と呼ばれる。

まとめと感想

今回は,「4 統計学」のベイズ統計学における,ディリクレ・多項モデル,ガウスガウスモデル,共役でない事前分布についてまとめた。

ディリクレ・多項モデルは,登場する確率分布が複雑なものになっているが,ベータ・二項モデルの自然な拡張になっているため,ベータ・二項モデルで出てきた計算手法が応用できることが理解できた。

ガウスガウスモデルは,事前分布も尤度もガウス分布を用いるため,事後分布もガウス分布になる,という性質が確認できた。また事後分布の平均・分散(精度)についても,事前分布・尤度のパラメータの和や凸結合になるといった美しい性質があることが確認できた。

実際の応用シーンでは,共役事前分布が必ずしも扱えるとは限らない。そのための手法として無情報事前分布や階層的事前分布,経験事前分布が紹介されていた。これらは,計算量や表現力の間にトレードオフがあると考えているが,実際の計算例を通じて比較してみたいと思った。


本記事を最後まで読んでくださり,どうもありがとうございました。