私はレコメンデーション エンジンを研究しており、共同フィルタリングに基づいて、ユーザーが興味を持つ可能性のあるニュース アイテムについて、Google ニュースがどのようにレコメンデーションをユーザーに生成するかを定義する論文を読みました。
彼らが言及している興味深い手法の 1 つは、ミンハッシングです。私はそれが何をするかを調べましたが、私が持っているのはあいまいな考えであり、間違っている可能性が高いと確信しています. 以下は、私がそれから作ることができるものです:-
- すべてのニュース項目のセットを収集します。
- ユーザーのハッシュ関数を定義します。このハッシュ関数は、すべてのニュース項目のリストで、このユーザーが表示したニュース項目から最初の項目のインデックスを返します。
- このような値を「n」個収集し、この値のリストでユーザーを表します。
- これらのリスト間の類似度数に基づいて、ユーザー間の類似度を共通項目の数として計算できます。これにより、比較の数が大幅に削減されます。
- これらの類似度に基づいて、ユーザーを異なるクラスターにグループ化します。
これは私がそうかもしれないと思うだけです。ステップ 2 では、定数のハッシュ関数を定義する代わりに、別の要素のインデックスを返すようにハッシュ関数を変更することができます。したがって、あるハッシュ関数はユーザーのリストから最初の要素のインデックスを返すことができ、別のハッシュ関数はユーザーのリストから 2 番目の要素のインデックスを返すことができます。したがって、最小単位の独立順列条件を満たすハッシュ関数の性質から、これは可能なアプローチのように聞こえます。
私の考えが正しいかどうか、誰か確認してもらえますか?それとも、Google ニュースのレコメンデーションのハッシュ部分は、別の方法で機能しますか? 推奨事項の内部実装は初めてです。どんな助けでも大歓迎です。
ありがとう!