Inhaltsprofile in VK identifizieren

    Bots sind wirklich schwer zu unterscheiden. Ich selbst kann es nicht wirklich tun. Auf der anderen Seite habe ich mir ein gutes Fahrrad ausgedacht ... eine Methode, um "interessante Leute" von "nicht sehr interessanten Leuten" bei VK zu unterscheiden. In Bezug auf Netzwerkkommunikation natürlich, aber nicht im Leben.



    Wenn jemand Sie an Freunde stößt und Sie auf den ersten Blick keinen normalen Menschen verstehen oder wissen, wer weiß, kann diese Methode nützliche Informationen über den Benutzer liefern. Die Identifizierung aktueller Zielgruppen ist unwahrscheinlich, da VK die Möglichkeit zum Herunterladen der Inhalte von Benutzerwänden auferlegt hat und dies langsam schmerzt. Ie es ist möglich, aber es ist notwendig, die Grenzen zu umgehen, zu optimieren und stark auszuweichen.

    Hauptidee


    Die Grundidee ist, dass Bots, langweilige (vernetzte) Persönlichkeiten, alle Arten von Massensammlern von anderen Abonnenten, sich nicht wirklich interessieren, wer ihre Freunde sind, obwohl sie ziemlich viel an die Wand bedeutungsvoller Posts schreiben können. Aber traurige Personen lesen ihr Band nicht und Bots brauchen es überhaupt nicht. Darüber hinaus ist dies für Massensammler von Abonnenten und Sternen nicht erforderlich.

    Aber für Leute, die zumindest einige kommunikative Interessen in Bezug auf VC haben, ist es einfach sehr wichtig, wer ihre Freunde sind. Und natürlich werden sie nicht 6.000 Dudes als Freunde sammeln, die nicht nur Bilder von nackten Frauen und Anzeigen von Abflussfässern zu einem Preisnachlass aus dem Lager in Novy Urengoy anbieten.

    Auf dieser Basis können Sie versuchen, ein Kriterium festzulegen, anhand dessen Personen ausgewählt werden, die sich für den Inhalt ihres Bandes interessieren. Solche Menschen zeigen die Eigenschaften einer realen Person. Eine Person, die mindestens eine sinnvolle Einwegkommunikation durchführt. Das ist heutzutage nicht so wenig.

    Sofort fielen mir zwei Kriterien ein:

    • Der durchschnittliche Wortschatz der Freunde einer Person für die letzten N Beiträge.
    • Der Prozentsatz der Beiträge ohne Texte von Freunden der überprüften Person.
    Und auf dieser Grundlage können Sie bereits versuchen, ein Modell zu bauen, das interessante Menschen von nicht sehr interessanten unterscheidet.

    Und wie habe ich es am Ende überprüft?


    Ich habe 50 zufällige Freunde von mir und 50 zufällige Abonnenten ausgewählt, die einige Kriterien erfüllten, die offensichtlich offensichtliche Fälschungen, Kinder oder Menschen, die dies alles nicht nutzen, abschneiden würden. So sollte der Benutzer nicht deaktiviert werden und er sollte gleichzeitig mehr als 50 bestehende Freunde haben.

    Ich habe alle diese Leute durchgesehen und herausgefunden, welcher von ihnen ein "Bot" war und wer nicht. Natürlich waren die meisten Freunde echt, und die meisten Abonnenten boten an, etwas zu kaufen (aber es gab einige echte Leute dort).

    Dann nahm ich die ersten 100 Beiträge von jedem der Freunde, die ich überprüfte, ob so viele an der Wand waren. Für jede Person wurden zwei solcher Faktoren berücksichtigt:

    1. Die durchschnittliche Größe des Freundewörterbuchs einer Person für die ersten 100 Beiträge. Ie 50 Freunde mit jeweils ca. 100 Beiträgen. Füreinander alle Worte der 100 Beiträge in einen Haufen, geharkt stemmiruyutsya und ist die Anzahl der eindeutigen Worte voneinander betrachtet. Als nächstes ist der Durchschnitt für alle 50 Freunde. Von diesem Wert wurde root-SQRT (Dic) genommen.
    2. Wenn ein Freund mehr als 60 von 100 Posts ohne Worte hat, wird dies als "verloren" angezeigt. Der Prozentsatz „verlorener“ Menschen in Freunden ist der zweite Faktor - Prozent.

    Ein weiterer Faktor ist durch Zufall entstanden. Dies ist der Logarithmus von Aidi in VC log10 (ID).

    An diesem Punkt habe ich logistische Regression gelehrt , und ich habe folgendes erhalten:

    log (OR) = 9,92-1,537 * log10 (ID) + 0,067 * SQRT (Dic) -0,023 * Percent

    Für den Testteil der Probe Es erwies sich als sehr guter Klassifikator mit AUC = 0,93. Hier ist seine ROC-Kurve :


    ROC-Kurve des Klassifizierers, die den Inhalt einer Personenseite bestimmt

    Einige Fragen werden durch die Bedeutung der VC-ID für die Klassifizierung des Inhalts einer Person verursacht, aber es scheint leider so zu funktionieren Je weiter die ID von 1 entfernt ist, desto größer ist die Wahrscheinlichkeit, dass es sich nur um einen Bot handelt, der zur Werbung für Mikrokredite verwendet wird. Ohne ID funktioniert der Klassifikator auch, aber schlechter. AUC = 0,78. Das ist nicht gerade gut, aber nicht gerade nutzlos.

    In jedem Fall die endgültige Entscheidung über die Nützlichkeit des Charakters für den Entscheidungsträger.

    Zusätzliche überprüfung


    Ich habe von einem meiner Kameraden alle seine 5.000 Abonnenten mitgenommen, wobei die Werbeschlacke natürlich bei 95% liegt und die Regression ohne zusätzliche Schulung vorangetrieben hat. Bei einer Abnahme um 20% wurden die Ergebnisse mit TP = 78%, FP = 11% erzielt . Das heißt, im Allgemeinen arbeitet es auch weniger mit einer beliebigen Person.

    Können sie Bots machen, die diesen Test bestehen?


    Ja, es ist leicht genug, einen Bot zu generieren, der einige Pseudo-Inhalte enthält, die von Freunden umgeben sind, aber für den Moment braucht das keiner. Nun, es ist schwer, sich mit unterschiedlichen Inhalten zu beschäftigen, denn wenn alle Bots gleich generiert werden, ist das auch leicht zu erkennen.

    Ist es möglich, eine Anwendung zu erstellen, die Personen anhand der ID überprüft?


    Wahrscheinlich kannst du das, aber ich werde beim VC einbrechen. Wenn jemand möchte, lass es ihn tun. Es scheint, als sei die Methode beschrieben, ihre Idee ist einfach.

    Ist es zu banal?


    Genug Aber plötzlich wird sich jemand als Basis für ihre Entwicklung als nützlich erweisen. Diese Methode kann leicht kompliziert sein, zum Beispiel nicht nur die Länge der Wörterbücher, sondern auch den Inhalt. Hier können Sie bereits die volle Leistungsfähigkeit von NLP anwenden und Inhalte vermitteln. Sie können auch komplexere Klassifizierer verwenden: Bäume, neuronale Netzwerke usw. All dies kann kompliziert sein, aber es ist wichtig, dass auch einfache etwas interessantes geben.

    Jetzt auch beliebt: