1

ユークリッド距離を使用する Python 3 での LSH の効率的な実装を探しています。

「in-python」LSHForest実装がありますが、コサイン距離を使用します。

また、この実装を使用しても、各バスケットのコンテンツを表示する方法が見つかりませんでした。たとえば、クラスタリングに LSH を使用している場合、特定の半径内にある特定の数のおおよそのネイバーのみが返されます。しかし、すべての隣人を見たい場合、それがどのように行われるかわかりません(任意の検索半径を使用したくありません。これを使用して非常に大きなまたは無限の半径の意味が何であるかが本当にわかりません実装)。

どんな洞察にも感謝します。どうもありがとう。

4

1 に答える 1

1

ソフトウェアの推奨事項については、ここで質問してください:ソフトウェアの推奨事項


これがどのように機能するかについては、最初に私の答えkを読んでから、大きな半径内でパッケージ(私はそれを使用していません)から大きな k (ソフトウェアが返すネイバーの数でなければなりません)を要求すると仮定しますr。これにより、多くの近傍 set が返されますk = N。ここで、Nはデータセット内のポイントの数であり、すべての近傍を取得します。

特定のバケット内のすべての近隣を表示する場合は、バケットに含まれるポイントの数を調査し、kその数に設定する必要があります。

于 2016-06-14T13:46:39.643 に答える