Panoramica dei consigli

I sistemi di suggerimenti sono una delle applicazioni di maggiore successo e più diffuse del machine learning per le attività. Puoi utilizzare un sistema di consigli per aiutare gli utenti a trovare contenuti coinvolgenti in un'ampia raccolta di contenuti. Ad esempio, Google Play Store offre milioni di app, mentre YouTube offre miliardi di video, con altre app e altri video aggiunti ogni giorno. Gli utenti possono utilizzare la ricerca per trovare nuovi contenuti, ma questa operazione è limitata dai termini di ricerca che utilizzano. Un sistema di consigli può suggerire contenuti che gli utenti potrebbero non aver pensato di cercare autonomamente. Per ulteriori informazioni, consulta la Panoramica dei sistemi di consigli.

Gli algoritmi di machine learning nei sistemi di consigli sono in genere classificati nelle seguenti categorie:

  • Filtro basato sui contenuti: utilizza la somiglianza tra gli elementi per fornire consigli. Ad esempio, se un utente guarda due video di gatti carini, il sistema di consigli può consigliargli altri video di animali carini.
  • Filtro collaborativo: utilizza le somiglianze tra gli utenti (in base alle query degli utenti) per fornire consigli. Ad esempio, se l'utente A cerca contenuti simili a quelli dell'utente B e quest'ultimo ha aggiunto il video 1 ai suoi Mi piace, il sistema di consigli può consigliare il video 1 all'utente A, anche se non ha guardato video simili.

Modelli di fattorizzazione matriciale

I modelli di fattorizzazione matriciale sono ampiamente utilizzati come metodo di filtro collaborativo per i sistemi di suggerimenti.

In un modello di fattorizzazione matriciale, le coppie utente-elemento vengono mappate a una matrice bidimensionale, con gli utenti unici su un asse e gli elementi unici sull'altro asse. Le valutazioni che un utente ha assegnato agli articoli si trovano nelle celle della matrice. Questa matrice non deve essere completamente completa; nella maggior parte dei casi, gli utenti non avranno un valore per ogni elemento. L'obiettivo del modello di fattorizzazione matriciale è creare due matrici di pesi più piccole e dense che, se moltiplicate tra loro, approssimano i valori delle celle della matrice originale e forniscono valutazioni previste per le celle della matrice vuote.

Una delle matrici più piccole contiene gli utenti unici su un asse e il numero di fattori latenti sull'altro asse, come specificato dall'opzione NUM_FACTORS dell'istruzione CREATE MODEL. L'altra matrice più piccola contiene gli elementi unici su un asse e il numero di fattori latenti sull'altro asse. In questa matrice, i pesi dei fattori latenti vengono generati dall'algoritmo utilizzato per addestrare il modello, in base alle combinazioni utente-elemento della matrice di input.

Per ulteriori informazioni, consulta la pagina Decomposizione in matrici.

Puoi utilizzare un modello di fattorizzazione matriciale con la funzione ML.RECOMMEND per generare suggerimenti.

Altri modelli per i consigli

Per estendere un sistema di suggerimenti basato sul filtro collaborativo oltre a quanto possibile con un modello di fattorizzazione matriciale, puoi utilizzare i modelli di reti neurali profonde (DNN) e Wide and Deep con la funzione ML.PREDICT per fare suggerimenti. Questi modelli possono incorporare funzionalità di query e articoli per migliorare la pertinence dei consigli. Per maggiori informazioni, consulta le seguenti risorse:

Utilizzando le impostazioni predefinite nelle istruzioni CREATE MODEL e nelle funzioni di inferenza, puoi creare e utilizzare un modello di consigli anche senza molte conoscenze di ML. Tuttavia, avere conoscenze di base sullo sviluppo dell'ML e sui modelli di consigli in particolare ti aiuta a ottimizzare sia i dati sia il modello per ottenere risultati migliori. Ti consigliamo di utilizzare le seguenti risorse per acquisire familiarità con le tecniche e le procedure di ML: