Möglichkeit, die Größe der Benutzerdatenbank einer Website anhand von Stichproben zu ermitteln

8

Angenommen, Sie möchten die Größe einer Benutzerdatenbank einer Website schätzen, die diese Informationen nicht veröffentlicht.

Es ist wahrscheinlicher, dass Nutzer unterschiedliche Benutzernamen mit unterschiedlichen Wahrscheinlichkeiten erworben haben. Wenn zum Beispiel der Benutzername "Nickname" auf dem System nicht existiert, hat er wahrscheinlich eine extrem kleine Benutzerbasis. Wenn der Benutzername "starbaby" verwendet wird, handelt es sich wahrscheinlich um eine viel größere Website. Es scheint wie ein direktes Bayes'sches Problem.

Es gibt das Problem, dass verschiedene Sites möglicherweise einen anderen Bereich mit zulässigen Nutzernamen haben. Das größte Problem wäre die Legalität gemeinsamer Charaktere wie Räume, denke ich. Ein weiteres Problem, das die vorherige Verteilung beeinträchtigen könnte, ist, ob die Site Namen vorschlägt, wenn die gewünschte verwendet wird, oder Sie selbst an einen kreativeren Namen denken.

Wie könnten Sie einen Trainingssatz für die Häufigkeit des Auftretens von Nutzernamen über verschiedene Größen hinweg erstellen? Gibt es eine Möglichkeit, Bayes für die numerische Schätzung zu verwenden und nicht in Buckets mit fester Breite zu klassifizieren?

    
ʞɔıu 23.01.2009, 22:48
quelle

3 Antworten

5

Was Sie tun müssen, ist die Schätzung der Wahrscheinlichkeit, dass ein bestimmter Benutzername vorhanden ist, anhand der Anzahl der registrierten Benutzer. Sagen wir, N ist die Anzahl der Benutzer und u = 1, wenn Benutzer u vorhanden ist und 0, wenn sie nicht vorhanden sind.

Machen Sie zunächst die Annahme, dass die Wahrscheinlichkeitsverteilungen für jeden Benutzernamen unabhängig voneinander sind. Dies wird nicht wahr sein - und Sie haben schon einen Grund dafür gefunden - aber es wird wahrscheinlich notwendig sein, da es die Datensammlung und die Mathematik viel einfacher macht.

Sie werden viele Daten von Websites mit registrierten Benutzernamen und der Gesamtzahl der Benutzer dieser Website benötigen. Nehmen Sie nun einen bestimmten Benutzernamen und stellen Sie sich Ihre Datenpunkte auf einem 2D-Plot vor (mit N auf x und u auf y), es wird eine horizontale Linie von Punkten bei y = 0 und eine andere bei y = 1 geben. Sie können entweder die x-Achse wie vorgeschlagen ablegen und die mittlere y-Koordinate aller Datenpunkte in der Bin verwenden, um eine diskrete Funktion zu erhalten, oder Sie könnten versuchen, die Punkte in der Grafik an eine Klasse von Funktionen anzupassen. Ich weiß nicht wirklich, welche Klasse von Funktionen das wäre - vielleicht eine Art Machtgesetz? (Ich denke an Zipfsches Gesetz ).

Sie haben jetzt die Wahrscheinlichkeitsverteilung, um die Bayes-Regel anzuwenden. Ich weiß nicht, welche Art von Prior für N du verwenden möchtest. Eine einheitliche Verteilung (bis zu einer großen Anzahl) würde keine Vermutungen zulassen, aber ich würde annehmen, dass die meisten Websites eine kleine Benutzerbasis haben.

Ich vermute, dass, um dies zu ermöglichen, wenn Sie Benutzer von einer Website aus probieren, Sie dies für eine bestimmte Gruppe von Benutzern tun müssen. Ich wette, dass die Beliebtheit von Benutzernamen einen sehr langen Schwanz haben wird und so eine zufällige Stichprobe von Benutzern Ihnen eine Menge sehr selten benutzter Namen und daher eine Menge uninformativer Beweise geben wird.

BEARBEITEN Ich hatte einen anderen Gedanken; In den meisten Foren (und auf StackOverflow) haben Benutzer aufeinanderfolgende Benutzer-IDs, so dass Sie eine einzelne Site mit einer großen Anzahl von Benutzern verwenden können, um Schätzungen für alle kleineren N zu erstellen.

    
Stompchicken 10.02.2009 18:02
quelle
3

Ich denke, das ist eine coole Idee!

Sie können möglicherweise einen Datensatz zusammenstellen, indem Sie UserNameCheck.com für einige verschiedene Benutzernamen verwenden und die Ergebnisse mit den Ergebnissen verknüpfen die angegebenen Benutzergrößen der Websites, die sie angeben.

Hinweis : Diese Website scheint nicht zu prüfen, ob die Benutzernamen für die Site gültig sind. es denkt, Gmail würde Sie "[email protected]" registrieren lassen, obwohl das zu kurz ist.

    
A. Rex 23.01.2009 22:53
quelle
1

Der einzige Weg besteht darin, auf Systemen, für die Sie die Größe der Benutzerdatenbank kennen, eine große Menge von Benutzernamen zu erhalten. Daten können in Benutzerbasen verzerrt sein, in denen bestimmte Namen häufiger vorkommen. Selbst eine kleine Benutzergruppe aus einem Herr der Ringe Forum wird wahrscheinlich den Benutzernamen Strider enthalten.

    
brian 23.01.2009 22:51
quelle