私はsklearnのBayesianGaussianMixture(と同じ問題を示しているGaussianMixture)を使ってPythonを試しました。sklearnのBayesianGaussianMixtureからの非常に大きなログ確率
ディストリビューションから引き出されたいくつかのアイテムをモデルにあてはめ、保持されているデータセット(ディストリビューションの一部、外部のもの)でモデルをテストしました。
何か等:
X_train = ... # 70x321 matrix
X_in = ... # 20x321 matrix of held out data points from X
X_out = ... # 20x321 matrix of data points drawn from a different distribution
model = BayesianGaussianMixture(n_components=1)
model.fit(X_train)
print(model.score_samples(X_in).mean())
print(model.score_samples(X_out).mean())
出力:
-1334380148.57
-2953544628.45
score_samples
方法のサンプルは、はるかに可能性が高い "よりも「の」与えられたデータのサンプルごとの対数尤度を返し、そして私はちょうど絶対値がなぜそんなに高いのだろうかと思っていますか?
score_samples
のドキュメントでは、「各サンプルの重み付けされたログ確率を計算します」と記載されていますが、重みの基になっているかどうかは不明です。
まず入力を拡大する必要がありますか?入力ディメンションが高すぎますか?パラメータのチューニングを追加する必要がありますか?あるいは、私は方法が返すものを誤解していますか?