Condividi tramite


Situazioni e modalità di utilizzo di Personalizza esperienze

Importante

A partire dal 20 settembre 2023 non sarà possibile creare nuove risorse di Personalizza esperienze. Il servizio Personalizza esperienze verrà ritirato il 1° ottobre 2026.

È possibile usare Personalizza esperienze in qualsiasi situazione in cui l'applicazione deve selezionare l'azione corretta (contenuto) da visualizzare, per migliorare l'esperienza, ottenere risultati aziendali più soddisfacenti o aumentare la produttività.

Personalizza esperienze usa l'apprendimento per rinforzo per selezionare l'azione (contenuto) da mostrare all'utente. La selezione può variare notevolmente a seconda della quantità, della qualità e della distribuzione dei dati inviati al servizio.

Casi d'uso di esempio per Personalizza esperienze

  • Chiarimento e disambiguazione degli intenti: offrire agli utenti un'esperienza migliore quando i loro intenti non sono chiari, fornendo un'opzione personalizzata.
  • Suggerimenti predefiniti per menu e opzioni: far sì che il bot suggerisca, come primo passaggio, l'elemento più probabile in modo personalizzato invece di presentare un menu impersonale o un elenco di alternative.
  • Caratteristiche e tono del bot: per i bot che possono variare il tono, la verbosità e stile di scrittura, valutare l'opportunità di variare queste caratteristiche.
  • Contenuto di notifiche e avvisi: definire il testo da usare per gli avvisi in modo da coinvolgere maggiormente gli utenti.
  • Tempistica di notifiche e avvisi: apprendere personalmente quando inviare le notifiche agli utenti per coinvolgerli maggiormente.

Aspettative per l'uso di Personalizza esperienze

È possibile applicare Personalizza esperienze nelle situazioni in cui si soddisfano o si possono implementare le linee guida seguenti.

Linee guida Spiegazione
Obiettivo aziendale Si ha un obiettivo aziendale o di usabilità per l'applicazione.
Sommario Decidere contestualmente cosa mostrare agli utenti in un determinato punto dell'applicazione migliora tale obiettivo.
Quantità di contenuto Le azioni da classificare per ogni chiamata sono meno di 50.
Aggregare i dati La scelta migliore può e deve essere appresa in base al comportamento collettivo degli utenti e al punteggio totale.
Uso etico L'uso dell'apprendimento automatico per la personalizzazione segue le linee guida per l'uso responsabile e le scelte personali.
Opzione singola migliore La decisione contestuale può essere espressa classificando la migliore opzione (azione) in un set di scelte limitato.
Risultato con punteggio Sarà quindi possibile determinare la validità della scelta classificata valutando alcuni aspetti del comportamento degli utenti ed esprimendoli con un punteggio,
Tempistica pertinente Il punteggio non introduce troppi fattori esterni o di confusione. La durata dell'esperimento è abbastanza ridotta da poter calcolare il punteggio finché è ancora pertinente.
Funzionalità di contesto sufficienti È possibile esprimere il contesto della classificazione come elenco di almeno 5 funzionalità che si ritiene possano orientare verso la scelta giusta, escludendo le informazioni personali.
Funzionalità di azione sufficienti Sono disponibili informazioni su ciascuna scelta di contenuto, azione, come elenco di almeno 5 funzioni che si ritiene aiutino Personalizza esperienze a operare la scelta giusta.
Dati giornalieri Ci sono eventi sufficienti a tenere sotto controllo la personalizzazione ottimale se il problema devia nel corso del tempo (ad esempio, le preferenze nel campo delle notizie o della moda). Personalizza esperienze si adatta ai cambiamenti continui del mondo reale, ma i risultati non saranno ottimali se non ci sono eventi e dati sufficienti da cui apprendere per individuare e stabilire nuovi criteri. È consigliabile scegliere un caso d'uso che accada abbastanza frequentemente. Prendere in considerazione la ricerca di casi d'uso che si verifichino almeno 500 volte al giorno.
Dati storici L'applicazione può conservare dati per il tempo sufficiente ad accumulare una cronologia di almeno 100.000 interazioni. Ciò consente a Personalizza esperienze di raccogliere dati sufficienti per eseguire valutazioni offline e l'ottimizzazione dei criteri.

Non usare Personalizza esperienze nelle situazioni in cui il comportamento personalizzato non è qualcosa che può essere individuato in tutti gli utenti. Può ad esempio essere utile usare Personalizza esperienze per suggerire la pizza da ordinare tra un elenco di 20 possibili tipi, ma la scelta del contatto da chiamare quando si ha bisogno di aiuto per i bambini (come "Nonna") non è un'opzione personalizzabile per un'intera base di utenti.

Come usare Personalizza esperienze in un'applicazione Web

L'aggiunta di un ciclo di apprendimento a un'applicazione Web include le operazioni seguenti:

  • Determinare l'esperienza da personalizzare, le azioni e le funzionalità disponibili, le caratteristiche del contesto da usare e la ricompensa da impostare.
  • Aggiungere nell'applicazione un riferimento all'SDK per la personalizzazione.
  • Chiamare l'API per la classificazione quando si è pronti ad avviare la personalizzazione.
  • Memorizzare l'ID dell'evento. La ricompensa tramite l'apposita API viene inviata in un secondo momento.
  1. Chiamare la funzione di attivazione per l'evento quando si è certi che l'utente ha visualizzato la pagina personalizzata.
  2. Attendere che l'utente esegua la selezione del contenuto classificato.
  3. Chiamare l'API per la ricompensa per specificare l'efficacia dell'output dell'API per la classificazione.

Come usare Personalizza esperienze con un chatbot

In questo esempio si vedrà come usare Personalizza esperienze in modo da inviare un suggerimento predefinito anziché inviare ogni volta all'utente una serie di opzioni o menu.

  • Scaricare il codice per questo esempio.
  • Configurare la soluzione del bot. Assicurarsi di pubblicare l'applicazione LUIS.
  • Gestire per il bot le chiamate alle API per la classificazione e la ricompensa.
    • Aggiungere codice per gestire l'elaborazione della finalità di LUIS. Se come finalità principale viene restituito None o il punteggio della finalità risulta al di sotto della soglia della logica di business, inviare l'elenco delle finalità a Personalizza esperienze per classificarle.
    • Mostrare all'utente l'elenco delle finalità come collegamenti selezionabili, dove la prima finalità corrisponde a quella classificata con priorità più alta dalla risposta dell'API.
    • Acquisire la selezione dell'utente e includerla nella chiamata all'API per la ricompensa.
  • Eseguire chiamate all'API per la classificazione di Personalizza esperienze ogni volta che è necessaria una disambiguazione, invece di memorizzare nella cache i risultati per ogni utente. Il risultato della disambiguazione della finalità può cambiare nel tempo per una stessa persona. Consentendo all'API per la classificazione di esplorare le varianze si accelererà l'apprendimento complessivo.
  • Scegliere un'interazione comune a molti utenti in modo da avere dati sufficienti per la personalizzazione. Ad esempio, le domande introduttive possono essere più appropriate rispetto ai piccoli chiarimenti introdotti più avanti nella conversazione, che potrebbero essere visualizzati solo da alcuni utenti.
  • Usare chiamate all'API di classificazione per abilitare conversazioni di tipo "il primo suggerimento è quello giusto", in cui all'utente viene chiesto "Vuoi X?" o "Intendi dire X?" e l'utente può solo confermare, anziché avere la possibilità di scegliere più opzioni da un menu. Ad esempio, conversazioni in cui l'utente chiede:"Vorrei ordinare un caffè" e il bot risponde:"Vuoi un espresso doppio?". In questo modo, anche il segnale di ricompensa è forte poiché fa direttamente riferimento all'unico suggerimento fornito.

Come usare Personalizza esperienze con una soluzione di raccomandazione

Molte aziende usano motori di raccomandazione, strumenti di marketing e conduzione di campagne, segmentazione e clustering del pubblico, filtri collaborativi e altri mezzi per consigliare prodotti da un ampio catalogo ai clienti.

Il repository GitHub Microsoft Recommenders fornisce esempi e procedure consigliate per creare sistemi di raccomandazione sotto forma di notebook Jupyter. Fornisce esempi funzionanti per preparare dati, compilare modelli, valutare, ottimizzare e rendere operativi i motori di raccomandazione, per molti approcci comuni, tra cui xDeepFM, SAR, ALS, RBM e DKN.

Personalizza esperienze può funzionare con un motore di raccomandazione, se presente.

  • I motori di raccomandazione richiedono grandi quantità di elementi (ad esempio, 500.000) e raccomandano un subset (ad esempio i primi 20) da centinaia o migliaia di opzioni.
  • Personalizza esperienze accetta un numero ridotto di azioni con una grande quantità di informazioni su di esse e le classifica in tempo reale per un determinato contenuto avanzato, mentre la maggior parte dei motori di raccomandazione usano solo alcuni attributi riguardanti gli utenti, i prodotti e le relative interazioni.
  • Personalizza esperienze è progettato per esplorare continuamente e in modo autonomo le preferenze dell'utente, restituendo risultati migliori nei casi in cui il contenuto cambia rapidamente, ad esempio notizie, eventi in tempo reale, contenuti live della community, contenuto con aggiornamenti quotidiani o contenuti stagionali.

Un uso comune consiste nell'usare l'output di un motore di raccomandazione (ad esempio, i primi 20 prodotti per un determinato cliente) come azioni di input per Personalizza esperienze.

Aggiungere all'applicazione misure di sicurezza per il contenuto

Se l'applicazione consente la visualizzazione di ampie varianze di contenuto e parte di tale contenuto può essere poco sicuro o risultare inappropriato per alcuni utenti, è consigliabile controllare in anticipo che vengano implementate le opportune misure di sicurezza per impedire agli utenti di visualizzare contenuto inaccettabile. Il modello migliore per implementare misure di sicurezza è: * Ottenere l'elenco di azioni da classificare. * Escludere quelle che non sono attuabili per i destinatari. * Classificare solo le azioni attuabili. * Mostrare all'utente l'azione con la priorità più alta.

In alcune architetture la sequenza precedente può risultare difficile da implementare. In tal caso, esiste un approccio alternativo all'implementazione delle misure di sicurezza dopo la classificazione, ma è necessario fare in modo che le azioni esterne alla misura di sicurezza non vengano usate per il training del modello di Personalizza esperienze.

  • Ottenere l'elenco delle azioni da classificare, con apprendimento disattivato.
  • Classificare le azioni in ordine di priorità.
  • Controllare se l'azione con priorità più alta è attuabile.
    • In caso affermativo, attivare l'apprendimento per questo livello di classificazione e quindi mostrarlo all'utente.
    • Se l'azione con priorità più alta non è attuabile, non attivare l'apprendimento per questa classificazione e decidere cosa mostrare all'utente in base alla propria logica o ad approcci alternativi. Anche se si usa la seconda opzione migliore, non attivare l'apprendimento per questa classificazione.

Passaggi successivi

Etica e uso responsabile.