2

一度に 1 つの質問/回答ページを表示する「ブラウズ」スライドショーを備えた質問/回答サイトの例を考えてみましょう。ユーザーが「次へ」ボタンをクリックすると、新しい質問/回答が表示されます。

ユーザーが「次へ」をクリックするたびに返されるページを決定する必要があります。私が望まないいくつかのこととその理由:

  • 「最新」の質問を降順で表示:

    100 の質問が入力された場合、ユーザーは 100 番目の項目までクリックスルーせず、応答も得られません。また、最近新しい質問が行われなかった場合、ユーザーがサイトにアクセスするたびに、同じ古いデータが繰り返し表示されることも意味します。

  • 多くの提案された回答/コメントによって判断された、「最もアクティブな」質問を表示しています。

    これは、アクティビティの少ない質問を返しません。これは、より多くの可視性が必要な質問です。

  • 回答/コメントが多くないことから判断して、「アクティビティが少ない」質問を表示しています:

    質問がアクティブになると、表示されなくなります。これは、私が本当に議論を促進したいときに、質問に対する活動を妨げます。

これらを組み合わせてもうまくいくと思いますが、どのページを返すべきかを判断する方法がわかりません。ユーザーが表示するアイテムのカテゴリを選択する必要がないことを強調します (SO に未回答/アクティブ/最新のフィルターがあるように)。

これを行うための一般的な慣行、またはそれを行う方法についてのアイデアはありますか?

ありがとう!

編集:

ティムのコメントのおかげで、これまでのところ私が傾いていることは次のとおりです。これまでのところ、ユーザーがページでアクションを実行するたびにアクティビティが増加する、アクティビティカウント/ビューカウントでページをランク付けすることを考えています。投票、コメント、回答など。ユーザーがページを表示するたびに、ページごとにビューが増加します。

次に、すべてのページをアクティビティ/ビューの比率でランク付けし、比率の高いページをより頻繁に表示します。この方法では、アクティビティが少なくビューが多いページは最も少なく表示され、アクティビティが多くビューが少ないページは最も頻繁に表示されます。低アクティビティ/低ビューと高アクティビティ/高ビューはその中間くらいになると思いますが、ベータ リリースではこれを注意深く監視する必要があります。また、ユーザーが過去 24 時間に表示したページを保存して、特定の日にスライドショーが繰り返されないようにすることも計画しています。

「古い」データを防ぐためのいくつかのアイデア (上記のすべてがそれを防ぐことができない場合): おそらく、最近表示されていないページを定期的にチェックし、その比率を上げてそれらを一番上に置く cron ジョブを実行します。 .

4

1 に答える 1

1

私が見たところ、あなたは 2 つの興味深い質問に触れています。

  1. 投稿がユーザーにとって興味深いものであることを定義する方法: ここでは、投稿の興味に寄与する可能性のあるさまざまな要因の重み付けされた組み合わせを使用できます。アクティビティの量、エントリの新鮮さ、アイテムがユーザーの関心に一致するかどうかなどを知る方法があるかどうかなど。直感に基づいて重みを選択し、結果が期待にどれだけ一致するかを確認できます。時間と気力があれば、ユーザーがエントリにどの程度反応するかに関するデータを収集し、機械学習技術を使用して各要素の最適な重みを学習することができます。

  2. 探索と搾取のトレードオフとも呼ばれる、新しい投稿にチャンスを与える方法。基本的に、既知の興味深いエントリにアクセスし続けると、瞬間的なユーザーの幸福度が最大化されますが、新しい興味深いものについて学ぶことは決してないため、ユーザーは全体的に不満を抱いています.

これは非常によく研究された問題であり、どの程度それに取り組みたいかによって、k アーム バンディット問題などに関する文献を読むことができます。

ただし、単純な解決策は、最高スコアのエントリを選択するのではなく、確率分布に基づいてエントリを選択し、高スコアのエントリが表示される可能性が高くなるようにすることです。このようにして、ほとんどの場合、興味深いものを表示しますが、すべての投稿が時折表示される可能性があります.

于 2010-10-23T02:50:40.460 に答える