5

私たちはアイテム (およびその後のユーザー) 間の類似性を見つけようとしています。アイテムはユーザーによってさまざまなリストでランク付けされています ( Hi Fidelityの Rob、Barry、Dick を考えてみてください)。特定のリストのインデックスが低いほど、評価が高いことを意味します。

標準的なアプローチは、ピアソン相関を使用してから、何らかの方法でインデックスを反転することだと思います。

しかし、私が理解しているように、ピアソン相関の目的は、通常、物事を高く評価したり低く評価したりしても、相対的な評価が似ているユーザー間の違いを補うことです。

リストが連続している場合 (任意の長さですが)、位置から暗示される評価がこのように歪められることは問題ではないように思えます。

この場合、ユークリッドに基づく類似性で十分だと思います。これは事実ですか?ピアソン相関を使用すると悪影響が生じ、適切でない相関が検出されるでしょうか? このデータに最も適した類似性尺度はどれですか?

さらに、リスト内の位置に影響を与えたいと考えていますが、離れすぎているランキングにペナルティを課したくはありません。ランキングが大きく異なるリスト内のアイテムを両方とも取り上げている 2 人のユーザーは、類似していると見なされるべきです。

4

2 に答える 2

3

あなたの場合、 Jaccard Similarityの方が見栄えがします。あなたが言及したランクを含めるには、bag-of-items アプローチを取ることができます。

評価がそれぞれ (3,2,1)である ( RobBarry、 )の例を使用して、このユーザーのバッグに 3 回挿入します。DickRoba

Rob, Rob, Rob.

Barry場合は、2 回行います。現在のバッグは以下のようになっています。

Rob, Rob, Rob, Barry, Barry.

Dick最後にバッグに入れます。

Rob, Rob, Rob, Barry, Barry, Dick

別のユーザーbが のバッグを持っていると[Dick, Dick, Barry]します。Jaccard 類似度を次のように計算します。

  • ab=の交点[Dick, Barry]
  • ab=の和集合[Rob, Rob, Rob, Barry, Barry, Dick, Dick]
  • Jaccard 類似度 = 2/7、

つまり、共通部分の項目数を和集合の項目数で割ったものです。

この類似性測定は、大きくかけ離れたランキングにペナルティを課すものではありません。次のことがわかります。

ランキングが大きく異なるリスト内のアイテムを両方とも取り上げている 2 人のユーザーは、類似していると見なされるべきです。

于 2012-10-30T05:14:18.693 に答える
2

ランキングのみに基づく最もよく知られている類似性指標は、Spearman の相関です。最初の項目に「1」、2 番目の項目に「2」というように割り当て、(ピアソン) 相関係数を計算します。(値を降順にすることもできます。これはより直感的です。ピアソンの相関関係には関係ありません。)

スピアマンの相関関係はプロジェクトで実装されていますが、それはあまり役に立たないと思います。

Tau ランクは、ランク付けされたリストがどれだけ一致するかを示すより原則的な尺度ですが、実装されていません。難しいことではありません。

于 2012-10-30T07:07:57.283 に答える