2019.04.09

ベイズ統計の評価基準をちゃんと勉強してみる2(正則理論編)

Pocket

こんにちは。次世代システム研究室のベイズ大好きK.Nです。

前回に引き続き、ベイズ統計の本の内容に基づいて、評価基準をなるべく直感的に理解できるよう解説していきます。

前回は、「知りたい値はどんなものか(汎化損失)」「サンプルから計算できる値はどんなものか(経験損失・自由エネルギー)」について、簡単に説明しました。

おさらいすると、それぞれ以下のような意味合いです。

  • 汎化損失:モデルが真の分布をどの程度表現できるか
  • 経験損失:モデルが観測したサンプルをどの程度表現できるか
  • 自由エネルギー:予測分布と真の分布がどの程度近いかを、観測したサンプルに基づいて評価した値
今回は、「計算できる値」の挙動から、「知りたい値」の挙動を理解しよう、という話の一回目です。

3章の「正則理論」に基づいて、事後分布が正規分布に近似できる場合に成り立つ法則を追っていきます。

自由エネルギーの挙動

自由エネルギーは、真の分布(+観測されたサンプル)にのみ依存する項と、真の分布と予測分布の違いを表す項から成ります。前者は実際には量ることができないけれど定数であるため、自由エネルギー全体が相対的に小さいほど良いモデルになっていると考えることができます。

ただし、実際には、サンプルの振る舞いに依存するので、必ずしもそうとは言えません。本当に知りたいのは、「いろいろなサンプル集合に対して、平均的に自由エネルギーが小さくなるようなモデル」です。一つのサンプル集合に対する自由エネルギーは、事後分布を正規分布に近似することで計算することができます。では、一つのサンプル集合での自由エネルギーは、平均的な自由エネルギーをどのくらい表せているのでしょうか?

この振る舞いを調べる上で、「事後分布が正規分布に近似できる」という仮定が生きてきます。自由エネルギーは、事後分布の正則化項(の対数に比例する値)です。事後分布が正規分布ということを利用すると、自由エネルギーは正規分布の正則化項の対数で表されます。

「自由エネルギーと、その平均の差」は、サンプルが十分にあるとき、ある平均0の正規分布の「1サンプルの二乗ノルムと、分散の差」となります。この分散は、モデルが真の分布を表現できるなら小さく、難しいなら大きくなります。

ここは僕の考えですが、サンプルが大量にある場合、複数のサンプルセットに分けて自由エネルギーを複数計算し、その分散を推定することができれば、そのモデルがどの程度良いかを評価することができそうです。

経験損失の挙動

汎化損失は、定義したモデルが真のモデルをどの程度表現できるか、モデル選択の正しさを示す指標です。しかし、汎化損失は真の分布を知らないと測れません。一方、経験損失は、観測したサンプルに基づいて、サンプルをどの程度表現できるか(できないか)、別の表現をするなら、経験分布をどの程度表現できるか(できないか)を表していると言えると思います。

この経験損失に基づいて、汎化損失がどの程度の大きさなのかを推定することができれば、モデル選択に大いに役立つことはわかると思います。

さて、この汎化損失を経験損失から見積もる話ですが、参考書の通りなら、「経験損失に、サンプル出現確率の不確かさを加えたもの」が、平均的に汎化損失の期待値に近づくとあります。解釈としては、経験損失はサンプルに依存するため、その分を加味して考えてあげれば良い、と言うことになり、また自由エネルギーの時と同様に、サンプルがたくさんあれば、実際に分割して経験損失の平均値を計算することで、汎化損失を推定することもできるかもしれません。(ただ、解釈上は納得いくのですが、途中の数式が省略されており、なぜ近づくのかという点に関しては、自分の中ですっきりしない部分でもあります。。。)

注意

ここまで、事後分布が正規分布に近似できる場合に、自由エネルギー・汎化損失をどのように見積もるかという話をしてきました。近似が成り立つ場合には、正規分布の良い性質を使うことができ、一定の指標を得ることができました。しかし、事後分布が正規分布に近似できるかどうかに関しては、ここまでに出てきた数字を眺めるだけでは確かめることができません。以降の章で出てくる議論でそこについては触れられると思いますが、現時点での自分なりの見解を書いておきたいと思います。

事後分布が正規分布に近似できるかどうかに関して、比較的簡単に見積もる方法として、サンプリングが考えられます。これは、マルコフ連鎖モンテカルロ法などにより、事後分布からのサンプルを大量に得て、そのサンプルの正規性を確かめる方法です。サンプリングも正規性の検定も、ライブラリなどで実装があります。ただし、モンテカルロ法は、分布からのサンプルを完璧に得られる保証はありません。特に、事後分布が特異分布になっている場合は非常に難しいと思います。この方法を試す場合は、十分以上に大きなサンプル数で試すことをお勧めしたいと思います。

 

最後に

いかがでしたでしょうか?次世代システム研究室では、多様なアプローチを持ち寄って議論を深め、より良いサービスを追い求めていける仲間を募集しています。興味を持って頂ける方がいらっしゃいましたら、ぜひ 募集職種一覧からご応募をお願いします。