web-dev-qa-db-ja.com

高い評価のコンテンツ、ユーザーはこれがどのように分類されると期待していますか?

現在、ユーザーがコンテンツをアップロードできるコミュニティ(ユーザー生成コンテンツ)を設計しています。このコンテンツは、アップロードされたコンテンツ(使用方法は投票の基準です)を使用したユーザーによって投票され、現在「最高」を表示する方法を決定しています定格」のコンテンツ。

ユーザー投票するまたは投票するコンテンツ。

使用するこれらの変数があり、「最高評価のコンテンツ」というタイトルのリストに対するユーザーの期待に最も一致するようにこれを並べ替える方法についてのヘルプを探しています。

  • 投票数
  • 賛成票の割合

これ以上のデータにアクセスできず、詳細なデータにアクセスできません。たとえば、投票が行われたときはアクセスできません。投票の時間減衰に基づいて評価を計算するオプションは除外されます。


(コンテンツ/コミュニティのタイプに関して曖昧であることをお詫びします。これはクライアントの機密性が原因です)

21
JeroenEijkhof

最良の方法は、統計的信頼区間の下限を使用することです。

Evan Millerが 平均評価で並べ替えないでください のベルヌーイ分布について素晴らしい投稿をしているため、これを行う方法については詳しく説明しません。

この方法を使用する主な理由は、平均投票数と投票数の間のバランスを見つけることです。平均が高くても、賛成投票が2票あり、反対票がない場合は、254票と30票よりも品質の指標になりにくいことは、誰もが直感的に知っています。この方法は、私が2つをバランスさせるために見つけた中で最高のものです。

24
JohnGB

JohnGBの回答は、評価リストのtopでうまく機能しますが、リストのさらに下に問題が発生します。例として、95%の信頼区間を使用します。

  • Aには100の賛成票、3の反対票(97%)があります。信頼区間:(0.917、0.990)
  • Bには10の賛成票、0の反対票(100%)があります。信頼区間:(0.722、1)
  • Cには180の賛成票、100の反対票があります(67%)。信頼区間:(0.585、0.697)

したがって、これらはA> B> Cという順序につながります。これは、私たちが直感的に望んでいるものとまったく同じです。しかし、ここで4番目があると考えます。

  • Dには3つの賛成票、1つの反対票(75%)があります。信頼区間:(0.300、0.954)

これは、A> B> C> Dの順序になります。Dは4票しか持っていないので、直感的には、A> B> D> Cになると思います。この問題は、間隔の下限を使用しているために発生します。

上記のアプローチは、確信が持てない高評価のコンテンツを一番下にプッシュすることで機能します。実際には、平均に向かって押し下げたいです。そして、私たちが確信していない低い評価は、平均に向かって押し上げられるべきです。

この回答 stats.SEから、次のスキームが提供されます。

Best of BeerAdvocate(BA)...は、ベイジアン推定を使用します。

加重ランク(WR)=(v /(v + m))×R +(m /(v + m))×C

ここで:R =ビールのレビュー平均v =ビールのレビュー数m =リストに必要な最小レビュー(現在は10)C =リスト全体の平均(現在は2.5)

上記の例ではこれが示唆しています:

  • [C = 0.738、m = 4]
  • AのWR = 0.962
  • BのWR = 0.925
  • CのWR = 0.644
  • DのWR = 0.744

これにより、A> B> D> Cという望ましい順序が得られます。

7
Brendon

他の回答が概ね同意するように、基本的にあなたがしたいことは、実際には、投票数の少ないアイテムのランキングを「デフォルト」のランクにバイアスすることです—これは、公平な見積もりが必要な場合は平均ランク、またはより高いランクに値することが証明されるまでアイテムを低くランク付けする必要があるという考えに同意する場合は非常に低いランクになる可能性があります。

ウィルソンスコアの間隔JohnGBによって与えられたリンク で提案されている方法は確かに後者のアプローチで機能し、間隔で他の点を取ることによって前者を達成するように調整できます(たとえば、低端点ではなく中点)。ただし、数学的および概念的に単純なものを使用したい場合は、代わりに additive smoothing を使用して pseudocounts —基本的に、平均スコアを計算する前に、各アイテムの投票数に対して「仮想」の固定数の「賛成」と「反対」を投票します。

特に、各アイテムに正確に1つの疑似賛成投票と1つの疑似下り投票を追加すると、 ラプラスの継承の規則 に対応します。これは、現代(ベイジアン)条件は、これまでに観測された投票が与えられ、a)投票が独立しており、b)投票が観測される前に、すべて0から1は同じようにアプリオリと見なされます。

異なる疑似カウントを使用して、投票分布に関するさまざまな事前の信念や、不確実な結果に関するさまざまなレベルの楽観主義または悲観論(ウィルソン法の信頼区間の選択に対応)を表現することもできます。たとえば、各投稿に4つの疑似賛成票(およびゼロの疑似賛成票)を追加すると、ウイルソン95%信頼区間の下限にvery近い推定賛成票の割合が得られます。 (JohnGBのリンク先の記事で推奨)、2つの疑似賛成投票と2つの疑似下り投票を追加すると、この間隔の中心にさらに近い近似値が得られます。

(ここでの数4は、ウィルソンの式が値zを含むという事実から来ています2ここで、zは、平均の周りの望ましい信頼区間に対応する 標準正規分布パーセンタイル です。 95%信頼区間の97.5パーセンタイル。この特定のパーセンタイル値は 約1.96 です。 (はい、ウィキペディアには本当にすべての記事があります)、または2と2にかなり近い2 = 4.実際、正確にzを使用します2/ 2疑似賛成投票と反対投票は、パーセンタイルzの場合、対応するウィルソン信頼区間の中心の正確な値を提供し、すべてzを作成します2 疑似投票の正または負の値は、それぞれその上限または下限のかなり良い近似を与えます。

比較のために、ウィルソン95%信頼区間の下限(緑色)と、4つの疑似ダウン投票(赤色)を追加した単純な賛成票の割合を以下にプロットしました。
GRAPH
横軸はそれぞれ正と負の投票数(0〜20)を示し、縦軸は2つの方法を使用して計算されたスコア(実際には確率であり、したがって0〜1の範囲)を示します。一般に、メソッドは極端な場合(ほとんどが賛成票または反対票)でほぼ同じ結果を出しますが、ウィルソン法は中間の賛成/反対投票比率を持つアイテムにいくらか低い値を割り当てます。メソッド間の差は実際には6票と6票でピークに達し(ウィルソン法では約0.254のスコアが得られ、疑似カウント法では6 /(6 + 6 + 4)≈0.357となる)、その後徐々に減少します。

もちろん、これらの特定の疑似カウント値に固執する必要はありません。それらを微調整して、好きな順序にすることができます。疑似カウントは整数である必要さえありません。疑似カウントの変更がランキングに与える影響を理解するための良い方法は、疑似カウントの比率が新しい投票されていないアイテムの推定スコアを直接与える一方で、両方の疑似カウントを同じ量だけスケールアップすると、新しいスコアが残ることに留意することです。項目は変更されていませんが、この最初のバイアスを克服するために必要な実際の投票数が増加しています。

実際、疑似カウント方法は、複数のオプション(例:1から5つ星の評価)または複数の直交軸(例:アイテムごとに3つ以上の代替オプションのある投票)のスキームにもうまく一般化します。ここでは、個々の疑似投票というよりも、疑似カウントの総数とそれらの平均値の観点から考える方が便利かもしれません。たとえば、5つ星の評価スキームでは、たとえば、1つ星の5つと5つ星の5つの疑似評価を追加するか、単純にそれぞれ3の値を持つ10個の同一の疑似評価を追加するかは重要ではありません。出演者。


これをすべてまとめると、総投票数vと正票の割合Rがある場合、加法的平滑化スコアSは次のように計算できます。

S = (v * R + m * C) / (v + m)

ここで、m(疑似投票の数)およびC(疑似投票の平均)は、ソートを微調整するために選択できる任意のパラメーターです。疑問がある場合は、たとえば、 m = 4Cは、新しいアイテムの初期スコアをどの程度にしたいかに応じて、0〜betweenの間です。

5
Ilmari Karonen