Identifizieren Sie aussagekräftige Profile in VK

Es ist wirklich schwierig, Bots von Menschen zu unterscheiden. Ich kann es wirklich nicht selbst machen. Andererseits habe ich mir ein gutes Fahrrad ausgedacht ... eine Methode, um in VK „interessante Leute“ von „nicht sehr interessant“ zu unterscheiden. Natürlich in Bezug auf die Netzwerkkommunikation und nicht im Leben.



Wenn jemand an Ihre Freunde klopft, Sie aber auf den ersten Blick nicht verstehen können, dass es sich um eine normale Person handelt oder wer zum Teufel weiß, kann diese Methode einige nützliche Informationen über den Benutzer liefern. Es ist unwahrscheinlich, dass damit relevante Zielgruppen identifiziert werden, da VK die Möglichkeit zum Herunterladen von Inhalten der Benutzerwände eingeschränkt hat und es nur langsam schadet. Das heißt, es ist möglich, aber es ist notwendig, stark zu verfeinern, zu optimieren und auszuweichen, um Einschränkungen zu umgehen.

Hauptidee


Die Hauptidee ist, dass Bots, langweilige (in Bezug auf das Netzwerk) Persönlichkeiten und alle Arten von Massensammlern von Freunden-Abonnenten sich nicht wirklich darum kümmern, mit wem sie befreundet sind, obwohl sie eine Menge bedeutungsvoller Beiträge an ihre Wände „schreiben“ können. Aber langweilige Persönlichkeiten lesen ihr Band nicht besonders und Bots brauchen es überhaupt nicht. Darüber hinaus ist dies für Massensammler von Abonnenten und Stars nicht erforderlich.

Aber für Leute, die zumindest einige kommunikative Interessen in Bezug auf VK haben, ist es sehr wichtig, mit wem sie befreundet sind. Und natürlich werden sie nicht in der Lage sein, 6.000 Typen bei ihren Freunden zu sammeln, die nur Reposts, Bilder von nackten Frauen und Werbung für Abflussfässer mit einem Rabatt aus einem Lagerhaus in Novy Urengoy teilen.

Auf dieser Grundlage können Sie versuchen, ein Kriterium zu erstellen, anhand dessen Personen ermittelt werden können, die am Inhalt ihres Feeds interessiert sind. Solche Menschen zeigen die Merkmale einer realen Person. Eine Person, die zumindest einen sinnvollen einseitigen Kommunikationsakt ausführt. Heutzutage ist das nicht so klein.

Mir fielen sofort zwei Kriterien ein:

  • Das durchschnittliche Wörterbuch 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 der Grundlage von so etwas können Sie bereits versuchen, ein Modell zu erstellen, das interessante von nicht sehr interessanten Menschen unterscheidet.

Und wie bin ich dazu gekommen, das zu überprüfen?


Ich habe 50 zufällige Freunde und 50 zufällige Anhänger ausgewählt, die einige Kriterien erfüllten, die die sehr offensichtlichen Fälschungen, Kinder oder Leute, die nicht alles benutzten, abschneiden würden. Geben Sie ein, dass der Benutzer nicht deaktiviert werden soll und gleichzeitig mehr als 50 vorhandene Freunde haben soll.

Ich habe all diese Leute durchgesehen und festgestellt, welcher von ihnen ein „Bot“ ist und welcher nicht. Natürlich waren die meisten Freunde echt und die meisten Abonnenten boten an, etwas zu kaufen (aber ein paar echte Leute waren da).

Außerdem habe ich die ersten 100 Beiträge von jedem Freund der überprüften Person genommen, wenn so viele an der Wand waren. Für jede Person habe ich zwei solche Faktoren berücksichtigt:

  1. Die durchschnittliche Größe des Freundeswörterbuchs einer Person für ihre ersten 100 Beiträge. Das heißt, 50 Freunde mit jeweils ca. 100 Beiträgen. Für jeden Freund werden alle Wörter aus 100 Posts zu einem Haufen zusammengefasst, gestempelt und die Anzahl der eindeutigen Wörter eines Freundes berücksichtigt. Ferner wird der Durchschnitt für alle 50 Freunde berücksichtigt. Von diesem Wert wurde die Wurzel genommen - SQRT (Dic).
  2. Wenn ein Freund mehr als 60 von 100 Posts ohne Worte hat, wird er als "verloren" markiert. Der Prozentsatz der „verlorenen“ Personen in Freunden ist der zweite Faktor - Prozent.

Ein weiterer Faktor erschien zufällig. Dies ist der Logarithmus von Idy in VK log10 (ID)

Darin habe ich alle in logistischer Regression geschult und Folgendes verstanden:

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

Für den Testteil der Stichprobe haben wir einen sehr guten Klassifikator mit AUC = 0,93 erhalten. Hier ist eine solche ROC-Kurve :


ROC-Kurve des Klassifikators, die den Inhalt der Seite einer Person bestimmt

Einige Fragen werden durch die Bedeutung der VC-ID für die Klassifizierung des Inhalts einer Person aufgeworfen, aber es scheint, dass es leider funktioniert. Je weiter die ID von 1 entfernt ist, desto wahrscheinlicher ist es, dass es sich nur um einen Bot handelt, der für Mikrokredite wirbt. Ohne ID funktioniert der Klassifikator ebenfalls, aber schlimmer. AUC = 0,78. Dies ist nicht direkt gut, aber auch nicht direkt nutzlos.

In jedem Fall liegt die endgültige Entscheidung über die Nützlichkeit des Charakters beim Entscheidungsträger.

Zusätzliche Prüfung


Ich nahm alle 5.000 Abonnenten von einem meiner Kameraden, wo natürlich 95% der Werbeschlacke verschickt wurden und die Regression ohne zusätzliche Schulung durchgeführt wurde. Mit einem Cutoff von 20% ergaben sich TP = 78%, FP = 11% . Das heißt, bei einer beliebigen Person funktioniert dies im Allgemeinen auch mehr oder weniger.

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


Ja, es ist einfach genug, einen Bot mit einigen pseudo-bedeutungsvollen Posts zu generieren, die von Freunden umgeben sind, aber bisher braucht ihn niemand. Nun, es ist schwierig, sich mit unterschiedlichen Inhalten zu beschäftigen, denn wenn alle Bots dasselbe generieren, ist dies auch leicht zu erkennen.

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


Wahrscheinlich möglich, aber ich zerlege es, um Hallo VK zu machen. Wenn jemand will, lass ihn es tun. Es scheint, dass die Methode beschrieben ist, ihre Idee ist einfach.

Ist es zu alltäglich?


Genug. Aber plötzlich wird sich jemand als Basis für ihre Entwicklungen als nützlich erweisen. Diese Methode kann leicht kompliziert werden, indem beispielsweise nicht nur die Länge der Wörterbücher, sondern auch der Inhalt berücksichtigt wird. Hier können Sie bereits die volle Leistung von NLP nutzen und Inhalte trainieren. Sie können immer noch komplexere Klassifikatoren verwenden: Bäume, neuronale Netze usw. All dies kann kompliziert sein, aber es ist wichtig, dass auch einfache etwas Interessantes bieten.

Source: https://habr.com/ru/post/de422871/


All Articles