À propos de la personnalisation Remote Config

La personnalisation utilise le machine learning (plus précisément un algorithme de bandit manchot contextuel) pour déterminer l'expérience optimale pour chaque utilisateur afin d'atteindre un objectif. Dans notre cas, l'objectif est d'optimiser le nombre total ou la valeur de paramètre totale d'événements Google Analytics spécifiques.

Qu'est-ce qu'un algorithme de bandit manchot contextuel ?

Le "bandit manchot" est une métaphore utilisée pour décrire la situation dans laquelle nous voulons choisir continuellement un chemin qui mène aux récompenses les plus élevées et les plus fiables à partir d'une liste de plusieurs chemins. Pour visualiser cela, vous pouvez utiliser la métaphore d'un joueur devant une rangée de machines à sous, souvent appelées familièrement "bandits manchots", car une machine à sous possède une poignée (ou un bras) et prend votre argent. Comme nous voulons résoudre le problème pour plusieurs "bras", le bandit manchot devient un bandit à plusieurs bras.

Par exemple, supposons que nous ayons trois options et que nous voulions déterminer laquelle fournit la récompense la plus fiable : nous pourrions essayer chaque option, puis, après avoir reçu un résultat, nous pourrions continuer à choisir le bras qui a généré le plus de récompenses. C'est ce qu'on appelle un algorithme glouton : l'option qui donne le meilleur résultat lors de notre première tentative est celle que nous continuerons à choisir. Mais nous comprenons que cela ne fonctionne pas toujours. Par exemple, une récompense élevée peut être due au hasard. Il est également possible qu'un contexte spécifique à l'utilisateur ait entraîné des récompenses plus élevées au cours de cette période, mais qu'il ne soit plus aussi efficace par la suite.

Le contexte est donc ajouté pour rendre l'algorithme plus efficace. Pour la personnalisation Remote Config, ce contexte initial est un échantillonnage aléatoire, ou incertitude, qui fournit une certaine entropie au test. Cela implémente un "bandit manchot contextuel". Au fur et à mesure que le test se poursuit, l'exploration et l'observation continues ajoutent au modèle un contexte réel sur les bras les plus susceptibles de générer une récompense, ce qui le rend plus efficace.

Qu'est-ce que cela signifie pour mon application ?

Réfléchissez à ce que signifie un algorithme de bandit manchot dans le contexte de votre application. Supposons que vous optimisez les clics sur les bannières. Dans ce cas, les "bras" de la personnalisation seraient les valeurs alternatives que vous spécifiez pour représenter les différentes bannières que vous souhaitez diffuser auprès des utilisateurs. Le clic sur la bannière est la récompense, appelée objectif.

Lorsque vous lancez une personnalisation pour la première fois, le modèle ne sait pas quelle valeur alternative est la plus susceptible d'atteindre votre objectif pour chaque utilisateur. À mesure que la personnalisation explore chaque valeur alternative pour comprendre la probabilité d'atteindre votre objectif, le modèle sous-jacent devient plus informé, ce qui améliore sa capacité à prédire et à sélectionner l'expérience optimale pour chaque utilisateur.

La personnalisation utilise une fenêtre de persistance de 24 heures. Il s'agit de la durée pendant laquelle l'algorithme de personnalisation explore une seule valeur alternative. Vous devez laisser suffisamment de temps à vos personnalisations pour explorer chaque valeur alternative plusieurs fois (généralement environ 14 jours). Idéalement, vous pouvez les laisser s'exécuter indéfiniment afin qu'ils puissent s'améliorer et s'adapter en permanence à l'évolution de votre application et du comportement des utilisateurs.

Suivre des métriques supplémentaires

La personnalisation Remote Config vous permet également de suivre jusqu'à deux métriques supplémentaires pour vous aider à contextualiser vos résultats. Par exemple, supposons que vous ayez développé une application de réseau social et que vous ayez défini différentes valeurs alternatives pour encourager les utilisateurs à partager du contenu avec leurs amis afin d'augmenter l'engagement global.

Dans ce cas, vous pouvez choisir d'optimiser un événement Analytics tel que link_received et de définir vos deux métriques sur user_engagement et link_opened pour savoir si l'engagement utilisateur et le nombre de liens ouverts par l'utilisateur augmentent (engagement réel) ou diminuent (peut-être trop de liens de spam).

Bien que ces métriques supplémentaires ne soient pas prises en compte dans l'algorithme de personnalisation, vous pouvez les suivre en même temps que vos résultats de personnalisation, ce qui vous permet d'obtenir des informations précieuses sur la capacité de la personnalisation à atteindre vos objectifs globaux.

Comprendre les résultats de la personnalisation

Une fois qu'une personnalisation a été exécutée pendant une durée suffisante pour collecter des données, vous pouvez afficher ses résultats.

Pour afficher les résultats de la personnalisation :

  1. Dans la console Firebase, accédez à la page DevOps et engagement > Remote Config > Personnalisations.

  2. Sélectionnez la personnalisation que vous souhaitez afficher. Vous pouvez rechercher une personnalisation spécifique par nom ou par objectif, et trier les résultats par nom, heure de début ou amélioration totale.

La page de résultats récapitule l'amélioration totale, ou la différence de performances en pourcentage, que la personnalisation apporte par rapport au groupe de référence.

La page de résultats affiche également l'état actuel de la personnalisation, les attributs de la personnalisation et un graphique interactif qui :

  • Affiche une vue quotidienne et totale détaillée des performances de la personnalisation par rapport à la référence.

  • Indique les performances globales de chaque valeur dans le groupe de référence.

  • Affiche les résultats de l'objectif et les performances par rapport aux métriques supplémentaires que vous avez choisies, accessibles à l'aide des onglets situés en haut du récapitulatif.

Une personnalisation peut être exécutée indéfiniment, et vous pouvez continuer à consulter la page des résultats pour surveiller ses performances. L'algorithme continuera d'apprendre et de s'ajuster pour s'adapter aux changements de comportement des utilisateurs.

Comprendre la suppression de la personnalisation

Vous pouvez supprimer une personnalisation à l'aide de la console Firebase ou en supprimant un paramètre de personnalisation de votre modèle à l'aide de l'API Firebase Remote Config. Les personnalisations supprimées ne peuvent pas être restaurées. Pour en savoir plus sur la conservation des données, consultez Suppression des données.

Vous pouvez également supprimer des personnalisations en effectuant un rollback ou en important un modèle.

Rollbacks

Si votre modèle actuel comporte des personnalisations et que vous effectuez un rollback vers un modèle qui ne comporte pas les mêmes personnalisations, celles-ci sont supprimées. Pour revenir à un modèle précédent, utilisez la console Firebase ou roll back à l'aide de l'API Firebase Remote Config.

Lorsque vous supprimez une personnalisation et que vous effectuez un rollback vers un modèle précédent, une référence à cette personnalisation non valide s'affiche dans la console Firebase. Vous pouvez supprimer la personnalisation non valide de la console Firebase en modifiant la personnalisation dans l'onglet "Paramètres" de la page Remote Config.

Importations

L'importation d'un modèle qui ne contient plus vos personnalisations actuelles supprime également ces personnalisations. Pour importer un modèle, utilisez la console Firebase ou l'API REST Remote Config.

Étapes suivantes