2

ほとんどがゼロの値を含む行列をクラスター化する必要があります... K-means はこれらの種類のデータに適していますか、それとも別のアルゴリズムを検討する必要がありますか?

4

2 に答える 2

3

いいえ。その理由は、まばらなデータでは平均が適切ではないためです。結果として得られる平均ベクトルは、実際のデータとは非常に異なる特性を持ちます。多くの場合、実際のドキュメントよりも互いに似ています。

球面k-meansなどのスパース データの k-means を改善するいくつかの変更があります。

しかし、ほとんどの場合、そのようなデータに対する k-means は大雑把なヒューリスティックにすぎません。結果はまったく役に立たないわけではありませんが、実行できる最高のものでもありません。動作しますが、設計によるものではなく偶然です。

于 2013-08-05T22:08:46.657 に答える
1

k -means は、文書用語ベクトルなどのまばらなデータをクラスター化するために広く使用されているため、先に進むことをお勧めします。もちろん、良い結果が得られるかどうかは、データと探しているものによって異なります。

注意すべき点がいくつかあります。

  • 非常にまばらなデータがある場合、入力をまばらに表現すると、メモリ使用量とランタイムが桁違いに減少する可能性があるため、適切なk平均の実装を選択してください。
  • ユークリッド距離は、スパース ベクトルの最適なメトリックとは限りませんが、それらを単位長に正規化すると、より良い結果が得られる場合があります。
  • クラスターの重心は、入力のスパース性に関係なく、密になる可能性が高いため、あまり多くの機能を使用しないでください。
  • サンプルに対して SVD などの次元削減を行うと、実行時間とクラスターの品質が大幅に向上する可能性があります。
于 2013-08-05T16:31:31.457 に答える