1

MATLAB でゼロから EM を使用してガウス混合モデルの学習を実装しようとしています。このプロジェクトでは、後で標準の GMM モデルにいくつかの変更を加える必要があります。そのため、私は VLFeat や Stats Toolbox などの市販の実装を使用していません。実装のロールアウトは学習体験であり、後で簡単にカスタマイズできます。

具体的には、球面共分散を持つ GMM の EM をコーディングします。

  1. 空のクラスターの処理。GMM の一部のコンポーネントにデータが割り当てられていない場合の処理​​に問題があります。それらの事後確率質量はゼロまたは無視できます。このケースは、多数のクラスターが定義されている場合に発生します。このケースを処理する標準的な方法は何ですか?

  2. 直感的に、共分散が最も高いコンポーネントを選択し、そのデータの半分を空のコンポーネントに割り当てます。

私の質問は次のとおりです: EM 実装でこれを処理する標準的かつ原則的な方法はありますか (Google 経由で見つけることができませんでした)。

4

1 に答える 1