8

この情報を公開していないサイトのユーザーベースのサイズを見積もりたいとします。

人々は、さまざまな確率でさまざまなユーザー名を取得している可能性が高くなります。たとえば、ユーザー名「nick」がシステムに存在しない場合、ユーザーベースは非常に小さい可能性があります。ユーザー名「starbaby」を使用すると、はるかに大きなサイトになる可能性があります。それは単純なベイズ問題のようです。

サイトが異なれば、許可されるユーザー名のスペースも異なる可能性があるという問題があります。最大の問題は、スペースなどの一般的な文字の合法性だと思います。以前の配布を汚す可能性のあるもう1つの問題は、必要な名前が使用されたときにサイトが名前を提案するのか、それとももっとクリエイティブな名前を自分で考えさせるのかということです。

さまざまなサイズのシステムでユーザー名が発生する頻度のトレーニングセットをどのように構築できますか?固定幅バケットに分類するのではなく、ベイズを使用して数値推定を行う方法はありますか?

4

3 に答える 3

6

あなたがする必要があるのは、登録されたユーザーの数を考慮して、特定のユーザー名が存在する確率を正確に推定することです。Nはユーザーの数であり、ユーザーuが存在する場合はu = 1、存在しない場合は0であるとします。

まず、各ユーザー名の確率分布が互いに独立していると仮定します。これは真実ではありません-そしてあなたはすでに1つの理由を考え出しました-しかしそれはデータ収集と数学をはるかに簡単にするのでおそらく必要でしょう。

登録されたユーザー名とそのサイトのユーザーの総数を持つサイトからの大量のデータが必要になります。ここで、特定のユーザー名を使用して、2次元プロット(xにN、yにu)上のデータポイントを想像してください。y= 0に1つの水平線があり、y=1に別の点があります。提案どおりにx軸をビンに入れ、ビン内のすべてのデータポイントの平均y座標を取得して離散関数を取得するか、グラフ上のポイントを関数のクラスに適合させることができます。そのクラスの関数がどうなるかは本当にわかりません-おそらくある種のべき法則ですか?(私はジップの法則を考えています)。

これで、ベイズの定理を適用するための確率分布が得られました。Nのどのようなプライアを使いたいのかわかりません。一様分布(最大数まで)は仮定をしませんが、ほとんどのサイトのユーザーベースは小さいと思います。

これを機能させるには、サイトからユーザーをサンプリングするときに、特定のユーザーセットに対してサンプリングする必要があると思います。ユーザー名の人気は非常に長い尾を持っているので、ユーザーのランダムなサンプルは、非常にまれにしか使用されない多くの名前を提供し、したがって多くの有益でない証拠を提供するでしょう。

編集:私は別の考えを持っていました。ほとんどのフォーラム(およびStackOverflow)では、ユーザーは連続したユーザーIDを持っているため、多数のユーザーがいる単一のサイトを使用して、すべての小さいNの見積もりを取得できます。

于 2009-02-10T18:02:15.307 に答える
4

これはクールなアイデアだと思います!

いくつかの異なるユーザー名に対してUserNameCheck.comを使用し、結果をそれらを提供するサイトの指定されたユーザーベースサイズと相互参照することにより、データセットをまとめることができる場合があります。

:ウェブサイトは、ユーザー名がサイトで有効かどうかを確認していないようです。たとえば、Gmailでは「nick@gmail.com」が短すぎる場合でも登録できると考えられます。

于 2009-01-23T22:53:06.833 に答える
1

唯一の方法は、ユーザーベースのサイズがわかっているシステムで、取得したユーザー名の大規模なセットを取得することです。特定の名前がより一般的であるユーザーベースでは、データが歪んでいる可能性があります。たとえば、ロードオブザリングフォーラムの小さなユーザーベースでさえ、ユーザー名Striderが含まれている可能性があります。

于 2009-01-23T22:51:21.330 に答える