Bei der Personalisierung wird maschinelles Lernen eingesetzt, insbesondere ein kontextbezogener Multi-Armed Bandit-Algorithmus, um das optimale Angebot für einzelne Nutzer zu ermitteln und ein Ziel zu erreichen. In unserem Fall besteht das Ziel darin, die Gesamtzahl oder den Gesamtparameterwert bestimmter Google Analytics-Ereignisse zu optimieren.
Was ist ein kontextbezogener Multi-Armed Bandit-Algorithmus?
Das „mehrarmige Bandit“-Problem ist eine Metapher, die die Situation beschreibt, in der wir aus einer Liste von mehreren Pfaden kontinuierlich den Pfad auswählen möchten, der zu den höchsten und zuverlässigsten Belohnungen führt. Zur Veranschaulichung können Sie die Metapher eines Spielers vor einer Reihe von Spielautomaten verwenden, die oft umgangssprachlich als „einarmiger Bandit“ bezeichnet werden, da ein Spielautomat einen Hebel (oder Arm) hat und Ihr Geld nimmt. Da wir mehrere „Arme“ berücksichtigen möchten, wird aus dem einarmigen Banditen der mehrarmige Bandit.
Nehmen wir an, wir haben drei Optionen und möchten herausfinden, welche die zuverlässigste Belohnung bietet. Wir könnten jede Option ausprobieren und dann, nachdem wir ein Ergebnis erhalten haben, einfach den Arm auswählen, der die meisten Belohnungen eingebracht hat. Das ist ein Greedy-Algorithmus: Die Option, die beim ersten Versuch das beste Ergebnis liefert, wird immer wieder ausgewählt. Wir können jedoch nachvollziehen, dass das nicht immer funktioniert. Zum einen könnte die hohe Belohnung ein Zufall sein. Vielleicht gibt es auch nutzerspezifische Kontextfaktoren, die in diesem Zeitraum zu höheren Prämien geführt haben, die später nicht mehr so effektiv wären.
Daher wird Kontext hinzugefügt, um den Algorithmus effektiver zu machen. Bei der Remote Config-Personalisierung ist dieser anfängliche Kontext eine zufällige Stichprobe oder Unsicherheit, die für etwas Entropie im Test sorgt. Dabei wird ein kontextbezogener Spielautomatentest (Multi-Armed Bandit, MAB) implementiert. Während des Tests werden durch kontinuierliche Analyse und Beobachtung zusätzliche Informationen darüber gewonnen, welche Testgruppen am wahrscheinlichsten eine Belohnung für das Modell auslösen. So wird das Modell effektiver.
Was bedeutet das für meine App?
Sehen wir uns nun an, was ein Multi-Armed-Bandit-Algorithmus im Kontext Ihrer App bedeutet. Angenommen, Sie optimieren für Banneranzeigenklicks. In diesem Fall sind die „Varianten“ der Personalisierung die alternativen Werte, die Sie angeben, um die verschiedenen Banneranzeigen darzustellen, die Nutzern präsentiert werden sollen. Der Banneranzeigenklick ist die Prämie, die wir als Zielvorhaben bezeichnen.
Wenn Sie eine Personalisierung zum ersten Mal starten, weiß das Modell nicht, welcher alternative Wert für die einzelnen Nutzer am wahrscheinlichsten zu Ihrem Ziel führt. Bei der Personalisierung wird jeder alternative Wert untersucht, um die Wahrscheinlichkeit zu ermitteln, dass Ihr Ziel erreicht wird. Das zugrunde liegende Modell wird dadurch immer besser informiert und kann die optimale Lösung für jeden Nutzer vorhersagen und auswählen.
Für die Personalisierung wird ein Fenster für stabile Attributions von 24 Stunden verwendet. Das ist die Zeit, die der Personalisierungsalgorithmus für die Untersuchung eines einzelnen alternativen Werts benötigt. Sie sollten den Personalisierungen genügend Zeit geben, um jeden alternativen Wert mehrmals zu untersuchen (in der Regel etwa 14 Tage). Im Idealfall können Sie sie dauerhaft ausführen lassen, damit sie sich kontinuierlich verbessern und anpassen können, wenn sich Ihre App und das Nutzerverhalten ändern.
Zusätzliche Messwerte erfassen
Mit der Remote Config-Personalisierung können Sie auch bis zu zwei zusätzliche Messwerte erfassen, um Ihre Ergebnisse in den richtigen Kontext zu setzen. Angenommen, Sie haben eine Social-Media-App entwickelt und verschiedene alternative Werte festgelegt, um Nutzer dazu anzuregen, Inhalte mit Freunden zu teilen und so das Engagement insgesamt zu steigern.
In diesem Fall können Sie die Optimierung auf ein Analytics-Ereignis wie link_received
ausrichten und die beiden Messwerte auf user_engagement
und link_opened
festlegen, um zu sehen, ob das Nutzer-Engagement und die Anzahl der vom Nutzer geöffneten Links steigt (echtes Engagement) oder sinkt (möglicherweise zu viele Spam-Links).
Diese zusätzlichen Messwerte werden zwar nicht in den Personalisierungsalgorithmus einbezogen, Sie können sie aber direkt neben Ihren Personalisierungsergebnissen im Blick behalten. So erhalten Sie wertvolle Informationen dazu, inwieweit die Personalisierung dazu beitragen kann, Ihre Gesamtziele zu erreichen.
Ergebnisse der Personalisierung verstehen
Nachdem eine Personalisierung lange genug ausgeführt wurde, um Daten zu erfassen, können Sie sich die Ergebnisse ansehen.
So rufen Sie die Ergebnisse der Personalisierung auf:
Öffnen Sie die Seite Remote Config und klicken Sie auf Personalisierungen.
Wählen Sie die Personalisierung aus, die Sie sich ansehen möchten. Sie können nach dem Namen oder Zielvorhaben der jeweiligen Personalisierung suchen und nach „Name“, „Startzeit“ oder „Gesamtsteigerung“ sortieren.
Auf der Ergebnisseite wird die Gesamtsteigerung zusammengefasst, also der prozentuale Leistungsunterschied, der durch die Personalisierung im Vergleich zur Baseline-Gruppe erzielt wird.
Auf der Ergebnisseite werden außerdem der aktuelle Status der Personalisierung, die Attribute der Personalisierung und ein interaktives Diagramm angezeigt, das Folgendes bietet:
Hier sehen Sie eine detaillierte Tages- und Gesamtübersicht der Leistung der Personalisierung im Vergleich zur Baseline.
Hier sehen Sie, wie die einzelnen Werte insgesamt in der Referenzgruppe abschneiden.
Hier werden die Zielergebnisse und die Leistung im Vergleich zu den zusätzlichen Messwerten angezeigt, die Sie ausgewählt haben. Sie können über die Tabs oben in der Zusammenfassung darauf zugreifen.
Eine Personalisierung kann unbegrenzt ausgeführt werden. Sie können die Ergebnisseite weiterhin aufrufen, um die Leistung zu beobachten. Der Algorithmus lernt ständig dazu und passt sich an, wenn sich das Nutzerverhalten ändert.
Löschen von Personalisierungen
Sie können eine Personalisierung über die Firebase-Konsole löschen oder einen Personalisierungsparameter aus Ihrer Vorlage entfernen. Verwenden Sie dazu die Firebase Remote Config API. Gelöschte Personalisierungen können nicht wiederhergestellt werden. Weitere Informationen zur Datenaufbewahrung finden Sie unter Datenlöschung.
Sie können Personalisierungen auch löschen, indem Sie sie rückgängig machen oder eine Vorlage importieren.
Rollbacks
Wenn Ihre aktuelle Vorlage Personalisierungen enthält und Sie ein Rollback auf eine Vorlage ohne diese Personalisierungen durchführen, werden die Personalisierungen gelöscht. Wenn Sie zu einer früheren Vorlage zurückkehren möchten, verwenden Sie die Firebase-Konsole oder roll back
über die Firebase Remote Config API.
Wenn Sie eine Personalisierung löschen und zu einer vorherigen Vorlage zurückkehren, wird in der Firebase-Konsole ein Verweis auf diese ungültige Personalisierung angezeigt. Sie können die ungültige Personalisierung in der Firebase-Konsole entfernen, indem Sie die Personalisierung auf der Seite Remote Config auf dem Tab „Parameter“ bearbeiten.
Importe
Wenn Sie eine Vorlage importieren, die Ihre aktuellen Personalisierungen nicht mehr enthält, werden diese Personalisierungen auch gelöscht. Wenn Sie eine Vorlage importieren möchten, verwenden Sie die Firebase-Konsole oder die Remote Config REST API.
Nächste Schritte
Remote Config-Personalisierungs-Anwendungsfälle
Erste Schritte mit der Personalisierung von Remote Config