Wie wir Bewertungen von mobilen Apps mithilfe von maschinellem Lernen analysiert haben

Vor kurzem haben wir, das Data Science Big Data-Team von Sbertech, ein interessantes Pilotprojekt im Bereich des maschinellen Lernens abgeschlossen: Wir haben versucht, Vorfälle in der Arbeit von Mobile Sberbank Online anhand von Benutzerfeedback-Texten in Anwendungsspeichern zu identifizieren. Wir haben einen Datensatz mit Bewertungen von Google Play für den Zeitraum von Oktober 2014 bis Oktober 2017 (882.864 Bewertungen) erstellt, 92.711 negative (1-2 Sterne) herausgefiltert und mit der Arbeit begonnen. Welches werden wir unter dem Schnitt erzählen.



Wir werden umgehend eine mögliche Frage beantworten. Es stellte sich heraus, dass das Verhältnis von positivem zu negativem Feedback in keiner Weise mit Vorfällen zusammenhängt, weshalb schlauere Methoden erforderlich waren. Darüber hinaus wollten wir die Themen der Vorfälle identifizieren.

Um Anomalien zu identifizieren, haben wir das Arima-Modell des autoregressiven integrierten gleitenden Durchschnitts gewählt.

ARIMA (p, d, q) für die instationäre Zeitreihe Xt hat die Form:


Wobei εt die stationäre Zeitreihe ist; c, ai, bj - Modellparameter; △ d ist der Operator der Differenz in der Zeitreihe der Ordnung d (nacheinander d Differenzen der Differenzen erster Ordnung nehmen - zuerst aus der Zeitreihe, dann aus den erhaltenen Differenzen erster Ordnung, dann aus der zweiten Ordnung usw.).

Wir haben das Modell während der gesamten Stichprobe trainiert. Um die normale Anzahl negativer Bewertungen für das ausgewählte Datum vorherzusagen, wurde ein Intervall von drei Monaten verwendet. Die Vorhersage wurde eine Woche im Voraus ab dem ausgewählten Datum mit einer Diskretisierung von einem Tag erstellt.

Dann bildete sich ein Konfidenzniveau. Zu diesem Zweck wurde der berechnete Wert des Konfidenzintervalls zum Wert der Prognosefunktion für jedes Datum addiert. Das dritte Quantil der Verteilung aller Abweichungen der Vorhersagefunktion von der tatsächlichen Anzahl negativer Überprüfungen über das Dreimonatsintervall, auf dem die Vorhersage des normalen Niveaus basiert, wurde dafür genommen.

Die Anomalie wurde aufgezeichnet, als die tatsächliche Anzahl negativer Bewertungen das Konfidenzniveau (Prognosewert + Konfidenzintervall) überschritt. So sieht es auf einem Diagramm aus:


Rot ist die tatsächliche Anzahl der Bewertungen. Gelbe Farbe - der vorhergesagte Wert des normalen Pegels mit einem Konfidenzintervall

Für die weitere Analyse wurden 5 verschiedene Peaks ausgewählt, die am 27.02.2017, 15.03.2017, 14.09.2017, 18.09.2017, 20.09.2017 auftraten.

Die Identifizierung von Vorfällen erfolgte durch Clustering von Überprüfungstexten mit zwei auf BIGARTM und Word2Vec basierenden Modellen mit integriertem Kmeans-Clustering.

BIGARTM-Bibliothek (thematisches Modell)


Das thematische Modell ist eine Darstellung der beobachteten bedingten Verteilung p (w | d) von Begriffen (Wörtern oder Phrasen) w in Dokumenten d der Sammlung D :


wobei T eine Vielzahl von Themen ist;
- unbekannte Verteilung von Begriffen in Thema t ;
- unbekannte Verteilung der Themen in Dokument d .

Parameter der thematischen Modellmatrix und - werden durch Lösen des Problems der Maximierung der Wahrscheinlichkeit gefunden:



Der Hauptvorteil gegenüber anderen Wahrscheinlichkeitsmodellen ist die Verfügbarkeit von Regularisierern zum Glätten, Ausdünnen und Dekorrelieren.

Modell mit Word2Vec


Das Modell mit Word2Vec basiert auf der Tensoralgebra. Darunter wurde ein Wörterbuch aller Wörter in den Rezensionen zusammengestellt. Die Vektordarstellung von Word2Vec-Wörtern ist zum Basisraum für Cluster geworden.

Der Algorithmus ist so beschaffen, dass er versucht, die quadratische Gesamtabweichung der Punkte der Cluster von den Zentren dieser Cluster zu minimieren:


k ist die Anzahl der Cluster, S i sind die resultierenden Cluster, i = 1,2 ... k und μ i sind die Massenschwerpunkte aller Vektoren x aus dem Cluster S i . Lassen Sie uns nun die Ergebnisse der Modelle anhand spezifischer Beispiele sehen.

Die abnormale Periode mit einem Höhepunkt 15.03.2017


BIGARTM :
Clusternummer
Tags
Beispiele für Clusterüberprüfungen
(Quellvokabular)
1
Aktualisierungsversion Betriebskonto Arbeitsfehler nicht in der Lage, Löschübertragung Rückgabe zu installieren

„Die alte Version funktioniert nicht. Ich brauche kein Update. Am Telefon ist kein Platz! Geben Sie die Gelegenheit zurück, die alte Version zu verwenden !!! "

"Ich kann die Anwendung überhaupt nicht installieren, es ist genug Speicher auf dem Telefon vorhanden, mehr als 50%, aber die Anwendung schreibt hartnäckig, dass es keine Möglichkeit zur Installation gibt, Fehler 24!" Korrigieren Sie den Fehler, haben Sie ihn bereits verwendet, er hat mir sehr gut gefallen !!! “

„Nach dem Upgrade hat es aufgehört zu funktionieren! Ein Fenster erscheint mit der Meldung: "" In der Anwendung "" Sberbank "" ist ein Fehler aufgetreten und auf Wiedersehen. Verdammtes Update! Vor dem Update hat alles gut funktioniert, völlig zufrieden. Und auf dem Weg habe ich keinen solchen Mist! "
2
Verbindung zu schreiben zu arbeiten nicht in der Lage Speicher kann nicht ständig fliegen schrecklich das Problem zu löschen

"Ich kann die Anwendung nicht eingeben, ich gebe den Code ein, schreibe, ich kann die sichere Verbindung nicht wiederherstellen!" was machst du! Zumindest müssen Sie aktualisiert werden! Ich war mit dem alten Update zufrieden! Löse das Problem! “

„Was hast du mit einem großartigen Programm gemacht? Aufgedeckt und bedauert. Alle 2 Minuten erscheint ein Fenster mit dem Text "" Verbindung zur Sberbank ist unterbrochen "". Ich entschied mich zu entfernen und neu zu installieren. Jetzt öffnet es sich überhaupt nicht. Wirft es sofort aus dem Programm. Leute, gibt die alte Version zurück »
3
sms not_to kommen in Code-Karte, die Sie brauchen, danke not_work Eingabe not_may in der Lage sein, herauszufliegen

"SMS kommt nicht mit einem Passwort zum Telefon"

"Registriert sich nicht, schreibt, dass SMS mit dem Code und nichts kommen wird ...."

„Nach dem Update geht eine SMS über die Eingabe ein, aber der Schwellenwert fliegt nach 4 Sekunden aus. Wie soll ich sein? "

Word2Vec + K bedeutet:
Clusternummer
Tags
Beispiele für Clusterüberprüfungen
(Quellvokabular)
1
Update Verbindungsanmeldung verwenden Update
"Ich kann die Anwendung nicht eingeben, ich gebe den Code ein, schreibe, ich kann die sichere Verbindung nicht wiederherstellen!" was machst du! Zumindest müssen Sie aktualisiert werden! Ich war mit dem alten Update zufrieden! Löse das Problem! “

„Die Verbindung ist unterbrochen, stellen Sie eine Verbindung zu einem anderen Netzwerk her - das sehe ich am häufigsten, wenn ich in die Anwendung gehen möchte. Ich stelle Updates immer sofort bereit, wenn sie herauskommen. Wenn Sie Erfolg haben, funktioniert alles einwandfrei. “

2
SMS kommen Eingabe Telefon Login
„Nach dem Update geht eine SMS über die Eingabe ein, aber der Schwellenwert fliegt nach 4 Sekunden aus. Wie soll ich sein? "

"SMS kommt nicht mit einem Passwort zum Telefon"

"Bei der Registrierung wird SMS nicht mit einem Code geliefert ..."

"Die Eingabe ist nicht möglich. Der SMS-Code kommt nicht. Korrigieren Sie alles früher."

Bigartm
Word2Vec + Kmeans


  • Nur 194 Bewertungen.
  • Identifizierte 3 Cluster.

Beim Clustering festgestellte Probleme:

  • Problem mit der Anwendungsleistung im Zusammenhang mit dem Versions-Upgrade.
  • Das Problem der Anwendung bezog sich auf die Verbindung mit der Sberbank.
  • Das Problem beim Senden von SMS an den Benutzer mit dem Code.

  • Nur 190 Bewertungen.
  • 2 Cluster identifiziert.

Beim Clustering festgestellte Probleme:

  • Anmeldeproblem mit Verbindung und Versionsaktualisierung.
  • Das Problem beim Senden von SMS an den Benutzer mit dem Code.


Wie Sie den Ergebnissen entnehmen können, hebt BIGARTM Themen deutlicher hervor als Word2Vec + Kmeans. Für das Word2Vec + Kmeans-Modell wurden kurze, nicht informative Überprüfungen mit Wörtern ohne Vektordarstellung (Wörter mit Fehlern, Obszönitäten usw.) nicht berücksichtigt.

Interessanterweise wurden in diesem Zeitraum Vorfälle im internen ServiceDesk-System nicht nach dem Problem der Aktualisierung der Version klassifiziert und separat behandelt. Dies bedeutet, dass in diesem Fall das Modell die Aufgabe besser bewältigte als eine Person.

Früherkennung


Und hier ist ein Beispiel, das die Fähigkeit unseres Modells demonstriert, proaktiv zu arbeiten. 18.09.2017 In ServiceDesk wurde ein massives Problem registriert, das auf die Unfähigkeit zurückzuführen ist, die Anwendung einzugeben und für einige Benutzer Zahlungen zu leisten. Auf dem Arima-Chart sehen wir an diesem Tag einen starken Anstieg negativer Bewertungen sowie einen leichten Ausbruch vier Tage zuvor.



Wir haben beide Ausreißer analysiert.

14. September 2017:
Bigartm
Word2Vec + Kmeans


  • Nur 243 Bewertungen.
  • Identifizierte 3 Cluster.

Beim Clustering festgestellte Probleme:

  • Das Problem mit dem Geldtransfer. Das Problem mit der Schnittstelle.
  • Das Problem bei der Eingabe der Anwendung nach dem Update.
  • Problem beim Anmelden bei der Anwendung. Der Benutzer ist mit den Datenschutzbestimmungen nicht zufrieden.

  • Nur 171 Bewertungen.
  • 1 Cluster identifiziert.

Das beim Clustering festgestellte Problem:

  • Das Problem der Arbeit in der Anwendung nach dem Update. Der Benutzer ist mit den Datenschutzbestimmungen nicht zufrieden, es gibt auch ein Problem mit der Überweisung von Geldern.


18. September 2017:
Bigartm
Word2Vec + Kmeans


  • Nur 935 Bewertungen.
  • Identifizierte 3 Cluster.

Beim Clustering festgestellte Probleme:

  • Das Problem beim Aufrufen der Anwendung nach dem Aktualisieren der Version. Die Anwendung gibt dem Benutzer eine Nachricht über die veraltete Version.
  • Problem beim Anmelden bei der Anwendung. Der Benutzer gibt das Passwort mehrmals ein, die Anwendung friert ein.
  • Problem mit der Anwendungsleistung im Zusammenhang mit dem integrierten Antivirenprogramm.

  • Nur 828 Bewertungen.
  • 1 Cluster identifiziert.


Das beim Clustering festgestellte Problem:
  • Das Problem bei der Eingabe eines Passworts und der Eingabe der Anwendung. Fehler beim Aktualisieren der Version.


Und hier erfahren Sie, wie diese Ergebnisse mit Daten von ServiceDesk verglichen werden.
Datumsanomalie erkannt
Gemeldetes Problem in SM
Bestimmen der Art des Problems mit
Bigartm
Bestimmen der Art des Problems mit
Word2Vec + Kmeans
2017-09-14
00:00 - 24:00 Uhr

Nach dem Aktualisieren der Anwendung wird ein erhöhter Hintergrund von Aufrufen von aktualisierten Anwendungen gebildet.
Das Problem mit dem Geldtransfer. Das Problem mit der Schnittstelle.

Das Problem bei der Eingabe der Anwendung nach dem Update.
Problem beim Anmelden bei der Anwendung.

Der Benutzer ist mit den Datenschutzbestimmungen nicht zufrieden.
Das Problem der Arbeit in der Anwendung nach dem Update. Der Benutzer ist mit den Datenschutzbestimmungen nicht zufrieden, es gibt auch ein Problem mit der Überweisung von Geldern.
2017-09-18
00:00 - 24:00 Uhr
Zwischen 09:23
Um 15:20 Uhr Moskauer Zeit wurde für einige Kunden der Bank eine Verlängerung der Zeit für die Aufnahme und Durchführung von Geschäften mit Sberbank Online verzeichnet.
Vorfälle hatten praktisch keine Auswirkungen auf die Arbeit von Kunden, die iOS verwenden.
Erhöhte Anzahl von Kundenanrufen beim Contact Center der Bank (bis zu 1369 zusätzliche Anrufe in 15 Minuten).
Das Problem beim Aufrufen der Anwendung nach dem Aktualisieren der Version. Die Anwendung gibt dem Benutzer eine Nachricht über die veraltete Version.

Problem beim Anmelden bei der Anwendung. Der Benutzer gibt das Passwort mehrmals ein, die Anwendung friert ein.

Problem mit der Anwendungsleistung im Zusammenhang mit dem integrierten Antivirenprogramm.
Das Problem bei der Eingabe eines Passworts und der Eingabe der Anwendung. Fehler beim Aktualisieren der Version.

Es ist offensichtlich, dass am 18. September ein großer Strom negativer Kundenbewertungen und Anrufe beim Contact Center durch das Fehlen einer angemessenen Reaktion auf den erhöhten Hintergrund vom 14. September verursacht wurde. Dieses Beispiel zeigt, dass das Modell dazu beitragen kann, ein Massenproblem zu vermeiden, indem es frühzeitig erkannt wird.

Interessant ist auch, dass das Modell gleichzeitig ein anderes Problem (mit integriertem Antivirus) entdeckte, das vor dem Hintergrund des Hauptproblems nicht hervorgehoben wurde. Darauf fehlt die Registrierung in ServiceDesk.

Zusammenfassend


Durch maschinelles Lernen können Benutzerfeedbacks gut analysiert werden. Manchmal sogar genauer als manuelle Verarbeitung. Dies wird dazu beitragen, die Zeit für die Behebung von Vorfällen der mobilen Anwendung zu verkürzen und zu verbessern.

Vielleicht eignen sich solche Methoden nicht nur zur Identifizierung von Vorfällen, sondern auch zur Analyse von neutralem und positivem Feedback, um vorrangige Benutzerfälle hervorzuheben. Dies wird dazu beitragen, die Funktionalität der Anwendung basierend auf Kundenpräferenzen ohne zusätzliche Kosten für deren Erfassung und Analyse zu entwickeln. Aber diese Idee muss noch überprüft werden ...

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


All Articles