2016-12-12 16 views
-1

私はデータマイニングとMLにはかなり新しいです。 LSHとk-meansがどのように違うのか理解したい。いくつかの論文やオンラインで入手可能な他の資料を読んで、両方のアルゴリズムが類似した文書のグループ化/クラスタリングを達成しようとしているようです。スパム検出などの用途では、どちらも多くの論文で使用されています。しかし、私はそれらがどのように異なっているかはあまり明確ではなく、スパム検出のような用途にこれを使用しても、その結果はどう違うでしょうか?k-meansとLSHのアルゴリズム

答えて

0

LSHはデータをクラスタ化しません。

近接重複(!)検出に適しています。

  1. LSHは設計上、全く似ていない「偽陽性」(ハッシュコリジョン)を生成する可能性があります。
  2. LSHにはしきい値tがあり、このしきい値以下のオブジェクトに対してのみハッシュコリジョンを生成しようとします。良好なパフォーマンスを得るには、このしきい値をできるだけ小さくする必要があります。クラスタリングの場合、は、バケット外のオブジェクトを(tよりも遠くに)見つけることができる必要があります。これをLSHで確実に行うことはできません。
  3. LSHはバケット境界をランダムに配置します。あなたがこれを何度も気付かない唯一の理由は、あなたがこれを何度もやっていることです。そしてそれらのすべてがひどく選ばれていないことを願っています。だから、はほぼのすべての近くの隣人になります。あなたのパラメータによっては90%しかないかもしれません。すべてのオブジェクトはの複数のバケットにあるので、そのクラスタは何ですか?重複している「クラスタ」という膨大な量のデータがそれぞれに含まれています。これからどのようにして良いクラスタを効率的に見つけるかははっきりしています。

LSHは実際にはの "ほぼ同じ"オブジェクトで、データ内のより大きな構造を見つけることではありません。

私は、スパム検出はどちらの場合でも良いとは思わない - 実際にこれを行うスパムフィルタは分かっていますか? ニュースのほぼ重複したニュース検出。しかし、Googleニュースはある種のLSHに関連しています。彼らはおそらくminhashingを使用しています。

+0

はい不正なデータセットがある場合、LSHはスパム検出に使用できます。それに近いものはスパムとして扱われます。多くの企業がそれを使用しています。 Facebookは2015年にspam @ scale conferenceで話したことを使用しています。 私の質問は、私がしきい値を上げると言うことです。つまり、約60-65%の一致する隣人が同じバケットに終わる。これは類似のオブジェクトのクラスターとしての資格を持たないでしょうか? – coder

+0

いいえ、それは単なるバケツですが、誤認を避けたい場合は、最終的にあなたのパフォーマンスを殺します。私は古い*スパムだけを認識できるので、このスパムフィルタを信頼しません。 –

+0

ありがとうございました。だから、k-means clustering algoのようなものを使用すると、65%の類似度のしきい値を持つLSHを使用するよりも、類似した項目をグループ化する方がより良い結果が得られますか? – coder

関連する問題