Informazioni sulla personalizzazione di Remote Config

La personalizzazione utilizza il machine learning, in particolare un algoritmo 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 in base al numero totale o al valore parametro totale del parametro di eventi Google Analytics specifici.

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

Il "multi-armed bandit" è una metafora usata per descrivere la situazione in cui vogliamo scegliere continuamente un percorso che porti alle ricompense più alte e affidabili da un elenco di più percorsi. Per visualizzare questo concetto, puoi usare la metafora di un giocatore davanti a una fila di slot machine, spesso chiamate colloquialmente "bandito con un braccio solo" perché una slot machine ha una maniglia (o 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 l'opzione che ha prodotto il maggior numero di premi. Questo è ciò che viene definito 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, la ricompensa elevata potrebbe essere un caso isolato. Oppure, potrebbe esserci un contesto specifico per l'utente che ha portato a premi più elevati in quel periodo di tempo, che non sarebbero altrettanto efficaci in un secondo momento.

In questo modo, viene aggiunto il contesto per rendere l'algoritmo più efficace. Per la personalizzazione di Remote Config, questo contesto iniziale è un campionamento casuale, o incertezza, che fornisce una certa entropia all'esperimento. Questo implementa un "multi-armed bandit contestuale". Man mano che l'esperimento continua a essere eseguito, l'esplorazione e l'osservazione in corso aggiungono un contesto appreso reale su quali bracci hanno maggiori probabilità di suscitare una ricompensa per il modello, 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 per i clic sugli annunci banner. In questo caso, i "bracci" della personalizzazione sarebbero 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 una personalizzazione, il modello non sa quale valore alternativo ha 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 permanenza di 24 ore. È il periodo di tempo durante il quale l'algoritmo di personalizzazione esplora un singolo valore alternativo. Devi dare alle personalizzazioni il tempo sufficiente per esplorare più volte ogni valore alternativo (in genere circa 14 giorni). Idealmente, puoi eseguirle in modo permanente in modo che possano migliorare e adattarsi continuamente man mano che la tua app e i comportamenti degli utenti cambiano.

Monitorare 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 ottimizzare 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 che aprono aumentano (coinvolgimento effettivo) o diminuiscono (probabilmente troppi link di spam).

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

Comprendere i risultati della personalizzazione

Dopo che una personalizzazione è stata pubblicata per un periodo di tempo sufficiente a 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 aumento totale.

La pagina dei risultati riepiloga il Total lift, ovvero la differenza percentuale di rendimento, che la personalizzazione fornisce rispetto al gruppo Baseline.

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 base.

  • 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 tornare alla pagina dei risultati per monitorarne il rendimento. L'algoritmo continuerà a imparare e ad aggiustarsi, in modo da potersi adattare quando cambia il 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 ripristinando una versione precedente o importando un modello.

Rollback

Se il modello attuale ha personalizzazioni e esegui il rollback a un modello che non ha 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 a quella personalizzazione non valida. Puoi rimuovere la personalizzazione non valida dalla console Firebase modificando la personalizzazione nella scheda Parametri della pagina Remote Config.

Importazioni

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

Passaggi successivi