Informazioni sulla personalizzazione di Remote Config

La personalizzazione utilizza il machine learning, in particolare un algoritmo di tipo multi-armed bandit contestuale, per determinare l'esperienza ottimale per i singoli utenti al fine di raggiungere un obiettivo. Nel nostro caso, l'obiettivo è ottimizzare il numero totale o il valore parametro totale di eventi Google Analytics specifici.

Che cos'è un algoritmo multi-armed bandit contestuale?

"Multi-armed bandit" è una metafora utilizzata per descrivere la situazione in cui vogliamo scegliere continuamente un percorso che porti ai premi più alti e affidabili da un elenco di più percorsi. Per visualizzare questo concetto, puoi utilizzare la metafora di un giocatore d'azzardo davanti a una fila di slot machine, spesso chiamate colloquialmente "banditi con un braccio solo" perché una slot machine ha una leva (o un braccio) e prende i tuoi soldi. Poiché vogliamo risolvere il problema per più "bracci", il bandito con un braccio diventa il bandito con più bracci.

Ad esempio, supponiamo di avere tre opzioni e di voler determinare quale offre la ricompensa più affidabile: potremmo provare ogni opzione e poi, dopo aver ricevuto un risultato, potremmo continuare a scegliere il braccio che ha generato il maggior numero di ricompense. Questo è ciò che viene definito un algoritmo greedy: l'opzione che produce il risultato migliore al primo tentativo è quella che continueremo a scegliere. Tuttavia, ci rendiamo conto che questo potrebbe non funzionare sempre, ad esempio perché la ricompensa elevata potrebbe essere un caso fortuito. O forse c'è un contesto specifico per l'utente che ha portato a premi più elevati durante quel periodo di tempo, che non sarebbero altrettanto efficaci in seguito.

Per questo motivo, viene aggiunto il contesto per rendere l'algoritmo più efficace. Per la personalizzazione di Remote Config, questo contesto iniziale è il campionamento casuale o l'incertezza, che fornisce un po' di entropia all'esperimento. In questo modo viene implementato un "multi-armed bandit contestuale". Man mano che l'esperimento continua, l'esplorazione e l'osservazione continue aggiungono al modello un contesto reale appreso su quali gruppi hanno maggiori probabilità di generare una ricompensa, rendendolo più efficace.

Qual è l'impatto sulla mia app?

Considera cosa significa un algoritmo multi-armed bandit nel contesto della tua app. Supponiamo che tu stia ottimizzando i clic sugli annunci banner. In questo caso, i "bracci" della personalizzazione sono i valori alternativi che specifichi per rappresentare i diversi annunci banner che vuoi mostrare agli utenti. Il clic sull'annuncio banner è la ricompensa, che viene definita obiettivo.

Quando lanci per la prima volta una personalizzazione, il modello non sa quale valore alternativo avrà maggiori probabilità di raggiungere il tuo obiettivo per ogni singolo utente. Man mano che la personalizzazione esplora ogni valore alternativo per comprendere la probabilità di raggiungere il tuo obiettivo, il modello sottostante diventa più informato, migliorando la sua capacità di prevedere e selezionare l'esperienza ottimale per ogni utente.

La personalizzazione utilizza una finestra di persistenza di 24 ore. Si tratta del periodo di tempo in cui l'algoritmo di personalizzazione esplora un singolo valore alternativo. Devi concedere alle tue personalizzazioni il tempo necessario per esplorare ogni valore alternativo più volte (in genere circa 14 giorni). L'ideale è lasciarle in esecuzione perpetuamente, in modo che possano migliorare e adattarsi continuamente ai cambiamenti della tua app e dei comportamenti degli utenti.

Monitora metriche aggiuntive

La personalizzazione di Remote Config offre anche la possibilità di monitorare fino a due metriche aggiuntive per aiutarti a contestualizzare i risultati. Ad esempio, supponiamo che tu abbia sviluppato un'app social e abbia impostato valori alternativi diversi per incoraggiare gli utenti a condividere contenuti con gli amici per aumentare il coinvolgimento complessivo.

In questo caso, potresti scegliere di eseguire l'ottimizzazione per un evento Analytics come link_received e impostare le due metriche su user_engagement e link_opened per capire se il coinvolgimento degli utenti e il numero di link aperti dall'utente aumentano (coinvolgimento reale) o diminuiscono (probabilmente troppi link contenenti spam).

Sebbene queste metriche aggiuntive non vengano prese in considerazione dall'algoritmo di personalizzazione, puoi monitorarle insieme ai risultati della personalizzazione, ottenendo informazioni preziose sulla capacità della personalizzazione di raggiungere i tuoi obiettivi generali.

Comprendi i risultati della personalizzazione

Dopo che una personalizzazione è stata pubblicata per un periodo di tempo sufficiente per raccogliere dati, puoi visualizzarne i risultati.

Per visualizzare i risultati della personalizzazione:

  1. Nella console Firebase, vai alla pagina DevOps e coinvolgimento > Remote Config > Personalizzazioni.

  2. Seleziona la personalizzazione che vuoi visualizzare. Puoi cercare la personalizzazione specifica per nome o obiettivo e puoi ordinare per Nome, Ora di inizio o Incremento totale.

La pagina dei risultati riassume il lift totale, ovvero la differenza percentuale nel rendimento, che la personalizzazione fornisce rispetto al gruppo di base.

La pagina dei risultati mostra anche lo stato attuale della personalizzazione, gli attributi della personalizzazione e un grafico interattivo che:

  • Mostra una visualizzazione giornaliera e totale dettagliata del rendimento della personalizzazione rispetto alla base di riferimento.

  • Mostra il rendimento complessivo di ogni valore nel gruppo di riferimento.

  • Mostra i risultati degli obiettivi e il rendimento rispetto alle metriche aggiuntive che hai scelto, accessibili tramite le schede nella parte superiore del riepilogo.

Una personalizzazione può essere lasciata in esecuzione a tempo indeterminato e puoi continuare a visitare la pagina dei risultati per monitorarne il rendimento. L'algoritmo continuerà ad apprendere e ad adattarsi ai cambiamenti nel comportamento degli utenti.

Informazioni sull'eliminazione della personalizzazione

Puoi eliminare una personalizzazione utilizzando la console Firebase o rimuovendo un parametro di personalizzazione dal modello utilizzando l'API Firebase Remote Config. Le personalizzazioni eliminate non possono essere ripristinate. Per scoprire di più sulla conservazione dei dati, consulta Eliminazione dei dati.

Puoi anche eliminare le personalizzazioni eseguendo il rollback o importando un modello.

Rollback

Se il modello attuale contiene personalizzazioni ed esegui il rollback a un modello che non contiene le stesse personalizzazioni, queste vengono eliminate. Per ripristinare un modello precedente, utilizza la console Firebase o roll back utilizzando l'API Firebase Remote Config.

Quando elimini una personalizzazione ed esegui il rollback a un modello precedente, nella console Firebase viene visualizzato un riferimento alla personalizzazione non valida. Puoi rimuovere la personalizzazione non valida dalla consoleFirebase modificando la personalizzazione nella scheda Parametri della pagina Remote Config.

Importazioni

L'importazione di un modello che non contiene più le personalizzazioni correnti comporta anche l'eliminazione di queste personalizzazioni. Per importare un template, utilizza la console Firebase o l'API REST Remote Config.

Passaggi successivi

  • Esplora i casi d'uso di personalizzazione di Remote Config.

  • Inizia con la personalizzazione di Remote Config.