未知のクラスター数と非ユークリッド距離のクラスター化方法について何か提案はありますか?


8

コンサルティングプロジェクトのクラスタリング(教師なし分類)メソッドについていくつかの提案が必要です。私はうまくいけば次のプロパティを持つメソッドを探しています:

  1. 私の研究の主題には3つの特性があります。1つは(非ユークリッド)距離行列で表され、他の2つはユークリッド空間のベクトルの形式です。距離行列はシーケンスに由来し、非類似度の割合またはシーケンスの距離の他の測定値の形式にすることができます。このアルゴリズムは、ユークリッド空間のベクトルと非ユークリッド距離の両方のベクトルを入力として使用できる必要があります。たとえば、K-medoidは距離行列で機能しますが、K-meansは機能しません。

  2. アルゴリズムが3つのプロパティのクラスター数と重みを自動的に選択するようにします(事前の知識と制約付き)。

  3. 以前に特定された「クラスターの中心」の情報があります。以前の値または初期値として組み込みたいと思います。

  4. 統計学者として、私はこの方法が明確な尤度または損失関数を持つことを望みます。

私が考えることができる最も近いことは、クラスターの数を決定するためにリバースジャンプMCMCを使用してベイジアンフレームワークに混合モデルをあてはめることです。R ^ dのベクトルは、通常の尤度に簡単に定式化できますが、距離行列の処理方法は不明です。MCMCを実行する各観測での通常の尤度の平均を制限できますが、これには明確な数学的/統計的意味がありません。

誰かが同様の問題の経験がありますか?参考文献への提案は高く評価されます!


非ユークリッドベクトルをユークリッド空間に投影してみませんか?
ザック

回答:


4

ガウシアンの混合と組み合わせてMAP /ベイズ基準を使用することは賢明な選択だと思います。ポイント

もちろん、MOGにはユークリッド入力データが必要であることを否定します。答えは、与えられた距離行列を生じさせるポイントのセットを見つけることです。このためのテクニックの例は、多次元スケーリングです: whereは、ポイントからポイントまでの距離です。アーグミン{バツ}Σj||バツバツj||2Dj2Djj


ありがとう。私は同様のアプローチを使用しています!私はあなたの投稿にタイプミスがあると思います:上に正方形があってはいけません。バツバツj
Vulpecula、2012年

何故なの?これはユークリッド距離なので、平方する必要があります。ただし、これは当たり前のことなので、明確にしていきます。
bayerj 2012年

1

類似性(=逆距離)行列しか持たないデータセットでクラスタリングを行わなければならないという私の論文の問題に対処しました。私はベイジアン手法が最善であることを100%同意しますが、私が行ったのは対称凸コーディング(リンク)と呼ばれる識別モデルでした。私はそれがかなりうまく働いたことを覚えています。

ベイジアンの面では、クラスタリングに似ていると思われるかもしれませんが、そうではありませんか?私は潜在的ディリクレ配分-本当に素晴らしいアルゴリズムの線に沿って考えています。完全に生成的で、テキストドキュメントコーパスのトピックコンテンツのモデリングのコンテキストで開発されました。しかし、他のタイプの教師なし機械学習の問題には多くのアプリケーションが含まれています。もちろん、距離関数はそこでさえ関係ありません...


1

DBSCANは事前にクラスターの数を知らなくても機能し、幅広い距離メトリックを適用できます。


回答BTKですが、コメントです。答えを増やすために、DBSCANについてもう少し詳細を追加し、それが当面の特定の質問にどのように適用されるかを追加することができます。
DLダーリー2014年

1

アフィニティ伝播またはより適切なアダプティブアフィニティ伝播を使用できます。こちらがウィキペディアのリンクです。

あなたの場合には2つの主な利点があり、もう1つは利点であると私が考える3番目の利点ですが、あなたにとって重要ではないかもしれません。

  1. クラスターの数は指定しません。クラスターの最終的な数は、設定値と類似度行列の値によって異なります。設定値を使用する最も簡単な方法は、類似度マトリックスの最小値(ゼロではない)を使用して最小数のクラスターを取得し、次に、たとえば可能な限り最大のクラスターの最大値を試し、中央値で続行することです。値など...またはアダプティブアフィニティ伝播アルゴリズムを使用し、アルゴリズムによって設定が決定されます。

  2. 思いつく任意の類似性測定値を提供するか、距離測定値の逆数を取ることができます(多分それを行うときにゼロで除算しないように注意してください)。

3.(追加ポイント)アルゴリズムは、各クラスターとそれに属する例を表す見本を選択します。つまり、アルゴリズムは任意の平均ではなく実際のデータポイントを提供します。ただし、もちろん後で平均を計算することもできます。さらに、これはアルゴリズムが断続的な平均を使用しないことも意味します!

ソフトウェア:Wikipediaのページには、Java、Python、R用のいくつかのパッケージがリストされています。私と同じように、MATLABを愛しているなら、ここに実装があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.