Panoramica dei consigli

I sistemi di suggerimenti sono una delle applicazioni più efficaci e diffuse del machine learning per le attività. Puoi utilizzare un sistema di raccomandazione per aiutare gli utenti a trovare contenuti interessanti in un ampio insieme di contenuti. Ad esempio, il Google Play Store offre milioni di app, mentre YouTube offre miliardi di video, con l'aggiunta di altre app e video ogni giorno. Gli utenti possono utilizzare la ricerca per trovare nuovi contenuti, ma questa è limitata dai termini di ricerca che utilizzano. Un sistema di consigli può suggerire contenuti che gli utenti potrebbero non aver pensato di cercare da soli. Per saperne di più, consulta la panoramica dei sistemi di raccomandazione.

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

  • Filtraggio 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.
  • Filtraggio collaborativo: utilizza le somiglianze tra gli utenti (in base alle query degli utenti) per fornire consigli. Ad esempio, se l'utente A cerca cose simili all'utente B e l'utente B mette Mi piace al video 1, il sistema di consigli può consigliare il video 1 all'utente A, anche se l'utente A non ha guardato video simili al video 1.

Modelli di fattorizzazione matriciale

I modelli di fattorizzazione matriciale sono ampiamente utilizzati come metodo di filtraggio 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 piena; la maggior parte delle volte, 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, 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 maggiori informazioni, consulta la sezione Fattorizzazione della matrice.

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

Altri modelli per i suggerimenti

Per estendere un sistema di suggerimenti basato sul filtro collaborativo oltre le possibilità di un modello di fattorizzazione matriciale, puoi utilizzare i modelli di rete neurale profonda (DNN) e Wide and Deep con la funzione ML.PREDICT per formulare suggerimenti. Questi modelli possono incorporare le funzionalità di query e articoli per migliorare la pertinenza 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 raccomandazione anche senza molte conoscenze di ML. Tuttavia, avere una conoscenza di base dello sviluppo di ML e, in particolare, dei modelli di consigli, 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 i processi di ML: