0

leave-one-out 情報量を事後分布から計算する方法

39
0

まず次のように記号を定義する.

  • θ: すべての未知パラメータ(推定のターゲット)をまとめて θ と置く
  • ϕ(θ): 事前分布の密度関数
  • p(x|θ): 評価の対象となる確率モデルの密度関数. モデルの尤度の部分. 独立同分布の仮定を置く.
  • ϕ(θ): 事後分布の密度関数
  • ϕk(θ): 得られたサンプル x1,x2,,xn から k 番目のサンプル xk を除いてできるデータから実現された事後分布の密度関数

leave-one-out(loo)情報量を次で定義する:

LOOIC=k=1nlog(p(xk|θ)ϕk(θ)dθ.)

この右辺は「データを1個抜いて作った事後分布で作った予測分布で抜いておいたデータの対数尤度を評価したときの値の総和」を意味している.

これと事後分布の定義;
ϕ(θ)=ϕ(θ)p(xk|θ)i=1np(xi|θ)dθϕ(θ)ikp(xi|θ)dθ
から愚直に計算して, 次を得る.
LOOIC=k=1nlog(ϕ(θ)p(xk|θ)ikp(xk|θ)dθϕ(θ)ikp(xi|θ)dθ)=k=1nlog(ϕ(θ)i=1np(xi|θ)dθϕ(θ)p(xi|θ)1i=1np(xi|θ)dθ)=k=1nlog(ϕ(θ)p(xk|θ)1i=1np(xi|θ)dθϕ(θ)i=1np(xi|θ)dθ)=k=1nlog(p(xk|θ)1ϕ(θ)dθ)
この等式は「サンプル1つあたりの尤度の逆数を事後分布により平均したものの総和」で loo 情報量が得られることを示している. つまり事後分布を何回も作り直す必要がなくなって便利である.

ノート

汎化損失を次で定義する:
GE=q(x)logp(x)dx.
ここで q(x) はデータを生成した分布, p(x) は予測分布の密度関数である.

汎化損失を次のように書き直してみる:

GE=q(x)logq(x)p(x)dxq(x)logq(x)dx.

この等式から,

  • 第1項: q(x)p(x)のカルバック・ライブラ情報量
  • 第2項: データを生成した分布 q(x) のみによって定まる. 予測分布 p(x) の選び方に依存しない.

であるから, 汎化損失が小さいほどデータを生成した分布に近い予測分布が得られていることが言える.

loo 情報量は汎化損失をデータ(標本の実現値)で置き換えて計算しているので, 標本サイズ n が大きいとき汎化損失の近似となる.

一般にデータを生成した分布 q(x) は未知(それがわかっていたら統計的推定をする必要がない場面ということ)であり, 汎化損失は直接計算することができないため, 汎化損失が近似的にでも計算できることは嬉しい.

投稿日:2024311
更新日:2024311
OptHub AI Competition

この記事を高評価した人

高評価したユーザはいません

この記事に送られたバッジ

バッジはありません。
バッチを贈って投稿者を応援しよう

バッチを贈ると投稿者に現金やAmazonのギフトカードが還元されます。

投稿者

cocotan
0
2540

コメント

他の人のコメント

コメントはありません。
読み込み中...
読み込み中