Le organizzazioni investono continuamente tempo e impegno nello sviluppo di soluzioni di raccomandazione intelligenti per fornire contenuti personalizzati e pertinenti ai propri utenti. Gli obiettivi possono essere molteplici: trasformare l'esperienza dell'utente, generare interazioni significative e guidare il consumo di contenuti. Alcune di queste soluzioni utilizzano modelli di machine learning (ML) comuni costruiti su modelli di interazione storici, attributi demografici degli utenti, somiglianze di prodotti e comportamento di gruppo. Oltre a questi attributi, il contesto (come meteo, posizione e così via) al momento dell'interazione può influenzare le decisioni degli utenti durante la navigazione dei contenuti.
In questo post, mostriamo come utilizzare il tipo di dispositivo corrente dell'utente come contesto per migliorare l'efficacia del tuo Amazon Personalizzaraccomandazioni basate. Inoltre, mostriamo come utilizzare tale contesto per filtrare dinamicamente i consigli. Sebbene questo post mostri come Amazon Personalize può essere utilizzato per un caso d'uso di video on demand (VOD), vale la pena notare che Amazon Personalize può essere utilizzato in più settori.
Cos'è Amazon Personalizza?
Amazon Personalize consente agli sviluppatori di creare applicazioni basate sullo stesso tipo di tecnologia ML utilizzata da Amazon.com per consigli personalizzati in tempo reale. Amazon Personalize è in grado di offrire un'ampia gamma di esperienze di personalizzazione, tra cui consigli specifici sui prodotti, riclassificazione personalizzata dei prodotti e marketing diretto personalizzato. Inoltre, in quanto servizio di intelligenza artificiale completamente gestito, Amazon Personalize accelera le trasformazioni digitali dei clienti con il machine learning, semplificando l'integrazione di raccomandazioni personalizzate in siti Web, applicazioni, sistemi di email marketing esistenti e altro ancora.
Perché il contesto è importante?
L'utilizzo dei metadati contestuali di un utente come posizione, ora del giorno, tipo di dispositivo e meteo fornisce esperienze personalizzate per gli utenti esistenti e aiuta a migliorare la fase di avvio a freddo per gli utenti nuovi o non identificati. IL fase di avviamento a freddo si riferisce al periodo in cui il tuo motore di raccomandazione fornisce raccomandazioni non personalizzate a causa della mancanza di informazioni storiche relative a quell'utente. In situazioni in cui sono presenti altri requisiti per filtrare e promuovere elementi (ad esempio in notizie e meteo), l'aggiunta del contesto corrente di un utente (stagione o ora del giorno) aiuta a migliorare la precisione includendo ed escludendo i consigli.
Prendiamo l'esempio di una piattaforma VOD che consiglia spettacoli, documentari e film all'utente. Sulla base dell'analisi del comportamento, sappiamo che gli utenti VOD tendono a consumare contenuti di breve durata come sitcom su dispositivi mobili e contenuti di durata maggiore come film sulla TV o sul desktop.
Panoramica della soluzione
Espandendo l'esempio di considerare il tipo di dispositivo di un utente, mostriamo come fornire queste informazioni come contesto in modo che Amazon Personalize possa apprendere automaticamente l'influenza del dispositivo di un utente sui suoi tipi di contenuto preferiti.
Seguiamo il modello di architettura mostrato nel diagramma seguente per illustrare come il contesto può essere passato automaticamente ad Amazon Personalize. Il contesto derivato automaticamente è raggiunto attraverso Amazon CloudFront intestazioni incluse nelle richieste come un'API REST in Gateway API Amazon che chiama an AWS Lambda funzione per recuperare le raccomandazioni. Fare riferimento all'esempio di codice completo disponibile su ns Repository GitHub. Forniamo un AWS CloudFormazione modello per creare le risorse necessarie.
Nelle sezioni seguenti, esaminiamo come configurare ogni passaggio del modello di architettura di esempio.
Scegli una ricetta
Le ricette sono algoritmi Amazon Personalize preparati per casi d'uso specifici. Amazon Personalize fornisce ricette basate su casi d'uso comuni per i modelli di addestramento. Per il nostro caso d'uso, creiamo un semplice suggeritore personalizzato di Amazon Personalize utilizzando la ricetta di personalizzazione dell'utente. Prevede gli elementi con cui un utente interagirà in base al set di dati delle interazioni. Inoltre, questa ricetta utilizza anche elementi e set di dati degli utenti per influenzare i consigli, se forniti. Per saperne di più su come funziona questa ricetta, fare riferimento a Ricetta per la personalizzazione dell'utente.
Creare e importare un set di dati
Sfruttare il contesto richiede di specificare i valori di contesto con le interazioni in modo che i consiglieri possano utilizzare il contesto come funzionalità durante l'addestramento dei modelli. Dobbiamo anche fornire il contesto corrente dell'utente al momento dell'inferenza. Lo schema delle interazioni (vedere il codice seguente) definisce la struttura dei dati storici e in tempo reale sulle interazioni tra utenti e elementi. IL USER_ID
, ITEM_ID
e TIMESTAMP
i campi sono richiesti da Amazon Personalize per questo set di dati. DEVICE_TYPE
è un campo categoriale personalizzato che stiamo aggiungendo per questo esempio per acquisire il contesto corrente dell'utente e includerlo nell'addestramento del modello. Amazon Personalize utilizza questo set di dati sulle interazioni per addestrare i modelli e creare campagne di raccomandazione.
Analogamente, lo schema degli elementi (vedere il codice seguente) definisce la struttura dei dati del catalogo prodotti e video. IL ITEM_ID
è richiesto da Amazon Personalize per questo set di dati. CREATION_TIMESTAMP
è un nome di colonna riservato ma non è obbligatorio. GENRE
ed ALLOWED_COUNTRIES
sono campi personalizzati che stiamo aggiungendo per questo esempio per catturare il genere del video e i paesi in cui i video possono essere riprodotti. Amazon Personalize utilizza questo set di dati di elementi per addestrare i modelli e creare campagne di raccomandazione.
Nel nostro contesto, dati storici si riferisce alla cronologia delle interazioni dell'utente finale con video ed elementi sulla piattaforma VOD. Questi dati vengono generalmente raccolti e archiviati nel database dell'applicazione.
A scopo dimostrativo, utilizziamo la libreria Faker di Python per generare alcuni dati di test che deridono il set di dati delle interazioni con diversi elementi, utenti e tipi di dispositivi per un periodo di 3 mesi. Dopo aver definito lo schema e la posizione del file delle interazioni di input, i passaggi successivi consistono nel creare un gruppo di set di dati, includere il set di dati delle interazioni all'interno del gruppo di set di dati e infine importare i dati di addestramento nel set di dati, come illustrato nei seguenti frammenti di codice:
Raccogli dati storici e addestra il modello
In questa fase, definiamo la ricetta scelta e creiamo una soluzione e una versione della soluzione facendo riferimento al gruppo di set di dati precedentemente definito. Quando crei una soluzione personalizzata, specifichi una ricetta e configuri i parametri di addestramento. Quando crei una versione della soluzione per la soluzione, Amazon Personalize addestra il modello che supporta la versione della soluzione in base alla ricetta e alla configurazione di addestramento. Vedere il seguente codice:
Crea un endpoint della campagna
Dopo aver addestrato il modello, lo distribuisci in un file campagna. Una campagna crea e gestisce un endpoint di scalabilità automatica per il tuo modello addestrato che puoi utilizzare per ottenere consigli personalizzati utilizzando il GetRecommendations
API. In un passaggio successivo, utilizziamo questo endpoint della campagna per passare automaticamente il tipo di dispositivo come contesto come parametro e ricevere consigli personalizzati. Vedere il seguente codice:
Crea un filtro dinamico
Quando ricevi consigli dalla campagna creata, puoi filtrare i risultati in base a criteri personalizzati. Per il nostro esempio, creiamo un filtro per soddisfare il requisito di consigliare video che possono essere riprodotti solo dal paese attuale dell'utente. Le informazioni sul paese vengono passate dinamicamente dall'intestazione HTTP di CloudFront.
Crea una funzione Lambda
Il passaggio successivo nella nostra architettura consiste nel creare una funzione Lambda per elaborare le richieste API provenienti dalla distribuzione CloudFront e rispondere richiamando l'endpoint della campagna Amazon Personalize. In questa funzione Lambda, definiamo la logica per analizzare le seguenti intestazioni HTTP della richiesta CloudFront e i parametri della stringa di query per determinare rispettivamente il tipo di dispositivo e l'ID utente dell'utente:
CloudFront-Is-Desktop-Viewer
CloudFront-Is-Mobile-Viewer
CloudFront-Is-SmartTV-Viewer
CloudFront-Is-Tablet-Viewer
CloudFront-Viewer-Country
Il codice per creare questa funzione viene distribuito tramite il modello CloudFormation.
Crea un'API REST
Per rendere la funzione Lambda e l'endpoint della campagna Amazon Personalize accessibili alla distribuzione CloudFront, creiamo un endpoint API REST configurato come proxy Lambda. API Gateway fornisce strumenti per creare e documentare le API che instradano le richieste HTTP alle funzioni Lambda. La funzione di integrazione proxy Lambda consente a CloudFront di chiamare una singola funzione Lambda astraendo le richieste all'endpoint della campagna Amazon Personalize. Il codice per creare questa funzione viene distribuito tramite il modello CloudFormation.
Crea una distribuzione CloudFront
Quando creiamo una distribuzione CloudFront, poiché si tratta di una configurazione demo, disabilitiamo la memorizzazione nella cache utilizzando una policy di memorizzazione nella cache personalizzata, assicurandoci che la richiesta vada sempre all'origine. Inoltre, utilizziamo una politica di richiesta di origine che specifica le intestazioni HTTP richieste e i parametri della stringa di query che sono inclusi in una richiesta di origine. Il codice per creare questa funzione viene distribuito tramite il modello CloudFormation.
Raccomandazioni di prova
Quando si accede all'URL della distribuzione CloudFront da diversi dispositivi (desktop, tablet, telefono e così via), possiamo visualizzare consigli video personalizzati più pertinenti per il loro dispositivo. Inoltre, se viene presentato un utente freddo, vengono presentate le raccomandazioni su misura per il dispositivo dell'utente. Nei seguenti output di esempio, i nomi dei video vengono utilizzati solo per la rappresentazione del loro genere e runtime per renderli facilmente riconoscibili.
Nel codice seguente, a un utente noto che ama la commedia basata su interazioni passate e accede da un dispositivo telefonico vengono presentate sitcom più brevi:
Al seguente utente noto vengono presentati dei lungometraggi quando accede da un dispositivo smart TV in base alle interazioni passate:
A un utente freddo (sconosciuto) che accede da un telefono vengono presentati spettacoli più brevi ma popolari:
Recommendations for user: 666 ITEM_ID GENRE ALLOWED_COUNTRIES 940 Satire US|FI|CN|ES|HK|AE 760 Satire US|FI|CN|ES|HK|AE 160 Sitcom US|FI|CN|ES|HK|AE 880 Comedy US|FI|CN|ES|HK|AE 360 Satire US|PK|NI|JM|IN|DK 840 Satire US|PK|NI|JM|IN|DK 420 Satire US|PK|NI|JM|IN|DK
A un freddo (sconosciuto) utente che accede da un desktop vengono presentati i migliori film e documentari di fantascienza:
Il seguente utente noto che accede da un telefono restituisce consigli filtrati in base alla posizione (USA):
Conclusione
In questo post, abbiamo descritto come utilizzare il tipo di dispositivo dell'utente come dati contestuali per rendere i tuoi consigli più pertinenti. L'utilizzo di metadati contestuali per addestrare i modelli Amazon Personalize ti aiuterà a consigliare prodotti rilevanti sia per gli utenti nuovi che per quelli esistenti, non solo dai dati del profilo ma anche da una piattaforma del dispositivo di navigazione. Non solo, contesti come la posizione (paese, città, regione, codice postale) e l'ora (giorno della settimana, fine settimana, giorno della settimana, stagione) offrono l'opportunità di formulare raccomandazioni riconoscibili per l'utente. È possibile eseguire l'esempio di codice completo utilizzando il modello CloudFormation fornito nel nostro Repository GitHub e clonando i quaderni in Amazon Sage Maker Studio.
Informazioni sugli autori
Gilles-Kuessan Satchivi è un AWS Enterprise Solutions Architect con un background in reti, infrastrutture, sicurezza e operazioni IT. È appassionato di aiutare i clienti a creare sistemi ben architettati su AWS. Prima di entrare in AWS, ha lavorato nell'e-commerce per 17 anni. Al di fuori del lavoro, gli piace trascorrere del tempo con la sua famiglia e tifare per la squadra di calcio dei suoi figli.
Aditya Pendyala è Senior Solutions Architect presso AWS con sede a New York. Ha una vasta esperienza nella progettazione di applicazioni basate su cloud. Attualmente sta lavorando con grandi aziende per aiutarle a creare architetture cloud altamente scalabili, flessibili e resilienti e le guida su tutto ciò che riguarda il cloud. Ha conseguito un Master of Science in Computer Science presso la Shippensburg University e crede nella citazione "Quando smetti di imparare, smetti di crescere".
Prabhakar Chandrasekaran è un Senior Technical Account Manager con AWS Enterprise Support. Prabhakar ama aiutare i clienti a creare soluzioni AI/ML all'avanguardia nel cloud. Lavora anche con i clienti aziendali fornendo guida proattiva e assistenza operativa, aiutandoli a migliorare il valore delle loro soluzioni quando utilizzano AWS. Prabhakar detiene sei AWS e altre sei certificazioni professionali. Con oltre 20 anni di esperienza professionale, Prabhakar era un ingegnere dei dati e un leader di programma nel settore dei servizi finanziari prima di entrare in AWS.
- Distribuzione di contenuti basati su SEO e PR. Ricevi amplificazione oggi.
- PlatoData.Network Generativo verticale Ai. Potenzia te stesso. Accedi qui.
- PlatoAiStream. Intelligenza Web3. Conoscenza amplificata. Accedi qui.
- PlatoneESG. Automobilistico/VE, Carbonio, Tecnologia pulita, Energia, Ambiente, Solare, Gestione dei rifiuti. Accedi qui.
- BlockOffset. Modernizzare la proprietà della compensazione ambientale. Accedi qui.
- Fonte: https://aws.amazon.com/blogs/machine-learning/recommend-and-dynamically-filter-items-based-on-user-context-in-amazon-personalize/
- :ha
- :È
- :non
- :Dove
- $ SU
- 1
- 10
- 100
- 11
- 12
- 160
- 17
- 20
- 20 anni
- 22
- 220
- 23
- 24
- 420
- 7
- 9
- a
- Chi siamo
- accelera
- accessibile
- accessibile
- Accedendo
- Il mio account
- precisione
- raggiunto
- operanti in
- Action
- l'aggiunta di
- aggiunta
- Inoltre
- Vantaggio
- Dopo shavasana, sedersi in silenzio; saluti;
- AI
- AI / ML
- Algoritmi
- Tutti
- consente
- anche
- Sebbene il
- Amazon
- Amazon Personalizza
- Amazon Web Services
- Amazon.com
- an
- .
- analizzare
- ed
- api
- API
- applicazioni
- architettura
- SONO
- Italia
- AS
- Assistenza
- At
- gli attributi
- automaticamente
- disponibile
- AWS
- sfondo
- sostegno
- basato
- BE
- perché
- prima
- crede
- oltre a
- entrambi
- navigazione
- costruire
- costruito
- ma
- by
- chiamata
- Bandi
- Campagna
- Responsabile Campagne
- Materiale
- capace
- catturare
- Custodie
- casi
- catalogo
- certificazioni
- scelto
- Città
- Cloud
- codice
- freddo
- Colonna
- COM
- Commedia
- arrivo
- Uncommon
- computer
- Informatica
- Configurazione
- considerando
- consumare
- consumo
- contenuto
- contesto
- contestuale
- continuamente
- paesi
- nazione
- artigianali
- creare
- creato
- crea
- Creazione
- criteri
- Corrente
- Attualmente
- costume
- cliente
- Clienti
- personalizzate
- bordo tagliente
- dati
- Banca Dati
- dataset
- giorno
- decisioni
- definito
- definisce
- Laurea
- consegna
- Richiesta
- dimostrazione
- demografico
- schierare
- schierato
- descritta
- tavolo
- Determinare
- sviluppatori
- in via di sviluppo
- dispositivo
- dispositivi
- diverso
- digitale
- dirette
- distribuzione
- documentari
- documentario
- guidare
- dovuto
- dinamico
- dinamicamente
- ogni
- più facile
- ecommerce
- efficacia
- sforzo
- Email Marketing
- Abilita
- endpoint
- motore
- ingegnere
- accrescere
- assicurando
- Impresa
- aziende
- Ogni
- esempio
- esclusa
- esistente
- esperienza
- Esperienze
- estensivo
- Conclamata Esperienza
- famiglia
- caratteristica
- Caratteristiche
- Fantasia
- campo
- campi
- Compila il
- attraverso
- filtro
- Infine
- finanziario
- servizi finanziari
- flessibile
- seguire
- i seguenti
- Nel
- da
- pieno
- completamente
- function
- funzioni
- porta
- raccolto
- generare
- ottenere
- ottenere
- Obiettivi
- va
- Gruppo
- Crescere
- guida
- Guide
- Avere
- he
- intestazioni
- Aiuto
- aiutare
- aiuta
- vivamente
- il suo
- storico
- storia
- detiene
- orrore
- Come
- Tutorial
- HTML
- http
- HTTPS
- ID
- if
- importare
- importante
- competenze
- in
- includere
- incluso
- Compreso
- industrie
- influenza
- informazioni
- Infrastruttura
- ingresso
- integrare
- integrazione
- Intelligente
- interagire
- interazione
- interazioni
- ai miglioramenti
- investire
- IT
- elementi
- accoppiamento
- jpg
- ad appena
- Sapere
- conosciuto
- Dipingere
- grandi
- Grandi imprese
- dopo
- leader
- IMPARARE
- apprendimento
- Biblioteca
- piace
- piace
- località
- logica
- Lunghi
- ama
- macchina
- machine learning
- make
- Fare
- gestito
- direttore
- gestisce
- molti
- Marketing
- Mastercard
- significativo
- Metadati
- ML
- Mobile
- dispositivi mobili
- modello
- modelli
- Scopri di più
- maggior parte
- Film
- multiplo
- Mistero
- Nome
- nomi
- navigazione
- necessaria
- internazionale
- New
- notizie
- GENERAZIONE
- notando
- NYC
- of
- on
- esclusivamente
- apre
- operativa
- Operazioni
- Opportunità
- or
- origine
- Altro
- nostro
- su
- al di fuori
- ancora
- parametro
- parametri
- passare
- Passato
- appassionato
- passato
- Cartamodello
- modelli
- periodo
- personalizzazione
- personalizzare
- Personalizzata
- fase
- telefono
- piattaforma
- Platone
- Platone Data Intelligence
- PlatoneDati
- giocato
- politica
- Popolare
- Post
- postale
- alimentato
- predice
- preferito
- preparato
- presentata
- in precedenza
- Precedente
- Proactive
- processi
- Prodotto
- Prodotti
- professionale
- Profilo
- Programma
- promuoverlo
- fornire
- purché
- fornisce
- fornitura
- delega
- fini
- citare
- tempo reale
- ricevere
- ricetta
- raccomandare
- Consigli
- raccomandazioni
- raccomandando
- record
- si riferisce
- per quanto riguarda
- regione
- pertinente
- rappresentazione
- richiesta
- richieste
- necessario
- requisito
- Requisiti
- richiede
- riservato
- elastico
- Risorse
- rispettivamente
- Rispondere
- REST
- Risultati
- di ritorno
- strada
- Correre
- sagemaker
- stesso
- dire
- scalabile
- Scienze
- Fantascienza
- Stagione
- sezioni
- problemi di
- vedere
- anziano
- servire
- servizio
- Servizi
- set
- flessibile.
- mostrare attraverso le sue creazioni
- mostrato
- Spettacoli
- somiglianze
- Un'espansione
- singolo
- situazioni
- SIX
- smart
- Smart TV
- So
- Calcio
- soluzione
- Soluzioni
- alcuni
- lo spazio
- specifico
- spendere
- step
- Passi
- memorizzati
- Corda
- La struttura
- tale
- supporto
- SISTEMI DI TRATTAMENTO
- Tavoletta
- su misura
- Fai
- team
- Consulenza
- Tecnologia
- modello
- test
- che
- Il
- loro
- Li
- Là.
- Strumenti Bowman per analizzare le seguenti finiture:
- cose
- questo
- Attraverso
- tempo
- timestamp
- a
- strumenti
- top
- Treni
- allenato
- Training
- forma
- Trasformare
- trasformazioni
- vero
- tv
- Digitare
- Tipi di
- Università
- Sconosciuto
- URL
- us
- uso
- caso d'uso
- utilizzato
- Utente
- Esperienza da Utente
- utenti
- usa
- utilizzando
- generalmente
- APPREZZIAMO
- Valori
- versione
- Video
- video su richiesta
- Video
- Prima
- we
- Tempo
- sito web
- servizi web
- siti web
- settimana
- fine settimana
- quando
- while
- OMS
- largo
- volere
- con
- entro
- Lavora
- lavorato
- lavoro
- lavori
- valore
- anni
- Tu
- Trasferimento da aeroporto a Sharm
- zefiro