5

自動車の写真を分類するために使用される Web アプリケーションに取り組んでいます。ユーザーにはさまざまな車両の写真が表示され、見たものについて一連の質問に答えるよう求められます。結果はデー​​タベースに記録され、平均化されて表示されます。

グループに頻繁に投票しないユーザーを特定するのに役立つアルゴリズムを探しています。これは、おそらく写真に注意を払っていないか、自分が見ているものについて嘘をついていることを示しています. 次に、これらのユーザーを除外し、結果を再計算して、既知の信頼度で、この特定の写真がこれとあれの車両を示していると言えるようにします。

この質問は、そのようなアルゴリズムをどこで見つけるか、またはそのようなアルゴリズムを設計するための理論的背景を自分自身に与えるために、すべてのコンピュータ サイエンス関係者に向けられています。確率と統計、おそらくデータマイニングを学ぶ必要があると思います。いくつかの本の推奨事項は素晴らしいでしょう。ありがとう!

PS これらは多肢選択問題です。

これらはすべて良い提案です。ありがとうございました!スタック オーバーフローで複数の正解を選択できる方法があればいいのにと思います。

4

7 に答える 7

3

統計学習の要素を読んでください、それはデータマイニングに関する素晴らしい大要です。

特に、クラスタリングなどの教師なしアルゴリズムに関心がある場合があります。ほとんどの人が嘘をつかないと仮定すると、最大のクラスターは正しく、残りは間違っています。それに応じて人々にマークを付け、ベイズ統計を適用すれば完了です。

もちろん、ほとんどのデータマイニングテクノロジーはかなり実験的なものなので、常に正しいとは限りません...またはほとんどの場合ですら。

于 2009-11-01T20:33:13.950 に答える
2

あなたが説明したことは、外れ値/異常検出を使用して解決されると思います。いくつかのテクニックが存在します:

  • 統計に基づく方法
  • 距離ベースの方法
  • モデルベースの方法

優れた本「Introduction to Data Mining 」のスライドをご覧になることをお勧めします。

于 2009-11-01T20:57:56.070 に答える
0

「1から10のスケールでこの車をどのように評価しますか」のような票を集める場合、おそらく単純な平均と標準偏差を使用できます。標準偏差が小さいほど、有権者の間で一般的なコンセンサスが一致します。 、そして、たとえば平均から3人の標準開発者であるユーザーにフラグを立てることができます。

複数選択の場合は、もっと注意する必要があります。最も投票されたオプションを除いてすべてを単に破棄することは、有権者を不満にさせるだけです。勝者が他のオプションに対してどれだけ重要であるかの尺度を確立する必要があります。たとえば、勝ったオプションの数の3分の1未満のオプションに投票したユーザーにフラグを立てます。

投票を破棄するのではなく、「ユーザーにフラグを立てる」と書いたことに注意してください。投票を破棄すると、結果にどれほど自信があるかわかりません(「91%がこれをフォードマスタングに投票しました」)。ユーザーの投票の一定の割合以上にフラグが立てられている場合、それはあなた次第です。

ただし、最も難しい問題は、おそらく十分な票を集めることです。多肢選択問題がいかに簡単かにもよりますが、写真ごとに、おそらく投票数の数倍のオプションが必要になります。そうでなければ、統計は無意味です。

于 2009-11-01T21:15:16.673 に答える
0

あなたが期待している答えを知っているなら、なぜあなたは人々に投票するように頼むのですか?いくつかの値を除外することにより、基本的にあなたは好きなものに投票することができます。自動車は個人によって印象が異なります。100人が車を愛していた場合、誰かが来て、彼/彼女がそれを好きではないと言ったとき、あなたは投票を除外しますか?

しかし、とにかく、あなたがまだこれをやりたいと考えると、まず第一に、あなたは「信頼できる」有権者からの大量のデータを必要とするでしょう。これにより、「適切な」回答が得られ、この時点から除外しきい値を選択できます。

データの初期セットがないと、誤った結果が得られるため、アルゴリズムを適用できません。0から100までのスケールで100の投票を1つだけ考えてください。2番目の投票は「1」です。平均から離れすぎているため、この投票を除外します。

于 2009-11-01T19:58:23.583 に答える
0

非常に単純なアルゴリズムでこれを実現できると思います。標準偏差などを計算することで、もっと凝ったものを試してみることができますが、私は気にしません。

十分なはずの簡単なアプローチは次のとおりです。

ユーザーごとに、回答した質問の数と、その質問に対して最も人気のある回答を選択した回数を計算します。人気のある回答と推測できる合計回答の比率が最も低いユーザーは、偽のデータを提供しています。

偽のデータを入力するのではなく、いくつかの質問に同意しなかった可能性があるため、少数の質問にしか回答していないユーザーからのデータを破棄したくない場合があります。

于 2009-11-01T19:59:15.267 に答える
0

あなたが言っていることは、特定の人々が「外れ値」であり、彼らがあなたのデータにノイズを追加し、分類の信頼性を低下させていることを懸念しているということだと思います。したがって、シボレーカマロがあり、ほとんどの人がそれがポニーカー、マッスルカー、またはスポーツカーのいずれかであると言っているが、それが家族のセダンであると言うグーフボールがある場合は、彼の影響を最小限に抑えたいと思うでしょう投票。

あなたができることの1つは、ユーザーにStackOverflowのようなレピュテーションスコアを提供することです。

  • ユーザーが他のユーザーと「同意」しているほど、そのユーザーのスコアは高くなります。特定のユーザー(ユーザーX)の場合、これは、質問に回答したユーザーの何パーセントがユーザーXと同じカテゴリを選択したかを簡単に計算し、回答したすべての質問でこの値を平均することで決定できます。
  • この値に回答された質問の総数を掛けて、できるだけ多くの質問に回答するように促すことができます。(注:これを選択した場合は、平均化するのではなく、一致率のスコアを合計するのと同じことになります。)
  • 最終的なレピュテーションスコアをユーザーに提示し、ユーザーの応答が他のユーザーの応答とどれだけ一致しているかに対して報酬が与えられることを説明することができます。これにより、人々はより多くの質問に答えるだけでなく、答えに注意を払うようになります。
  • 最後に、特定のカテゴリを選択したすべての人の合計レピュテーションスコアを合計することにより、特定のカテゴリの確実性スコアを計算できます。

特にあなたの正確な状況がわからないので、これらのアイデアのいくつかは、いくらかの改良が必要かもしれません。確かに、投票する前に他の人が何を選んだかを人々が見ることができれば、システムをゲーム化するのは簡単すぎるでしょう。

于 2009-11-01T20:35:17.750 に答える
0

それらはどのような質問ですか (はい/いいえ、または 1 から 10 か?)。

平均の代わりに平均を使用することで、何も破棄せずに済む場合があります。平均では、応答に極端な外れ値がある場合、平均に影響を与える可能性がありますが、中央値を使用すると、より良い答えが得られる場合があります。たとえば、5 つの回答がある場合は、それらを並べ替えて、真ん中の回答を選択します。

于 2009-11-01T20:03:15.197 に答える