Una descrizione dettagliata degli algoritmi utilizzati in Adobe Target Recommendations, compresi i dettagli logici e matematici della formazione dei modelli e il processo di elaborazione dei modelli.
La formazione modello è il processo di generazione dei consigli da parte di Adobe Target algoritmi di apprendimento. Il modello di servizio è il modo in cui Target fornisce consigli ai visitatori del tuo sito (noto anche come consegna di contenuti).
Target include i seguenti grandi tipi di algoritmi in Recommendations:
Algoritmi basati su elementi: Includere algoritmi che seguono la logica "Chi ha visualizzato/acquistato questo elemento ha visualizzato/acquistato anche questi elementi". Questi algoritmi sono raggruppati sotto il filtro collaborativo elemento-elemento ombrello, nonché Articoli con attributi simili algoritmi.
Algoritmi basati su utente: Includi il Visualizzato di recente e Consigliato per te algoritmi.
Algoritmi basati sulla popolarità: Includere gli algoritmi che restituiscono gli elementi più visualizzati o più acquistati nel sito web oppure quelli più visualizzati o più acquistati per categoria o attributo di elemento.
Algoritmi basati su carrello: Includere consigli basati su più elementi con la logica "chi ha visualizzato/acquistato questi elementi, ha anche visualizzato/acquistato tali elementi".
Criteri personalizzati: Includi consigli basati su file personalizzati caricati in Target.
Per informazioni più generali su ciascun tipo di algoritmo e sui singoli algoritmi, consulta Basare il consiglio su una chiave consiglio.
Molti degli algoritmi elencati sopra sono basati sulla presenza di una o più chiavi. Queste chiavi vengono utilizzate per recuperare elementi simili al momento della distribuzione dei contenuti (quando vengono eseguiti i consigli). Le chiavi specificate dal cliente possono includere l'articolo corrente visualizzato, l'ultimo articolo visualizzato o acquistato, l'articolo più visualizzato, la categoria corrente o la categoria preferita del visitatore. Altri algoritmi, come consigli basati su carrello o basati su utente, utilizzano chiavi implicite (che non possono essere configurate dal cliente). Per ulteriori informazioni, consulta Chiavi dei consigli, in Basare il consiglio su una chiave consiglio. Tuttavia, queste chiavi sono rilevanti solo per il tempo di trasmissione del modello (consegna del contenuto). Queste chiavi non influiscono sulla logica "offline" o del tempo di formazione del modello.
Le sezioni seguenti raggruppano gli algoritmi in modo leggermente diverso rispetto ai tipi di algoritmo descritti in precedenza. Il raggruppamento seguente si basa sulla somiglianza della logica di formazione del modello.
Gli algoritmi includono:
Gli algoritmi per i consigli di filtro collaborativo per elemento si basano sull’idea di utilizzare i modelli comportamentali di molti utenti (di conseguenza collaborativi) per fornire consigli utili per un dato elemento (ad esempio, filtrare il catalogo di possibili elementi da consigliare). Anche se ci sono molti algoritmi diversi che rientrano sotto l'ombrello generale di filtro collaborativo, questi algoritmi utilizzano universalmente origini di dati comportamentali come input. In Target Recommendations, questi input sono le visualizzazioni e gli acquisti univoci di elementi da parte degli utenti.
Per le persone che hanno visualizzato/acquistato questo elemento hanno visualizzato/acquistato anche questi elementi, l'obiettivo è quello di calcolare una somiglianza s(A,B) tra tutte le coppie di elementi. Per un dato elemento A, i consigli principali sono quindi ordinati in base alla loro somiglianza s(A,B).
Un esempio di tale somiglianza è la co-occorrenza tra gli elementi: un conteggio semplice del numero di utenti che hanno acquistato entrambi gli articoli. Anche se intuitivo, una tale metrica è ingenua in quanto è tendenziosa nel raccomandare elementi popolari. Ad esempio, se in un negozio di alimentari la maggior parte delle persone acquista il pane, il pane avrà un'elevata co-occorrenza con tutti gli articoli, ma non è necessariamente una buona raccomandazione. Target utilizza invece una metrica di somiglianza più sofisticata nota come rapporto di probabilità del registro (LLR). Questa quantità è grande quando la probabilità che due articoli, A e B, si verifichino congiuntamente è molto diversa dalla probabilità che non si verifichino contemporaneamente. Per la concretezza, considera un caso di Chi ha visualizzato questo ha acquistato anche quello algoritmo. La somiglianza LLR è grande quando la probabilità che B sia stato acquistato è not indipendentemente dal fatto che qualcuno abbia visualizzato A.
Ad esempio, se
allora l'articolo B non dovrebbe essere consigliato con l'articolo A. Sono forniti i dettagli completi di questo calcolo della somiglianza del rapporto di probabilità del log in questo PDF.
Il flusso logico dell’implementazione effettiva dell’algoritmo è mostrato nel seguente diagramma schematico:
Di seguito sono riportati i dettagli relativi a questi passaggi:
Dati di input: Dati comportamentali, sotto forma di visualizzazioni e acquisti di visitatori raccolti quando implementare Target o da Adobe Analytics.
Formazione modello:
Servizio del modello: I contenuti Recommendations vengono consegnati da Targets rete "Edge" globale. Quando vengono effettuate richieste mbox a Target ed è determinato che il contenuto delle raccomandazioni deve essere consegnato alla pagina, la richiesta di chiave elemento per l’algoritmo di consigli viene analizzato dalla richiesta o cercato dal profilo utente, e quindi utilizzato per recuperare i consigli calcolati nei passaggi precedenti. In questo momento vengono applicati altri filtri dinamici, prima dell'appropriato progettazione viene eseguito il rendering.
Algoritmo incluso:
In questo tipo di algoritmo, due elementi sono considerati correlati se i loro nomi e le loro descrizioni testuali sono semanticamente simili. A differenza della maggior parte degli algoritmi di consigli in cui è necessario utilizzare le origini di dati comportamentali, gli algoritmi di somiglianza del contenuto utilizzano metadati provenienti dai cataloghi di prodotti per ricavare la somiglianza tra gli elementi. Target è quindi in grado di indirizzare i consigli in scenari di cosiddetto "avviamento a freddo", in cui non sono stati raccolti dati comportamentali (ad esempio, all’inizio di un Target attività).
Anche se il modello di distribuzione e la distribuzione dei contenuti di TargetGli algoritmi di somiglianza del contenuto sono identici ad altri algoritmi basati su elementi, i passaggi di formazione del modello sono drasticamente diversi e comportano una serie di fasi di elaborazione e preelaborazione del linguaggio naturale, come illustrato nel diagramma seguente. Il nucleo del calcolo della somiglianza è l’utilizzo della somiglianza del coseno dei vettori tf-idf modificati che rappresentano ogni elemento del catalogo.
Di seguito sono riportati i dettagli relativi a questi passaggi:
Dati di input: Come descritto in precedenza, questo algoritmo si basa esclusivamente sui dati del catalogo (acquisiti in Target tramite Feed catalogo, API Entità o da aggiornamenti su pagina.
Formazione modello:
Estrazione di attributi: Dopo l’applicazione di filtri statici regolari, regole di catalogo ed esclusioni globali, questo algoritmo estrae i campi testuali pertinenti dallo schema delle entità. Target utilizza automaticamente i campi nome, messaggio e categoria dagli attributi di entità e tenta di estrarre qualsiasi campo stringa da campi personalizzati attributi di entità. Questo processo viene eseguito assicurando che la maggior parte dei valori per quel campo non siano analizzabili come numero, data o valore booleano.
Rimozione di graffi e stop word: Per una corrispondenza più precisa della somiglianza del testo, è prudente rimuovere le parole "stop" molto comuni che non alterano in modo significativo il significato di un elemento (ad esempio, "era", "è", "e" e così via). Allo stesso modo, stemming si riferisce al processo di riduzione delle parole con suffissi diversi alla loro parola principale, che ha un significato identico (per esempio, "connect", "connect" e "connection" hanno tutte la stessa parola principale: "connect"). Target usa il grembiule Snowball. Target esegue il rilevamento automatico della lingua prima di tutto, e può interrompere la rimozione delle parole per un massimo di 50 lingue e può stemming per 18 lingue.
creazione n-grammo: Dopo i passaggi precedenti, ogni parola viene trattata come un token. Il processo di combinazione di sequenze contigue di token in un unico token è noto come creazione n-grammo. TargetGli algoritmi considerano fino a 2 grammi.
calcolo tf-idf: Il passaggio successivo prevede la creazione di vettori tf-idf per riflettere l’importanza relativa dei token nella descrizione dell’elemento. Per ogni token/termine t in un elemento i, in un catalogo D con |D| elementi, il termine TF(t, i) è calcolato per primo (il numero di volte in cui il termine appare nella voce i) e la frequenza del documento DF(t, D). In sostanza, il numero di elementi in cui il token esiste. La misura tf-idf viene quindi
Target utilizza Apache Spark's tf-idf implementazione di funzionalità, che sotto la cappa hash ogni token a uno spazio di 218 token. In questo passaggio, l'incremento e la sottrazione degli attributi specificati dal cliente vengono applicati anche regolando le frequenze dei termini in ciascun vettore in base alle impostazioni specificate nel criteri.
Calcolo della somiglianza degli elementi: Il calcolo della somiglianza dell’elemento finale viene effettuato utilizzando una somiglianza approssimativa del coseno. Per due elementi: A e B, con i vettori a e tB, la somiglianza del coseno è definita come:
Per evitare una complessità significativa nel calcolo delle somiglianze tra tutti gli elementi N x N, il tf-idf il vettore viene troncato per contenere solo le sue 500 voci più grandi, quindi calcola le somiglianze coseno tra gli elementi utilizzando questa rappresentazione vettoriale troncata. Questo approccio risulta più robusto per i calcoli con somiglianza vettoriale sparsa, rispetto ad altre tecniche di approssimazione del vicino più vicino (ANN), come l’hashing sensibile alla posizione.
Servizio del modello: Questo processo è identico alle tecniche di filtro collaborativo articolo-elemento descritte nella sezione precedente.
Gli algoritmi includono:
Le ultime aggiunte alla Target suite di algoritmi di consigli Consigliato e una serie di algoritmi di consigli basati su carrello. Entrambi i tipi di algoritmi utilizzano tecniche di filtro collaborativo per formare consigli basati su singoli elementi. Quindi, al momento del servizio, più elementi nella cronologia di navigazione dell'utente (per Consigliato) o il carrello corrente dell’utente (per i consigli basati su carrello) viene utilizzato per recuperare questi consigli basati su elementi, che vengono quindi uniti per formare l’elenco finale dei consigli. Tenete presente che esistono molti tipi di algoritmi di raccomandazione personalizzati. La scelta di un algoritmo chiave multipla significa che i consigli sono immediatamente disponibili dopo che un visitatore dispone di una cronologia di navigazione e i consigli possono essere aggiornati per rispondere al comportamento più recente dei visitatori.
Questi algoritmi si basano sulle tecniche di filtro collaborativo di base descritte nella sezione consigli basati su elementi, ma incorporano anche la regolazione degli iperparametri per determinare la metrica di somiglianza ottimale tra gli elementi. L'algoritmo esegue una suddivisione cronologica dei dati comportamentali per ogni utente e prepara i modelli di raccomandazioni sui dati precedenti mentre tenta di prevedere gli elementi che un utente visualizza o acquista in un secondo momento. La metrica di somiglianza che produce l'ottimale Precisione media media media media viene quindi scelto.
La logica dei passaggi di formazione e valutazione del modello è mostrata nel diagramma seguente:
Di seguito sono riportati i dettagli relativi a questi passaggi:
Dati di input: È identico ai metodi di filtro collaborativo (CF) per elemento. Entrambi Consigliati e gli algoritmi basati su carrello utilizzano i dati comportamentali, sotto forma di visualizzazioni e acquisti di utenti raccolti quando implementare Target o da Adobe Analytics.
Formazione modello:
La fase di formazione calcola diversi tipi di somiglianze vettoriali: Somiglianza LLR (discusso qui), somiglianza del coseno (definita in precedenza) e similarità L2 normalizzata, definita come:
Servizio del modello: A differenza degli algoritmi precedenti in cui il servizio delle raccomandazioni comporta la specifica di una singola chiave per il recupero, seguita dall'applicazione di regole di business, il Consigliato per te e gli algoritmi basati su carrello utilizzano un processo di runtime più complesso.
Questi processi sono illustrati nell’immagine seguente, in cui un visitatore ha visualizzato l’articolo A e l’articolo B acquistato. I singoli consigli vengono recuperati con i punteggi di similarità offline visualizzati sotto ogni etichetta di articolo. Dopo il recupero, i consigli vengono uniti con punteggi di somiglianza ponderati sommati. Infine, in uno scenario in cui il cliente ha specificato che gli articoli visualizzati e acquistati in precedenza devono essere filtrati, il passaggio di filtro rimuove gli elementi A e B dall’elenco dei consigli.
Gli algoritmi includono:
Target fornisce algoritmi basati sulla popolarità sia per gli elementi più visualizzati, sia per gli elementi più venduti in un sito web, o suddivisi per un attributo di articolo o una categoria. Gli algoritmi basati sulla popolarità classificano gli elementi in base al numero di sessioni in cui l’elemento è stato visualizzato o acquistato in un determinato intervallo di tempo.
Tutti questi algoritmi combinano dati comportamentali aggregati in cui il numero totale di sessioni in cui gli elementi sono stati visualizzati e acquistati viene registrato a risoluzioni sia orarie che giornaliere. I singoli algoritmi individuano quindi gli elementi più visualizzati o più acquistati per l’intervallo di lookback configurato dal cliente.
Le singole sfumature dell’algoritmo sono le seguenti:
L’algoritmo di raccomandazioni "visualizzate di recente" consente la personalizzazione in sessione dei consigli. Questo algoritmo non richiede una "formazione modello" offline. Invece, Target utilizza l'univoco Profilo visitatore per mantenere un elenco in esecuzione degli elementi visualizzati in una determinata sessione e in grado di includerli nelle attività di consigli. Questo consente aggiornamenti in tempo reale ai consigli e alla personalizzazione della pagina successiva.
I criteri personalizzati consentono ai clienti di caricare i propri consigli in Target, offrendo un'importante flessibilità e consentendo di realizzare il proprio modello. I criteri personalizzati sostituiscono la parte "formazione offline" di Basato su articolo i consigli, ma si comportano in modo simile agli algoritmi basati su elementi durante la fase di distribuzione dei contenuti online, in quanto viene quindi applicata una singola chiave per il recupero dei consigli e delle regole/filtri aziendali.