Bei der Personalisierung wird maschinelles Lernen eingesetzt, insbesondere ein kontextbezogener Banditenalgorithmus, um die optimale Nutzererfahrung für einzelne Nutzer zu ermitteln, um 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 Algorithmus für den Spielautomatentest?
Der „Multi-Armed Bandit“ ist eine Metapher, die die Situation beschreibt, in der wir aus einer Liste mehrerer Pfade kontinuierlich einen Pfad auswählen möchten, der zu den höchsten und zuverlässigsten Prämien führt. Zur Veranschaulichung können Sie die Metapher eines Spielers vor einer Reihe von Spielautomaten verwenden, die im Volksmund oft als „einarmiger Bandit“ bezeichnet werden, weil ein Spielautomat einen Hebel (oder Arm) hat und Ihr Geld nimmt. Da wir mehrere „Arme“ lösen möchten, wird der einarmige Bandit zum Mehrarmigen Banditen.
Angenommen, 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 immer den Arm auswählen, der die meisten Prämien eingebracht hat. Dies wird als gieriger Algorithmus bezeichnet: Die Option, die beim ersten Versuch das beste Ergebnis liefert, wird auch weiterhin ausgewählt. Uns ist jedoch bewusst, dass das nicht immer funktioniert. Zum einen kann der hohe Bonus ein Zufall sein. Oder es gibt einen bestimmten Nutzerkontext, der in diesem Zeitraum zu höheren Prämien geführt hat, 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 die Zufallsstichprobe oder Unsicherheit, die dem Test eine gewisse Entropie verleiht. Dabei wird ein kontextbezogener Spielautomatentest (Multi-Armed Bandit, MAB) implementiert. Während der Test weiterläuft, werden durch fortlaufende explorative Datenanalysen und Beobachtungen reale Informationen dazu gewonnen, mit welchen Verzweigungen das Modell am ehesten eine Prämie erhält. So wird es 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 Klicks auf Banneranzeigen. In diesem Fall sind die „Äste“ der Personalisierung die alternativen Werte, die Sie für die verschiedenen Banneranzeigen angeben, die Nutzern präsentiert werden sollen. Der Klick auf die Banneranzeige ist die Prämie, die wir als Zielvorhaben bezeichnen.
Wenn Sie eine Personalisierung zum ersten Mal starten, weiß das Modell nicht, mit welchem alternativen Wert für jeden einzelnen Nutzer das Zielvorhaben mit höherer Wahrscheinlichkeit erreicht wird. Bei der Personalisierung wird jeder alternative Wert untersucht, um die Wahrscheinlichkeit zu ermitteln, mit der Ihr Ziel erreicht wird. Dadurch wird das zugrunde liegende Modell immer besser informiert und kann die optimale Nutzererfahrung für jeden Nutzer vorhersagen und auswählen.
Für die Personalisierung wird ein Fenster für stabile Attributions von 24 Stunden verwendet. Dies ist die Häufigkeit, mit der der Personalisierungsalgorithmus einen einzelnen alternativen Wert untersucht. Sie sollten Ihren Personalisierungen genügend Zeit geben, um jeden alternativen Wert mehrmals zu prüfen (in der Regel etwa 14 Tage). Idealerweise sollten Sie sie dauerhaft laufen lassen, damit sie sich kontinuierlich verbessern und an das Verhalten Ihrer App und Ihrer Nutzer anpassen können.
Zusätzliche Messwerte erfassen
Remote Config Bei der Personalisierung können Sie bis zu zwei zusätzliche Messwerte erfassen, um Ihre Ergebnisse besser einordnen zu können. Angenommen, Sie haben eine Social-Media-App entwickelt und verschiedene alternative Werte festgelegt, um Nutzer dazu anzuregen, Inhalte mit Freunden zu teilen, um die Interaktion insgesamt zu erhöhen.
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 Links, die Nutzer öffnen, steigen (echtes Engagement) oder sinken (möglicherweise zu viele Spam-Links).
Diese zusätzlichen Messwerte werden nicht in den Personalisierungsalgorithmus einbezogen. Sie können sie aber direkt neben den Personalisierungsergebnissen erfassen. So erhalten Sie wertvolle Informationen dazu, inwiefern die Personalisierung Ihre Gesamtziele erreichen kann.
Ergebnisse der Personalisierung
Sobald eine Personalisierung lange genug aktiv war, um Daten zu erheben, 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 der gewünschten Personalisierung anhand des Namens oder des Zielvorhabens suchen und nach Name, Startzeit oder Gesamteffekt sortieren.
Auf der Ergebnisseite werden der Gesamteffekt oder die prozentuale Leistungssteigerung durch die Personalisierung im Vergleich zur Kontrollgruppe zusammengefasst.
Auf der Ergebnisseite sehen Sie außerdem den aktuellen Status der Personalisierung, die Attribute der Personalisierung und ein interaktives Diagramm mit folgenden Informationen:
Hier sehen Sie eine detaillierte tägliche und Gesamtübersicht dazu, wie sich die Personalisierung im Vergleich zur Kontrollgruppe geschlagen hat.
Hier sehen Sie die Gesamtleistung der einzelnen Werte in der Kontrollgruppe.
Hier sehen Sie die Zielvorhaben und die Leistung in Bezug auf die von Ihnen ausgewählten zusätzlichen Messwerte. Sie können sie über die Tabs oben in der Zusammenfassung aufrufen.
Eine Personalisierung kann unbegrenzt laufen. Sie können die Ergebnisse jederzeit aufrufen, um die Leistung zu beobachten. Der Algorithmus lernt und passt sich weiter an, damit er sich an Änderungen des Nutzerverhaltens anpassen kann.
Löschen von Personalisierungen
Sie können eine Personalisierung über die Firebase-Konsole oder mithilfe der Firebase Remote Config API löschen, indem Sie einen Personalisierungsparameter aus Ihrer Vorlage entfernen. Gelöschte Personalisierungen können nicht wiederhergestellt werden. Informationen zur Datenaufbewahrung finden Sie unter Datenlöschung.
Sie können Personalisierungen auch löschen, indem Sie die Änderungen rückgängig machen oder eine Vorlage importieren.
Rollbacks
Wenn Ihre aktuelle Vorlage Personalisierungen enthält und Sie zu einer Vorlage zurückkehren, die diese nicht hat, werden die Personalisierungen gelöscht. Wenn Sie zu einer vorherigen Vorlage zurückkehren möchten, verwenden Sie die Firebase Console oder die Firebase Remote Config API.roll back
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 Console entfernen, indem Sie sie 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 gelöscht. Sie können eine Vorlage über die Firebase Console oder die Remote Config REST API importieren.
Nächste Schritte
Remote ConfigAnwendungsfälle für die Personalisierung