Wishart分布の行列式の分布

  • 前の記事
  • こう書ける
  • Wishart分布が二つあり、片方が仮説によるばらつき、もう片方がサンプリングバイアスであって、両者は独立であるとすると、後者のばらつきの指標である行列式と前者と後者の和(分散は独立な2つの正規分布のそれなので足し合わせられる)のばらつきの指標〜行列式の比が、ラムダであって
  • それ対数を自由度などで補正すると、それは、サンプル数が多いとき(自由度が大きいとき)、Wishart分布の次元(変数の数)と仮説の変数の数(自由度)との積を自由度とするカイ二乗分布に近似できる(とWikipediaに書いてある(こちら)
  • それをRでなぞる
library(MCMCpack)
library(GPArotation)
n.v <- 2 # No. variables
# 正定値行列
lambda <- runif(n.v)*2
V <- Random.Start(n.v)
sigma <- t(V) %*% diag(lambda) %*% V
# 自由度(サンプリングバイアスの自由度、仮説の自由度)
n <- c(1000,2)
n.iter <- 100
ret <- rep(0,n.iter)
for(i in 1:n.iter){
	r1 <- rwish(n[1],sigma)
	r2 <- rwish(n[2],sigma)
	ret[i] <- det(r1)/det(r1+r2)
}
hist(ret)
ret2 <- log(ret) * ((n.v+n[2]+1)/2 - n[1])
chisq <- rchisq(n.iter,n[2]*n.v)
plot(sort(ret2),sort(chisq))
abline(0,1,col=2)
  • ちなみに、Wishart分布の行列2つについては以下が成り立つ
det(r1)/det(r1+r2)
1/det(diag(rep(1,n.v))+solve(r1)%*%r2)